gis-model/public/gljs1.js

115697 lines
2.9 MiB
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

TMap = window.TMap || {};
if (!TMap.__load) {
TMap.__load = function(onLoad) {
onLoad({
"key": "UJVBZ-EYDLR-QNBWK-W7LN2-2DXI3-7BBDU",
"version": "1.2.0.5",
"highQualityRender": false
},
1659414136069);
delete TMap.__load;
};
}
/*! @version 1.2.0.5 */
!
function(t) {
function e(i) {
if (n[i]) return n[i].exports;
var o = n[i] = {
i: i,
l: !1,
exports: {}
};
return t[i].call(o.exports, o, o.exports, e),
o.l = !0,
o.exports
}
var n = {};
e.m = t,
e.c = n,
e.i = function(t) {
return t
},
e.d = function(t, n, i) {
e.o(t, n) || Object.defineProperty(t, n, {
configurable: !1,
enumerable: !0,
get: i
})
},
e.n = function(t) {
var n = t && t.__esModule ?
function() {
return t.
default
}:
function() {
return t
};
return e.d(n, "a", n),
n
},
e.o = function(t, e) {
return Object.prototype.hasOwnProperty.call(t, e)
},
e.p = "",
e(e.s = 635)
} ([function(t, e, n) {
"use strict";
e.__esModule = !0,
e.
default = function(t, e) {
if (! (t instanceof e)) throw new TypeError("Cannot call a class as a function")
}
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var i = n(75),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = function() {
function t(t, e) {
for (var n = 0; n < e.length; n++) {
var i = e[n];
i.enumerable = i.enumerable || !1,
i.configurable = !0,
"value" in i && (i.writable = !0),
(0, o.
default)(t, i.key, i)
}
}
return function(e, n, i) {
return n && t(e.prototype, n),
i && t(e, i),
e
}
} ()
},
function(t, e) {
var n = t.exports = {
version: "2.6.9"
};
"number" == typeof __e && (__e = n)
},
function(t, e, n) {
t.exports = {
default:
n(166),
__esModule: !0
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
e.__esModule = !0;
var o = n(155),
r = i(o),
a = n(77),
s = i(a),
l = n(20),
u = i(l);
e.
default = function(t, e) {
if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function, not " + (void 0 === e ? "undefined": (0, u.
default)(e)));
t.prototype = (0, s.
default)(e && e.prototype, {
constructor: {
value: t,
enumerable: !1,
writable: !0,
configurable: !0
}
}),
e && (r.
default ? (0, r.
default)(t, e) : t.__proto__ = e)
}
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var i = n(20),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = function(t, e) {
if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
return ! e || "object" !== (void 0 === e ? "undefined": (0, o.
default)(e)) && "function" != typeof e ? t: e
}
},
function(t, e, n) {
var i = n(8),
o = n(2),
r = n(22),
a = n(19),
s = n(21),
l = function(t, e, n) {
var u, c, f, d = t & l.F,
h = t & l.G,
v = t & l.S,
p = t & l.P,
_ = t & l.B,
m = t & l.W,
g = h ? o: o[e] || (o[e] = {}),
y = g.prototype,
x = h ? i: v ? i[e] : (i[e] || {}).prototype;
h && (n = e);
for (u in n)(c = !d && x && void 0 !== x[u]) && s(g, u) || (f = c ? x[u] : n[u], g[u] = h && "function" != typeof x[u] ? n[u] : _ && c ? r(f, i) : m && x[u] == f ?
function(t) {
var e = function(e, n, i) {
if (this instanceof t) {
switch (arguments.length) {
case 0:
return new t;
case 1:
return new t(e);
case 2:
return new t(e, n)
}
return new t(e, n, i)
}
return t.apply(this, arguments)
};
return e.prototype = t.prototype,
e
} (f) : p && "function" == typeof f ? r(Function.call, f) : f, p && ((g.virtual || (g.virtual = {}))[u] = f, t & l.R && y && !y[u] && a(y, u, f)))
};
l.F = 1,
l.G = 2,
l.S = 4,
l.P = 8,
l.B = 16,
l.W = 32,
l.U = 64,
l.R = 128,
t.exports = l
},
function(t, e) {
t.exports = function(t) {
return "object" == typeof t ? null !== t: "function" == typeof t
}
},
function(t, e) {
var n = t.exports = "undefined" != typeof window && window.Math == Math ? window: "undefined" != typeof self && self.Math == Math ? self: Function("return this")();
"number" == typeof __g && (__g = n)
},
function(t, e, n) {
var i = n(59)("wks"),
o = n(46),
r = n(8).Symbol,
a = "function" == typeof r; (t.exports = function(t) {
return i[t] || (i[t] = a && r[t] || (a ? r: o)("Symbol." + t))
}).store = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
t && (0, d.
default)(t).forEach(function(t) {
e.apply(void 0, (0, c.
default)(t))
})
}
var r = n(17),
a = i(r),
s = n(20),
l = i(s),
u = n(24),
c = i(u),
f = n(115),
d = i(f),
h = n(27),
v = i(h),
p = n(124),
_ = i(p),
m = n(147),
g = i(m),
y = n(47),
x = i(y),
b = n(146);
e.getMax = function(t) {
for (var e = t.length,
n = -1 / 0; e;) e -= 1,
n = t[e] > n ? t[e] : n;
return n
},
e.getMin = function(t) {
for (var e = t.length,
n = 1 / 0; e;) e -= 1,
n = t[e] < n ? t[e] : n;
return n
},
e.isInRange = function(t, e, n) {
return t >= e && t <= n
},
e.clamp = function(t, e, n) {
return Math.min(n, Math.max(e, t))
},
e.wrap = function(t, e, n) {
var i = n - e,
o = ((t - e) % i + i) % i + e;
return o === e ? n: o
},
e.round = function(t, e) {
var n = Math.pow(10, e);
return Math.round(t * n) / n
},
e.mix = function(t, e, n) {
return t * (1 - n) + e * n
},
e.degreeToRadian = _.
default,
e.radianToDegree = g.
default,
e.extend = function(t) {
for (var e = arguments.length,
n = Array(e > 1 ? e - 1 : 0), i = 1; i < e; i++) n[i - 1] = arguments[i];
var r = !0,
a = !1,
s = void 0;
try {
for (var l, u = (0, v.
default)(n); ! (r = (l = u.next()).done); r = !0) {
o(l.value,
function(e, n) {
t[e] = n
})
}
} catch(t) {
a = !0,
s = t
} finally {
try { ! r && u.
return && u.
return ()
} finally {
if (a) throw s
}
}
return t
},
e.bindAll = function(t, e) {
t.forEach(function(t) {
e[t] && (e[t] = e[t].bind(e))
})
},
e.forIn = o,
e.endsWith = function(t, e) {
return - 1 !== t.indexOf(e, t.length - e.length)
},
e.isDefined = function(t) {
return null !== t && void 0 !== t
},
e.isUndefined = function(t) {
return void 0 === t
},
e.isString = function(t) {
return "[object String]" === Object.prototype.toString.call(t)
},
e.parseJson = function(t) {
return ! JSON || !JSON.stringify ? new Function("return " + t)() : JSON.parse(t)
},
e.colorToRGBA = function(t) {
if (t instanceof Array) return t;
var e = t >> 0 & 255,
n = t >> 8 & 255,
i = t >> 16 & 255,
o = t >> 24 & 255;
return o /= 255,
new Array(e, n, i, o)
},
e.rgbaToGLColor = function(t) {
t = String(t).replace(/ /g, "");
var e = t.substring(t.indexOf("(") + 1, t.indexOf(")")).split(",");
return 3 === e.length && (e[3] = 1),
e = e.map(function(t, e) {
return 3 === e ? Number(t) : Number(t) / 255
})
},
e.uniqueId = function() {
var t = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),
e = new Array(36),
n = 0,
i = void 0;
return function() {
for (var o = 0; o < 36; o++) 8 === o || 13 === o || 18 === o || 23 === o ? e[o] = "-": 14 === o ? e[o] = "4": (n <= 2 && (n = 33554432 + 16777216 * Math.random() | 0), i = 15 & n, n >>= 4, e[o] = t[19 === o ? 3 & i | 8 : i]);
return e.join("")
}
} (),
e.objectClone = function(t) {
var e = this;
if ("object" !== (void 0 === t ? "undefined": (0, l.
default)(t)) || null === t) return t;
if (t instanceof Array) return [].concat(t);
var n = new Object;
return o(t,
function(t, i) {
n[t] = e.objectClone(i)
}),
n
},
e.keysDifference = function(t, e) {
var n = [];
return o(t,
function(t) {
t in e || n.push(t)
}),
n
},
e.bezier = function(t, e, n, i) {
var o = new b(t, e, n, i);
return function(t) {
return o.solve(t)
}
},
e.ease = e.bezier(.25, .1, .25, 1),
e.linearEase = function(t) {
return t
},
e.asyncAll = function(t, e, n) {
if (!t.length) return n(null, []);
var i = t.length,
o = new Array(t.length),
r = null;
t.forEach(function(t, a) {
e(t,
function(t, e) {
t && (r = t),
o[a] = e,
0 === i && n(r, o),
i -= 1
})
})
},
e.deepEqual = function(t, n) {
if (Array.isArray(t)) {
if (!Array.isArray(n) || t.length !== n.length) return ! 1;
for (var i = 0; i < t.length; i++) if (!e.deepEqual(t[i], n[i])) return ! 1;
return ! 0
}
if ("object" === (void 0 === t ? "undefined": (0, l.
default)(t)) && null !== t && null !== n) {
if ("object" !== (void 0 === n ? "undefined": (0, l.
default)(n))) return ! 1;
if ((0, a.
default)(t).length !== (0, a.
default)(n).length) return ! 1;
for (var o in t) if (t.hasOwnProperty(o) && !e.deepEqual(t[o], n[o])) return ! 1;
return ! 0
}
return t === n
};
var S = {};
e.warnOnce = function(t) {
S[t] || ("undefined" != typeof console && console.warn(t), S[t] = !0)
},
e.clone = function(t) {
if (null === t || "object" !== (void 0 === t ? "undefined": (0, l.
default)(t))) return t;
if (t instanceof x.
default) return new x.
default(t.getLat(), t.getLng(), t.getHeight());
if (t instanceof Date) {
var e = new Date;
return e.setTime(t.getTime()),
e
}
if (t instanceof Array) {
for (var n = [], i = 0, o = t.length; i < o; ++i) n[i] = this.clone(t[i]);
return n
}
if (t instanceof Object) {
var r = {};
for (var a in t) t.hasOwnProperty(a) && (r[a] = this.clone(t[a]));
return r
}
throw new Error("Unable to copy obj! Its type isn't supported.")
},
e.insertSort = function(t, e) {
for (var n = 1,
i = n; i < t.length; n += 1, i += 1) for (var o = 0; o < n; o++) if (t[i][e] <= t[o][e]) {
t.splice(o, 0, t[i]),
t.splice(i + 1, 1);
break
}
},
e.bubbleSort = function(t, e) {
t.sort(function(t, n) {
return t[e] - n[e]
})
}
},
function(t, e, n) {
var i = n(62),
o = n(102),
r = n(215),
a = n(206),
s = n(231),
l = function(t, e, n) {
var u, c, f, d, h = t & l.F,
v = t & l.G,
p = t & l.S,
_ = t & l.P,
m = t & l.B,
g = v ? i: p ? i[e] || (i[e] = {}) : (i[e] || {}).prototype,
y = v ? o: o[e] || (o[e] = {}),
x = y.prototype || (y.prototype = {});
v && (n = e);
for (u in n) c = !h && g && void 0 !== g[u],
f = (c ? g: n)[u],
d = m && c ? s(f, i) : _ && "function" == typeof f ? s(Function.call, f) : f,
g && a(g, u, f, t & l.U),
y[u] != f && r(y, u, d),
_ && x[u] != f && (x[u] = f)
};
i.core = o,
l.F = 1,
l.G = 2,
l.S = 4,
l.P = 8,
l.B = 16,
l.W = 32,
l.U = 64,
l.R = 128,
t.exports = l
},
function(t, e, n) {
t.exports = !n(30)(function() {
return 7 != Object.defineProperty({},
"a", {
get: function() {
return 7
}
}).a
})
},
function(t, e, n) {
var i = n(7);
t.exports = function(t) {
if (!i(t)) throw TypeError(t + " is not an object!");
return t
}
},
function(t, e, n) {
var i = n(13),
o = n(84),
r = n(64),
a = Object.defineProperty;
e.f = n(12) ? Object.defineProperty: function(t, e, n) {
if (i(t), e = r(e, !0), i(n), o) try {
return a(t, e, n)
} catch(t) {}
if ("get" in n || "set" in n) throw TypeError("Accessors not supported!");
return "value" in n && (t[e] = n.value),
t
}
},
function(t, e, n) {
var i = n(6),
o = n(2),
r = n(30);
t.exports = function(t, e) {
var n = (o.Object || {})[t] || Object[t],
a = {};
a[t] = e(n),
i(i.S + i.F * r(function() {
n(1)
}), "Object", a)
}
},
function(t, e, n) {
t.exports = {
default:
n(242),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(170),
__esModule: !0
}
},
function(t, e, n) {
var i = n(80),
o = n(53);
t.exports = function(t) {
return i(o(t))
}
},
function(t, e, n) {
var i = n(14),
o = n(38);
t.exports = n(12) ?
function(t, e, n) {
return i.f(t, e, o(1, n))
}: function(t, e, n) {
return t[e] = n,
t
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
e.__esModule = !0;
var o = n(157),
r = i(o),
a = n(156),
s = i(a),
l = "function" == typeof s.
default && "symbol" == typeof r.
default ?
function(t) {
return typeof t
}: function(t) {
return t && "function" == typeof s.
default && t.constructor === s.
default && t !== s.
default.prototype ? "symbol": typeof t
};
e.
default = "function" == typeof s.
default && "symbol" === l(r.
default) ?
function(t) {
return void 0 === t ? "undefined": l(t)
}: function(t) {
return t && "function" == typeof s.
default && t.constructor === s.
default && t !== s.
default.prototype ? "symbol": void 0 === t ? "undefined": l(t)
}
},
function(t, e) {
var n = {}.hasOwnProperty;
t.exports = function(t, e) {
return n.call(t, e)
}
},
function(t, e, n) {
var i = n(44);
t.exports = function(t, e, n) {
if (i(t), void 0 === e) return t;
switch (n) {
case 1:
return function(n) {
return t.call(e, n)
};
case 2:
return function(n, i) {
return t.call(e, n, i)
};
case 3:
return function(n, i, o) {
return t.call(e, n, i, o)
}
}
return function() {
return t.apply(e, arguments)
}
}
},
function(t, e, n) {
"use strict";
var i = {
batchRender: !0,
highQualityRender: !1,
type: "default",
minZoom: 3,
maxZoom: 20,
maxDataZoom: 18,
minPitch: 0,
maxPitch: 80,
minShowIndoorZoom: 17,
tileSize: 256,
checkKeySrc: "https://apikey.map.qq.com/mkey/index.php/mkey/check",
overseaSrc: "https://overseactrl.map.qq.com",
prSrc: "https://pr.map.qq.com/pingd?appid=jsapi_v3",
verSrc: "https://confinfo.map.qq.com/confinfo",
iconSize: 16,
iconSrc: "https://vectorsdk.map.qq.com/fileupdate/jsapi/icon?id={id}&type=img&version={version}",
iconIndexSrc: "https://vectorsdk.map.qq.com/fileupdate/jsapi/icon?id={id}&type=json&version={version}",
styleSrc: "https://vectorsdk.map.qq.com/fileupdate/jsapi/style?autoup=1&id={id}&version={version}",
batchVectorSrc: ["https://rt0.map.gtimg.com/tile?styleid=0&tiles={tiles}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt1.map.gtimg.com/tile?styleid=0&tiles={tiles}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt2.map.gtimg.com/tile?styleid=0&tiles={tiles}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt3.map.gtimg.com/tile?styleid=0&tiles={tiles}&version={version}&style=100&compress=1&mapType=hybrid"],
vectorSrc: ["https://rt0.map.gtimg.com/tile?styleid=0&z={z}&x={x}&y={y}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt1.map.gtimg.com/tile?styleid=0&z={z}&x={x}&y={y}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt2.map.gtimg.com/tile?styleid=0&z={z}&x={x}&y={y}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt3.map.gtimg.com/tile?styleid=0&z={z}&x={x}&y={y}&version={version}&style=100&compress=1&mapType=hybrid"],
satelliteSrc: ["https://p0.map.gtimg.com/sateTiles", "https://p1.map.gtimg.com/sateTiles", "https://p2.map.gtimg.com/sateTiles", "https://p3.map.gtimg.com/sateTiles"],
roadSrc: ["https://rt0.map.gtimg.com/tile", "https://rt1.map.gtimg.com/tile", "https://rt2.map.gtimg.com/tile", "https://rt3.map.gtimg.com/tile"],
trafficSrc: ["https://rtt2.map.qq.com/rtt/", "https://rtt2a.map.qq.com/rtt/", "https://rtt2b.map.qq.com/rtt/", "https://rtt2c.map.qq.com/rtt/"],
handdrawSrc: ["https://p0.map.gtimg.com/scenic/", "https://p1.map.gtimg.com/scenic/", "https://p2.map.gtimg.com/scenic/", "https://p3.map.gtimg.com/scenic/"],
indoorIndexSrc: " https://mapvectors.map.qq.com/indoormap2/index?type=1",
indoorBuildingSrc: "https://mapvectors.map.qq.com/indoormap",
indoorStyleSrc: "https://mapvectors.map.qq.com/indoormap/style.js?version={version}",
indoorIconSrc: "https://rt%$%.map.gtimg.com/icons/indoor/",
dataVersion: {
sat: 231,
tile: 405,
scenic: 157
},
cesiumStaticSrc: "https://mapapi.qq.com/web/visualization/real3d/cesium-static/",
envSrc: "https://mapapi.qq.com/web/visualization/monet/resource/env.jpg"
};
t.exports = i
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var i = n(82),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = function(t) {
if (Array.isArray(t)) {
for (var e = 0,
n = Array(t.length); e < t.length; e++) n[e] = t[e];
return n
}
return (0, o.
default)(t)
}
},
function(t, e, n) {
t.exports = {
default:
n(174),
__esModule: !0
}
},
function(t, e) {
t.exports = {}
},
function(t, e, n) {
t.exports = {
default:
n(126),
__esModule: !0
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return ! (self.navigator.userAgent.indexOf("MiniProgramEnv") < 0)
}
function r() {
for (var t = self.navigator.userAgent,
e = ["iOS", "Android", "MINA"], n = ["Windows", "Mac"], i = "cannotrecongize", o = 0; o < e.length; o++) if (t.indexOf("MiniProgramEnv/" + e[o]) >= 0) {
i = "mobile";
break
}
for (var r = 0; r < n.length; r++) if (t.indexOf("MiniProgramEnv/" + n[r]) >= 0) {
i = "pc";
break
}
return i
}
function a(t, e, n) {
if (e.includes(":")) {
var i = n,
o = e.split(":"),
r = o[0].trim();
e = o[1].trim(),
n = function(t) {
for (var e = !1,
n = t.target; n && !(e = s(n, r));) n = n.parentNode;
e && (t.selectorTarget = n, i(t))
}
}
return "addEventListener" in t ? (t.addEventListener(e, n, !1), {
remove: function() {
t.removeEventListener(e, n, !1)
}
}) : "attachEvent" in t ? (t.attachEvent("on" + e, n), {
remove: function() {
t.detachEvent("on" + e, n)
}
}) : "on" in t ? (t.on(e, n), {
remove: function() {
t.off && t.off(e, n),
t.removeListener && t.removeListener(e, n)
}
}) : void 0
}
function s(t, e) {
var n = ["matches", "webkitMatchesSelector", "msMatchesSelector", "mozMatchesSelector", "oMatchesSelector"],
i = !0,
o = !1,
r = void 0;
try {
for (var a, s = (0, u.
default)(n); ! (i = (a = s.next()).done); i = !0) {
var l = a.value;
if (t[l] && "function" == typeof t[l]) return t[l](e)
}
} catch(t) {
o = !0,
r = t
} finally {
try { ! i && s.
return && s.
return ()
} finally {
if (o) throw r
}
}
return ! 1
}
var l = n(27),
u = i(l),
c = n(17),
f = i(c),
d = n(20),
h = i(d),
v = n(24),
p = i(v);
e.now = function() {
return self.performance && self.performance.now ? self.performance.now.bind(self.performance) : Date.now.bind(Date)
} ();
var _ = self.requestAnimationFrame || self.mozRequestAnimationFrame || self.webkitRequestAnimationFrame || self.msRequestAnimationFrame;
e.frame = function(t) {
return _(t)
};
var m = self.cancelAnimationFrame || self.mozCancelAnimationFrame || self.webkitCancelAnimationFrame || self.msCancelAnimationFrame;
e.cancelFrame = function(t) {
m(t)
},
e.timed = function(n, i, o, r) {
function a(i) {
l || (i = t.exports.now(), i >= u + o ? n.call(r, 1) : (n.call(r, (i - u) / o), e.frame(a)))
}
var s = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : 0;
if (!o) return n.call(r, 1),
null;
var l = !1,
u = t.exports.now() - s * o;
return e.frame(a),
function() {
l = !0,
i && i.call(r)
}
},
e.getImageData = function(t) {
var e = self.document.createElement("canvas"),
n = e.getContext("2d");
return e.width = t.width,
e.height = t.height,
n.drawImage(t, 0, 0, t.width, t.height),
n.getImageData(0, 0, t.width, t.height).data
},
e.hardwareConcurrency = self.navigator.hardwareConcurrency || 4,
Object.defineProperty(e, "devicePixelRatio", {
get: function() {
return self.devicePixelRatio || 1
}
}),
e.isPC = function() {
var t = self.navigator.userAgent,
e = ["Android", "iPhone", "iPad", "iPod", "SymbianOS", "selfs Phone"],
n = !0;
if (o()) {
if ("mobile" === r()) return ! 1;
if ("pc" === r()) return ! 0
}
for (var i = 0; i < e.length; i++) if (t.indexOf(e[i]) >= 0) {
n = !1;
break
}
return n
},
e.isMiniProgram = o,
e.getMiniProgramEnv = r,
e.isLowMobileDevice = function() {
var t = self.navigator.userAgent;
if (this.isPC()) return ! 1;
if (t.includes("SymbianOS") || t.includes("selfs Phone")) return ! 0;
try {
var e = t.includes("Android") && parseFloat(t.match(/Android (\d+)/)[1]),
n = (t.includes("iPhone") || t.includes("iPad") || t.includes("iPod")) && t.match(/OS ((\d+_?){2,3})\s/) && parseFloat(String(t.match(/OS ((\d+_?){2,3})\s/)[1]).replace("_", "."));
if (e && e < 6 || n && n < 11) return ! 0
} catch(t) {
return ! 1
}
return ! 1
},
e.mobileSystem = function() {
var t = self.navigator.userAgent,
e = "";
if (this.isPC()) return ! 1;
if (t.includes("SymbianOS") || t.includes("selfs Phone")) e = t.includes("SymbianOS") ? "SymbianOS": "selfs Phone";
else try {
var n = t.includes("Android") && parseFloat(t.match(/Android ([\d.]+?);/)[1]),
i = (t.includes("iPhone") || t.includes("iPad") || t.includes("iPod")) && t.match(/OS ((\d+_?){2,3})\s/) && parseFloat(String(t.match(/OS ((\d+_?){2,3})\s/)[1]).replace("_", "."));
e = n ? "Android" + n.toFixed(1) : "iOS" + i.toFixed(1)
} catch(e) {
return "无法识别: " + t
}
return e
},
e.debounce = function(t, e) {
var n = null;
return function() {
var i = arguments;
n && clearTimeout(n),
n = setTimeout(function() {
t.apply(void 0, (0, p.
default)(i))
},
e)
}
},
e.throttle = function(t, e) {
var n = 0;
return function() {
var i = +new Date;
if (i - n > e) {
n = i;
for (var o = arguments.length,
r = Array(o), a = 0; a < o; a++) r[a] = arguments[a];
t.apply(this, r)
}
}
},
e.throttleWithFrame = function(t) {
var e = null;
return function() {
for (var n = this,
i = arguments.length,
o = Array(i), r = 0; r < i; r++) o[r] = arguments[r];
e || (e = _(function() {
t.apply(n, o),
e = null
}))
}
};
var g = function t(e, n, i, o) {
if (!e || !n) return void console.warn("arguments is invalid!", e, n, i);
if ("object" === (void 0 === n ? "undefined": (0, h.
default)(n))) {
var r = null;
return r = "length" in n ? n.map(function(n) {
return t(e, n.trim(), i, o)
}) : (0, f.
default)(n).map(function(o) {
return t(e, o.trim(), n[o], i)
}),
{
remove: function() {
r.forEach(function(t) {
t && t.remove && t.remove()
})
}
}
}
if ( - 1 !== n.indexOf(",")) {
n = n.split(",");
var s = n.map(function(n) {
return t(e, n.trim(), i, o)
});
return {
remove: function() {
s.forEach(function(t) {
t && t.remove && t.remove()
})
}
}
}
return a(e, n,
function(t) {
return i.call(o || e, t)
})
},
y = function(t, e, n, i) {
var o = null,
r = function(t) {
return function() {
return o && o.remove && o.remove(),
t.apply(this, arguments)
}
};
return t && e ? ("object" === (void 0 === e ? "undefined": (0, h.
default)(e)) && ("length" in e ? n = r(n) : (0, f.
default)(e).forEach(function(t) {
e[t] = r(e[t])
})), -1 !== e.indexOf(",") && (e = e.split(","), n = r(n)), o = g(t, e, n, i)) : void console.warn("arguments is invalid!", t, e, n)
};
e.on = g,
e.once = y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.AJAXError = e.EnumError = e.ClassTypeError = e.BaseTypeError = void 0;
var o = n(20),
r = i(o),
a = n(3),
s = i(a),
l = n(5),
u = i(l),
c = n(4),
f = i(c),
d = n(0),
h = i(d),
v = n(1),
p = i(v),
_ = function() {
function t(e) { (0, h.
default)(this, t),
this.message = e
}
return (0, p.
default)(t, [{
key: "warn",
value: function() {
console.warn(this.message)
}
},
{
key: "error",
value: function() {
console.error(this.message)
}
},
{
key: "throw",
value: function() {
throw new Error(this.message)
}
}]),
t
} (),
m = function(t) {
function e(t, n, i) {
return (0, h.
default)(this, e),
(0, u.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, "类型错误:" + t + " 应该是 " + n.toUpperCase() + " 类型, 实际却是 " + (void 0 === i ? "undefined": (0, r.
default)(i)).toUpperCase() + " 类型。"))
}
return (0, f.
default)(e, t),
e
} (_),
g = function(t) {
function e(t, n, i) {
return (0, h.
default)(this, e),
(0, u.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, "类型错误:" + t + " 应该是 " + n + " 类型, 实际值为 " + i + "。"))
}
return (0, f.
default)(e, t),
e
} (_),
y = function(t) {
function e(t, n, i) {
return (0, h.
default)(this, e),
(0, u.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, "枚举错误:" + t + " 的可枚举值为 " + n.join(",") + ",实际却是 " + i))
}
return (0, f.
default)(e, t),
e
} (_),
x = function t(e, n) { (0, h.
default)(this, t),
this.message = e,
this.status = n
};
e.BaseTypeError = m,
e.ClassTypeError = g,
e.EnumError = y,
e.AJAXError = x
},
function(t, e) {
t.exports = function(t) {
try {
return !! t()
} catch(t) {
return ! 0
}
}
},
function(t, e, n) {
var i = n(53);
t.exports = function(t) {
return Object(i(t))
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
e.__esModule = !0;
var o = n(125),
r = i(o),
a = n(27),
s = i(a);
e.
default = function() {
function t(t, e) {
var n = [],
i = !0,
o = !1,
r = void 0;
try {
for (var a, l = (0, s.
default)(t); ! (i = (a = l.next()).done) && (n.push(a.value), !e || n.length !== e); i = !0);
} catch(t) {
o = !0,
r = t
} finally {
try { ! i && l.
return && l.
return ()
} finally {
if (o) throw r
}
}
return n
}
return function(e, n) {
if (Array.isArray(e)) return e;
if ((0, r.
default)(Object(e))) return t(e, n);
throw new TypeError("Invalid attempt to destructure non-iterable instance")
}
} ()
},
function(t, e, n) {
"use strict";
var i = n(131)(!0);
n(72)(String, "String",
function(t) {
this._t = String(t),
this._i = 0
},
function() {
var t, e = this._t,
n = this._i;
return n >= e.length ? {
value: void 0,
done: !0
}: (t = i(e, n), this._i += t.length, {
value: t,
done: !1
})
})
},
function(t, e, n) {
var i = n(87),
o = n(58);
t.exports = Object.keys ||
function(t) {
return i(t, o)
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
e.__esModule = !0;
var o = n(3),
r = i(o),
a = n(116),
s = i(a);
e.
default = function t(e, n, i) {
null === e && (e = Function.prototype);
var o = (0, s.
default)(e, n);
if (void 0 === o) {
var a = (0, r.
default)(e);
return null === a ? void 0 : t(a, n, i)
}
if ("value" in o) return o.value;
var l = o.get;
if (void 0 !== l) return l.call(i)
}
},
function(t, e) {
var n = {}.toString;
t.exports = function(t) {
return n.call(t).slice(8, -1)
}
},
function(t, e) {
t.exports = !0
},
function(t, e) {
t.exports = function(t, e) {
return {
enumerable: !(1 & t),
configurable: !(2 & t),
writable: !(4 & t),
value: e
}
}
},
function(t, e, n) {
n(135);
for (var i = n(8), o = n(19), r = n(26), a = n(9)("toStringTag"), s = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","), l = 0; l < s.length; l++) {
var u = s[l],
c = i[u],
f = c && c.prototype;
f && !f[a] && o(f, a, u),
r[u] = r.Array
}
},
function(t, e, n) {
var i = n(46)("meta"),
o = n(7),
r = n(21),
a = n(14).f,
s = 0,
l = Object.isExtensible ||
function() {
return ! 0
},
u = !n(30)(function() {
return l(Object.preventExtensions({}))
}),
c = function(t) {
a(t, i, {
value: {
i: "O" + ++s,
w: {}
}
})
},
f = function(t, e) {
if (!o(t)) return "symbol" == typeof t ? t: ("string" == typeof t ? "S": "P") + t;
if (!r(t, i)) {
if (!l(t)) return "F";
if (!e) return "E";
c(t)
}
return t[i].i
},
d = function(t, e) {
if (!r(t, i)) {
if (!l(t)) return ! 0;
if (!e) return ! 1;
c(t)
}
return t[i].w
},
h = function(t) {
return u && v.NEED && l(t) && !r(t, i) && c(t),
t
},
v = t.exports = {
KEY: i,
NEED: !1,
fastKey: f,
getWeak: d,
onFreeze: h
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(32),
r = i(o),
a = n(140),
s = i(a),
l = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/,
u = /^rgb\((\d+,?\s*){3}\)$/,
c = /^rgba\((\d+,?\s*){3},\s*[0-9.]+\)$/,
f = {}; !
function(t) { ["Number", "String", "Function", "Undefined", "Boolean", "Object", "Array"].forEach(function(e) {
var n = function(t) {
return "[object " + e + "]" === Object.prototype.toString.call(t)
};
t["is" + e] = n
})
} (f),
f.isNaN = s.
default,
f.isValidLatLng = function() {
var t = void 0,
e = void 0;
if (1 === arguments.length) {
var n = arguments[0];
if (f.isArray(n)) {
var i = (0, r.
default)(n, 2);
t = i[0],
e = i[1]
} else t = n.lat,
e = n.lng
} else {
if (2 !== arguments.length) return ! 1;
t = arguments[0],
e = arguments[1]
}
return ! (!f.isNumber(t) || !f.isNumber(e)) && (Math.abs(t) <= 90 && Math.abs(e) <= 180)
},
f.isValidColor = function(t) {
return f.isArray(t) ? (3 === t.length || 4 === t.length) && t.every(function(t) {
return t >= 0 && t <= 255
}) : !!f.isString(t) && (l.test(t) || u.test(t) || c.test(t))
},
f.isValidOffset = function(t) {
return !! (f.isObject(t) && "x" in t && "y" in t && f.isNumber(t.x) && f.isNumber(t.y))
},
e.
default = f
},
function(t, e, n) {
var i = n(14).f,
o = n(21),
r = n(9)("toStringTag");
t.exports = function(t, e, n) {
t && !o(t = n ? t: t.prototype, r) && i(t, r, {
configurable: !0,
value: e
})
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return function() {
return M ? void 0 : t.apply(null, arguments)
}
}
function r(t, e) {
var n = [];
for (var i in e) e.hasOwnProperty(i) && n.push(i + "=" + e[i]);
return t + ( - 1 === t.indexOf("?") ? "?": "&") + n.join("&")
}
function a(t) {
var e = (0, A.isWebGLSupportedCached)(); (0, P.sendByAjax)(r(b.
default.prSrc, {
logid: "pv",
key: t.key || w.
default.key,
v: t.version || "null",
lt: t.loadDeltaTime || -1,
d: location.host,
dpr: window.devicePixelRatio,
lss: T.
default.support() ? 1 : 0,
gls: e.context ? 1 : 0,
ua: window.navigator.userAgent,
dt: k.
default.OS,
dvn: e.renderer
}))
}
function s() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.type,
n = t.code,
i = t.message,
o = void 0 === i ? "": i,
a = t.key,
s = void 0 === a ? w.
default.key:
a; (0, P.sendOnce)(r(b.
default.prSrc, {
logid: "err",
key: s,
type: e,
code: n,
msg: o,
dt: k.
default.OS
}))
}
function l(t, e, n) {
t.once("tilesloaded",
function() { (0, P.sendOnce)(r(b.
default.prSrc, {
logid: "rt",
frt: Date.now() - e,
device: n
}))
})
}
function u(t, e, n) { (0, L.isPC)() || t.once("tilesloaded",
function() { (0, P.sendOnce)(r(b.
default.prSrc, {
logid: "ds",
lowdevice: e,
systemid: n
}))
})
}
function c(t) {
var e = (0, A.isWebGLSupportedCached)(),
n = null,
i = 0,
o = null,
a = function() {
var a = (0, L.now)(),
s = (a - o) / 1e3,
l = Math.round(i / (60 * s) * 60);
t.removeRenderCallback(n),
(0, P.sendOnce)(r(b.
default.prSrc, {
logid: "fps",
dt: k.
default.OS,
num: l,
cd: e.isIndependentDisplayCard ? 1 : 0
}))
};
t.on("movestart",
function() {
n && (t.removeListener("moveend", a), t.removeRenderCallback(n), i = 0),
o = (0, L.now)(),
n = function() {
i++
},
t.addRenderCallback(n),
t.once("moveend", a)
})
}
function f(t) { (0, P.sendOnce)(r(b.
default.prSrc, {
logid: "cl",
key: t.key || w.
default.key,
subkey: t.subkey || "",
id: t.id || ""
}))
}
function d(t) { (0, P.sendOnce)(r(b.
default.prSrc, {
logid: "cs",
key: t.key || w.
default.key,
subkey: t.subkey || "",
id: t.styleId
}))
}
function h(t, e) { (0, P.sendOnce)(r(b.
default.prSrc, {
logid: "os",
key: t.key || w.
default.key,
num: e || 0
}))
}
function v(t) {
var e = t.zoom,
n = t.pitch,
i = t.rotation,
o = t.width,
a = t.height; (0, P.sendOnce)(r(b.
default.prSrc, {
logid: "minfo",
zoom: Math.floor(e),
pitch: n,
rotation: i,
width: o,
height: a
}))
}
function p(t, e) {
if ("tile" === t) {
var n = e.id,
i = e.status,
o = e.time,
a = C[n];
a || (a = new R(n), C[n] = a),
a.logStatus(i),
0 === i && o && a.logTime(o)
} else {
var s = {
logid: "qos",
t: t,
info: e.styleId + "|" + e.version
};
e.error || 0 === e.error ? s.e = e.error: s.lt = e.loadTime,
(0, P.sendOnce)(r(b.
default.prSrc, s))
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.statCn = e.qos = e.minfo = e.os = e.cs = e.cl = e.fps = e.ds = e.frt = e.err = e.pv = void 0;
var _ = n(0),
m = i(_),
g = n(1),
y = i(g),
x = n(23),
b = i(x),
S = n(105),
w = i(S),
E = n(89),
T = i(E),
A = n(145),
P = n(144),
I = n(138),
k = i(I),
L = n(28),
M = !!w.
default.isLocal,
C = (e.pv = o(a), e.err = o(s), e.frt = o(l), e.ds = o(u), e.fps = o(c), e.cl = o(f), e.cs = o(d), e.os = o(h), e.minfo = o(v), {}),
R = (e.qos = o(p),
function() {
function t(e) {
function n() {
var t = this.id[0] + "_stat",
e = this.id[0] + "_avg",
n = {},
i = this.tilesStatus.join("|");
if ("0|0|0" !== i && (n[t] = i, this.tilesStatus = [0, 0, 0]), this.tilesTime.length > 0) {
var o = this.tilesTime.reduce(function(t, e) {
return t + e
},
0) / this.tilesTime.length;
n[e] = Math.max(0, Math.floor(o)),
this.tilesTime = []
}
return n
} (0, m.
default)(this, t),
this.id = e,
this.tilesStatus = [0, 0, 0],
this.tilesTime = [],
(0, P.sendPeriodically)("tile", r(b.
default.prSrc, {
logid: "qos",
t: "tile"
}), n.bind(this))
}
return (0, y.
default)(t, [{
key: "logStatus",
value: function(t) {
this.tilesStatus[t] += 1
}
},
{
key: "logTime",
value: function(t) {
this.tilesTime.push(t)
}
}]),
t
} ()),
B = function() {
function t() {
setTimeout(function() {
e.length > 0 && ((0, P.sendOnce)(r(b.
default.prSrc, {
logid: "cn",
cn: e.join(",")
})), e = []),
t()
},
5e3)
}
var e = [];
return t(),
function(t) {
t && e.push(t)
}
} ();
e.statCn = o(B)
},
function(t, e) {
t.exports = function(t) {
if ("function" != typeof t) throw TypeError(t + " is not a function!");
return t
}
},
function(t, e) {
e.f = {}.propertyIsEnumerable
},
function(t, e) {
var n = 0,
i = Math.random();
t.exports = function(t) {
return "Symbol(".concat(void 0 === t ? "": t, ")_", (++n + i).toString(36))
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(20),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(10),
f = 90,
d = 180,
h = function() {
function t(e, n) {
var i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0,
o = arguments[3];
if ((0, s.
default)(this, t), e = Number(e), n = Number(n), i = Number(i), isNaN(n) || isNaN(e) || isNaN(i)) throw new Error("参数错误LatLng 传入参数 (" + e + ", " + n + ") 非合法数字。");
if (o) e = (0, c.clamp)(e, -f, f),
n = (0, c.wrap)(n, -d, d);
else {
if (e > f || e < -f) throw new Error("参数错误LatLng.lat 取值应在 [" + -f + ", " + f + "] 区间内。");
if (n > d || n < -d) throw new Error("参数错误LatLng.lng 取值应在 [" + -d + ", " + d + "] 区间内。")
}
this.lat = e,
this.lng = n,
this.height = i
}
return (0, u.
default)(t, [{
key: "toString",
value: function() {
return this.lat + ", " + this.lng
}
},
{
key: "getLat",
value: function() {
return this.lat
}
},
{
key: "getLng",
value: function() {
return this.lng
}
},
{
key: "getHeight",
value: function() {
return this.height
}
},
{
key: "equals",
value: function(t) {
return this.lat === t.lat && this.lng === t.lng && this.height === t.height
}
}], [{
key: "convert",
value: function(e) {
if (e instanceof t) return e;
if (Array.isArray(e)) return new t(e[0], e[1], e[2], !0);
if (!Array.isArray(e) && "object" === (void 0 === e ? "undefined": (0, r.
default)(e)) && null !== e) return new t(e.lat, e.lng, e.height, !0);
throw new Error("`LatLng` argument must be specified as a LatLng instance, an object {lat: <lat>, lng: <lng>}, or an array of [<lat>, <lng>]")
}
}]),
t
} ();
t.exports = h
},
,
function(t, e, n) {
var i = n(36),
o = n(9)("toStringTag"),
r = "Arguments" == i(function() {
return arguments
} ()),
a = function(t, e) {
try {
return t[e]
} catch(t) {}
};
t.exports = function(t) {
var e, n, s;
return void 0 === t ? "Undefined": null === t ? "Null": "string" == typeof(n = a(e = Object(t), o)) ? n: r ? i(e) : "Object" == (s = i(e)) && "function" == typeof e.callee ? "Arguments": s
}
},
function(t, e, n) { !
function(n, i) {
t.exports = e = i()
} (0,
function() {
var t = t ||
function(t, e) {
var n = Object.create ||
function() {
function t() {}
return function(e) {
var n;
return t.prototype = e,
n = new t,
t.prototype = null,
n
}
} (),
i = {},
o = i.lib = {},
r = o.Base = function() {
return {
extend: function(t) {
var e = n(this);
return t && e.mixIn(t),
e.hasOwnProperty("init") && this.init !== e.init || (e.init = function() {
e.$super.init.apply(this, arguments)
}),
e.init.prototype = e,
e.$super = this,
e
},
create: function() {
var t = this.extend();
return t.init.apply(t, arguments),
t
},
init: function() {},
mixIn: function(t) {
for (var e in t) t.hasOwnProperty(e) && (this[e] = t[e]);
t.hasOwnProperty("toString") && (this.toString = t.toString)
},
clone: function() {
return this.init.prototype.extend(this)
}
}
} (),
a = o.WordArray = r.extend({
init: function(t, e) {
t = this.words = t || [],
this.sigBytes = void 0 != e ? e: 4 * t.length
},
toString: function(t) {
return (t || l).stringify(this)
},
concat: function(t) {
var e = this.words,
n = t.words,
i = this.sigBytes,
o = t.sigBytes;
if (this.clamp(), i % 4) for (var r = 0; r < o; r++) {
var a = n[r >>> 2] >>> 24 - r % 4 * 8 & 255;
e[i + r >>> 2] |= a << 24 - (i + r) % 4 * 8
} else for (var r = 0; r < o; r += 4) e[i + r >>> 2] = n[r >>> 2];
return this.sigBytes += o,
this
},
clamp: function() {
var e = this.words,
n = this.sigBytes;
e[n >>> 2] &= 4294967295 << 32 - n % 4 * 8,
e.length = t.ceil(n / 4)
},
clone: function() {
var t = r.clone.call(this);
return t.words = this.words.slice(0),
t
},
random: function(e) {
for (var n, i = [], o = 0; o < e; o += 4) {
var r = function(e) {
var e = e,
n = 987654321,
i = 4294967295;
return function() {
n = 36969 * (65535 & n) + (n >> 16) & i,
e = 18e3 * (65535 & e) + (e >> 16) & i;
var o = (n << 16) + e & i;
return o /= 4294967296,
(o += .5) * (t.random() > .5 ? 1 : -1)
}
} (4294967296 * (n || t.random()));
n = 987654071 * r(),
i.push(4294967296 * r() | 0)
}
return new a.init(i, e)
}
}),
s = i.enc = {},
l = s.Hex = {
stringify: function(t) {
for (var e = t.words,
n = t.sigBytes,
i = [], o = 0; o < n; o++) {
var r = e[o >>> 2] >>> 24 - o % 4 * 8 & 255;
i.push((r >>> 4).toString(16)),
i.push((15 & r).toString(16))
}
return i.join("")
},
parse: function(t) {
for (var e = t.length,
n = [], i = 0; i < e; i += 2) n[i >>> 3] |= parseInt(t.substr(i, 2), 16) << 24 - i % 8 * 4;
return new a.init(n, e / 2)
}
},
u = s.Latin1 = {
stringify: function(t) {
for (var e = t.words,
n = t.sigBytes,
i = [], o = 0; o < n; o++) {
var r = e[o >>> 2] >>> 24 - o % 4 * 8 & 255;
i.push(String.fromCharCode(r))
}
return i.join("")
},
parse: function(t) {
for (var e = t.length,
n = [], i = 0; i < e; i++) n[i >>> 2] |= (255 & t.charCodeAt(i)) << 24 - i % 4 * 8;
return new a.init(n, e)
}
},
c = s.Utf8 = {
stringify: function(t) {
try {
return decodeURIComponent(escape(u.stringify(t)))
} catch(t) {
throw new Error("Malformed UTF-8 data")
}
},
parse: function(t) {
return u.parse(unescape(encodeURIComponent(t)))
}
},
f = o.BufferedBlockAlgorithm = r.extend({
reset: function() {
this._data = new a.init,
this._nDataBytes = 0
},
_append: function(t) {
"string" == typeof t && (t = c.parse(t)),
this._data.concat(t),
this._nDataBytes += t.sigBytes
},
_process: function(e) {
var n = this._data,
i = n.words,
o = n.sigBytes,
r = this.blockSize,
s = 4 * r,
l = o / s;
l = e ? t.ceil(l) : t.max((0 | l) - this._minBufferSize, 0);
var u = l * r,
c = t.min(4 * u, o);
if (u) {
for (var f = 0; f < u; f += r) this._doProcessBlock(i, f);
var d = i.splice(0, u);
n.sigBytes -= c
}
return new a.init(d, c)
},
clone: function() {
var t = r.clone.call(this);
return t._data = this._data.clone(),
t
},
_minBufferSize: 0
}),
d = (o.Hasher = f.extend({
cfg: r.extend(),
init: function(t) {
this.cfg = this.cfg.extend(t),
this.reset()
},
reset: function() {
f.reset.call(this),
this._doReset()
},
update: function(t) {
return this._append(t),
this._process(),
this
},
finalize: function(t) {
return t && this._append(t),
this._doFinalize()
},
blockSize: 16,
_createHelper: function(t) {
return function(e, n) {
return new t.init(n).finalize(e)
}
},
_createHmacHelper: function(t) {
return function(e, n) {
return new d.HMAC.init(t, n).finalize(e)
}
}
}), i.algo = {});
return i
} (Math);
return t
})
},
function(t, e, n) {
var i = n(13),
o = n(85),
r = n(58),
a = n(54)("IE_PROTO"),
s = function() {},
l = function() {
var t, e = n(57)("iframe"),
i = r.length;
for (e.style.display = "none", n(83).appendChild(e), e.src = "javascript:", t = e.contentWindow.document, t.open(), t.write("<script>document.F=Object<\/script>"), t.close(), l = t.F; i--;) delete l.prototype[r[i]];
return l()
};
t.exports = Object.create ||
function(t, e) {
var n;
return null !== t ? (s.prototype = i(t), n = new s, s.prototype = null, n[a] = t) : n = l(),
void 0 === e ? n: o(n, e)
}
},
function(t, e, n) {
var i = n(55),
o = Math.min;
t.exports = function(t) {
return t > 0 ? o(i(t), 9007199254740991) : 0
}
},
function(t, e) {
t.exports = function(t) {
if (void 0 == t) throw TypeError("Can't call method on " + t);
return t
}
},
function(t, e, n) {
var i = n(59)("keys"),
o = n(46);
t.exports = function(t) {
return i[t] || (i[t] = o(t))
}
},
function(t, e) {
var n = Math.ceil,
i = Math.floor;
t.exports = function(t) {
return isNaN(t = +t) ? 0 : (t > 0 ? i: n)(t)
}
},
function(t, e, n) {
"use strict";
t.exports = "TMap"
},
function(t, e, n) {
var i = n(7),
o = n(8).document,
r = i(o) && i(o.createElement);
t.exports = function(t) {
return r ? o.createElement(t) : {}
}
},
function(t, e) {
t.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")
},
function(t, e, n) {
var i = n(2),
o = n(8),
r = o["__core-js_shared__"] || (o["__core-js_shared__"] = {}); (t.exports = function(t, e) {
return r[t] || (r[t] = void 0 !== e ? e: {})
})("versions", []).push({
version: i.version,
mode: n(37) ? "pure": "global",
copyright: "© 2019 Denis Pushkarev (zloirock.ru)"
})
},
function(t, e, n) {
var i = n(63);
t.exports = function(t) {
if (!i(t)) throw TypeError(t + " is not an object!");
return t
}
},
function(t, e) {
t.exports = function(t) {
try {
return !! t()
} catch(t) {
return ! 0
}
}
},
function(t, e) {
var n = t.exports = "undefined" != typeof window && window.Math == Math ? window: "undefined" != typeof self && self.Math == Math ? self: Function("return this")();
"number" == typeof __g && (__g = n)
},
function(t, e) {
t.exports = function(t) {
return "object" == typeof t ? null !== t: "function" == typeof t
}
},
function(t, e, n) {
var i = n(7);
t.exports = function(t, e) {
if (!i(t)) return t;
var n, o;
if (e && "function" == typeof(n = t.toString) && !i(o = n.call(t))) return o;
if ("function" == typeof(n = t.valueOf) && !i(o = n.call(t))) return o;
if (!e && "function" == typeof(n = t.toString) && !i(o = n.call(t))) return o;
throw TypeError("Can't convert object to primitive value")
}
},
function(t, e, n) {
var i = n(49),
o = n(9)("iterator"),
r = n(26);
t.exports = n(2).getIteratorMethod = function(t) {
if (void 0 != t) return t[o] || t["@@iterator"] || r[i(t)]
}
},
function(t, e, n) {
"use strict";
function i(t) {
return [l.circle, l.ellipse, l.rectangle, l.polygon, l.polyline, l.marker, l.label].some(function(e) {
return t === e
})
}
function o(t) {
return [l.grayTile].some(function(e) {
return t === e
})
}
function r(t) {
return [l.imageGround, l.canvasGround].some(function(e) {
return t === e
})
}
function a(t) {
return [l.indoorRegion, l.indoorPoi, l.indoorEscalator, l.indoor].some(function(e) {
return t === e
})
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.isOverlayLayer = i,
e.isGrayTileLayer = o,
e.isTextureLayer = r,
e.isIndoorLayer = a;
var s = e.BASE_LAYER_TYPE = {
arrow: "arrow",
point: "point",
label: "label",
line: "line",
region: "region",
ground: "ground",
base: "base",
building3d: "building3d",
building2d: "building2d",
text: "text"
},
l = e.RENDER_LAYER_TYPE = {
base: s.base,
arrow: s.arrow,
building3d: s.building3d,
building2d: s.building2d,
text: s.text,
visualPlugin: "VISUAL_PLUGIN",
marker: "MARKER",
polyline: "POLYLINE",
polygon: "POLYGON",
label: "LABEL",
circle: "CIRCLE",
rectangle: "RECTANGLE",
ellipse: "ELLIPSE",
imageTile: "IMAGE_TILE",
imageGround: "IMAGE_Ground",
grayTile: "GRAY_TILE",
canvasGround: "CANVAS_Ground",
indoor: "INDOOR",
indoorRegion: "INDOOR_REGION",
indoorPoi: "INDOOR_POI",
indoorEscalator: "INDOOR_ESCALATOR",
mask: "MASK",
highlight: "HIGHLIGHT",
trafficFlow: "TRAFFIC_FLOW",
trafficBase: "TRAFFIC_BASE"
}
},
function(t, e, n) {
"use strict";
function i(t) {
var e, n;
this.promise = new t(function(t, i) {
if (void 0 !== e || void 0 !== n) throw TypeError("Bad Promise constructor");
e = t,
n = i
}),
this.resolve = o(e),
this.reject = o(n)
}
var o = n(44);
t.exports.f = function(t) {
return new i(t)
}
},
function(t, e, n) {
var i = n(45),
o = n(38),
r = n(18),
a = n(64),
s = n(21),
l = n(84),
u = Object.getOwnPropertyDescriptor;
e.f = n(12) ? u: function(t, e) {
if (t = r(t), e = a(e, !0), l) try {
return u(t, e)
} catch(t) {}
if (s(t, e)) return o(!i.f.call(t, e), t[e])
}
},
function(t, e, n) {
var i = n(8),
o = n(2),
r = n(37),
a = n(70),
s = n(14).f;
t.exports = function(t) {
var e = o.Symbol || (o.Symbol = r ? {}: i.Symbol || {});
"_" == t.charAt(0) || t in e || s(e, t, {
value: a.f(t)
})
}
},
function(t, e, n) {
e.f = n(9)
},
function(t, e, n) {
var i = n(22),
o = n(93),
r = n(92),
a = n(13),
s = n(52),
l = n(65),
u = {},
c = {},
e = t.exports = function(t, e, n, f, d) {
var h, v, p, _, m = d ?
function() {
return t
}: l(t),
g = i(n, f, e ? 2 : 1),
y = 0;
if ("function" != typeof m) throw TypeError(t + " is not iterable!");
if (r(m)) {
for (h = s(t.length); h > y; y++) if ((_ = e ? g(a(v = t[y])[0], v[1]) : g(t[y])) === u || _ === c) return _
} else for (p = m.call(t); ! (v = p.next()).done;) if ((_ = o(p, g, v.value, e)) === u || _ === c) return _
};
e.BREAK = u,
e.RETURN = c
},
function(t, e, n) {
"use strict";
var i = n(37),
o = n(6),
r = n(81),
a = n(19),
s = n(26),
l = n(130),
u = n(42),
c = n(86),
f = n(9)("iterator"),
d = !([].keys && "next" in [].keys()),
h = function() {
return this
};
t.exports = function(t, e, n, v, p, _, m) {
l(n, e, v);
var g, y, x, b = function(t) {
if (!d && t in T) return T[t];
switch (t) {
case "keys":
case "values":
return function() {
return new n(this, t)
}
}
return function() {
return new n(this, t)
}
},
S = e + " Iterator",
w = "values" == p,
E = !1,
T = t.prototype,
A = T[f] || T["@@iterator"] || p && T[p],
P = A || b(p),
I = p ? w ? b("entries") : P: void 0,
k = "Array" == e ? T.entries || A: A;
if (k && (x = c(k.call(new t))) !== Object.prototype && x.next && (u(x, S, !0), i || "function" == typeof x[f] || a(x, f, h)), w && A && "values" !== A.name && (E = !0, P = function() {
return A.call(this)
}), i && !m || !d && !E && T[f] || a(T, f, P), s[e] = P, s[S] = h, p) if (g = {
values: w ? P: b("values"),
keys: _ ? P: b("keys"),
entries: I
},
m) for (y in g) y in T || r(T, y, g[y]);
else o(o.P + o.F * (d || E), e, g);
return g
}
},
function(t, e) {},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = function() {
function t(e, n) { (0, r.
default)(this, t),
this.x = e,
this.y = n
}
return (0, s.
default)(t, [{
key: "toString",
value: function() {
return this.x + ", " + this.y
}
},
{
key: "getX",
value: function() {
return this.x
}
},
{
key: "getY",
value: function() {
return this.y
}
},
{
key: "clone",
value: function() {
return new t(this.x, this.y)
}
},
{
key: "add",
value: function(t) {
return this.clone()._add(t)
}
},
{
key: "sub",
value: function(t) {
return this.clone()._sub(t)
}
},
{
key: "mult",
value: function(t) {
return this.clone()._mult(t)
}
},
{
key: "div",
value: function(t) {
return this.clone()._div(t)
}
},
{
key: "rotate",
value: function(t) {
return this.clone()._rotate(t)
}
},
{
key: "matMult",
value: function(t) {
return this.clone()._matMult(t)
}
},
{
key: "unit",
value: function() {
return this.clone()._unit()
}
},
{
key: "perp",
value: function() {
return this.clone()._perp()
}
},
{
key: "round",
value: function() {
return this.clone()._round()
}
},
{
key: "mag",
value: function() {
return Math.sqrt(this.magSq())
}
},
{
key: "magSq",
value: function() {
return this.x * this.x + this.y * this.y
}
},
{
key: "equals",
value: function(t) {
return this.x === t.x && this.y === t.y
}
},
{
key: "dist",
value: function(t) {
return Math.sqrt(this.distSqr(t))
}
},
{
key: "distSqr",
value: function(t) {
var e = t.x - this.x,
n = t.y - this.y;
return e * e + n * n
}
},
{
key: "angle",
value: function() {
return Math.atan2(this.y, this.x)
}
},
{
key: "angleTo",
value: function(t) {
return Math.atan2(this.y - t.y, this.x - t.x)
}
},
{
key: "angleWith",
value: function(t) {
return this.angleWithSep(t.x, t.y)
}
},
{
key: "angleWithSep",
value: function(t, e) {
return Math.atan2(this.x * e - this.y * t, this.x * t + this.y * e)
}
},
{
key: "normalize",
value: function() {
return this.clone()._unit()
}
},
{
key: "dot",
value: function(t) {
return this.x * t.x + this.y * t.y
}
},
{
key: "length",
value: function() {
return this.mag()
}
},
{
key: "lengthSq",
value: function() {
return this.magSq()
}
},
{
key: "_matMult",
value: function(t) {
var e = t[0] * this.x + t[1] * this.y,
n = t[2] * this.x + t[3] * this.y;
return this.x = e,
this.y = n,
this
}
},
{
key: "_add",
value: function(t) {
return this.x += t.x,
this.y += t.y,
this
}
},
{
key: "_sub",
value: function(t) {
return this.x -= t.x,
this.y -= t.y,
this
}
},
{
key: "_mult",
value: function(t) {
return this.x *= t,
this.y *= t,
this
}
},
{
key: "_div",
value: function(t) {
return this.x /= t,
this.y /= t,
this
}
},
{
key: "_unit",
value: function() {
return 0 === this.x && 0 === this.y ? this: (this._div(this.mag()), this)
}
},
{
key: "_perp",
value: function() {
var t = this.y;
return this.y = this.x,
this.x = -t,
this
}
},
{
key: "_rotate",
value: function(t) {
var e = Math.cos(t),
n = Math.sin(t),
i = e * this.x - n * this.y,
o = n * this.x + e * this.y;
return this.x = i,
this.y = o,
this
}
},
{
key: "_round",
value: function() {
return this.x = Math.round(this.x),
this.y = Math.round(this.y),
this
}
}]),
t
} ();
l.convert = function(t) {
return t instanceof l ? t: Array.isArray(t) ? new l(t[0], t[1]) : "x" in t && "y" in t && "number" == typeof t.x && "number" == typeof t.y ? new l(t.x, t.y) : t
},
t.exports = l
},
function(t, e, n) {
t.exports = {
default:
n(161),
__esModule: !0
}
},
function(t, e) {
e.f = Object.getOwnPropertySymbols
},
function(t, e, n) {
t.exports = {
default:
n(159),
__esModule: !0
}
},
function(t, e, n) {
var i = n(353)("wks"),
o = n(270),
r = n(62).Symbol,
a = "function" == typeof r; (t.exports = function(t) {
return i[t] || (i[t] = a && r[t] || (a ? r: o)("Symbol." + t))
}).store = i
},
function(t, e, n) {
"use strict";
var i = n(25),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i),
r = n(29);
e.getJSON = function(t, n, i, o) {
o = o || 0;
var a = void 0,
s = void 0,
l = new XMLHttpRequest;
return l.open("GET", n, !0),
l.setRequestHeader("Accept", "application/json"),
l.onloadstart = function() {
return a = +new Date
},
l.onerror = function() {
console.error(l.response, l, n),
o > 2 ? i(new r.AJAXError(n, 0)) : (o += 1, e.getJSON(t, n, i, o))
},
l.onload = function() {
if (l.status >= 200 && l.status < 300 && l.response) {
s = +new Date;
var t = void 0;
try {
t = JSON.parse(l.response)
} catch(t) {
return i(t)
}
i(null, t, s - a)
} else i(new r.AJAXError(l.statusText, l.status))
},
l.send(),
l
},
e.getArrayBuffer = function(t, e) {
var n = new XMLHttpRequest;
return n.open("GET", t, !0),
n.responseType = "arraybuffer",
n.onerror = function(t) {
e(t)
},
n.onload = function() {
if (0 === n.response.byteLength && 200 === n.status) return e(new Error("http status 200 returned without content."));
n.status >= 200 && n.status < 300 && n.response ? e(null, {
data: n.response,
cacheControl: n.getResponseHeader("Cache-Control"),
expires: n.getResponseHeader("Expires")
}) : e(new r.AJAXError(n.statusText, n.status))
},
n.send(),
n
},
e.getImage = function(t, e) {
var n = new XMLHttpRequest,
i = new o.
default(function(i, o) {
n.open("GET", t),
n.responseType = "blob",
n.timeout = e,
n.onload = function() {
n.status >= 200 && n.status < 300 && n.response ? (0 === n.response.size && o(new r.AJAXError("The size of image is 0", 404)), i(n.response)) : o(new r.AJAXError(n.statusText, n.status))
},
n.onerror = function() {
o(new r.AJAXError("error", 0))
},
n.ontimeout = function() {
o(new r.AJAXError("timeout", 0))
},
n.onabort = function() {
o(new r.AJAXError("abort", 0))
},
n.send()
});
return {
xhr: n,
promise: i
}
},
e.getImageData = function(t, n) {
return e.getArrayBuffer(t,
function(t, e) {
if (t) return n(t);
n(null, e)
})
}
},
function(t, e, n) {
var i = n(36);
t.exports = Object("z").propertyIsEnumerable(0) ? Object: function(t) {
return "String" == i(t) ? t.split("") : Object(t)
}
},
function(t, e, n) {
t.exports = n(19)
},
function(t, e, n) {
t.exports = {
default:
n(158),
__esModule: !0
}
},
function(t, e, n) {
var i = n(8).document;
t.exports = i && i.documentElement
},
function(t, e, n) {
t.exports = !n(12) && !n(30)(function() {
return 7 != Object.defineProperty(n(57)("div"), "a", {
get: function() {
return 7
}
}).a
})
},
function(t, e, n) {
var i = n(14),
o = n(13),
r = n(34);
t.exports = n(12) ? Object.defineProperties: function(t, e) {
o(t);
for (var n, a = r(e), s = a.length, l = 0; s > l;) i.f(t, n = a[l++], e[n]);
return t
}
},
function(t, e, n) {
var i = n(21),
o = n(31),
r = n(54)("IE_PROTO"),
a = Object.prototype;
t.exports = Object.getPrototypeOf ||
function(t) {
return t = o(t),
i(t, r) ? t[r] : "function" == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype: t instanceof Object ? a: null
}
},
function(t, e, n) {
var i = n(21),
o = n(18),
r = n(129)(!1),
a = n(54)("IE_PROTO");
t.exports = function(t, e) {
var n, s = o(t),
l = 0,
u = [];
for (n in s) n != a && i(s, n) && u.push(n);
for (; e.length > l;) i(s, n = e[l++]) && (~r(u, n) || u.push(n));
return u
}
},
function(t, e, n) {
var i = n(234),
o = Math.min;
t.exports = function(t) {
return t > 0 ? o(i(t), 9007199254740991) : 0
}
},
function(t, e, n) {
"use strict";
var i = n(208),
o = i && i.setItem && i.getItem;
t.exports = {
set: function(t, e, n) { (null !== e ? i.setItem(t, e) : i.removeItem(t)).then(function() {
n && n()
},
function(t) {
console.error(t),
n && n(t)
})
},
get: function(t, e) {
i.getItem(t).then(function(t) {
e && e(t)
},
function(t) {
console.error(t),
e && e(null)
})
},
support: function() {
return o
}
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.SOURCE_TYPE = {
vector: "vector",
geojson: "geojson",
geoTask: "geo_task",
imageTile: "image_tile",
indoor: "indoor",
indoorIndex: "indoor_index",
ground: "ground",
traffic: "traffic"
}
},
function(t, e) {
t.exports = function(t, e, n, i) {
if (! (t instanceof e) || void 0 !== i && i in t) throw TypeError(n + ": incorrect invocation!");
return t
}
},
function(t, e, n) {
var i = n(26),
o = n(9)("iterator"),
r = Array.prototype;
t.exports = function(t) {
return void 0 !== t && (i.Array === t || r[o] === t)
}
},
function(t, e, n) {
var i = n(13);
t.exports = function(t, e, n, o) {
try {
return o ? e(i(n)[0], n[1]) : e(n)
} catch(e) {
var r = t.
return;
throw void 0 !== r && i(r.call(t)),
e
}
}
},
function(t, e, n) {
var i = n(9)("iterator"),
o = !1;
try {
var r = [7][i]();
r.
return = function() {
o = !0
},
Array.from(r,
function() {
throw 2
})
} catch(t) {}
t.exports = function(t, e) {
if (!e && !o) return ! 1;
var n = !1;
try {
var r = [7],
a = r[i]();
a.next = function() {
return {
done: n = !0
}
},
r[i] = function() {
return a
},
t(r)
} catch(t) {}
return n
}
},
function(t, e, n) {
var i = n(18),
o = n(96).f,
r = {}.toString,
a = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [],
s = function(t) {
try {
return o(t)
} catch(t) {
return a.slice()
}
};
t.exports.f = function(t) {
return a && "[object Window]" == r.call(t) ? s(t) : o(i(t))
}
},
function(t, e, n) {
var i = n(87),
o = n(58).concat("length", "prototype");
e.f = Object.getOwnPropertyNames ||
function(t) {
return i(t, o)
}
},
function(t, e) {
t.exports = function(t) {
try {
return {
e: !1,
v: t()
}
} catch(t) {
return {
e: !0,
v: t
}
}
}
},
function(t, e, n) {
var i = n(13),
o = n(7),
r = n(67);
t.exports = function(t, e) {
if (i(t), o(e) && e.constructor === t) return e;
var n = r.f(t);
return (0, n.resolve)(e),
n.promise
}
},
function(t, e, n) {
var i = n(19);
t.exports = function(t, e, n) {
for (var o in e) n && t[o] ? t[o] = e[o] : i(t, o, e[o]);
return t
}
},
function(t, e, n) {
var i = n(13),
o = n(44),
r = n(9)("species");
t.exports = function(t, e) {
var n, a = i(t).constructor;
return void 0 === a || void 0 == (n = i(a)[r]) ? e: o(n)
}
},
function(t, e, n) {
var i, o, r, a = n(22),
s = n(179),
l = n(83),
u = n(57),
c = n(8),
f = c.process,
d = c.setImmediate,
h = c.clearImmediate,
v = c.MessageChannel,
p = c.Dispatch,
_ = 0,
m = {},
g = function() {
var t = +this;
if (m.hasOwnProperty(t)) {
var e = m[t];
delete m[t],
e()
}
},
y = function(t) {
g.call(t.data)
};
d && h || (d = function(t) {
for (var e = [], n = 1; arguments.length > n;) e.push(arguments[n++]);
return m[++_] = function() {
s("function" == typeof t ? t: Function(t), e)
},
i(_),
_
},
h = function(t) {
delete m[t]
},
"process" == n(36)(f) ? i = function(t) {
f.nextTick(a(g, t, 1))
}: p && p.now ? i = function(t) {
p.now(a(g, t, 1))
}: v ? (o = new v, r = o.port2, o.port1.onmessage = y, i = a(r.postMessage, r, 1)) : c.addEventListener && "function" == typeof postMessage && !c.importScripts ? (i = function(t) {
c.postMessage(t + "", "*")
},
c.addEventListener("message", y, !1)) : i = "onreadystatechange" in u("script") ?
function(t) {
l.appendChild(u("script")).onreadystatechange = function() {
l.removeChild(this),
g.call(t)
}
}: function(t) {
setTimeout(a(g, t, 1), 0)
}),
t.exports = {
set: d,
clear: h
}
},
function(t, e) {
var n = t.exports = {
version: "2.6.9"
};
"number" == typeof __e && (__e = n)
},
function(t, e, n) {
t.exports = !n(61)(function() {
return 7 != Object.defineProperty({},
"a", {
get: function() {
return 7
}
}).a
})
},
function(t, e, n) {
var i = n(60),
o = n(526),
r = n(254),
a = Object.defineProperty;
e.f = n(103) ? Object.defineProperty: function(t, e, n) {
if (i(t), e = r(e, !0), i(n), o) try {
return a(t, e, n)
} catch(t) {}
if ("get" in n || "set" in n) throw TypeError("Accessors not supported!");
return "value" in n && (t[e] = n.value),
t
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(122),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = o.
default[0]
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
n[t] = n[t] || [],
n[t].push(e)
}
function r(t, e, n) {
if (n && n[t]) {
var i = n[t].indexOf(e); - 1 !== i && n[t].splice(i, 1)
}
}
var a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(10),
m = n(120),
g = function(t) {
function e() { (0, u.
default)(this, e);
var t = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this));
return t.setMaxListeners(500),
t
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "_on",
value: function(t, e) {
return this._listeners = this._listeners || {},
o(t, e, this._listeners),
this.on(t, e),
e
}
},
{
key: "_off",
value: function(t, e) {
return r(t, e, this._listeners),
r(t, e, this._oneTimeListeners),
this.off(t, e),
this
}
},
{
key: "_once",
value: function(t, e) {
return this._oneTimeListeners = this._oneTimeListeners || {},
o(t, e, this._oneTimeListeners),
this.once(t, e),
e
}
},
{
key: "_fire",
value: function(t, e, n) {
if (this._listens(t)) {
e = n ? _.extend({},
e, {
type: t
}) : _.extend({},
e, {
type: t,
target: this
});
for (var i = this._listeners && this._listeners[t] ? this._listeners[t].slice() : [], o = 0; o < i.length; o++) i[o].call(this, e);
for (var a = this._oneTimeListeners && this._oneTimeListeners[t] ? this._oneTimeListeners[t].slice() : [], s = 0; s < a.length; s++) a[s].call(this, e),
r(t, a[s], this._oneTimeListeners);
this._eventedParent && this._eventedParent._fire(t, _.extend({},
e, "function" == typeof this._eventedParentData ? this._eventedParentData() : this._eventedParentData))
} else _.endsWith(t, "error") && console.error(e && e.error || e || "Empty error event");
return this.emit(t, e),
this
}
},
{
key: "_listens",
value: function(t) {
return this._listeners && this._listeners[t] && this._listeners[t].length > 0 || this._oneTimeListeners && this._oneTimeListeners[t] && this._oneTimeListeners[t].length > 0 || this._eventedParent && this._eventedParent._listens(t) || this.listenerCount(t) > 0
}
},
{
key: "_setEventedParent",
value: function(t, e) {
return this._eventedParent = t,
this._eventedParentData = e,
this
}
},
{
key: "_clearAllListeners",
value: function() {
this._listeners = {},
this.removeAllListeners()
}
}]),
e
} (m);
t.exports = g
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Vector4 = e.Vector3 = e.Matrix4 = void 0;
var i = n(20),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i),
r = function(t) {
var e = void 0,
n = void 0,
i = void 0;
if (t && "object" === (void 0 === t ? "undefined": (0, o.
default)(t)) && t.hasOwnProperty("elements")) {
for (n = t.elements, i = new Float32Array(16), e = 0; e < 16; ++e) i[e] = n[e];
this.elements = i
} else {
var r = new Float32Array(16);
r[0] = 1,
r[1] = 0,
r[2] = 0,
r[3] = 0,
r[4] = 0,
r[5] = 1,
r[6] = 0,
r[7] = 0,
r[8] = 0,
r[9] = 0,
r[10] = 1,
r[11] = 0,
r[12] = 0,
r[13] = 0,
r[14] = 0,
r[15] = 1,
this.elements = r
}
};
r.prototype.setIdentity = function() {
var t = this.elements;
return t[0] = 1,
t[4] = 0,
t[8] = 0,
t[12] = 0,
t[1] = 0,
t[5] = 1,
t[9] = 0,
t[13] = 0,
t[2] = 0,
t[6] = 0,
t[10] = 1,
t[14] = 0,
t[3] = 0,
t[7] = 0,
t[11] = 0,
t[15] = 1,
this
},
r.prototype.clone = function() {
var t = new r,
e = this.elements,
n = t.elements;
return n[0] = e[0],
n[1] = e[1],
n[2] = e[2],
n[3] = e[3],
n[4] = e[4],
n[5] = e[5],
n[6] = e[6],
n[7] = e[7],
n[8] = e[8],
n[9] = e[9],
n[10] = e[10],
n[11] = e[11],
n[12] = e[12],
n[13] = e[13],
n[14] = e[14],
n[15] = e[15],
t
},
r.prototype.set = function(t) {
var e = void 0,
n = t.elements,
i = this.elements;
if (n !== i) {
for (e = 0; e < 16; ++e) i[e] = n[e];
return this
}
},
r.prototype.concat = function(t) {
var e = void 0,
n = void 0,
i = void 0,
o = void 0,
r = void 0,
a = void 0,
s = this.elements,
l = this.elements;
if (n = t.elements, s === n) for (n = new Float32Array(16), e = 0; e < 16; ++e) n[e] = s[e];
for (e = 0; e < 4; e++) i = l[e],
o = l[e + 4],
r = l[e + 8],
a = l[e + 12],
s[e] = i * n[0] + o * n[1] + r * n[2] + a * n[3],
s[e + 4] = i * n[4] + o * n[5] + r * n[6] + a * n[7],
s[e + 8] = i * n[8] + o * n[9] + r * n[10] + a * n[11],
s[e + 12] = i * n[12] + o * n[13] + r * n[14] + a * n[15];
return this
},
r.prototype.multiply = r.prototype.concat,
r.prototype.multiplyVector3 = function(t) {
var e = this.elements,
n = t.elements,
i = new a,
o = i.elements;
return o[0] = n[0] * e[0] + n[1] * e[4] + n[2] * e[8] + e[12],
o[1] = n[0] * e[1] + n[1] * e[5] + n[2] * e[9] + e[13],
o[2] = n[0] * e[2] + n[1] * e[6] + n[2] * e[10] + e[14],
i
},
r.prototype.multiplyVector4 = function(t) {
var e = this.elements,
n = t.elements,
i = new s,
o = i.elements;
return o[0] = n[0] * e[0] + n[1] * e[4] + n[2] * e[8] + n[3] * e[12],
o[1] = n[0] * e[1] + n[1] * e[5] + n[2] * e[9] + n[3] * e[13],
o[2] = n[0] * e[2] + n[1] * e[6] + n[2] * e[10] + n[3] * e[14],
o[3] = n[0] * e[3] + n[1] * e[7] + n[2] * e[11] + n[3] * e[15],
i
},
r.prototype.transpose = function() {
var t = void 0,
e = this.elements;
return t = e[1],
e[1] = e[4],
e[4] = t,
t = e[2],
e[2] = e[8],
e[8] = t,
t = e[3],
e[3] = e[12],
e[12] = t,
t = e[6],
e[6] = e[9],
e[9] = t,
t = e[7],
e[7] = e[13],
e[13] = t,
t = e[11],
e[11] = e[14],
e[14] = t,
this
},
r.prototype.setInverseOf = function(t) {
var e = void 0,
n = void 0,
i = t.elements,
o = this.elements,
r = new Float32Array(16);
if (r[0] = i[5] * i[10] * i[15] - i[5] * i[11] * i[14] - i[9] * i[6] * i[15] + i[9] * i[7] * i[14] + i[13] * i[6] * i[11] - i[13] * i[7] * i[10], r[4] = -i[4] * i[10] * i[15] + i[4] * i[11] * i[14] + i[8] * i[6] * i[15] - i[8] * i[7] * i[14] - i[12] * i[6] * i[11] + i[12] * i[7] * i[10], r[8] = i[4] * i[9] * i[15] - i[4] * i[11] * i[13] - i[8] * i[5] * i[15] + i[8] * i[7] * i[13] + i[12] * i[5] * i[11] - i[12] * i[7] * i[9], r[12] = -i[4] * i[9] * i[14] + i[4] * i[10] * i[13] + i[8] * i[5] * i[14] - i[8] * i[6] * i[13] - i[12] * i[5] * i[10] + i[12] * i[6] * i[9], r[1] = -i[1] * i[10] * i[15] + i[1] * i[11] * i[14] + i[9] * i[2] * i[15] - i[9] * i[3] * i[14] - i[13] * i[2] * i[11] + i[13] * i[3] * i[10], r[5] = i[0] * i[10] * i[15] - i[0] * i[11] * i[14] - i[8] * i[2] * i[15] + i[8] * i[3] * i[14] + i[12] * i[2] * i[11] - i[12] * i[3] * i[10], r[9] = -i[0] * i[9] * i[15] + i[0] * i[11] * i[13] + i[8] * i[1] * i[15] - i[8] * i[3] * i[13] - i[12] * i[1] * i[11] + i[12] * i[3] * i[9], r[13] = i[0] * i[9] * i[14] - i[0] * i[10] * i[13] - i[8] * i[1] * i[14] + i[8] * i[2] * i[13] + i[12] * i[1] * i[10] - i[12] * i[2] * i[9], r[2] = i[1] * i[6] * i[15] - i[1] * i[7] * i[14] - i[5] * i[2] * i[15] + i[5] * i[3] * i[14] + i[13] * i[2] * i[7] - i[13] * i[3] * i[6], r[6] = -i[0] * i[6] * i[15] + i[0] * i[7] * i[14] + i[4] * i[2] * i[15] - i[4] * i[3] * i[14] - i[12] * i[2] * i[7] + i[12] * i[3] * i[6], r[10] = i[0] * i[5] * i[15] - i[0] * i[7] * i[13] - i[4] * i[1] * i[15] + i[4] * i[3] * i[13] + i[12] * i[1] * i[7] - i[12] * i[3] * i[5], r[14] = -i[0] * i[5] * i[14] + i[0] * i[6] * i[13] + i[4] * i[1] * i[14] - i[4] * i[2] * i[13] - i[12] * i[1] * i[6] + i[12] * i[2] * i[5], r[3] = -i[1] * i[6] * i[11] + i[1] * i[7] * i[10] + i[5] * i[2] * i[11] - i[5] * i[3] * i[10] - i[9] * i[2] * i[7] + i[9] * i[3] * i[6], r[7] = i[0] * i[6] * i[11] - i[0] * i[7] * i[10] - i[4] * i[2] * i[11] + i[4] * i[3] * i[10] + i[8] * i[2] * i[7] - i[8] * i[3] * i[6], r[11] = -i[0] * i[5] * i[11] + i[0] * i[7] * i[9] + i[4] * i[1] * i[11] - i[4] * i[3] * i[9] - i[8] * i[1] * i[7] + i[8] * i[3] * i[5], r[15] = i[0] * i[5] * i[10] - i[0] * i[6] * i[9] - i[4] * i[1] * i[10] + i[4] * i[2] * i[9] + i[8] * i[1] * i[6] - i[8] * i[2] * i[5], 0 === (n = i[0] * r[0] + i[1] * r[4] + i[2] * r[8] + i[3] * r[12])) return this;
for (n = 1 / n, e = 0; e < 16; e++) o[e] = r[e] * n;
return this
},
r.prototype.invert = function() {
return this.setInverseOf(this)
},
r.prototype.setOrtho = function(t, e, n, i, o, r) {
if (t === e || n === i || o === r) throw "null frustum";
var a = 1 / (e - t),
s = 1 / (i - n),
l = 1 / (r - o),
u = this.elements;
return u[0] = 2 * a,
u[1] = 0,
u[2] = 0,
u[3] = 0,
u[4] = 0,
u[5] = 2 * s,
u[6] = 0,
u[7] = 0,
u[8] = 0,
u[9] = 0,
u[10] = -2 * l,
u[11] = 0,
u[12] = -(e + t) * a,
u[13] = -(i + n) * s,
u[14] = -(r + o) * l,
u[15] = 1,
this
},
r.prototype.ortho = function(t, e, n, i, o, a) {
return this.concat((new r).setOrtho(t, e, n, i, o, a))
},
r.prototype.setFrustum = function(t, e, n, i, o, r) {
if (t === e || i === n || o === r) throw "null frustum";
if (o <= 0) throw "near <= 0";
if (r <= 0) throw "far <= 0";
var a = 1 / (e - t),
s = 1 / (i - n),
l = 1 / (r - o),
u = this.elements;
return u[0] = 2 * o * a,
u[1] = 0,
u[2] = 0,
u[3] = 0,
u[4] = 0,
u[5] = 2 * o * s,
u[6] = 0,
u[7] = 0,
u[8] = (e + t) * a,
u[9] = (i + n) * s,
u[10] = -(r + o) * l,
u[11] = -1,
u[12] = 0,
u[13] = 0,
u[14] = -2 * o * r * l,
u[15] = 0,
this
},
r.prototype.frustum = function(t, e, n, i, o, a) {
return this.concat((new r).setFrustum(t, e, n, i, o, a))
},
r.prototype.setPerspective = function(t, e, n, i) {
var o = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : 0,
r = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : 0;
if (n === i || 0 === e) throw "null frustum";
if (n <= 0) throw "near <= 0";
if (i <= 0) throw "far <= 0";
t = Math.PI * t / 180 / 2;
var a = Math.sin(t);
if (0 === a) throw "null frustum";
var s = 1 / (i - n),
l = Math.cos(t) / a,
u = this.elements;
return u[0] = l / e,
u[1] = 0,
u[2] = 0,
u[3] = 0,
u[4] = 0,
u[5] = l,
u[6] = 0,
u[7] = 0,
u[8] = -o,
u[9] = -r,
u[10] = -(i + n) * s,
u[11] = -1,
u[12] = 0,
u[13] = 0,
u[14] = -2 * n * i * s,
u[15] = 0,
this
},
r.prototype.perspective = function(t, e, n, i) {
return this.concat((new r).setPerspective(t, e, n, i))
},
r.prototype.setScale = function(t, e, n) {
var i = this.elements;
return i[0] = t,
i[4] = 0,
i[8] = 0,
i[12] = 0,
i[1] = 0,
i[5] = e,
i[9] = 0,
i[13] = 0,
i[2] = 0,
i[6] = 0,
i[10] = n,
i[14] = 0,
i[3] = 0,
i[7] = 0,
i[11] = 0,
i[15] = 1,
this
},
r.prototype.scale = function(t, e, n) {
var i = this.elements;
return i[0] *= t,
i[4] *= e,
i[8] *= n,
i[1] *= t,
i[5] *= e,
i[9] *= n,
i[2] *= t,
i[6] *= e,
i[10] *= n,
i[3] *= t,
i[7] *= e,
i[11] *= n,
this
},
r.prototype.setTranslate = function(t, e, n) {
var i = this.elements;
return i[0] = 1,
i[4] = 0,
i[8] = 0,
i[12] = t,
i[1] = 0,
i[5] = 1,
i[9] = 0,
i[13] = e,
i[2] = 0,
i[6] = 0,
i[10] = 1,
i[14] = n,
i[3] = 0,
i[7] = 0,
i[11] = 0,
i[15] = 1,
this
},
r.prototype.translate = function(t, e, n) {
var i = this.elements;
return i[12] += i[0] * t + i[4] * e + i[8] * n,
i[13] += i[1] * t + i[5] * e + i[9] * n,
i[14] += i[2] * t + i[6] * e + i[10] * n,
i[15] += i[3] * t + i[7] * e + i[11] * n,
this
},
r.prototype.setRotate = function(t, e, n, i) {
var o = void 0,
r = void 0,
a = void 0,
s = void 0,
l = void 0,
u = void 0,
c = void 0,
f = void 0,
d = void 0,
h = void 0;
t = Math.PI * t / 180;
var v = this.elements;
o = Math.sin(t);
var p = Math.cos(t);
return 0 !== e && 0 === n && 0 === i ? (e < 0 && (o = -o), v[0] = 1, v[4] = 0, v[8] = 0, v[12] = 0, v[1] = 0, v[5] = p, v[9] = -o, v[13] = 0, v[2] = 0, v[6] = o, v[10] = p, v[14] = 0, v[3] = 0, v[7] = 0, v[11] = 0, v[15] = 1) : 0 === e && 0 !== n && 0 === i ? (n < 0 && (o = -o), v[0] = p, v[4] = 0, v[8] = o, v[12] = 0, v[1] = 0, v[5] = 1, v[9] = 0, v[13] = 0, v[2] = -o, v[6] = 0, v[10] = p, v[14] = 0, v[3] = 0, v[7] = 0, v[11] = 0, v[15] = 1) : 0 === e && 0 === n && 0 !== i ? (i < 0 && (o = -o), v[0] = p, v[4] = -o, v[8] = 0, v[12] = 0, v[1] = o, v[5] = p, v[9] = 0, v[13] = 0, v[2] = 0, v[6] = 0, v[10] = 1, v[14] = 0, v[3] = 0, v[7] = 0, v[11] = 0, v[15] = 1) : (r = Math.sqrt(e * e + n * n + i * i), 1 !== r && (a = 1 / r, e *= a, n *= a, i *= a), s = 1 - p, l = e * n, u = n * i, c = i * e, f = e * o, d = n * o, h = i * o, v[0] = e * e * s + p, v[1] = l * s + h, v[2] = c * s - d, v[3] = 0, v[4] = l * s - h, v[5] = n * n * s + p, v[6] = u * s + f, v[7] = 0, v[8] = c * s + d, v[9] = u * s - f, v[10] = i * i * s + p, v[11] = 0, v[12] = 0, v[13] = 0, v[14] = 0, v[15] = 1),
this
},
r.prototype.rotate = function(t, e, n, i) {
return this.concat((new r).setRotate(t, e, n, i))
},
r.prototype.setLookAt = function(t, e, n, i, o, r, a, s, l) {
var u = void 0,
c = void 0,
f = void 0,
d = void 0,
h = void 0,
v = void 0;
u = i - t,
c = o - e,
f = r - n;
var p = 1 / Math.sqrt(u * u + c * c + f * f);
u *= p,
c *= p,
f *= p,
d = c * l - f * s,
h = f * a - u * l,
v = u * s - c * a;
var _ = 1 / Math.sqrt(d * d + h * h + v * v);
d *= _,
h *= _,
v *= _;
var m = h * f - v * c,
g = v * u - d * f,
y = d * c - h * u,
x = this.elements;
return x[0] = d,
x[1] = m,
x[2] = -u,
x[3] = 0,
x[4] = h,
x[5] = g,
x[6] = -c,
x[7] = 0,
x[8] = v,
x[9] = y,
x[10] = -f,
x[11] = 0,
x[12] = 0,
x[13] = 0,
x[14] = 0,
x[15] = 1,
this.translate( - t, -e, -n)
},
r.prototype.lookAt = function(t, e, n, i, o, a, s, l, u) {
return this.concat((new r).setLookAt(t, e, n, i, o, a, s, l, u))
},
r.prototype.dropShadow = function(t, e) {
var n = new r,
i = n.elements,
o = t[0] * e[0] + t[1] * e[1] + t[2] * e[2] + t[3] * e[3];
return i[0] = o - e[0] * t[0],
i[1] = -e[1] * t[0],
i[2] = -e[2] * t[0],
i[3] = -e[3] * t[0],
i[4] = -e[0] * t[1],
i[5] = o - e[1] * t[1],
i[6] = -e[2] * t[1],
i[7] = -e[3] * t[1],
i[8] = -e[0] * t[2],
i[9] = -e[1] * t[2],
i[10] = o - e[2] * t[2],
i[11] = -e[3] * t[2],
i[12] = -e[0] * t[3],
i[13] = -e[1] * t[3],
i[14] = -e[2] * t[3],
i[15] = o - e[3] * t[3],
this.concat(n)
},
r.prototype.dropShadowDirectionally = function(t, e, n, i, o, r, a, s, l) {
var u = i * t + o * e + r * n;
return this.dropShadow([t, e, n, -u], [a, s, l, 0])
};
var a = function() {
var t = 1 === arguments.length ? arguments[0] : arguments,
e = new Float32Array(3);
t && "object" === (void 0 === t ? "undefined": (0, o.
default)(t)) && (e[0] = t[0], e[1] = t[1], e[2] = t[2]),
this.elements = e
};
a.prototype.normalize = function() {
var t = this.elements,
e = t[0],
n = t[1],
i = t[2],
o = Math.sqrt(e * e + n * n + i * i);
return o ? 1 === o ? this: (o = 1 / o, t[0] = e * o, t[1] = n * o, t[2] = i * o, this) : (t[0] = 0, t[1] = 0, t[2] = 0, this)
},
a.prototype.scale = function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1,
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1,
n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 1,
i = this.elements;
return i[0] *= t,
i[1] *= e,
i[2] *= n,
this
},
a.prototype.cross = function(t) {
var e = this.elements,
n = t.elements;
return new a(e[1] * n[2] - e[2] * n[1], e[2] * n[0] - e[0] * n[2], e[0] * n[1] - e[1] * n[0])
},
a.prototype.equals = function(t) {
var e = this.elements,
n = t.elements;
return e[0] === n[0] && e[1] === n[1] && e[2] === n[2]
};
var s = function() {
var t = 1 === arguments.length ? arguments[0] : arguments,
e = new Float32Array(4);
t && "object" === (void 0 === t ? "undefined": (0, o.
default)(t)) && (e[0] = t[0], e[1] = t[1], e[2] = t[2], e[3] = t[3]),
this.elements = e
};
s.prototype.set = function(t, e, n) {
this.elements[0] = t,
this.elements[1] = e,
this.elements[2] = n
},
s.prototype.multiply = function(t) {
return this.elements[0] *= t,
this.elements[1] *= t,
this.elements[2] *= t,
this.elements[3] *= t,
this
},
s.prototype.add = function(t) {
return this.elements[0] += t.elements[0],
this.elements[1] += t.elements[1],
this.elements[2] += t.elements[2],
this.elements[3] += t.elements[3],
this
},
s.prototype.minus = function(t) {
return this.elements[0] -= t.elements[0],
this.elements[1] -= t.elements[1],
this.elements[2] -= t.elements[2],
this.elements[3] -= t.elements[3],
this
},
e.Matrix4 = r,
e.Vector3 = a,
e.Vector4 = s
},
function(t, e) {
t.exports = function(t, e) {
return {
value: e,
done: !!t
}
}
},
,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Store = e.textures = void 0;
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = function() {},
u = function() {
function t(e, n, i, o) { (0, r.
default)(this, t),
this.max = n || 1e4,
this.type = e || "default",
this.count = 0,
this.store = {},
this.reduceRange = i || Math.max(1, ~~this.max / 100),
this.deleteCallback = o || l
}
return (0, s.
default)(t, [{
key: "set",
value: function(t, e) {
return this.count >= this.max && this.reduce(),
t in this.store || (this.count += 1),
this.store[t] = e,
e
}
},
{
key: "get",
value: function(t) {
return this.store[t]
}
},
{
key: "reduce",
value: function() {
var t = 0,
e = this.reduceRange;
for (var n in this.store) if (this.store.hasOwnProperty(n)) {
if (! (t < e)) break;
t += 1,
this.deleteCallback(this.store[n]),
delete this.store[n]
}
this.count -= e
}
},
{
key: "clear",
value: function() {
for (var t in this.store) this.store.hasOwnProperty(t) && (this.deleteCallback(this.store[t]), this.store[t] = null);
this.store = {},
this.count = 0
}
},
{
key: "exist",
value: function(t) {
return t in this.store
}
},
{
key: "remove",
value: function(t) {
t in this.store && (this.deleteCallback(this.store[t]), delete this.store[t], this.count -= 1)
}
}]),
t
} (),
c = new u("texture", 1e3);
e.textures = c,
e.Store = u
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(272))
} (0,
function(t) {
t.lib.Cipher ||
function(e) {
var n = t,
i = n.lib,
o = i.Base,
r = i.WordArray,
a = i.BufferedBlockAlgorithm,
s = n.enc,
l = (s.Utf8, s.Base64),
u = n.algo,
c = u.EvpKDF,
f = i.Cipher = a.extend({
cfg: o.extend(),
createEncryptor: function(t, e) {
return this.create(this._ENC_XFORM_MODE, t, e)
},
createDecryptor: function(t, e) {
return this.create(this._DEC_XFORM_MODE, t, e)
},
init: function(t, e, n) {
this.cfg = this.cfg.extend(n),
this._xformMode = t,
this._key = e,
this.reset()
},
reset: function() {
a.reset.call(this),
this._doReset()
},
process: function(t) {
return this._append(t),
this._process()
},
finalize: function(t) {
return t && this._append(t),
this._doFinalize()
},
keySize: 4,
ivSize: 4,
_ENC_XFORM_MODE: 1,
_DEC_XFORM_MODE: 2,
_createHelper: function() {
function t(t) {
return "string" == typeof t ? w: x
}
return function(e) {
return {
encrypt: function(n, i, o) {
return t(i).encrypt(e, n, i, o)
},
decrypt: function(n, i, o) {
return t(i).decrypt(e, n, i, o)
}
}
}
} ()
}),
d = (i.StreamCipher = f.extend({
_doFinalize: function() {
return this._process(!0)
},
blockSize: 1
}), n.mode = {}),
h = i.BlockCipherMode = o.extend({
createEncryptor: function(t, e) {
return this.Encryptor.create(t, e)
},
createDecryptor: function(t, e) {
return this.Decryptor.create(t, e)
},
init: function(t, e) {
this._cipher = t,
this._iv = e
}
}),
v = d.CBC = function() {
function t(t, n, i) {
var o = this._iv;
if (o) {
var r = o;
this._iv = e
} else var r = this._prevBlock;
for (var a = 0; a < i; a++) t[n + a] ^= r[a]
}
var n = h.extend();
return n.Encryptor = n.extend({
processBlock: function(e, n) {
var i = this._cipher,
o = i.blockSize;
t.call(this, e, n, o),
i.encryptBlock(e, n),
this._prevBlock = e.slice(n, n + o)
}
}),
n.Decryptor = n.extend({
processBlock: function(e, n) {
var i = this._cipher,
o = i.blockSize,
r = e.slice(n, n + o);
i.decryptBlock(e, n),
t.call(this, e, n, o),
this._prevBlock = r
}
}),
n
} (),
p = n.pad = {},
_ = p.Pkcs7 = {
pad: function(t, e) {
for (var n = 4 * e,
i = n - t.sigBytes % n,
o = i << 24 | i << 16 | i << 8 | i,
a = [], s = 0; s < i; s += 4) a.push(o);
var l = r.create(a, i);
t.concat(l)
},
unpad: function(t) {
var e = 255 & t.words[t.sigBytes - 1 >>> 2];
t.sigBytes -= e
}
},
m = (i.BlockCipher = f.extend({
cfg: f.cfg.extend({
mode: v,
padding: _
}),
reset: function() {
f.reset.call(this);
var t = this.cfg,
e = t.iv,
n = t.mode;
if (this._xformMode == this._ENC_XFORM_MODE) var i = n.createEncryptor;
else {
var i = n.createDecryptor;
this._minBufferSize = 1
}
this._mode && this._mode.__creator == i ? this._mode.init(this, e && e.words) : (this._mode = i.call(n, this, e && e.words), this._mode.__creator = i)
},
_doProcessBlock: function(t, e) {
this._mode.processBlock(t, e)
},
_doFinalize: function() {
var t = this.cfg.padding;
if (this._xformMode == this._ENC_XFORM_MODE) {
t.pad(this._data, this.blockSize);
var e = this._process(!0)
} else {
var e = this._process(!0);
t.unpad(e)
}
return e
},
blockSize: 4
}), i.CipherParams = o.extend({
init: function(t) {
this.mixIn(t)
},
toString: function(t) {
return (t || this.formatter).stringify(this)
}
})),
g = n.format = {},
y = g.OpenSSL = {
stringify: function(t) {
var e = t.ciphertext,
n = t.salt;
if (n) var i = r.create([1398893684, 1701076831]).concat(n).concat(e);
else var i = e;
return i.toString(l)
},
parse: function(t) {
var e = l.parse(t),
n = e.words;
if (1398893684 == n[0] && 1701076831 == n[1]) {
var i = r.create(n.slice(2, 4));
n.splice(0, 4),
e.sigBytes -= 16
}
return m.create({
ciphertext: e,
salt: i
})
}
},
x = i.SerializableCipher = o.extend({
cfg: o.extend({
format: y
}),
encrypt: function(t, e, n, i) {
i = this.cfg.extend(i);
var o = t.createEncryptor(n, i),
r = o.finalize(e),
a = o.cfg;
return m.create({
ciphertext: r,
key: n,
iv: a.iv,
algorithm: t,
mode: a.mode,
padding: a.padding,
blockSize: t.blockSize,
formatter: i.format
})
},
decrypt: function(t, e, n, i) {
return i = this.cfg.extend(i),
e = this._parse(e, i.format),
t.createDecryptor(n, i).finalize(e.ciphertext)
},
_parse: function(t, e) {
return "string" == typeof t ? e.parse(t, this) : t
}
}),
b = n.kdf = {},
S = b.OpenSSL = {
execute: function(t, e, n, i) {
i || (i = r.random(8));
var o = c.create({
keySize: e + n
}).compute(t, i),
a = r.create(o.words.slice(e), 4 * n);
return o.sigBytes = 4 * e,
m.create({
key: o,
iv: a,
salt: i
})
}
},
w = i.PasswordBasedCipher = x.extend({
cfg: x.cfg.extend({
kdf: S
}),
encrypt: function(t, e, n, i) {
i = this.cfg.extend(i);
var o = i.kdf.execute(n, t.keySize, t.ivSize);
i.iv = o.iv;
var r = x.encrypt.call(this, t, e, o.key, i);
return r.mixIn(o),
r
},
decrypt: function(t, e, n, i) {
i = this.cfg.extend(i),
e = this._parse(e, i.format);
var o = i.kdf.execute(n, t.keySize, t.ivSize, e.salt);
return i.iv = o.iv,
x.decrypt.call(this, t, e, o.key, i)
}
})
} ()
})
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
return {
x: t / n.width * 2 - 1,
y: -e / n.height * 2 + 1,
z: 1
}
}
function r(t, e, n) {
return {
x: (t + 1) / 2 * n.width,
y: (1 - e) / 2 * n.height
}
}
function a(t, e, n) {
var i = t.multiplyVector4(e),
o = i.elements.map(function(t) {
return t / i.elements[3]
}),
a = r(o[0], o[1], n);
return {
x: a.x,
y: a.y,
depthScale: 1
}
}
function s(t, e) {
var n = t.multiplyVector4(e);
return n.multiply(1 / n.elements[3])
}
function l(t, e) {
var n = t.clone().invert(),
i = new b.Vector4(e.x, e.y, 0, 1),
o = new b.Vector4(e.x, e.y, 1, 1),
r = n.multiplyVector4(i),
a = n.multiplyVector4(o);
r.multiply(1 / r.elements[3]),
a.multiply(1 / a.elements[3]);
var s = (0 - r.elements[2]) / (a.elements[2] - r.elements[2]),
l = r.add(a.minus(r).multiply(s));
return {
x: l.elements[0],
y: l.elements[1]
}
}
function u(t, e, n) {
var i = t.clone().invert(),
o = new b.Vector4(e.x, e.y, 0, 1),
r = new b.Vector4(e.x, e.y, 1, 1),
a = i.multiplyVector4(o),
s = i.multiplyVector4(r);
a.multiply(1 / a.elements[3]),
s.multiply(1 / s.elements[3]);
var l = new P.
default(new b.Vector3(a.elements), new b.Vector3(s.elements)),
u = new k.
default(new b.Vector3(0, 0, -n), n),
c = u.intersectWithLine(l);
if (c.length) {
var f = (0, v.
default)(c, 2),
d = f[0],
h = f[1],
p = d.elements[2] > h.elements[2] ? d: h,
_ = (0, v.
default)(p.elements, 3);
return {
x: _[0],
y: _[1],
z: _[2]
}
}
return null
}
function c(t) {
return 2 * Math.PI * _.
default / (Math.pow(2, t) * g.
default.tileSize)
}
function f(t) {
var e = t.x,
n = t.y;
return e = e / M * 180,
n = n / M * 180,
n = 180 / Math.PI * (2 * Math.atan(Math.exp(n * Math.PI / 180)) - Math.PI / 2),
new w.
default(n, e)
}
function d(t) {
var e = t.lng,
n = t.lat;
return e = e * M / 180,
n = Math.log(Math.tan((90 + n) * Math.PI / 360)) / (Math.PI / 180),
n = n * M / 180,
new T.
default(e, n)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var h = n(32),
v = i(h);
e.fromScreenToNdc = o,
e.fromNdcToScreen = r,
e.getScreenCoordsByCustomMatrix = a,
e.getNdcCoordsByCustomMatrix = s,
e.getZPlaneCoordsByCustomMatrix = l,
e.getSphereCoordsByCustomMatrix = u,
e.getSpatialResolution = c,
e.mercatorToLatLng = f,
e.latLngToMercator = d;
var p = n(295),
_ = i(p),
m = n(23),
g = i(m),
y = n(247),
x = i(y),
b = n(107),
S = n(47),
w = i(S),
E = n(74),
T = i(E),
A = n(377),
P = i(A),
I = n(378),
k = i(I),
L = x.
default[1],
M = L / 2
},
function(t, e, n) {
t.exports = {
default:
n(409),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(160),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(162),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(164),
__esModule: !0
}
},
function(t, e, n) {
var i = n(36);
t.exports = Array.isArray ||
function(t) {
return "Array" == i(t)
}
},
function(t, e, n) {
var i = n(12),
o = n(34),
r = n(18),
a = n(45).f;
t.exports = function(t) {
return function(e) {
for (var n, s = r(e), l = o(s), u = l.length, c = 0, f = []; u > c;) n = l[c++],
i && !a.call(s, n) || f.push(t ? [n, s[n]] : s[n]);
return f
}
}
},
function(t, e, n) {
"use strict";
var i = n(8),
o = n(2),
r = n(14),
a = n(12),
s = n(9)("species");
t.exports = function(t) {
var e = "function" == typeof o[t] ? o[t] : i[t];
a && e && !e[s] && r.f(e, s, {
configurable: !0,
get: function() {
return this
}
})
}
},
function(t, e, n) {
"use strict";
function i(t) {
console && console.warn && console.warn(t)
}
function o() {
o.init.call(this)
}
function r(t) {
return void 0 === t._maxListeners ? o.defaultMaxListeners: t._maxListeners
}
function a(t, e, n, o) {
var a, s, l;
if ("function" != typeof n) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof n);
if (s = t._events, void 0 === s ? (s = t._events = Object.create(null), t._eventsCount = 0) : (void 0 !== s.newListener && (t.emit("newListener", e, n.listener ? n.listener: n), s = t._events), l = s[e]), void 0 === l) l = s[e] = n,
++t._eventsCount;
else if ("function" == typeof l ? l = s[e] = o ? [n, l] : [l, n] : o ? l.unshift(n) : l.push(n), (a = r(t)) > 0 && l.length > a && !l.warned) {
l.warned = !0;
var u = new Error("Possible EventEmitter memory leak detected. " + l.length + " " + String(e) + " listeners added. Use emitter.setMaxListeners() to increase limit");
u.name = "MaxListenersExceededWarning",
u.emitter = t,
u.type = e,
u.count = l.length,
i(u)
}
return t
}
function s() {
for (var t = [], e = 0; e < arguments.length; e++) t.push(arguments[e]);
this.fired || (this.target.removeListener(this.type, this.wrapFn), this.fired = !0, _(this.listener, this.target, t))
}
function l(t, e, n) {
var i = {
fired: !1,
wrapFn: void 0,
target: t,
type: e,
listener: n
},
o = s.bind(i);
return o.listener = n,
i.wrapFn = o,
o
}
function u(t, e, n) {
var i = t._events;
if (void 0 === i) return [];
var o = i[e];
return void 0 === o ? [] : "function" == typeof o ? n ? [o.listener || o] : [o] : n ? h(o) : f(o, o.length)
}
function c(t) {
var e = this._events;
if (void 0 !== e) {
var n = e[t];
if ("function" == typeof n) return 1;
if (void 0 !== n) return n.length
}
return 0
}
function f(t, e) {
for (var n = new Array(e), i = 0; i < e; ++i) n[i] = t[i];
return n
}
function d(t, e) {
for (; e + 1 < t.length; e++) t[e] = t[e + 1];
t.pop()
}
function h(t) {
for (var e = new Array(t.length), n = 0; n < e.length; ++n) e[n] = t[n].listener || t[n];
return e
}
var v, p = "object" == typeof Reflect ? Reflect: null,
_ = p && "function" == typeof p.apply ? p.apply: function(t, e, n) {
return Function.prototype.apply.call(t, e, n)
};
v = p && "function" == typeof p.ownKeys ? p.ownKeys: Object.getOwnPropertySymbols ?
function(t) {
return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))
}: function(t) {
return Object.getOwnPropertyNames(t)
};
var m = Number.isNaN ||
function(t) {
return t !== t
};
t.exports = o,
o.EventEmitter = o,
o.prototype._events = void 0,
o.prototype._eventsCount = 0,
o.prototype._maxListeners = void 0;
var g = 10;
Object.defineProperty(o, "defaultMaxListeners", {
enumerable: !0,
get: function() {
return g
},
set: function(t) {
if ("number" != typeof t || t < 0 || m(t)) throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + t + ".");
g = t
}
}),
o.init = function() {
void 0 !== this._events && this._events !== Object.getPrototypeOf(this)._events || (this._events = Object.create(null), this._eventsCount = 0),
this._maxListeners = this._maxListeners || void 0
},
o.prototype.setMaxListeners = function(t) {
if ("number" != typeof t || t < 0 || m(t)) throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + t + ".");
return this._maxListeners = t,
this
},
o.prototype.getMaxListeners = function() {
return r(this)
},
o.prototype.emit = function(t) {
for (var e = [], n = 1; n < arguments.length; n++) e.push(arguments[n]);
var i = "error" === t,
o = this._events;
if (void 0 !== o) i = i && void 0 === o.error;
else if (!i) return ! 1;
if (i) {
var r;
if (e.length > 0 && (r = e[0]), r instanceof Error) throw r;
var a = new Error("Unhandled error." + (r ? " (" + r.message + ")": ""));
throw a.context = r,
a
}
var s = o[t];
if (void 0 === s) return ! 1;
if ("function" == typeof s) _(s, this, e);
else for (var l = s.length,
u = f(s, l), n = 0; n < l; ++n) _(u[n], this, e);
return ! 0
},
o.prototype.addListener = function(t, e) {
return a(this, t, e, !1)
},
o.prototype.on = o.prototype.addListener,
o.prototype.prependListener = function(t, e) {
return a(this, t, e, !0)
},
o.prototype.once = function(t, e) {
if ("function" != typeof e) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof e);
return this.on(t, l(this, t, e)),
this
},
o.prototype.prependOnceListener = function(t, e) {
if ("function" != typeof e) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof e);
return this.prependListener(t, l(this, t, e)),
this
},
o.prototype.removeListener = function(t, e) {
var n, i, o, r, a;
if ("function" != typeof e) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof e);
if (void 0 === (i = this._events)) return this;
if (void 0 === (n = i[t])) return this;
if (n === e || n.listener === e) 0 == --this._eventsCount ? this._events = Object.create(null) : (delete i[t], i.removeListener && this.emit("removeListener", t, n.listener || e));
else if ("function" != typeof n) {
for (o = -1, r = n.length - 1; r >= 0; r--) if (n[r] === e || n[r].listener === e) {
a = n[r].listener,
o = r;
break
}
if (o < 0) return this;
0 === o ? n.shift() : d(n, o),
1 === n.length && (i[t] = n[0]),
void 0 !== i.removeListener && this.emit("removeListener", t, a || e)
}
return this
},
o.prototype.off = o.prototype.removeListener,
o.prototype.removeAllListeners = function(t) {
var e, n, i;
if (void 0 === (n = this._events)) return this;
if (void 0 === n.removeListener) return 0 === arguments.length ? (this._events = Object.create(null), this._eventsCount = 0) : void 0 !== n[t] && (0 == --this._eventsCount ? this._events = Object.create(null) : delete n[t]),
this;
if (0 === arguments.length) {
var o, r = Object.keys(n);
for (i = 0; i < r.length; ++i)"removeListener" !== (o = r[i]) && this.removeAllListeners(o);
return this.removeAllListeners("removeListener"),
this._events = Object.create(null),
this._eventsCount = 0,
this
}
if ("function" == typeof(e = n[t])) this.removeListener(t, e);
else if (void 0 !== e) for (i = e.length - 1; i >= 0; i--) this.removeListener(t, e[i]);
return this
},
o.prototype.listeners = function(t) {
return u(this, t, !0)
},
o.prototype.rawListeners = function(t) {
return u(this, t, !1)
},
o.listenerCount = function(t, e) {
return "function" == typeof t.listenerCount ? t.listenerCount(e) : c.call(t, e)
},
o.prototype.listenerCount = c,
o.prototype.eventNames = function() {
return this._eventsCount > 0 ? v(this._events) : []
}
},
,
function(t, e, n) {
"use strict";
function i(t, e) {
t.loadScriptTime = e,
l[0] = t;
for (var n in t) r.hasOwnProperty(n) && (r[n] = t[n])
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(56),
r = n(23),
a = 2 * Math.PI * 6378136.49,
s = [6378136.49, a],
l = [{},
s],
u = self[o] && self[o].__load;
u && u(i),
self.CESIUM_BASE_URL = r.cesiumStaticSrc,
e.
default = l
},
,
function(t, e, n) {
"use strict";
function i(t) {
return t * (Math.PI / 180)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = i
},
function(t, e, n) {
t.exports = {
default:
n(127),
__esModule: !0
}
},
function(t, e, n) {
n(39),
n(33),
t.exports = n(133)
},
function(t, e, n) {
n(39),
n(33),
t.exports = n(134)
},
function(t, e) {
t.exports = function() {}
},
function(t, e, n) {
var i = n(18),
o = n(52),
r = n(132);
t.exports = function(t) {
return function(e, n, a) {
var s, l = i(e),
u = o(l.length),
c = r(a, u);
if (t && n != n) {
for (; u > c;) if ((s = l[c++]) != s) return ! 0
} else for (; u > c; c++) if ((t || c in l) && l[c] === n) return t || c || 0;
return ! t && -1
}
}
},
function(t, e, n) {
"use strict";
var i = n(51),
o = n(38),
r = n(42),
a = {};
n(19)(a, n(9)("iterator"),
function() {
return this
}),
t.exports = function(t, e, n) {
t.prototype = i(a, {
next: o(1, n)
}),
r(t, e + " Iterator")
}
},
function(t, e, n) {
var i = n(55),
o = n(53);
t.exports = function(t) {
return function(e, n) {
var r, a, s = String(o(e)),
l = i(n),
u = s.length;
return l < 0 || l >= u ? t ? "": void 0 : (r = s.charCodeAt(l), r < 55296 || r > 56319 || l + 1 === u || (a = s.charCodeAt(l + 1)) < 56320 || a > 57343 ? t ? s.charAt(l) : r: t ? s.slice(l, l + 2) : a - 56320 + (r - 55296 << 10) + 65536)
}
}
},
function(t, e, n) {
var i = n(55),
o = Math.max,
r = Math.min;
t.exports = function(t, e) {
return t = i(t),
t < 0 ? o(t + e, 0) : r(t, e)
}
},
function(t, e, n) {
var i = n(13),
o = n(65);
t.exports = n(2).getIterator = function(t) {
var e = o(t);
if ("function" != typeof e) throw TypeError(t + " is not iterable!");
return i(e.call(t))
}
},
function(t, e, n) {
var i = n(49),
o = n(9)("iterator"),
r = n(26);
t.exports = n(2).isIterable = function(t) {
var e = Object(t);
return void 0 !== e[o] || "@@iterator" in e || r.hasOwnProperty(i(e))
}
},
function(t, e, n) {
"use strict";
var i = n(128),
o = n(108),
r = n(26),
a = n(18);
t.exports = n(72)(Array, "Array",
function(t, e) {
this._t = a(t),
this._i = 0,
this._k = e
},
function() {
var t = this._t,
e = this._k,
n = this._i++;
return ! t || n >= t.length ? (this._t = void 0, o(1)) : "keys" == e ? o(0, n) : "values" == e ? o(0, t[n]) : o(0, [n, t[n]])
},
"values"),
r.Arguments = r.Array,
i("keys"),
i("values"),
i("entries")
},
function(t, e, n) {
var i = n(245);
t.exports = function(t) {
return Object(i(t))
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = {
QMAPI_style: "QMAPI__style__",
QMAPI_style_indoor: "QMAPI__style__indoor__",
QMAPI_poi_icon: "QMAPI__poi__icon",
QMAPI_poi_icon_json: "QMAPI__poi__icon__json",
QMAPI_indoor_buffer: "QMAPI__indoor__buffer__",
QMAPI_indoor_index: "QMAPI__indoor__index__",
VECTOR_SOURCE_ID: "vector_source",
QMAPI_oversea: "QMAPI__oversea"
};
e.IMAGE_DISPLAY = {
ORIGIN: 0,
SCALE: 1,
REPEAT: 2
},
e.VIEW_MODE = {
MAP_2D: "2D",
MAP_3D: "3D",
SPHERE: "SPHERE"
};
e.
default = i
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = {
init: function() {
this.browser = this.searchString(this.dataBrowser) || "An unknown browser",
this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "an unknown version",
this.OS = this.searchString(this.dataOS) || "an unknown OS"
},
searchString: function(t) {
for (var e = 0; e < t.length; e++) {
var n = t[e].string,
i = t[e].prop;
if (this.versionSearchString = t[e].versionSearch || t[e].identity, n) {
if ( - 1 !== n.indexOf(t[e].subString)) return t[e].identity
} else if (i) return t[e].identity
}
},
searchVersion: function(t) {
var e = t.indexOf(this.versionSearchString);
if ( - 1 !== e) return parseFloat(t.substring(e + this.versionSearchString.length + 1))
},
dataBrowser: [{
string: navigator.userAgent,
subString: "Chrome",
identity: "Chrome"
},
{
string: navigator.userAgent,
subString: "OmniWeb",
versionSearch: "OmniWeb/",
identity: "OmniWeb"
},
{
string: navigator.vendor,
subString: "Apple",
identity: "Safari",
versionSearch: "Version"
},
{
prop: self.opera,
identity: "Opera"
},
{
string: navigator.vendor,
subString: "iCab",
identity: "iCab"
},
{
string: navigator.vendor,
subString: "KDE",
identity: "Konqueror"
},
{
string: navigator.userAgent,
subString: "Firefox",
identity: "Firefox"
},
{
string: navigator.vendor,
subString: "Camino",
identity: "Camino"
},
{
string: navigator.userAgent,
subString: "Netscape",
identity: "Netscape"
},
{
string: navigator.userAgent,
subString: "MSIE",
identity: "Explorer",
versionSearch: "MSIE"
},
{
string: navigator.userAgent,
subString: "Gecko",
identity: "Mozilla",
versionSearch: "rv"
},
{
string: navigator.userAgent,
subString: "Mozilla",
identity: "Netscape",
versionSearch: "Mozilla"
}],
dataOS: [{
string: navigator.platform,
subString: "Win",
identity: "Windows"
},
{
string: navigator.platform,
subString: "Mac",
identity: "Mac"
},
{
string: navigator.userAgent,
subString: "iPhone",
identity: "iPhone"
},
{
string: navigator.userAgent,
subString: "Android",
identity: "Android"
},
{
string: navigator.platform,
subString: "Linux",
identity: "Linux"
}]
};
i.init(),
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t - (0, a.
default)(t)
}
function o(t) {
var e = (0, a.
default)(t);
return {
high:
e,
low: t - e
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(401),
a = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.fp64LowPart = i,
e.splitLatLngNumber = o
},
function(t, e, n) {
t.exports = {
default:
n(224),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(163),
__esModule: !0
}
},
function(t, e) {
var n;
n = function() {
return this
} ();
try {
n = n || Function("return this")() || (0, eval)("this")
} catch(t) {
"object" == typeof window && (n = window)
}
t.exports = n
},
function(t, e, n) {
"use strict";
function i() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : a.GROUND,
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0;
return 1e4 * t + (0, r.clamp)(e, 0, 9999)
}
function o() {
return 1e4 * a.TEXT
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.LAYER_LEVEL = void 0,
e.getRank = i,
e.getNAALine = o;
var r = n(10),
a = e.LAYER_LEVEL = {
UNDERGROUND: 0,
BASE: 1,
GROUND: 2,
BUILDING: 3,
OVERLAY_AA: 4,
POST_PROCESS: 5,
TEXT: 6,
OVERLAY_NAA: 7
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return "&random=" + ( + new Date).toString(36)
}
function r(t) { (0, b.getImage)(t + o())
}
function a(t) {
if (self.window) { (new Image).src = t + o()
}
}
function s(t, e, n) {
var i = S[t];
return i || (i = new w({
id: t,
path: e
})),
i.on("send",
function() {
i.receiveData(n())
}),
S[t]
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(4),
m = i(_);
e.sendByAjax = r,
e.sendOnce = a,
e.sendPeriodically = s;
var g = n(120),
y = n(10),
x = i(y),
b = n(79),
S = {},
w = function(t) {
function e(t) {
var n = t.id,
i = t.path; (0, f.
default)(this, e);
var o = (0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this));
return o.id = n,
o.path = i,
o.dataList = [],
setInterval(function() {
o.send()
},
5e3),
window.addEventListener("beforeunload",
function() {
o.send()
}),
o
}
return (0, m.
default)(e, t),
(0, h.
default)(e, [{
key: "receiveData",
value: function(t) {
var e = this;
x.
default.forIn(t,
function(t, n) {
e.dataList.push(t + "=" + n)
})
}
},
{
key: "send",
value: function() {
if (this.emit("send"), this.dataList.length > 0) {
var t = this.path + ( - 1 === this.path.indexOf("?") ? "?": "&") + this.dataList.join("&");
this.dataList = [],
a(t)
}
}
}]),
e
} (g.EventEmitter)
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return !! (r() && a() && s() && l() && u() && c() && f() && d())
}
function r() {
return "undefined" != typeof window && "undefined" != typeof document
}
function a() {
return Array.prototype && Array.prototype.every && Array.prototype.filter && Array.prototype.forEach && Array.prototype.indexOf && Array.prototype.lastIndexOf && Array.prototype.map && Array.prototype.some && Array.prototype.reduce && Array.prototype.reduceRight && Array.isArray
}
function s() {
return Function.prototype && Function.prototype.bind
}
function l() {
return F.
default && D.
default && N.
default && R.
default && M.
default && k.
default && P.
default && T.
default && w.
default && b.
default && y.
default && m.
default && p.
default
}
function u() {
return "JSON" in window && "parse" in JSON && "stringify" in JSON
}
function c() {
return "Worker" in window
}
function f() {
return "Uint8ClampedArray" in window
}
function d() {
var t = V.context || null;
if (!t) {
t = h(),
V.context = t;
var e = t.getExtension("WEBGL_debug_renderer_info"),
n = t.getParameter(e.UNMASKED_VENDOR_WEBGL),
i = t.getParameter(e.UNMASKED_RENDERER_WEBGL);
V.vendor = n,
V.renderer = i,
V.isIndependentDisplayCard = !/(\bHD\b)|(\bUHD\b)/.test(i)
}
return V
}
function h() {
var t = document.createElement("canvas"),
e = (0, D.
default)(o.webGLContextAttributes);
return t.getContext("webgl", e) || t.getContext("experimental-webgl", e)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var v = n(153),
p = i(v),
_ = n(141),
m = i(_),
g = n(154),
y = i(g),
x = n(114),
b = i(x),
S = n(75),
w = i(S),
E = n(116),
T = i(E),
A = n(150),
P = i(A),
I = n(151),
k = i(I),
L = n(152),
M = i(L),
C = n(149),
R = i(C),
B = n(3),
N = i(B),
O = n(77),
D = i(O),
z = n(17),
F = i(z);
e.isSupported = o,
e.isWebGLSupportedCached = d;
var V = {};
o.webGLContextAttributes = {
antialias: !1,
alpha: !0,
stencil: !0,
depth: !0
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = function() {
function t(e, n, i, o) { (0, r.
default)(this, t),
this.cx = 3 * e,
this.bx = 3 * (i - e) - this.cx,
this.ax = 1 - this.cx - this.bx,
this.cy = 3 * n,
this.by = 3 * (o - n) - this.cy,
this.ay = 1 - this.cy - this.by,
this.p1x = e,
this.p1y = n,
this.p2x = i,
this.p2y = o
}
return (0, s.
default)(t, [{
key: "sampleCurveX",
value: function(t) {
return ((this.ax * t + this.bx) * t + this.cx) * t
}
},
{
key: "sampleCurveY",
value: function(t) {
return ((this.ay * t + this.by) * t + this.cy) * t
}
},
{
key: "sampleCurveDerivativeX",
value: function(t) {
return (3 * this.ax * t + 2 * this.bx) * t + this.cx
}
},
{
key: "solveCurveX",
value: function(t, e) {
void 0 === e && (e = 1e-6);
var n = void 0,
i = void 0,
o = void 0,
r = void 0,
a = void 0;
for (o = t, a = 0; a < 8; a++) {
if (r = this.sampleCurveX(o) - t, Math.abs(r) < e) return o;
var s = this.sampleCurveDerivativeX(o);
if (Math.abs(s) < 1e-6) break;
o -= r / s
}
if (n = 0, i = 1, (o = t) < n) return n;
if (o > i) return i;
for (; n < i;) {
if (r = this.sampleCurveX(o), Math.abs(r - t) < e) return o;
t > r ? n = o: i = o,
o = .5 * (i - n) + n
}
return o
}
},
{
key: "solve",
value: function(t, e) {
return this.sampleCurveY(this.solveCurveX(t, e))
}
}]),
t
} ();
t.exports = l
},
function(t, e, n) {
"use strict";
function i(t) {
return t / (Math.PI / 180)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = i
},
function(t, e, n) {
t.exports = {
default:
n(307),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(165),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(167),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(168),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(169),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(171),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(172),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(173),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(175),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(176),
__esModule: !0
}
},
function(t, e, n) {
n(33),
n(184),
t.exports = n(2).Array.from
},
function(t, e, n) {
n(185);
var i = n(2).Object;
t.exports = function(t, e) {
return i.create(t, e)
}
},
function(t, e, n) {
n(186);
var i = n(2).Object;
t.exports = function(t, e) {
return i.defineProperties(t, e)
}
},
function(t, e, n) {
n(187);
var i = n(2).Object;
t.exports = function(t, e, n) {
return i.defineProperty(t, e, n)
}
},
function(t, e, n) {
n(201),
t.exports = n(2).Object.entries
},
function(t, e, n) {
n(188),
t.exports = n(2).Object.freeze
},
function(t, e, n) {
n(189);
var i = n(2).Object;
t.exports = function(t, e) {
return i.getOwnPropertyDescriptor(t, e)
}
},
function(t, e, n) {
n(190);
var i = n(2).Object;
t.exports = function(t) {
return i.getOwnPropertyNames(t)
}
},
function(t, e, n) {
n(191),
t.exports = n(2).Object.getPrototypeOf
},
function(t, e, n) {
n(192),
t.exports = n(2).Object.isExtensible
},
function(t, e, n) {
n(193),
t.exports = n(2).Object.isFrozen
},
function(t, e, n) {
n(194),
t.exports = n(2).Object.isSealed
},
function(t, e, n) {
n(195),
t.exports = n(2).Object.keys
},
function(t, e, n) {
n(196),
t.exports = n(2).Object.preventExtensions
},
function(t, e, n) {
n(197),
t.exports = n(2).Object.seal
},
function(t, e, n) {
n(198),
t.exports = n(2).Object.setPrototypeOf
},
function(t, e, n) {
n(73),
n(33),
n(39),
n(199),
n(202),
n(203),
t.exports = n(2).Promise
},
function(t, e, n) {
n(200),
n(73),
n(204),
n(205),
t.exports = n(2).Symbol
},
function(t, e, n) {
n(33),
n(39),
t.exports = n(70).f("iterator")
},
function(t, e, n) {
"use strict";
var i = n(14),
o = n(38);
t.exports = function(t, e, n) {
e in t ? i.f(t, e, o(0, n)) : t[e] = n
}
},
function(t, e, n) {
var i = n(34),
o = n(76),
r = n(45);
t.exports = function(t) {
var e = i(t),
n = o.f;
if (n) for (var a, s = n(t), l = r.f, u = 0; s.length > u;) l.call(t, a = s[u++]) && e.push(a);
return e
}
},
function(t, e) {
t.exports = function(t, e, n) {
var i = void 0 === n;
switch (e.length) {
case 0:
return i ? t() : t.call(n);
case 1:
return i ? t(e[0]) : t.call(n, e[0]);
case 2:
return i ? t(e[0], e[1]) : t.call(n, e[0], e[1]);
case 3:
return i ? t(e[0], e[1], e[2]) : t.call(n, e[0], e[1], e[2]);
case 4:
return i ? t(e[0], e[1], e[2], e[3]) : t.call(n, e[0], e[1], e[2], e[3])
}
return t.apply(n, e)
}
},
function(t, e, n) {
var i = n(8),
o = n(101).set,
r = i.MutationObserver || i.WebKitMutationObserver,
a = i.process,
s = i.Promise,
l = "process" == n(36)(a);
t.exports = function() {
var t, e, n, u = function() {
var i, o;
for (l && (i = a.domain) && i.exit(); t;) {
o = t.fn,
t = t.next;
try {
o()
} catch(i) {
throw t ? n() : e = void 0,
i
}
}
e = void 0,
i && i.enter()
};
if (l) n = function() {
a.nextTick(u)
};
else if (!r || i.navigator && i.navigator.standalone) if (s && s.resolve) {
var c = s.resolve(void 0);
n = function() {
c.then(u)
}
} else n = function() {
o.call(i, u)
};
else {
var f = !0,
d = document.createTextNode("");
new r(u).observe(d, {
characterData: !0
}),
n = function() {
d.data = f = !f
}
}
return function(i) {
var o = {
fn: i,
next: void 0
};
e && (e.next = o),
t || (t = o, n()),
e = o
}
}
},
function(t, e, n) {
var i = n(7),
o = n(13),
r = function(t, e) {
if (o(t), !i(e) && null !== e) throw TypeError(e + ": can't set as prototype!")
};
t.exports = {
set: Object.setPrototypeOf || ("__proto__" in {} ?
function(t, e, i) {
try {
i = n(22)(Function.call, n(68).f(Object.prototype, "__proto__").set, 2),
i(t, []),
e = !(t instanceof Array)
} catch(t) {
e = !0
}
return function(t, n) {
return r(t, n),
e ? t.__proto__ = n: i(t, n),
t
}
} ({},
!1) : void 0),
check: r
}
},
function(t, e, n) {
var i = n(8),
o = i.navigator;
t.exports = o && o.userAgent || ""
},
function(t, e, n) {
var i = n(7);
t.exports = function(t, e) {
if (!i(t) || t._t !== e) throw TypeError("Incompatible receiver, " + e + " required!");
return t
}
},
function(t, e, n) {
"use strict";
var i = n(22),
o = n(6),
r = n(31),
a = n(93),
s = n(92),
l = n(52),
u = n(177),
c = n(65);
o(o.S + o.F * !n(94)(function(t) {
Array.from(t)
}), "Array", {
from: function(t) {
var e, n, o, f, d = r(t),
h = "function" == typeof this ? this: Array,
v = arguments.length,
p = v > 1 ? arguments[1] : void 0,
_ = void 0 !== p,
m = 0,
g = c(d);
if (_ && (p = i(p, v > 2 ? arguments[2] : void 0, 2)), void 0 == g || h == Array && s(g)) for (e = l(d.length), n = new h(e); e > m; m++) u(n, m, _ ? p(d[m], m) : d[m]);
else for (f = g.call(d), n = new h; ! (o = f.next()).done; m++) u(n, m, _ ? a(f, p, [o.value, m], !0) : o.value);
return n.length = m,
n
}
})
},
function(t, e, n) {
var i = n(6);
i(i.S, "Object", {
create: n(51)
})
},
function(t, e, n) {
var i = n(6);
i(i.S + i.F * !n(12), "Object", {
defineProperties: n(85)
})
},
function(t, e, n) {
var i = n(6);
i(i.S + i.F * !n(12), "Object", {
defineProperty: n(14).f
})
},
function(t, e, n) {
var i = n(7),
o = n(40).onFreeze;
n(15)("freeze",
function(t) {
return function(e) {
return t && i(e) ? t(o(e)) : e
}
})
},
function(t, e, n) {
var i = n(18),
o = n(68).f;
n(15)("getOwnPropertyDescriptor",
function() {
return function(t, e) {
return o(i(t), e)
}
})
},
function(t, e, n) {
n(15)("getOwnPropertyNames",
function() {
return n(95).f
})
},
function(t, e, n) {
var i = n(31),
o = n(86);
n(15)("getPrototypeOf",
function() {
return function(t) {
return o(i(t))
}
})
},
function(t, e, n) {
var i = n(7);
n(15)("isExtensible",
function(t) {
return function(e) {
return !! i(e) && (!t || t(e))
}
})
},
function(t, e, n) {
var i = n(7);
n(15)("isFrozen",
function(t) {
return function(e) {
return ! i(e) || !!t && t(e)
}
})
},
function(t, e, n) {
var i = n(7);
n(15)("isSealed",
function(t) {
return function(e) {
return ! i(e) || !!t && t(e)
}
})
},
function(t, e, n) {
var i = n(31),
o = n(34);
n(15)("keys",
function() {
return function(t) {
return o(i(t))
}
})
},
function(t, e, n) {
var i = n(7),
o = n(40).onFreeze;
n(15)("preventExtensions",
function(t) {
return function(e) {
return t && i(e) ? t(o(e)) : e
}
})
},
function(t, e, n) {
var i = n(7),
o = n(40).onFreeze;
n(15)("seal",
function(t) {
return function(e) {
return t && i(e) ? t(o(e)) : e
}
})
},
function(t, e, n) {
var i = n(6);
i(i.S, "Object", {
setPrototypeOf: n(181).set
})
},
function(t, e, n) {
"use strict";
var i, o, r, a, s = n(37),
l = n(8),
u = n(22),
c = n(49),
f = n(6),
d = n(7),
h = n(44),
v = n(91),
p = n(71),
_ = n(100),
m = n(101).set,
g = n(180)(),
y = n(67),
x = n(97),
b = n(182),
S = n(98),
w = l.TypeError,
E = l.process,
T = E && E.versions,
A = T && T.v8 || "",
P = l.Promise,
I = "process" == c(E),
k = function() {},
L = o = y.f,
M = !!
function() {
try {
var t = P.resolve(1),
e = (t.constructor = {})[n(9)("species")] = function(t) {
t(k, k)
};
return (I || "function" == typeof PromiseRejectionEvent) && t.then(k) instanceof e && 0 !== A.indexOf("6.6") && -1 === b.indexOf("Chrome/66")
} catch(t) {}
} (),
C = function(t) {
var e;
return ! (!d(t) || "function" != typeof(e = t.then)) && e
},
R = function(t, e) {
if (!t._n) {
t._n = !0;
var n = t._c;
g(function() {
for (var i = t._v,
o = 1 == t._s,
r = 0; n.length > r;) !
function(e) {
var n, r, a, s = o ? e.ok: e.fail,
l = e.resolve,
u = e.reject,
c = e.domain;
try {
s ? (o || (2 == t._h && O(t), t._h = 1), !0 === s ? n = i: (c && c.enter(), n = s(i), c && (c.exit(), a = !0)), n === e.promise ? u(w("Promise-chain cycle")) : (r = C(n)) ? r.call(n, l, u) : l(n)) : u(i)
} catch(t) {
c && !a && c.exit(),
u(t)
}
} (n[r++]);
t._c = [],
t._n = !1,
e && !t._h && B(t)
})
}
},
B = function(t) {
m.call(l,
function() {
var e, n, i, o = t._v,
r = N(t);
if (r && (e = x(function() {
I ? E.emit("unhandledRejection", o, t) : (n = l.onunhandledrejection) ? n({
promise: t,
reason: o
}) : (i = l.console) && i.error && i.error("Unhandled promise rejection", o)
}), t._h = I || N(t) ? 2 : 1), t._a = void 0, r && e.e) throw e.v
})
},
N = function(t) {
return 1 !== t._h && 0 === (t._a || t._c).length
},
O = function(t) {
m.call(l,
function() {
var e;
I ? E.emit("rejectionHandled", t) : (e = l.onrejectionhandled) && e({
promise: t,
reason: t._v
})
})
},
D = function(t) {
var e = this;
e._d || (e._d = !0, e = e._w || e, e._v = t, e._s = 2, e._a || (e._a = e._c.slice()), R(e, !0))
},
z = function(t) {
var e, n = this;
if (!n._d) {
n._d = !0,
n = n._w || n;
try {
if (n === t) throw w("Promise can't be resolved itself"); (e = C(t)) ? g(function() {
var i = {
_w: n,
_d: !1
};
try {
e.call(t, u(z, i, 1), u(D, i, 1))
} catch(t) {
D.call(i, t)
}
}) : (n._v = t, n._s = 1, R(n, !1))
} catch(t) {
D.call({
_w: n,
_d: !1
},
t)
}
}
};
M || (P = function(t) {
v(this, P, "Promise", "_h"),
h(t),
i.call(this);
try {
t(u(z, this, 1), u(D, this, 1))
} catch(t) {
D.call(this, t)
}
},
i = function(t) {
this._c = [],
this._a = void 0,
this._s = 0,
this._d = !1,
this._v = void 0,
this._h = 0,
this._n = !1
},
i.prototype = n(99)(P.prototype, {
then: function(t, e) {
var n = L(_(this, P));
return n.ok = "function" != typeof t || t,
n.fail = "function" == typeof e && e,
n.domain = I ? E.domain: void 0,
this._c.push(n),
this._a && this._a.push(n),
this._s && R(this, !1),
n.promise
},
catch: function(t) {
return this.then(void 0, t)
}
}), r = function() {
var t = new i;
this.promise = t,
this.resolve = u(z, t, 1),
this.reject = u(D, t, 1)
},
y.f = L = function(t) {
return t === P || t === a ? new r(t) : o(t)
}),
f(f.G + f.W + f.F * !M, {
Promise: P
}),
n(42)(P, "Promise"),
n(119)("Promise"),
a = n(2).Promise,
f(f.S + f.F * !M, "Promise", {
reject: function(t) {
var e = L(this);
return (0, e.reject)(t),
e.promise
}
}),
f(f.S + f.F * (s || !M), "Promise", {
resolve: function(t) {
return S(s && this === a ? P: this, t)
}
}),
f(f.S + f.F * !(M && n(94)(function(t) {
P.all(t).
catch(k)
})), "Promise", {
all: function(t) {
var e = this,
n = L(e),
i = n.resolve,
o = n.reject,
r = x(function() {
var n = [],
r = 0,
a = 1;
p(t, !1,
function(t) {
var s = r++,
l = !1;
n.push(void 0),
a++,
e.resolve(t).then(function(t) {
l || (l = !0, n[s] = t, --a || i(n))
},
o)
}),
--a || i(n)
});
return r.e && o(r.v),
n.promise
},
race: function(t) {
var e = this,
n = L(e),
i = n.reject,
o = x(function() {
p(t, !1,
function(t) {
e.resolve(t).then(n.resolve, i)
})
});
return o.e && i(o.v),
n.promise
}
})
},
function(t, e, n) {
"use strict";
var i = n(8),
o = n(21),
r = n(12),
a = n(6),
s = n(81),
l = n(40).KEY,
u = n(30),
c = n(59),
f = n(42),
d = n(46),
h = n(9),
v = n(70),
p = n(69),
_ = n(178),
m = n(117),
g = n(13),
y = n(7),
x = n(31),
b = n(18),
S = n(64),
w = n(38),
E = n(51),
T = n(95),
A = n(68),
P = n(76),
I = n(14),
k = n(34),
L = A.f,
M = I.f,
C = T.f,
R = i.Symbol,
B = i.JSON,
N = B && B.stringify,
O = h("_hidden"),
D = h("toPrimitive"),
z = {}.propertyIsEnumerable,
F = c("symbol-registry"),
V = c("symbols"),
Y = c("op-symbols"),
U = Object.prototype,
j = "function" == typeof R && !!P.f,
G = i.QObject,
Z = !G || !G.prototype || !G.prototype.findChild,
H = r && u(function() {
return 7 != E(M({},
"a", {
get: function() {
return M(this, "a", {
value: 7
}).a
}
})).a
}) ?
function(t, e, n) {
var i = L(U, e);
i && delete U[e],
M(t, e, n),
i && t !== U && M(U, e, i)
}: M,
W = function(t) {
var e = V[t] = E(R.prototype);
return e._k = t,
e
},
X = j && "symbol" == typeof R.iterator ?
function(t) {
return "symbol" == typeof t
}: function(t) {
return t instanceof R
},
Q = function(t, e, n) {
return t === U && Q(Y, e, n),
g(t),
e = S(e, !0),
g(n),
o(V, e) ? (n.enumerable ? (o(t, O) && t[O][e] && (t[O][e] = !1), n = E(n, {
enumerable: w(0, !1)
})) : (o(t, O) || M(t, O, w(1, {})), t[O][e] = !0), H(t, e, n)) : M(t, e, n)
},
q = function(t, e) {
g(t);
for (var n, i = _(e = b(e)), o = 0, r = i.length; r > o;) Q(t, n = i[o++], e[n]);
return t
},
K = function(t, e) {
return void 0 === e ? E(t) : q(E(t), e)
},
J = function(t) {
var e = z.call(this, t = S(t, !0));
return ! (this === U && o(V, t) && !o(Y, t)) && (!(e || !o(this, t) || !o(V, t) || o(this, O) && this[O][t]) || e)
},
$ = function(t, e) {
if (t = b(t), e = S(e, !0), t !== U || !o(V, e) || o(Y, e)) {
var n = L(t, e);
return ! n || !o(V, e) || o(t, O) && t[O][e] || (n.enumerable = !0),
n
}
},
tt = function(t) {
for (var e, n = C(b(t)), i = [], r = 0; n.length > r;) o(V, e = n[r++]) || e == O || e == l || i.push(e);
return i
},
et = function(t) {
for (var e, n = t === U,
i = C(n ? Y: b(t)), r = [], a = 0; i.length > a;) ! o(V, e = i[a++]) || n && !o(U, e) || r.push(V[e]);
return r
};
j || (R = function() {
if (this instanceof R) throw TypeError("Symbol is not a constructor!");
var t = d(arguments.length > 0 ? arguments[0] : void 0),
e = function(n) {
this === U && e.call(Y, n),
o(this, O) && o(this[O], t) && (this[O][t] = !1),
H(this, t, w(1, n))
};
return r && Z && H(U, t, {
configurable: !0,
set: e
}),
W(t)
},
s(R.prototype, "toString",
function() {
return this._k
}), A.f = $, I.f = Q, n(96).f = T.f = tt, n(45).f = J, P.f = et, r && !n(37) && s(U, "propertyIsEnumerable", J, !0), v.f = function(t) {
return W(h(t))
}),
a(a.G + a.W + a.F * !j, {
Symbol: R
});
for (var nt = "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), it = 0; nt.length > it;) h(nt[it++]);
for (var ot = k(h.store), rt = 0; ot.length > rt;) p(ot[rt++]);
a(a.S + a.F * !j, "Symbol", {
for: function(t) {
return o(F, t += "") ? F[t] : F[t] = R(t)
},
keyFor: function(t) {
if (!X(t)) throw TypeError(t + " is not a symbol!");
for (var e in F) if (F[e] === t) return e
},
useSetter: function() {
Z = !0
},
useSimple: function() {
Z = !1
}
}),
a(a.S + a.F * !j, "Object", {
create: K,
defineProperty: Q,
defineProperties: q,
getOwnPropertyDescriptor: $,
getOwnPropertyNames: tt,
getOwnPropertySymbols: et
});
var at = u(function() {
P.f(1)
});
a(a.S + a.F * at, "Object", {
getOwnPropertySymbols: function(t) {
return P.f(x(t))
}
}),
B && a(a.S + a.F * (!j || u(function() {
var t = R();
return "[null]" != N([t]) || "{}" != N({
a: t
}) || "{}" != N(Object(t))
})), "JSON", {
stringify: function(t) {
for (var e, n, i = [t], o = 1; arguments.length > o;) i.push(arguments[o++]);
if (n = e = i[1], (y(e) || void 0 !== t) && !X(t)) return m(e) || (e = function(t, e) {
if ("function" == typeof n && (e = n.call(this, t, e)), !X(e)) return e
}),
i[1] = e,
N.apply(B, i)
}
}),
R.prototype[D] || n(19)(R.prototype, D, R.prototype.valueOf),
f(R, "Symbol"),
f(Math, "Math", !0),
f(i.JSON, "JSON", !0)
},
function(t, e, n) {
var i = n(6),
o = n(118)(!0);
i(i.S, "Object", {
entries: function(t) {
return o(t)
}
})
},
function(t, e, n) {
"use strict";
var i = n(6),
o = n(2),
r = n(8),
a = n(100),
s = n(98);
i(i.P + i.R, "Promise", {
finally: function(t) {
var e = a(this, o.Promise || r.Promise),
n = "function" == typeof t;
return this.then(n ?
function(n) {
return s(e, t()).then(function() {
return n
})
}: t, n ?
function(n) {
return s(e, t()).then(function() {
throw n
})
}: t)
}
})
},
function(t, e, n) {
"use strict";
var i = n(6),
o = n(67),
r = n(97);
i(i.S, "Promise", {
try: function(t) {
var e = o.f(this),
n = r(t);
return (n.e ? e.reject: e.resolve)(n.v),
e.promise
}
})
},
function(t, e, n) {
n(69)("asyncIterator")
},
function(t, e, n) {
n(69)("observable")
},
function(t, e, n) {
var i = n(62),
o = n(215),
r = n(214),
a = n(270)("src"),
s = n(830),
l = ("" + s).split("toString");
n(102).inspectSource = function(t) {
return s.call(t)
},
(t.exports = function(t, e, n, s) {
var u = "function" == typeof n;
u && (r(n, "name") || o(n, "name", e)),
t[e] !== n && (u && (r(n, a) || o(n, a, t[e] ? "" + t[e] : l.join(String(e)))), t === i ? t[e] = n: s ? t[e] ? t[e] = n: o(t, e, n) : (delete t[e], o(t, e, n)))
})(Function.prototype, "toString",
function() {
return "function" == typeof this && this[a] || s.call(this)
})
},
function(t, e, n) {
var i = n(11),
o = n(61),
r = n(245),
a = /"/g,
s = function(t, e, n, i) {
var o = String(r(t)),
s = "<" + e;
return "" !== n && (s += " " + n + '="' + String(i).replace(a, "&quot;") + '"'),
s + ">" + o + "</" + e + ">"
};
t.exports = function(t, e) {
var n = {};
n[t] = e(s),
i(i.P + i.F * o(function() {
var e = "" [t]('"');
return e !== e.toLowerCase() || e.split('"').length > 3
}), "String", n)
}
},
function(t, e, n) { (function(e) {
var n, n;
/*!
localForage -- Offline Storage, Improved
Version 1.7.3
https://localforage.github.io/localForage
(c) 2013-2017 Mozilla, Apache License 2.0
*/
!
function(e) {
t.exports = e()
} (function() {
return function t(e, i, o) {
function r(s, l) {
if (!i[s]) {
if (!e[s]) {
var u = "function" == typeof n && n;
if (!l && u) return n(s, !0);
if (a) return a(s, !0);
var c = new Error("Cannot find module '" + s + "'");
throw c.code = "MODULE_NOT_FOUND",
c
}
var f = i[s] = {
exports: {}
};
e[s][0].call(f.exports,
function(t) {
var n = e[s][1][t];
return r(n || t)
},
f, f.exports, t, e, i, o)
}
return i[s].exports
}
for (var a = "function" == typeof n && n,
s = 0; s < o.length; s++) r(o[s]);
return r
} ({
1 : [function(t, n, i) { (function(t) {
"use strict";
function e() {
c = !0;
for (var t, e, n = f.length; n;) {
for (e = f, f = [], t = -1; ++t < n;) e[t]();
n = f.length
}
c = !1
}
function i(t) {
1 !== f.push(t) || c || o()
}
var o, r = t.MutationObserver || t.WebKitMutationObserver;
if (r) {
var a = 0,
s = new r(e),
l = t.document.createTextNode("");
s.observe(l, {
characterData: !0
}),
o = function() {
l.data = a = ++a % 2
}
} else if (t.setImmediate || void 0 === t.MessageChannel) o = "document" in t && "onreadystatechange" in t.document.createElement("script") ?
function() {
var n = t.document.createElement("script");
n.onreadystatechange = function() {
e(),
n.onreadystatechange = null,
n.parentNode.removeChild(n),
n = null
},
t.document.documentElement.appendChild(n)
}: function() {
setTimeout(e, 0)
};
else {
var u = new t.MessageChannel;
u.port1.onmessage = e,
o = function() {
u.port2.postMessage(0)
}
}
var c, f = [];
n.exports = i
}).call(this, void 0 !== e ? e: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{}],
2 : [function(t, e, n) {
"use strict";
function i() {}
function o(t) {
if ("function" != typeof t) throw new TypeError("resolver must be a function");
this.state = g,
this.queue = [],
this.outcome = void 0,
t !== i && l(this, t)
}
function r(t, e, n) {
this.promise = t,
"function" == typeof e && (this.onFulfilled = e, this.callFulfilled = this.otherCallFulfilled),
"function" == typeof n && (this.onRejected = n, this.callRejected = this.otherCallRejected)
}
function a(t, e, n) {
v(function() {
var i;
try {
i = e(n)
} catch(e) {
return p.reject(t, e)
}
i === t ? p.reject(t, new TypeError("Cannot resolve promise with itself")) : p.resolve(t, i)
})
}
function s(t) {
var e = t && t.then;
if (t && ("object" == typeof t || "function" == typeof t) && "function" == typeof e) return function() {
e.apply(t, arguments)
}
}
function l(t, e) {
function n(e) {
r || (r = !0, p.reject(t, e))
}
function i(e) {
r || (r = !0, p.resolve(t, e))
}
function o() {
e(i, n)
}
var r = !1,
a = u(o);
"error" === a.status && n(a.value)
}
function u(t, e) {
var n = {};
try {
n.value = t(e),
n.status = "success"
} catch(t) {
n.status = "error",
n.value = t
}
return n
}
function c(t) {
return t instanceof this ? t: p.resolve(new this(i), t)
}
function f(t) {
var e = new this(i);
return p.reject(e, t)
}
function d(t) {
var e = this;
if ("[object Array]" !== Object.prototype.toString.call(t)) return this.reject(new TypeError("must be an array"));
var n = t.length,
o = !1;
if (!n) return this.resolve([]);
for (var r = new Array(n), a = 0, s = -1, l = new this(i); ++s < n;) !
function(t, i) {
function s(t) {
r[i] = t,
++a !== n || o || (o = !0, p.resolve(l, r))
}
e.resolve(t).then(s,
function(t) {
o || (o = !0, p.reject(l, t))
})
} (t[s], s);
return l
}
function h(t) {
var e = this;
if ("[object Array]" !== Object.prototype.toString.call(t)) return this.reject(new TypeError("must be an array"));
var n = t.length,
o = !1;
if (!n) return this.resolve([]);
for (var r = -1,
a = new this(i); ++r < n;) !
function(t) {
e.resolve(t).then(function(t) {
o || (o = !0, p.resolve(a, t))
},
function(t) {
o || (o = !0, p.reject(a, t))
})
} (t[r]);
return a
}
var v = t(1),
p = {},
_ = ["REJECTED"],
m = ["FULFILLED"],
g = ["PENDING"];
e.exports = o,
o.prototype.
catch = function(t) {
return this.then(null, t)
},
o.prototype.then = function(t, e) {
if ("function" != typeof t && this.state === m || "function" != typeof e && this.state === _) return this;
var n = new this.constructor(i);
if (this.state !== g) {
a(n, this.state === m ? t: e, this.outcome)
} else this.queue.push(new r(n, t, e));
return n
},
r.prototype.callFulfilled = function(t) {
p.resolve(this.promise, t)
},
r.prototype.otherCallFulfilled = function(t) {
a(this.promise, this.onFulfilled, t)
},
r.prototype.callRejected = function(t) {
p.reject(this.promise, t)
},
r.prototype.otherCallRejected = function(t) {
a(this.promise, this.onRejected, t)
},
p.resolve = function(t, e) {
var n = u(s, e);
if ("error" === n.status) return p.reject(t, n.value);
var i = n.value;
if (i) l(t, i);
else {
t.state = m,
t.outcome = e;
for (var o = -1,
r = t.queue.length; ++o < r;) t.queue[o].callFulfilled(e)
}
return t
},
p.reject = function(t, e) {
t.state = _,
t.outcome = e;
for (var n = -1,
i = t.queue.length; ++n < i;) t.queue[n].callRejected(e);
return t
},
o.resolve = c,
o.reject = f,
o.all = d,
o.race = h
},
{
1 : 1
}],
3 : [function(t, n, i) { (function(e) {
"use strict";
"function" != typeof e.Promise && (e.Promise = t(2))
}).call(this, void 0 !== e ? e: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{
2 : 2
}],
4 : [function(t, e, n) {
"use strict";
function i(t, e) {
if (! (t instanceof e)) throw new TypeError("Cannot call a class as a function")
}
function o(t, e) {
t = t || [],
e = e || {};
try {
return new Blob(t, e)
} catch(r) {
if ("TypeError" !== r.name) throw r;
for (var n = "undefined" != typeof BlobBuilder ? BlobBuilder: "undefined" != typeof MSBlobBuilder ? MSBlobBuilder: "undefined" != typeof MozBlobBuilder ? MozBlobBuilder: WebKitBlobBuilder, i = new n, o = 0; o < t.length; o += 1) i.append(t[o]);
return i.getBlob(e.type)
}
}
function r(t, e) {
e && t.then(function(t) {
e(null, t)
},
function(t) {
e(t)
})
}
function a(t, e, n) {
"function" == typeof e && t.then(e),
"function" == typeof n && t.
catch(n)
}
function s(t) {
return "string" != typeof t && (console.warn(t + " used as a key, but it is not a string."), t = String(t)),
t
}
function l() {
if (arguments.length && "function" == typeof arguments[arguments.length - 1]) return arguments[arguments.length - 1]
}
function u(t) {
for (var e = t.length,
n = new ArrayBuffer(e), i = new Uint8Array(n), o = 0; o < e; o++) i[o] = t.charCodeAt(o);
return n
}
function c(t) {
return new mt(function(e) {
var n = t.transaction(gt, wt),
i = o([""]);
n.objectStore(gt).put(i, "key"),
n.onabort = function(t) {
t.preventDefault(),
t.stopPropagation(),
e(!1)
},
n.oncomplete = function() {
var t = navigator.userAgent.match(/Chrome\/(\d+)/),
n = navigator.userAgent.match(/Edge\//);
e(n || !t || parseInt(t[1], 10) >= 43)
}
}).
catch(function() {
return ! 1
})
}
function f(t) {
return "boolean" == typeof yt ? mt.resolve(yt) : c(t).then(function(t) {
return yt = t
})
}
function d(t) {
var e = xt[t.name],
n = {};
n.promise = new mt(function(t, e) {
n.resolve = t,
n.reject = e
}),
e.deferredOperations.push(n),
e.dbReady ? e.dbReady = e.dbReady.then(function() {
return n.promise
}) : e.dbReady = n.promise
}
function h(t) {
var e = xt[t.name],
n = e.deferredOperations.pop();
if (n) return n.resolve(),
n.promise
}
function v(t, e) {
var n = xt[t.name],
i = n.deferredOperations.pop();
if (i) return i.reject(e),
i.promise
}
function p(t, e) {
return new mt(function(n, i) {
if (xt[t.name] = xt[t.name] || T(), t.db) {
if (!e) return n(t.db);
d(t),
t.db.close()
}
var o = [t.name];
e && o.push(t.version);
var r = _t.open.apply(_t, o);
e && (r.onupgradeneeded = function(e) {
var n = r.result;
try {
n.createObjectStore(t.storeName),
e.oldVersion <= 1 && n.createObjectStore(gt)
} catch(n) {
if ("ConstraintError" !== n.name) throw n;
console.warn('The database "' + t.name + '" has been upgraded from version ' + e.oldVersion + " to version " + e.newVersion + ', but the storage "' + t.storeName + '" already exists.')
}
}),
r.onerror = function(t) {
t.preventDefault(),
i(r.error)
},
r.onsuccess = function() {
n(r.result),
h(t)
}
})
}
function _(t) {
return p(t, !1)
}
function m(t) {
return p(t, !0)
}
function g(t, e) {
if (!t.db) return ! 0;
var n = !t.db.objectStoreNames.contains(t.storeName),
i = t.version < t.db.version,
o = t.version > t.db.version;
if (i && (t.version !== e && console.warn('The database "' + t.name + "\" can't be downgraded from version " + t.db.version + " to version " + t.version + "."), t.version = t.db.version), o || n) {
if (n) {
var r = t.db.version + 1;
r > t.version && (t.version = r)
}
return ! 0
}
return ! 1
}
function y(t) {
return new mt(function(e, n) {
var i = new FileReader;
i.onerror = n,
i.onloadend = function(n) {
var i = btoa(n.target.result || "");
e({
__local_forage_encoded_blob: !0,
data: i,
type: t.type
})
},
i.readAsBinaryString(t)
})
}
function x(t) {
return o([u(atob(t.data))], {
type: t.type
})
}
function b(t) {
return t && t.__local_forage_encoded_blob
}
function S(t) {
var e = this,
n = e._initReady().then(function() {
var t = xt[e._dbInfo.name];
if (t && t.dbReady) return t.dbReady
});
return a(n, t, t),
n
}
function w(t) {
d(t);
for (var e = xt[t.name], n = e.forages, i = 0; i < n.length; i++) {
var o = n[i];
o._dbInfo.db && (o._dbInfo.db.close(), o._dbInfo.db = null)
}
return t.db = null,
_(t).then(function(e) {
return t.db = e,
g(t) ? m(t) : e
}).then(function(i) {
t.db = e.db = i;
for (var o = 0; o < n.length; o++) n[o]._dbInfo.db = i
}).
catch(function(e) {
throw v(t, e),
e
})
}
function E(t, e, n, i) {
void 0 === i && (i = 1);
try {
var o = t.db.transaction(t.storeName, e);
n(null, o)
} catch(o) {
if (i > 0 && (!t.db || "InvalidStateError" === o.name || "NotFoundError" === o.name)) return mt.resolve().then(function() {
if (!t.db || "NotFoundError" === o.name && !t.db.objectStoreNames.contains(t.storeName) && t.version <= t.db.version) return t.db && (t.version = t.db.version + 1),
m(t)
}).then(function() {
return w(t).then(function() {
E(t, e, n, i - 1)
})
}).
catch(n);
n(o)
}
}
function T() {
return {
forages: [],
db: null,
dbReady: null,
deferredOperations: []
}
}
function A(t) {
function e() {
return mt.resolve()
}
var n = this,
i = {
db: null
};
if (t) for (var o in t) i[o] = t[o];
var r = xt[i.name];
r || (r = T(), xt[i.name] = r),
r.forages.push(n),
n._initReady || (n._initReady = n.ready, n.ready = S);
for (var a = [], s = 0; s < r.forages.length; s++) {
var l = r.forages[s];
l !== n && a.push(l._initReady().
catch(e))
}
var u = r.forages.slice(0);
return mt.all(a).then(function() {
return i.db = r.db,
_(i)
}).then(function(t) {
return i.db = t,
g(i, n._defaultConfig.version) ? m(i) : t
}).then(function(t) {
i.db = r.db = t,
n._dbInfo = i;
for (var e = 0; e < u.length; e++) {
var o = u[e];
o !== n && (o._dbInfo.db = i.db, o._dbInfo.version = i.version)
}
})
}
function P(t, e) {
var n = this;
t = s(t);
var i = new mt(function(e, i) {
n.ready().then(function() {
E(n._dbInfo, St,
function(o, r) {
if (o) return i(o);
try {
var a = r.objectStore(n._dbInfo.storeName),
s = a.get(t);
s.onsuccess = function() {
var t = s.result;
void 0 === t && (t = null),
b(t) && (t = x(t)),
e(t)
},
s.onerror = function() {
i(s.error)
}
} catch(t) {
i(t)
}
})
}).
catch(i)
});
return r(i, e),
i
}
function I(t, e) {
var n = this,
i = new mt(function(e, i) {
n.ready().then(function() {
E(n._dbInfo, St,
function(o, r) {
if (o) return i(o);
try {
var a = r.objectStore(n._dbInfo.storeName),
s = a.openCursor(),
l = 1;
s.onsuccess = function() {
var n = s.result;
if (n) {
var i = n.value;
b(i) && (i = x(i));
var o = t(i, n.key, l++);
void 0 !== o ? e(o) : n.
continue ()
} else e()
},
s.onerror = function() {
i(s.error)
}
} catch(t) {
i(t)
}
})
}).
catch(i)
});
return r(i, e),
i
}
function k(t, e, n) {
var i = this;
t = s(t);
var o = new mt(function(n, o) {
var r;
i.ready().then(function() {
return r = i._dbInfo,
"[object Blob]" === bt.call(e) ? f(r.db).then(function(t) {
return t ? e: y(e)
}) : e
}).then(function(e) {
E(i._dbInfo, wt,
function(r, a) {
if (r) return o(r);
try {
var s = a.objectStore(i._dbInfo.storeName);
null === e && (e = void 0);
var l = s.put(e, t);
a.oncomplete = function() {
void 0 === e && (e = null),
n(e)
},
a.onabort = a.onerror = function() {
var t = l.error ? l.error: l.transaction.error;
o(t)
}
} catch(t) {
o(t)
}
})
}).
catch(o)
});
return r(o, n),
o
}
function L(t, e) {
var n = this;
t = s(t);
var i = new mt(function(e, i) {
n.ready().then(function() {
E(n._dbInfo, wt,
function(o, r) {
if (o) return i(o);
try {
var a = r.objectStore(n._dbInfo.storeName),
s = a.delete(t);
r.oncomplete = function() {
e()
},
r.onerror = function() {
i(s.error)
},
r.onabort = function() {
var t = s.error ? s.error: s.transaction.error;
i(t)
}
} catch(t) {
i(t)
}
})
}).
catch(i)
});
return r(i, e),
i
}
function M(t) {
var e = this,
n = new mt(function(t, n) {
e.ready().then(function() {
E(e._dbInfo, wt,
function(i, o) {
if (i) return n(i);
try {
var r = o.objectStore(e._dbInfo.storeName),
a = r.clear();
o.oncomplete = function() {
t()
},
o.onabort = o.onerror = function() {
var t = a.error ? a.error: a.transaction.error;
n(t)
}
} catch(t) {
n(t)
}
})
}).
catch(n)
});
return r(n, t),
n
}
function C(t) {
var e = this,
n = new mt(function(t, n) {
e.ready().then(function() {
E(e._dbInfo, St,
function(i, o) {
if (i) return n(i);
try {
var r = o.objectStore(e._dbInfo.storeName),
a = r.count();
a.onsuccess = function() {
t(a.result)
},
a.onerror = function() {
n(a.error)
}
} catch(t) {
n(t)
}
})
}).
catch(n)
});
return r(n, t),
n
}
function R(t, e) {
var n = this,
i = new mt(function(e, i) {
if (t < 0) return void e(null);
n.ready().then(function() {
E(n._dbInfo, St,
function(o, r) {
if (o) return i(o);
try {
var a = r.objectStore(n._dbInfo.storeName),
s = !1,
l = a.openCursor();
l.onsuccess = function() {
var n = l.result;
if (!n) return void e(null);
0 === t ? e(n.key) : s ? e(n.key) : (s = !0, n.advance(t))
},
l.onerror = function() {
i(l.error)
}
} catch(t) {
i(t)
}
})
}).
catch(i)
});
return r(i, e),
i
}
function B(t) {
var e = this,
n = new mt(function(t, n) {
e.ready().then(function() {
E(e._dbInfo, St,
function(i, o) {
if (i) return n(i);
try {
var r = o.objectStore(e._dbInfo.storeName),
a = r.openCursor(),
s = [];
a.onsuccess = function() {
var e = a.result;
if (!e) return void t(s);
s.push(e.key),
e.
continue ()
},
a.onerror = function() {
n(a.error)
}
} catch(t) {
n(t)
}
})
}).
catch(n)
});
return r(n, t),
n
}
function N(t, e) {
e = l.apply(this, arguments);
var n = this.config();
t = "function" != typeof t && t || {},
t.name || (t.name = t.name || n.name, t.storeName = t.storeName || n.storeName);
var i, o = this;
if (t.name) {
var a = t.name === n.name && o._dbInfo.db,
s = a ? mt.resolve(o._dbInfo.db) : _(t).then(function(e) {
var n = xt[t.name],
i = n.forages;
n.db = e;
for (var o = 0; o < i.length; o++) i[o]._dbInfo.db = e;
return e
});
i = t.storeName ? s.then(function(e) {
if (e.objectStoreNames.contains(t.storeName)) {
var n = e.version + 1;
d(t);
var i = xt[t.name],
o = i.forages;
e.close();
for (var r = 0; r < o.length; r++) {
var a = o[r];
a._dbInfo.db = null,
a._dbInfo.version = n
}
return new mt(function(e, i) {
var o = _t.open(t.name, n);
o.onerror = function(t) {
o.result.close(),
i(t)
},
o.onupgradeneeded = function() {
o.result.deleteObjectStore(t.storeName)
},
o.onsuccess = function() {
var t = o.result;
t.close(),
e(t)
}
}).then(function(t) {
i.db = t;
for (var e = 0; e < o.length; e++) {
var n = o[e];
n._dbInfo.db = t,
h(n._dbInfo)
}
}).
catch(function(e) {
throw (v(t, e) || mt.resolve()).
catch(function() {}),
e
})
}
}) : s.then(function(e) {
d(t);
var n = xt[t.name],
i = n.forages;
e.close();
for (var o = 0; o < i.length; o++) {
i[o]._dbInfo.db = null
}
return new mt(function(e, n) {
var i = _t.deleteDatabase(t.name);
i.onerror = i.onblocked = function(t) {
var e = i.result;
e && e.close(),
n(t)
},
i.onsuccess = function() {
var t = i.result;
t && t.close(),
e(t)
}
}).then(function(t) {
n.db = t;
for (var e = 0; e < i.length; e++) h(i[e]._dbInfo)
}).
catch(function(e) {
throw (v(t, e) || mt.resolve()).
catch(function() {}),
e
})
})
} else i = mt.reject("Invalid arguments");
return r(i, e),
i
}
function O(t) {
var e, n, i, o, r, a = .75 * t.length,
s = t.length,
l = 0;
"=" === t[t.length - 1] && (a--, "=" === t[t.length - 2] && a--);
var u = new ArrayBuffer(a),
c = new Uint8Array(u);
for (e = 0; e < s; e += 4) n = Tt.indexOf(t[e]),
i = Tt.indexOf(t[e + 1]),
o = Tt.indexOf(t[e + 2]),
r = Tt.indexOf(t[e + 3]),
c[l++] = n << 2 | i >> 4,
c[l++] = (15 & i) << 4 | o >> 2,
c[l++] = (3 & o) << 6 | 63 & r;
return u
}
function D(t) {
var e, n = new Uint8Array(t),
i = "";
for (e = 0; e < n.length; e += 3) i += Tt[n[e] >> 2],
i += Tt[(3 & n[e]) << 4 | n[e + 1] >> 4],
i += Tt[(15 & n[e + 1]) << 2 | n[e + 2] >> 6],
i += Tt[63 & n[e + 2]];
return n.length % 3 == 2 ? i = i.substring(0, i.length - 1) + "=": n.length % 3 == 1 && (i = i.substring(0, i.length - 2) + "=="),
i
}
function z(t, e) {
var n = "";
if (t && (n = Ut.call(t)), t && ("[object ArrayBuffer]" === n || t.buffer && "[object ArrayBuffer]" === Ut.call(t.buffer))) {
var i, o = It;
t instanceof ArrayBuffer ? (i = t, o += Lt) : (i = t.buffer, "[object Int8Array]" === n ? o += Ct: "[object Uint8Array]" === n ? o += Rt: "[object Uint8ClampedArray]" === n ? o += Bt: "[object Int16Array]" === n ? o += Nt: "[object Uint16Array]" === n ? o += Dt: "[object Int32Array]" === n ? o += Ot: "[object Uint32Array]" === n ? o += zt: "[object Float32Array]" === n ? o += Ft: "[object Float64Array]" === n ? o += Vt: e(new Error("Failed to get type for BinaryArray"))),
e(o + D(i))
} else if ("[object Blob]" === n) {
var r = new FileReader;
r.onload = function() {
var n = At + t.type + "~" + D(this.result);
e(It + Mt + n)
},
r.readAsArrayBuffer(t)
} else try {
e(JSON.stringify(t))
} catch(n) {
console.error("Couldn't convert value into a JSON string: ", t),
e(null, n)
}
}
function F(t) {
if (t.substring(0, kt) !== It) return JSON.parse(t);
var e, n = t.substring(Yt),
i = t.substring(kt, Yt);
if (i === Mt && Pt.test(n)) {
var r = n.match(Pt);
e = r[1],
n = n.substring(r[0].length)
}
var a = O(n);
switch (i) {
case Lt:
return a;
case Mt:
return o([a], {
type: e
});
case Ct:
return new Int8Array(a);
case Rt:
return new Uint8Array(a);
case Bt:
return new Uint8ClampedArray(a);
case Nt:
return new Int16Array(a);
case Dt:
return new Uint16Array(a);
case Ot:
return new Int32Array(a);
case zt:
return new Uint32Array(a);
case Ft:
return new Float32Array(a);
case Vt:
return new Float64Array(a);
default:
throw new Error("Unkown type: " + i)
}
}
function V(t, e, n, i) {
t.executeSql("CREATE TABLE IF NOT EXISTS " + e.storeName + " (id INTEGER PRIMARY KEY, key unique, value)", [], n, i)
}
function Y(t) {
var e = this,
n = {
db: null
};
if (t) for (var i in t) n[i] = "string" != typeof t[i] ? t[i].toString() : t[i];
var o = new mt(function(t, i) {
try {
n.db = openDatabase(n.name, String(n.version), n.description, n.size)
} catch(t) {
return i(t)
}
n.db.transaction(function(o) {
V(o, n,
function() {
e._dbInfo = n,
t()
},
function(t, e) {
i(e)
})
},
i)
});
return n.serializer = jt,
o
}
function U(t, e, n, i, o, r) {
t.executeSql(n, i, o,
function(t, a) {
a.code === a.SYNTAX_ERR ? t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?", [e.storeName],
function(t, s) {
s.rows.length ? r(t, a) : V(t, e,
function() {
t.executeSql(n, i, o, r)
},
r)
},
r) : r(t, a)
},
r)
}
function j(t, e) {
var n = this;
t = s(t);
var i = new mt(function(e, i) {
n.ready().then(function() {
var o = n._dbInfo;
o.db.transaction(function(n) {
U(n, o, "SELECT * FROM " + o.storeName + " WHERE key = ? LIMIT 1", [t],
function(t, n) {
var i = n.rows.length ? n.rows.item(0).value: null;
i && (i = o.serializer.deserialize(i)),
e(i)
},
function(t, e) {
i(e)
})
})
}).
catch(i)
});
return r(i, e),
i
}
function G(t, e) {
var n = this,
i = new mt(function(e, i) {
n.ready().then(function() {
var o = n._dbInfo;
o.db.transaction(function(n) {
U(n, o, "SELECT * FROM " + o.storeName, [],
function(n, i) {
for (var r = i.rows,
a = r.length,
s = 0; s < a; s++) {
var l = r.item(s),
u = l.value;
if (u && (u = o.serializer.deserialize(u)), void 0 !== (u = t(u, l.key, s + 1))) return void e(u)
}
e()
},
function(t, e) {
i(e)
})
})
}).
catch(i)
});
return r(i, e),
i
}
function Z(t, e, n, i) {
var o = this;
t = s(t);
var a = new mt(function(r, a) {
o.ready().then(function() {
void 0 === e && (e = null);
var s = e,
l = o._dbInfo;
l.serializer.serialize(e,
function(e, u) {
u ? a(u) : l.db.transaction(function(n) {
U(n, l, "INSERT OR REPLACE INTO " + l.storeName + " (key, value) VALUES (?, ?)", [t, e],
function() {
r(s)
},
function(t, e) {
a(e)
})
},
function(e) {
if (e.code === e.QUOTA_ERR) {
if (i > 0) return void r(Z.apply(o, [t, s, n, i - 1]));
a(e)
}
})
})
}).
catch(a)
});
return r(a, n),
a
}
function H(t, e, n) {
return Z.apply(this, [t, e, n, 1])
}
function W(t, e) {
var n = this;
t = s(t);
var i = new mt(function(e, i) {
n.ready().then(function() {
var o = n._dbInfo;
o.db.transaction(function(n) {
U(n, o, "DELETE FROM " + o.storeName + " WHERE key = ?", [t],
function() {
e()
},
function(t, e) {
i(e)
})
})
}).
catch(i)
});
return r(i, e),
i
}
function X(t) {
var e = this,
n = new mt(function(t, n) {
e.ready().then(function() {
var i = e._dbInfo;
i.db.transaction(function(e) {
U(e, i, "DELETE FROM " + i.storeName, [],
function() {
t()
},
function(t, e) {
n(e)
})
})
}).
catch(n)
});
return r(n, t),
n
}
function Q(t) {
var e = this,
n = new mt(function(t, n) {
e.ready().then(function() {
var i = e._dbInfo;
i.db.transaction(function(e) {
U(e, i, "SELECT COUNT(key) as c FROM " + i.storeName, [],
function(e, n) {
var i = n.rows.item(0).c;
t(i)
},
function(t, e) {
n(e)
})
})
}).
catch(n)
});
return r(n, t),
n
}
function q(t, e) {
var n = this,
i = new mt(function(e, i) {
n.ready().then(function() {
var o = n._dbInfo;
o.db.transaction(function(n) {
U(n, o, "SELECT key FROM " + o.storeName + " WHERE id = ? LIMIT 1", [t + 1],
function(t, n) {
var i = n.rows.length ? n.rows.item(0).key: null;
e(i)
},
function(t, e) {
i(e)
})
})
}).
catch(i)
});
return r(i, e),
i
}
function K(t) {
var e = this,
n = new mt(function(t, n) {
e.ready().then(function() {
var i = e._dbInfo;
i.db.transaction(function(e) {
U(e, i, "SELECT key FROM " + i.storeName, [],
function(e, n) {
for (var i = [], o = 0; o < n.rows.length; o++) i.push(n.rows.item(o).key);
t(i)
},
function(t, e) {
n(e)
})
})
}).
catch(n)
});
return r(n, t),
n
}
function J(t) {
return new mt(function(e, n) {
t.transaction(function(i) {
i.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'", [],
function(n, i) {
for (var o = [], r = 0; r < i.rows.length; r++) o.push(i.rows.item(r).name);
e({
db: t,
storeNames: o
})
},
function(t, e) {
n(e)
})
},
function(t) {
n(t)
})
})
}
function $(t, e) {
e = l.apply(this, arguments);
var n = this.config();
t = "function" != typeof t && t || {},
t.name || (t.name = t.name || n.name, t.storeName = t.storeName || n.storeName);
var i, o = this;
return i = t.name ? new mt(function(e) {
var i;
i = t.name === n.name ? o._dbInfo.db: openDatabase(t.name, "", "", 0),
e(t.storeName ? {
db: i,
storeNames: [t.storeName]
}: J(i))
}).then(function(t) {
return new mt(function(e, n) {
t.db.transaction(function(i) {
for (var o = [], r = 0, a = t.storeNames.length; r < a; r++) o.push(function(t) {
return new mt(function(e, n) {
i.executeSql("DROP TABLE IF EXISTS " + t, [],
function() {
e()
},
function(t, e) {
n(e)
})
})
} (t.storeNames[r]));
mt.all(o).then(function() {
e()
}).
catch(function(t) {
n(t)
})
},
function(t) {
n(t)
})
})
}) : mt.reject("Invalid arguments"),
r(i, e),
i
}
function tt(t, e) {
var n = t.name + "/";
return t.storeName !== e.storeName && (n += t.storeName + "/"),
n
}
function et() {
try {
return localStorage.setItem("_localforage_support_test", !0),
localStorage.removeItem("_localforage_support_test"),
!1
} catch(t) {
return ! 0
}
}
function nt() {
return ! et() || localStorage.length > 0
}
function it(t) {
var e = this,
n = {};
if (t) for (var i in t) n[i] = t[i];
return n.keyPrefix = tt(t, e._defaultConfig),
nt() ? (e._dbInfo = n, n.serializer = jt, mt.resolve()) : mt.reject()
}
function ot(t) {
var e = this,
n = e.ready().then(function() {
for (var t = e._dbInfo.keyPrefix,
n = localStorage.length - 1; n >= 0; n--) {
var i = localStorage.key(n);
0 === i.indexOf(t) && localStorage.removeItem(i)
}
});
return r(n, t),
n
}
function rt(t, e) {
var n = this;
t = s(t);
var i = n.ready().then(function() {
var e = n._dbInfo,
i = localStorage.getItem(e.keyPrefix + t);
return i && (i = e.serializer.deserialize(i)),
i
});
return r(i, e),
i
}
function at(t, e) {
var n = this,
i = n.ready().then(function() {
for (var e = n._dbInfo,
i = e.keyPrefix,
o = i.length,
r = localStorage.length,
a = 1,
s = 0; s < r; s++) {
var l = localStorage.key(s);
if (0 === l.indexOf(i)) {
var u = localStorage.getItem(l);
if (u && (u = e.serializer.deserialize(u)), void 0 !== (u = t(u, l.substring(o), a++))) return u
}
}
});
return r(i, e),
i
}
function st(t, e) {
var n = this,
i = n.ready().then(function() {
var e, i = n._dbInfo;
try {
e = localStorage.key(t)
} catch(t) {
e = null
}
return e && (e = e.substring(i.keyPrefix.length)),
e
});
return r(i, e),
i
}
function lt(t) {
var e = this,
n = e.ready().then(function() {
for (var t = e._dbInfo,
n = localStorage.length,
i = [], o = 0; o < n; o++) {
var r = localStorage.key(o);
0 === r.indexOf(t.keyPrefix) && i.push(r.substring(t.keyPrefix.length))
}
return i
});
return r(n, t),
n
}
function ut(t) {
var e = this,
n = e.keys().then(function(t) {
return t.length
});
return r(n, t),
n
}
function ct(t, e) {
var n = this;
t = s(t);
var i = n.ready().then(function() {
var e = n._dbInfo;
localStorage.removeItem(e.keyPrefix + t)
});
return r(i, e),
i
}
function ft(t, e, n) {
var i = this;
t = s(t);
var o = i.ready().then(function() {
void 0 === e && (e = null);
var n = e;
return new mt(function(o, r) {
var a = i._dbInfo;
a.serializer.serialize(e,
function(e, i) {
if (i) r(i);
else try {
localStorage.setItem(a.keyPrefix + t, e),
o(n)
} catch(t) {
"QuotaExceededError" !== t.name && "NS_ERROR_DOM_QUOTA_REACHED" !== t.name || r(t),
r(t)
}
})
})
});
return r(o, n),
o
}
function dt(t, e) {
if (e = l.apply(this, arguments), t = "function" != typeof t && t || {},
!t.name) {
var n = this.config();
t.name = t.name || n.name,
t.storeName = t.storeName || n.storeName
}
var i, o = this;
return i = t.name ? new mt(function(e) {
e(t.storeName ? tt(t, o._defaultConfig) : t.name + "/")
}).then(function(t) {
for (var e = localStorage.length - 1; e >= 0; e--) {
var n = localStorage.key(e);
0 === n.indexOf(t) && localStorage.removeItem(n)
}
}) : mt.reject("Invalid arguments"),
r(i, e),
i
}
function ht(t, e) {
t[e] = function() {
var n = arguments;
return t.ready().then(function() {
return t[e].apply(t, n)
})
}
}
function vt() {
for (var t = 1; t < arguments.length; t++) {
var e = arguments[t];
if (e) for (var n in e) e.hasOwnProperty(n) && (Xt(e[n]) ? arguments[0][n] = e[n].slice() : arguments[0][n] = e[n])
}
return arguments[0]
}
var pt = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
function(t) {
return typeof t
}: function(t) {
return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol": typeof t
},
_t = function() {
try {
if ("undefined" != typeof indexedDB) return indexedDB;
if ("undefined" != typeof webkitIndexedDB) return webkitIndexedDB;
if ("undefined" != typeof mozIndexedDB) return mozIndexedDB;
if ("undefined" != typeof OIndexedDB) return OIndexedDB;
if ("undefined" != typeof msIndexedDB) return msIndexedDB
} catch(t) {
return
}
} ();
"undefined" == typeof Promise && t(3);
var mt = Promise,
gt = "local-forage-detect-blob-support",
yt = void 0,
xt = {},
bt = Object.prototype.toString,
St = "readonly",
wt = "readwrite",
Et = {
_driver: "asyncStorage",
_initStorage: A,
_support: function() {
try {
if (!_t) return ! 1;
var t = "undefined" != typeof openDatabase && /(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent) && !/BlackBerry/.test(navigator.platform),
e = "function" == typeof fetch && -1 !== fetch.toString().indexOf("[native code");
return (!t || e) && "undefined" != typeof indexedDB && "undefined" != typeof IDBKeyRange
} catch(t) {
return ! 1
}
} (),
iterate: I,
getItem: P,
setItem: k,
removeItem: L,
clear: M,
length: C,
key: R,
keys: B,
dropInstance: N
},
Tt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
At = "~~local_forage_type~",
Pt = /^~~local_forage_type~([^~]+)~/,
It = "__lfsc__:",
kt = It.length,
Lt = "arbf",
Mt = "blob",
Ct = "si08",
Rt = "ui08",
Bt = "uic8",
Nt = "si16",
Ot = "si32",
Dt = "ur16",
zt = "ui32",
Ft = "fl32",
Vt = "fl64",
Yt = kt + Lt.length,
Ut = Object.prototype.toString,
jt = {
serialize: z,
deserialize: F,
stringToBuffer: O,
bufferToString: D
},
Gt = {
_driver: "webSQLStorage",
_initStorage: Y,
_support: function() {
return "function" == typeof openDatabase
} (),
iterate: G,
getItem: j,
setItem: H,
removeItem: W,
clear: X,
length: Q,
key: q,
keys: K,
dropInstance: $
},
Zt = {
_driver: "localStorageWrapper",
_initStorage: it,
_support: function() {
try {
return "undefined" != typeof localStorage && "setItem" in localStorage && !!localStorage.setItem
} catch(t) {
return ! 1
}
} (),
iterate: at,
getItem: rt,
setItem: ft,
removeItem: ct,
clear: ot,
length: ut,
key: st,
keys: lt,
dropInstance: dt
},
Ht = function(t, e) {
return t === e || "number" == typeof t && "number" == typeof e && isNaN(t) && isNaN(e)
},
Wt = function(t, e) {
for (var n = t.length,
i = 0; i < n;) {
if (Ht(t[i], e)) return ! 0;
i++
}
return ! 1
},
Xt = Array.isArray ||
function(t) {
return "[object Array]" === Object.prototype.toString.call(t)
},
Qt = {},
qt = {},
Kt = {
INDEXEDDB: Et,
WEBSQL: Gt,
LOCALSTORAGE: Zt
},
Jt = [Kt.INDEXEDDB._driver, Kt.WEBSQL._driver, Kt.LOCALSTORAGE._driver],
$t = ["dropInstance"],
te = ["clear", "getItem", "iterate", "key", "keys", "length", "removeItem", "setItem"].concat($t),
ee = {
description: "",
driver: Jt.slice(),
name: "localforage",
size: 4980736,
storeName: "keyvaluepairs",
version: 1
},
ne = function() {
function t(e) {
i(this, t);
for (var n in Kt) if (Kt.hasOwnProperty(n)) {
var o = Kt[n],
r = o._driver;
this[n] = r,
Qt[r] || this.defineDriver(o)
}
this._defaultConfig = vt({},
ee),
this._config = vt({},
this._defaultConfig, e),
this._driverSet = null,
this._initDriver = null,
this._ready = !1,
this._dbInfo = null,
this._wrapLibraryMethodsWithReady(),
this.setDriver(this._config.driver).
catch(function() {})
}
return t.prototype.config = function(t) {
if ("object" === (void 0 === t ? "undefined": pt(t))) {
if (this._ready) return new Error("Can't call config() after localforage has been used.");
for (var e in t) {
if ("storeName" === e && (t[e] = t[e].replace(/\W/g, "_")), "version" === e && "number" != typeof t[e]) return new Error("Database version must be a number.");
this._config[e] = t[e]
}
return ! ("driver" in t && t.driver) || this.setDriver(this._config.driver)
}
return "string" == typeof t ? this._config[t] : this._config
},
t.prototype.defineDriver = function(t, e, n) {
var i = new mt(function(e, n) {
try {
var i = t._driver,
o = new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");
if (!t._driver) return void n(o);
for (var a = te.concat("_initStorage"), s = 0, l = a.length; s < l; s++) {
var u = a[s];
if ((!Wt($t, u) || t[u]) && "function" != typeof t[u]) return void n(o)
} !
function() {
for (var e = 0,
n = $t.length; e < n; e++) {
var i = $t[e];
t[i] || (t[i] = function(t) {
return function() {
var e = new Error("Method " + t + " is not implemented by the current driver"),
n = mt.reject(e);
return r(n, arguments[arguments.length - 1]),
n
}
} (i))
}
} ();
var c = function(n) {
Qt[i] && console.info("Redefining LocalForage driver: " + i),
Qt[i] = t,
qt[i] = n,
e()
};
"_support" in t ? t._support && "function" == typeof t._support ? t._support().then(c, n) : c( !! t._support) : c(!0)
} catch(t) {
n(t)
}
});
return a(i, e, n),
i
},
t.prototype.driver = function() {
return this._driver || null
},
t.prototype.getDriver = function(t, e, n) {
var i = Qt[t] ? mt.resolve(Qt[t]) : mt.reject(new Error("Driver not found."));
return a(i, e, n),
i
},
t.prototype.getSerializer = function(t) {
var e = mt.resolve(jt);
return a(e, t),
e
},
t.prototype.ready = function(t) {
var e = this,
n = e._driverSet.then(function() {
return null === e._ready && (e._ready = e._initDriver()),
e._ready
});
return a(n, t, t),
n
},
t.prototype.setDriver = function(t, e, n) {
function i() {
s._config.driver = s.driver()
}
function o(t) {
return s._extend(t),
i(),
s._ready = s._initStorage(s._config),
s._ready
}
function r(t) {
return function() {
function e() {
for (; n < t.length;) {
var r = t[n];
return n++,
s._dbInfo = null,
s._ready = null,
s.getDriver(r).then(o).
catch(e)
}
i();
var a = new Error("No available storage method found.");
return s._driverSet = mt.reject(a),
s._driverSet
}
var n = 0;
return e()
}
}
var s = this;
Xt(t) || (t = [t]);
var l = this._getSupportedDrivers(t),
u = null !== this._driverSet ? this._driverSet.
catch(function() {
return mt.resolve()
}) : mt.resolve();
return this._driverSet = u.then(function() {
var t = l[0];
return s._dbInfo = null,
s._ready = null,
s.getDriver(t).then(function(t) {
s._driver = t._driver,
i(),
s._wrapLibraryMethodsWithReady(),
s._initDriver = r(l)
})
}).
catch(function() {
i();
var t = new Error("No available storage method found.");
return s._driverSet = mt.reject(t),
s._driverSet
}),
a(this._driverSet, e, n),
this._driverSet
},
t.prototype.supports = function(t) {
return !! qt[t]
},
t.prototype._extend = function(t) {
vt(this, t)
},
t.prototype._getSupportedDrivers = function(t) {
for (var e = [], n = 0, i = t.length; n < i; n++) {
var o = t[n];
this.supports(o) && e.push(o)
}
return e
},
t.prototype._wrapLibraryMethodsWithReady = function() {
for (var t = 0,
e = te.length; t < e; t++) ht(this, te[t])
},
t.prototype.createInstance = function(e) {
return new t(e)
},
t
} (),
ie = new ne;
e.exports = ie
},
{
3 : 3
}]
},
{},
[4])(4)
})
}).call(e, n(142))
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(29),
u = n(47),
c = function() {
function t(e, n) {
return (0, r.
default)(this, t),
!e || e instanceof u ? !n || n instanceof u ? void(e && (n ? ((e.getLat() > n.getLat() || e.getLng() > n.getLng()) && console.error("LatLngBounds中sw 的经纬度必须小于ne的经纬度实际传入sw为", e, "ne 为:", n), this.setSouthWest(e).setNorthEast(n)) : 4 === e.length ? this.setSouthWest([e[0], e[1]]).setNorthEast([e[2], e[3]]) : 2 === e.length && this.setSouthWest(e[0]).setNorthEast(e[1]))) : void new l.BaseTypeError("LatLngBounds.ne", "LatLng", n).error() : void new l.BaseTypeError("LatLngBounds.sw", "LatLng", e).error()
}
return (0, s.
default)(t, [{
key: "setNorthEast",
value: function(t) {
return this._ne = u.convert(t),
this
}
},
{
key: "setSouthWest",
value: function(t) {
return this._sw = u.convert(t),
this
}
},
{
key: "getCenter",
value: function() {
return new u((this._sw.lat + this._ne.lat) / 2, (this._sw.lng + this._ne.lng) / 2, 0, !0)
}
},
{
key: "getSouthWest",
value: function() {
return this._sw
}
},
{
key: "getNorthEast",
value: function() {
return this._ne
}
},
{
key: "extend",
value: function(e) {
var n = this._sw,
i = this._ne,
o = void 0,
r = void 0;
if (e instanceof u) o = e,
r = e;
else {
if (! (e instanceof t)) return Array.isArray(e) ? e.every(Array.isArray) ? this.extend(t.convert(e)) : this.extend(u.convert(e)) : this;
if (o = e._sw, r = e._ne, !o || !r) return this
}
return n || i ? (this._sw = new u(Math.min(o.lat, n.lat), Math.min(o.lng, n.lng), 0, !0), this._ne = new u(Math.max(r.lat, i.lat), Math.max(r.lng, i.lng), 0, !0)) : (this._sw = new u(o.lat, o.lng, 0, !0), this._ne = new u(r.lat, r.lng, 0, !0)),
this
}
},
{
key: "union",
value: function(t) {
return this.extend(t)
}
},
{
key: "equals",
value: function(t) {
var e = this._sw,
n = this._ne,
i = t.getSouthWest(),
o = t.getNorthEast();
return e.equals(i) && n.equals(o)
}
},
{
key: "intersects",
value: function(t) {
var e = this._sw,
n = this._ne,
i = t.getSouthWest(),
o = t.getNorthEast();
return ! (i.lat > n.lat || o.lat < e.lat || i.lng > n.lng || o.lng < e.lng)
}
},
{
key: "covers",
value: function(t) {
var e = t.getSouthWest(),
n = t.getNorthEast(),
i = t.getSouthEast(),
o = t.getNorthWest();
return this.contains(e) && this.contains(n) && this.contains(i) && this.contains(o)
}
},
{
key: "isEmpty",
value: function() {
return ! this._sw || !this._ne || this._sw.lat === this._ne.lat || this._sw.lng === this._ne.lng
}
},
{
key: "contains",
value: function(t) {
return this._sw.lat <= t.lat && this._sw.lng <= t.lng && this._ne.lat >= t.lat && this._ne.lng >= t.lng
}
},
{
key: "getNorthWest",
value: function() {
return new u(this.getNorth(), this.getWest(), 0, !0)
}
},
{
key: "getSouthEast",
value: function() {
return new u(this.getSouth(), this.getEast(), 0, !0)
}
},
{
key: "getWest",
value: function() {
return this._sw.lng
}
},
{
key: "getSouth",
value: function() {
return this._sw.lat
}
},
{
key: "getEast",
value: function() {
return this._ne.lng
}
},
{
key: "getNorth",
value: function() {
return this._ne.lat
}
},
{
key: "toString",
value: function() {
return "LatLngBounds(" + this._sw.toString() + ", " + this._ne.toString() + ")"
}
}]),
t
} ();
c.convert = function(t) {
return ! t || t instanceof c ? t: new c(t)
},
c._convertFromWorker = function(t) {
return t._sw && t._ne ? new c(u.convert(t._sw), u.convert(t._ne)) : t
},
t.exports = c
},
function(t, e, n) {
"use strict";
function i(t, e, n) {
var i = window.document.createElement(t);
return e && (i.className = e),
n && n.appendChild(i),
i
}
function o(t) {
for (var e = 0; e < t.length; e++) if (t[e] in w) return t[e];
return t[0]
}
function r() {
E && (T = w[E], w[E] = "none")
}
function a() {
E && (w[E] = T)
}
function s(t, e) {
t.style[A] = e
}
function l(t) {
t.preventDefault(),
t.stopPropagation(),
window.removeEventListener("click", l, !0)
}
function u() {
window.addEventListener("click", l, !0),
window.setTimeout(function() {
window.removeEventListener("click", l, !0)
},
0)
}
function c(t, e) {
var n = t.getBoundingClientRect();
return e = e.touches ? ("touchend" === e.type ? e.changedTouches: e.touches)[0] : e,
d(t, new S(e.clientX - n.left - t.clientLeft, e.clientY - n.top - t.clientTop))
}
function f(t, e) {
for (var n = t.getBoundingClientRect(), i = [], o = "touchend" === e.type ? e.changedTouches: e.touches, r = 0; r < o.length; r++) {
var a = new S(o[r].clientX - n.left - t.clientLeft, o[r].clientY - n.top - t.clientTop),
s = d(t, a);
i.push(s)
}
return i
}
function d(t, e) {
var n = null,
i = getComputedStyle(t),
o = i.width,
r = i.height,
a = i.transform;
for (o = o.replace("px", ""), r = r.replace("px", ""); null !== t;) {
if (!a) {
a = getComputedStyle(t).transform
}
if ("none" !== a) {
var s = a.match(/\(([^)]*)\)/),
l = (0, x.
default)(s, 2),
u = l[1],
c = u.split(","),
f = new b.Matrix4;
f.elements[0] = parseFloat(c[0].trim()),
f.elements[1] = parseFloat(c[1].trim()),
f.elements[4] = parseFloat(c[2].trim()),
f.elements[5] = parseFloat(c[3].trim()),
n = n ? f.multiply(n) : f
}
t = t.parentElement,
a = null
}
if (!n) return e;
var d = new b.Vector3([o, 0, 0]),
h = new b.Vector3([0, r, 0]),
v = new b.Vector3([o, r, 0]),
p = n.multiplyVector3(d),
_ = n.multiplyVector3(h),
m = n.multiplyVector3(v),
g = Math.min.apply(null, [0, p.elements[0], _.elements[0], m.elements[0]]),
y = Math.min.apply(null, [0, p.elements[1], _.elements[1], m.elements[1]]),
w = n.invert(),
E = new b.Vector3([e.x + g, e.y + y, 0]),
T = w.multiplyVector3(E);
return new S(T.elements[0], T.elements[1])
}
function h(t) {
t.parentNode && t.parentNode.removeChild(t)
}
function v(t) {
var e = document.createElement("div");
e.innerHTML = t;
var n = document.createDocumentFragment();
return Array.prototype.slice.apply(e.childNodes).forEach(function(t) {
n.appendChild(t)
}),
n
}
function p(t) {
if ("pageX" in t && "pageY" in t) return {
x: t.pageX,
y: t.pageY
};
if ("touches" in t && t.touches.length > 0) {
var e = t.touches[0];
return {
x: e.pageX,
y: e.pageY
}
}
if ("changedTouches" in t && t.changedTouches.length > 0) {
var n = t.changedTouches[0];
return {
x: n.pageX,
y: n.pageY
}
}
}
function _(t, e) {
t && (Array.isArray(e) || (e = [e]), e.forEach(function(e) {
g(t, e) || (t.className += " " + e)
}))
}
function m(t, e) {
t && (Array.isArray(e) || (e = [e]), e.forEach(function(e) {
g(t, e) && (t.className = t.className.replace(" " + e, ""))
}))
}
function g(t, e) {
if (t) {
var n = " " + e + " ";
return (" " + t.className + " ").includes(n)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.TRANSITIONTIMINGFUNCTION = e.TRANSITIONDURATION = e.TRANSITIONEND = e.TRANSITION = e.TRANSFORM = e.TRANSFORMORIGIN = void 0;
var y = n(32),
x = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (y);
e.create = i,
e.disableDrag = r,
e.enableDrag = a,
e.setTransform = s,
e.suppressClick = u,
e.mousePos = c,
e.touchPos = f,
e.remove = h,
e.toDom = v,
e.getPointerXY = p,
e.addClass = _,
e.removeClass = m,
e.hasClass = g;
var b = n(107),
S = n(74),
w = window.document.documentElement.style,
E = o(["userSelect", "MozUserSelect", "WebkitUserSelect", "msUserSelect"]),
T = void 0,
A = (e.TRANSFORMORIGIN = o(["TRANSFORMORIGIN", "WebkitTransformOrigin", "OTransformOrigin", "MozTransformOrigin", "msTransformOrigin"]), e.TRANSFORM = o(["transform", "WebkitTransform", "OTransform", "MozTransform", "msTransform"])),
P = e.TRANSITION = o(["transition", "webkitTransition", "OTransition", "MozTransition", "msTransition"]);
e.TRANSITIONEND = "transition" === P ? P + "end": P + "End",
e.TRANSITIONDURATION = P + "Duration",
e.TRANSITIONTIMINGFUNCTION = P + "TimingFunction"
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(212),
f = i(c),
d = n(784),
h = i(d),
v = void 0,
p = {},
_ = function() {
function t(e) { (0, s.
default)(this, t),
this.gl = e.gl,
this.location = {},
this.store = null,
this.shaderSource = null,
this.shaderParams = null
}
return (0, u.
default)(t, [{
key: "preDraw",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = this.programId;
e !== v && (v = e, this.enableProgram(t.updated)),
this.loadTexture(t),
this.applyLight(t.lightUniforms, t.shadowTexture)
}
},
{
key: "afterDraw",
value: function() {
if (this.enableLight) {
var t = this.gl;
t.activeTexture(t.TEXTURE3),
t.bindTexture(t.TEXTURE_2D, null)
}
}
},
{
key: "loadTexture",
value: function() {}
},
{
key: "applyLight",
value: function(t, e) {
if (t && this.enableLight) {
var n = this.gl,
i = t.lighting_uBase,
o = t.lighting_uToneMapping,
r = t.lighting_uAmbientColor,
a = t.lighting_uDirDirection,
s = t.lighting_uDirColor,
l = t.lighting_uDirCount,
u = t.lighting_uPointPosition,
c = t.lighting_uPointAtt,
f = t.lighting_uPointColor,
d = t.lighting_uPointCount,
h = t.lighting_uShadow,
v = t.lighting_uViewPos,
p = t.lighting_uShadowLightPVMatrix;
e && e.bind(n, {
textureIndex: 3
}),
n.uniform4f(this.lighting_uBase, i[0], i[1], i[2], i[3]),
n.uniform4f(this.lighting_uAdvanced, o[0], o[1], h[0], h[1]),
n.uniform3f(this.lighting_uAmbientColor, r[0], r[1], r[2]),
n.uniform3fv(this.lighting_uDirDirection, a),
n.uniform3fv(this.lighting_uDirColor, s),
n.uniform3fv(this.lighting_uPointPosition, u),
n.uniform3fv(this.lighting_uPointAtt, c),
n.uniform3fv(this.lighting_uPointColor, f),
n.uniform2f(this.lighting_uLightCount, l, d),
n.uniform3f(this.lighting_uViewPos, v[0], v[1], v[2]),
n.uniformMatrix4fv(this.lighting_uShadowLightPVMatrix, !1, p),
e && n.uniform1i(this.lighting_uShadowSampler, 3)
}
}
},
{
key: "createBuffer",
value: function(t, e, n, i) {
var o = this.gl,
r = {};
return e && (r.vertices = new f.
default(o, {
data: e,
usage: o.DYNAMIC_DRAW
})),
n && (r.indices = new f.
default(o, {
target: o.ELEMENT_ARRAY_BUFFER,
data: n,
usage: o.DYNAMIC_DRAW
}), r.length = n.byteLength / n.BYTES_PER_ELEMENT),
i && (r.fillCoordinates = new f.
default(o, {
data: i,
usage: o.DYNAMIC_DRAW
})),
r
}
},
{
key: "bindVertexBuffer",
value: function(t, e) {
var n = this.gl,
i = t.attributes,
o = void 0;
e ? e.bind() : e = new f.
default(n, {
data: t.arrayBuffer,
usage: n.DYNAMIC_DRAW
});
for (var r = 0,
a = i.length; r < a; r++) {
o = i[r],
o.name in this.location || (this.location[o.name] = n.getAttribLocation(n.program, o.name));
var s = this.location[o.name];
s < 0 || e.pointToAttrib({
location: s,
size: o.components,
type: n[o.type],
stride: t.bytesPerElement,
offset: o.offset
})
}
return e
}
},
{
key: "unbindVertexBuffer",
value: function(t) {
var e = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : [],
i = this.gl;
n.forEach(function(t) {
t.name in e.location || (e.location[t.name] = i.getAttribLocation(i.program, t.name));
var n = e.location[t.name];
n < 0 || e.gl.disableVertexAttribArray(n)
}),
t.unbind()
}
},
{
key: "bindElementBuffer",
value: function(t, e) {
var n = this.gl;
return e ? e.bind() : e = new f.
default(n, {
target: n.ELEMENT_ARRAY_BUFFER,
data: t.arrayBuffer,
usage: n.DYNAMIC_DRAW
}),
e
}
},
{
key: "getVariableLocations",
value: function(t) {
var e = (0, r.
default)({},
this.shaderParams);
if (this.enableLight) {
var n; (n = e.uniforms).push.apply(n, ["lighting_uBase", "lighting_uAdvanced", "lighting_uAmbientColor", "lighting_uDirDirection", "lighting_uDirColor", "lighting_uPointPosition", "lighting_uPointAtt", "lighting_uPointColor", "lighting_uLightCount", "lighting_uViewPos", "lighting_uShadowLightPVMatrix", "lighting_uShadowSampler"])
}
return (0, r.
default)({},
t.getLocations("attributes", e.attributes), t.getLocations("uniforms", e.uniforms))
}
},
{
key: "enableProgram",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] && arguments[0],
e = this.gl,
n = this.programId,
i = this.shaderSource,
o = p[n];
o ? t && (o.attachShader(i.v, i.f, t), o.locations = this.getVariableLocations(o), p[n] = o) : (o = new h.
default(e, {
vShader: i.v,
fShader: i.f
}), o.locations = this.getVariableLocations(o), p[n] = o),
o.enable(),
(0, r.
default)(this, o.locations)
}
},
{
key: "clearStore",
value: function() {
this.store && this.store.clear()
}
},
{
key: "destroy",
value: function() {
this.store && (this.store.clear(), this.store = null);
var t = this.shaderSource.name + this.gl.id;
p[t] && (p[t].delete(), delete p[t]),
this.shaderParams = null,
this.shaderSource = null,
this.location = null,
this.gl = null
}
},
{
key: "isBufferChanged",
value: function(t, e) {
if (t && e) {
for (var n in t) if (t.hasOwnProperty(n) && e[n] && t[n].data !== e[n]) return ! 0;
return ! 1
}
}
},
{
key: "programId",
get: function() {
return this.shaderSource.name + this.gl.id
}
}]),
t
} ();
e.
default = _
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(280),
p = i(v),
_ = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_onCreate",
value: function() {
return this.gl.createBuffer()
}
},
{
key: "_onDelete",
value: function() {
this.unbind(),
this.gl.deleteBuffer(this._object),
this.gl.disableVertexAttribArray(this.location)
}
},
{
key: "_initialize",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.target = t.target || this.gl.ARRAY_BUFFER,
t.data && (this.bind(), this.bufferData(t.data, t))
}
},
{
key: "bind",
value: function(t, e) {
t = t || this.gl,
e = e || this.target,
t.bindBuffer(e, this._object)
}
},
{
key: "unbind",
value: function(t, e) {
t = t || this.gl,
e = e || this.target,
t.bindBuffer(e, null)
}
},
{
key: "bufferData",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
this.gl.bufferData(this.target, t, e.usage || this.gl.STATIC_DRAW)
}
},
{
key: "bufferSubData",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
this.gl.bufferSubData(this.target, e.offset || 0, t)
}
},
{
key: "pointToAttrib",
value: function(t) {
var e = t.location,
n = t.size,
i = t.type,
o = t.normalized,
r = void 0 !== o && o,
a = t.stride,
s = void 0 === a ? 0 : a,
l = t.offset,
u = void 0 === l ? 0 : l,
c = t.enable,
f = void 0 === c || c;
this.location = e,
this.gl.vertexAttribPointer(e, n, i, r, s, u),
f && this.gl.enableVertexAttribArray(e)
}
},
{
key: "buffer",
get: function() {
return this._object
}
}]),
e
} (p.
default);
e.
default = _
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(280),
p = i(v),
_ = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; (0, s.
default)(this, e);
var i = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n));
return i._initialize(n),
i
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_onCreate",
value: function() {
return this.gl.createTexture()
}
},
{
key: "_onDelete",
value: function() {
this.unbind(),
this.gl.deleteTexture(this._object)
}
},
{
key: "_initialize",
value: function(t) {
var e = t.pixels,
n = t.originalWidth,
i = t.originalHeight,
o = t.width,
r = t.height,
a = t.internalformat,
s = t.type,
l = void 0 === s ? "UNSIGNED_BYTE": s,
u = t.format,
c = void 0 === u ? "RGBA": u,
f = t.target,
d = void 0 === f ? "TEXTURE_2D": f,
h = e && e.width,
v = e && e.height;
this.pixels = e || null,
this.originalWidth = n || h,
this.originalHeight = i || v,
this.width = o || h,
this.height = r || v,
this.type = l,
this.format = c,
this.internalformat = a || c,
this.target = d,
this._uploaded = !1
}
},
{
key: "bind",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
t = t || this.gl;
var n = this.target,
i = this._object,
o = t.TEXTURE0 + (e.textureIndex || 0);
t.activeTexture(o),
t.bindTexture(t[n], i)
}
},
{
key: "unbind",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
t = t || this.gl;
var n = this.target,
i = t.TEXTURE0 + (e.textureIndex || 0);
t.activeTexture(i),
t.bindTexture(this.gl[n], null)
}
},
{
key: "resize",
value: function(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};
this.width = t,
this.height = e;
var i = this.gl,
o = this.target;
i && (this.bind(null, n), this._preSet(n), i.texImage2D(i[o], 0, i[this.internalformat], t, e, 0, i[this.format], i[this.type], this.pixels))
}
},
{
key: "update",
value: function(t, e) {
t && (this.originalWidth = t.width, this.width = t.width || e.width, this.height = t.height || e.height, this.originalHeight = t.height, this.pixels = t || null, this._uploaded = !1, this.upload(e))
}
},
{
key: "updateSub",
value: function(t, e) {
if (t) {
this.bind(null, e),
this._preSet(e);
var n = this.gl,
i = this.target,
o = this.format,
r = this.type,
a = e.xOffset,
s = e.yOffset;
n.texSubImage2D(n[i], 0, a, s, n[o], n[r], t)
}
}
},
{
key: "upload",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.gl || console.error("Texture donnot have gl, unable upload to GPU!");
var e = this.gl,
n = this.target;
this.bind(null, t),
this._preSet(t),
this._uploaded || (e.isWebGL2 ? e.texImage2D(e[n], 0, e[this.internalformat], this.width, this.height, 0, e[this.format], e[this.type], this.pixels) : e.texImage2D(e[n], 0, e[this.internalformat], e[this.format], e[this.type], this.pixels), t.useMipmap && e.generateMipmap(e[n])),
this._uploaded = !0
}
},
{
key: "copy",
value: function(t) {
var e = this.gl,
n = this.width,
i = this.height,
o = this.target;
e || console.error("Texture donnot have gl, unable upload to GPU!"),
this.bind(null, t),
this._preSet(t),
e.copyTexImage2D(e[o], 0, e[this.internalformat], 0, 0, n, i, 0)
}
},
{
key: "destroy",
value: function() {
this.gl && this.delete()
}
},
{
key: "_preSet",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = this.gl,
n = this.target;
t.flipY && e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL, 1),
t.premultiply && e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL, !0),
e.texParameteri(e[n], e.TEXTURE_MIN_FILTER, t.minFilter || e.LINEAR),
e.texParameteri(e[n], e.TEXTURE_MAG_FILTER, t.magFilter || e.LINEAR),
e.texParameteri(e[n], e.TEXTURE_WRAP_S, t.wrapS || e.CLAMP_TO_EDGE),
e.texParameteri(e[n], e.TEXTURE_WRAP_T, t.wrapT || e.CLAMP_TO_EDGE)
}
},
{
key: "texture",
get: function() {
return this._object
}
}]),
e
} (p.
default);
e.
default = _
},
function(t, e) {
var n = {}.hasOwnProperty;
t.exports = function(t, e) {
return n.call(t, e)
}
},
function(t, e, n) {
var i = n(104),
o = n(268);
t.exports = n(103) ?
function(t, e, n) {
return i.f(t, e, o(1, n))
}: function(t, e, n) {
return t[e] = n,
t
}
},
function(t, e, n) {
var i = n(321),
o = n(245);
t.exports = function(t) {
return i(o(t))
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.UNIFORM_PART = "\n uniform mat4 uMatrix;\n uniform vec4 uCenter;\n uniform float uZoom;\n\n uniform vec3 uPixelsPerMeter;\n\n uniform vec2 uResolution;\n uniform vec3 uProject_uCommonUnitsPerWorldUnit;\n uniform vec3 uProject_uCommonUnitsPerWorldUnit2;\n",
e.PROJECTION_PART = "\n float PI = 3.141592653589793;\n\n float degreeToRadian(float deg) {\n \treturn deg * PI / 180.;\n\t}\n\tconst float THRESHOLD_ZOOM = 9.0;\n\tfloat radianToDegree(float rad) {\n\t\treturn rad / PI * 180.;\n\t}\n\t\n\t\n\tvec2 fromPointToLatLng(vec2 point) {\n\t\tvec2 c = vec2(128.0, 128.0);\n\t\tfloat lng = (point.x - c.x) / 256. * 360.;\n\t\tfloat a = - (point.y - c.y) / 256. * 2. * PI;\n\t\tfloat lat = radianToDegree(2. * atan(exp(a)) - PI / 2.);\n\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\treturn vec2(lng, lat);\n\t}\n\n\n vec2 fromLatLngToPoint(vec2 latlng) {\n \tvec2 c = vec2(0.0, 0.0);\n \tvec2 d = vec2(128.0, 128.0);\n \tc.x = d.x + latlng.x * (256. / 360.);\n \tfloat e = clamp(sin(degreeToRadian(latlng.y)), -(1. - 1E-15), 1. - 1E-15);\n \tc.y = d.y + 0.5 * log((1. + e) / (1. - e)) * -(256. / (2. * PI));\n \treturn c;\n }\n\n\n\n vec2 project_position(vec2 latlng, float mapzoom) {\n \tvec2 tileCoord = fromLatLngToPoint(latlng);\n \tfloat dimension = pow(2., mapzoom);\n \ttileCoord.xy *= dimension;\n\n \treturn tileCoord;\n }\n\n\n vec2 project_view_local_position(vec2 latlng) {\n \tvec2 centerCoord = project_position(uCenter.xy, uZoom);\n \tvec2 p = project_position(latlng.xy, uZoom);\n\n \t\n \treturn vec2(p.x - centerCoord.x, centerCoord.y - p.y);\n }\n\n vec3 project_offset(vec3 offset) {\n \tfloat dy = offset.y;\n\t\t\n \tdy = clamp(dy, -1., 1.);\n \tvec3 commonUnitsPerWorldUnit = uProject_uCommonUnitsPerWorldUnit + uProject_uCommonUnitsPerWorldUnit2 * dy;\n\t\t\n \treturn vec3(offset.xyz * commonUnitsPerWorldUnit.xyz);\n }\n \n\n\tvec3 project_view_local_position_precision(vec3 latlngHigh, vec2 latlngLow) {\n\t\t\n\n\t\t\n\t\tvec3 temp_latlng_high = vec3(latlngHigh.x ,latlngHigh.y, latlngHigh.z);\n\t\t\n\t\tif (uCenter.x > 0.0) {\n\t\t\ttemp_latlng_high = vec3(latlngHigh.x ,latlngHigh.y, latlngHigh.z);\n\t\t} else {\n\t\t\ttemp_latlng_high = vec3(latlngHigh.x ,latlngHigh.y, latlngHigh.z);\n\t\t}\n\n\t\tvec2 high = temp_latlng_high.xy - uCenter.xy;\n\t\tvec2 low = latlngLow.xy - uCenter.zw;\n\n\t\treturn mix(\n\t\t\tvec3(project_view_local_position(temp_latlng_high.xy), uProject_uCommonUnitsPerWorldUnit.z * temp_latlng_high.z),\n\t\t\tproject_offset(vec3(high + low, temp_latlng_high.z)),\n\t\t\tstep(9.0, uZoom)\n\t\t);\n\t}\n\n\n vec2 project_view_local_position_precision(vec2 latlngHigh, vec2 latlngLow) {\n \tvec3 result = project_view_local_position_precision(vec3(latlngHigh.xy, 0.0), latlngLow);\n\n \treturn result.xy;\n\t}\n\t\n vec2 centerPositiveCross0( vec3 startTemp, vec3 endTemp,vec3 latlngHigh,vec3 endLatlngHigh,float startLng,float endLng,float centerLng, float halfPixelDegree){\n startTemp.x = mix(latlngHigh.x ,latlngHigh.x + 360.0, step(halfPixelDegree, centerLng - startLng) * step( halfPixelDegree, centerLng - endLng));\n endTemp.x = mix(endLatlngHigh.x ,endLatlngHigh.x + 360.0, step(halfPixelDegree, centerLng - startLng) * step( halfPixelDegree, centerLng - endLng));\n return vec2(startTemp.x, endTemp.x);\n }\n\n vec2 centerPositiveCross180( vec3 startTemp, vec3 endTemp,vec3 latlngHigh,vec3 endLatlngHigh,float startLng,float endLng,float centerLng, float halfPixelDegree){\n float transit = 1.0;\n\n startTemp.x = mix(latlngHigh.x , latlngHigh.x + 360.0, step( halfPixelDegree,centerLng -startLng));\n\n endTemp.x = mix(endLatlngHigh.x , endLatlngHigh.x + 360.0, step( halfPixelDegree, centerLng -endLng));\n transit = step(halfPixelDegree,centerLng -startLng) * step(halfPixelDegree, centerLng -endLng);\n\n\n\n endTemp.x = mix(\n endTemp.x,\n mix(endLatlngHigh.x , endLatlngHigh.x + 360.0, step(startLng - endLng,180.0)),\n transit\n );\n\n startTemp.x = mix(\n startTemp.x,\n mix(latlngHigh.x , latlngHigh.x + 360.0, step( endLng - startLng ,180.0)),\n transit\n );\n return vec2(startTemp.x, endTemp.x);\n }\n\n vec2 centerNegativeCross0( vec3 startTemp, vec3 endTemp,vec3 latlngHigh,vec3 endLatlngHigh,float startLng,float endLng,float centerLng, float halfPixelDegree){\n startTemp.x = mix(latlngHigh.x , latlngHigh.x - 360.0, step(halfPixelDegree, startLng - centerLng ) * step( halfPixelDegree, endLng - centerLng));\n endTemp.x = mix(endLatlngHigh.x , endLatlngHigh.x - 360.0, step(halfPixelDegree, startLng - centerLng ) * step( halfPixelDegree, endLng - centerLng));\n return vec2(startTemp.x, endTemp.x);\n }\n\n vec2 centerNegativeCross180( vec3 startTemp, vec3 endTemp,vec3 latlngHigh,vec3 endLatlngHigh,float startLng,float endLng,float centerLng, float halfPixelDegree){\n float transit = 1.0;\n startTemp.x = mix(latlngHigh.x , latlngHigh.x - 360.0, step( halfPixelDegree, startLng - centerLng));\n endTemp.x = mix(endLatlngHigh.x , endLatlngHigh.x - 360.0, step( halfPixelDegree, endLng - centerLng));\n\n transit = step(halfPixelDegree,centerLng -startLng) * step(halfPixelDegree, centerLng -endLng);\n startTemp.x = mix(\n startTemp.x,\n mix(latlngHigh.x , latlngHigh.x - 360.0, step( startLng - endLng ,180.0)),\n transit\n );\n endTemp.x = mix(\n endTemp.x,\n mix(endLatlngHigh.x , endLatlngHigh.x - 360.0, step(endLng - startLng ,180.0)),\n transit\n );\n return vec2(startTemp.x, endTemp.x);\n }\n\n\tvoid geodesic_project_view_local_precision(vec3 latlngHigh, vec2 latlngLow,vec3 endLatlngHigh, vec2 endLatlngLow, inout vec3 geodesic_Position_Start, inout vec3 geodesic_Position_End, vec2 uProject_uDegreePerPixels) {\n\t\t\n float halfPixelDegree = uResolution.x * uProject_uDegreePerPixels.x / 2.0;\n\t\tvec3 startTemp = latlngHigh;\n\t\tvec3 endTemp = endLatlngHigh;\n\t\tfloat startLng = latlngHigh.x + latlngLow.x;\n float endLng = endLatlngHigh.x + endLatlngLow.x;\n float centerLng = uCenter.x + uCenter.z;\n vec2 startEndLngCross0 = mix(\n centerNegativeCross0(startTemp,endTemp,latlngHigh,endLatlngHigh,startLng,endLng,centerLng, halfPixelDegree),\n centerPositiveCross0(startTemp,endTemp,latlngHigh,endLatlngHigh,startLng,endLng,centerLng, halfPixelDegree),\n step(0.0, uCenter.x)\n );\n vec2 startEndLngCross180 = mix(\n centerNegativeCross180(startTemp,endTemp,latlngHigh,endLatlngHigh,startLng,endLng,centerLng, halfPixelDegree),\n centerPositiveCross180(startTemp,endTemp,latlngHigh,endLatlngHigh,startLng,endLng,centerLng, halfPixelDegree),\n step(0.0, uCenter.x)\n );\n startTemp.x = mix(\n startEndLngCross180.x,\n startEndLngCross0.x,\n step(abs(startLng - endLng), 180.0));\n endTemp.x = mix(\n startEndLngCross180.y,\n startEndLngCross0.y,\n step(abs(startLng - endLng), 180.0));\n \n\t\tvec3 startNew = project_view_local_position_precision(startTemp, latlngLow);\n\t\tvec3 endNew = project_view_local_position_precision(endTemp, endLatlngLow);\n\t\tgeodesic_Position_Start = startNew;\n\t\tgeodesic_Position_End = endNew;\n\t}\n\tvec3 latlng_to_cartesian(vec2 latlng) {\n\t\t\n\t\tvec2 spherical = vec2(degreeToRadian(latlng.x), degreeToRadian(latlng.y));\n\t\t\n\t\t\n\t\tvec3 cartesian = vec3(\n\t\t\tcos(spherical.y) * sin(spherical.x),\n\t\t\tsin(spherical.y),\n\t\t\tcos(spherical.y) * cos(spherical.x)\n\t\t);\n\n\t\treturn cartesian;\n\t}\n\t\n\t\n\tvec4 project_view_sphere_position(vec2 latlng) {\n\t\tvec3 cartesian = latlng_to_cartesian(latlng);\n\n\t\t\n\t\tfloat rotateY = - degreeToRadian(uCenter.x);\n\t\tfloat rotateX = degreeToRadian(uCenter.y);\n\t\tfloat r = 256. * pow(2., uZoom) / (2. * PI);\n\t\tmat4 rotate1 = mat4(\n\t\t\tcos(rotateY), 0., -sin(rotateY), 0.,\n\t\t\t0., 1., 0., 0.,\n\t\t\tsin(rotateY), 0., cos(rotateY), 0.,\n\t\t\t0., 0., 0., 1.\n\t\t);\n\t\tmat4 rotate2 = mat4(\n\t\t\t1., 0., 0., 0.,\n\t\t\t0., cos(rotateX), sin(rotateX), 0.,\n\t\t\t0., -sin(rotateX), cos(rotateX), 0.,\n\t\t\t0., 0., 0., 1.\n\t\t);\n\t\tmat4 scaleAndTrans = mat4(\n\t\t\tr, 0., 0., 0.,\n\t\t\t0., r, 0., 0.,\n\t\t\t0., 0., r, 0.,\n\t\t\t0., 0., -r, 1.\n\t\t);\n\t\tvec4 position = scaleAndTrans * rotate2 * rotate1 * vec4(cartesian, 1.0);\n\t\treturn position;\n\t}\n\n\n vec2 proj_position_to_screen(vec4 device) {\n\t\tvec3 device_normal = device.xyz / device.w;\n\t\tvec2 clip_pos = (device_normal * 0.5 + 0.5).xy;\n\t\treturn clip_pos * uResolution;\n }\n \n\n\tvec4 screen_to_proj_position(vec2 screen, float z, float w) {\n\t vec2 clip_pos = screen / uResolution;\n\t vec2 device_normal = clip_pos * 2.0 - 1.0;\n\t return vec4(device_normal * w, z, w);\n\t}\n\n vec3 project_scale(vec3 meters) {\n \treturn meters * uPixelsPerMeter;\n }\n\n vec2 rotate_by_angle_onScreen(vec2 vertex, float angle) {\n \tfloat angle_radian = angle * PI / 180.0;\n \tfloat cos_angle = cos(angle_radian);\n \tfloat sin_angle = sin(angle_radian);\n \tmat2 rotationMatrix = mat2(cos_angle, -sin_angle, sin_angle, cos_angle);\n \treturn rotationMatrix * vertex;\n }\n",
e.SDF_PART = "\n\t\n\tfloat distance = texture2D(u_sampler, vTextureCoords).a;\n\n\t\n\tfloat finalAlpha = smoothstep(usedBuff - vGamma, usedBuff + vGamma, distance);\n\n\t\n\tfloat outlineFactor = smoothstep(u_buffer - vGamma, u_buffer + vGamma, distance);\n\n\t\n\tvec4 color = mix(vStrokeColor, vColor, outlineFactor) * finalAlpha;\n"
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.EllipseStyle = e.RectangleStyle = e.CircleStyle = e.ExtrudablePolygonStyle = e.PolygonStyle = void 0;
var o = n(3),
r = i(o),
a = n(5),
s = i(a),
l = n(4),
u = i(l),
c = n(0),
f = i(c),
d = n(10),
h = {
color: "rgba(55,119,255,0.16)",
borderColor: "#3777FF",
showBorder: !0,
borderWidth: 2,
borderDashArray: [0, 0],
extrudeHeight: 1
},
v = e.PolygonStyle = function t(e) { (0, f.
default)(this, t),
e = (0, d.extend)({},
h, e),
this.color = e.color,
this.borderColor = e.borderColor,
this.showBorder = !0 === e.showBorder,
this.borderWidth = e.borderWidth,
this.borderDashArray = e.borderDashArray
};
e.ExtrudablePolygonStyle = function t(e) { (0, f.
default)(this, t),
e = (0, d.extend)({},
h, e),
this.color = e.color,
this.borderColor = e.borderColor,
this.showBorder = !0 === e.showBorder,
this.extrudeHeight = e.extrudeHeight
},
e.CircleStyle = function(t) {
function e(t) {
return (0, f.
default)(this, e),
(0, s.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, u.
default)(e, t),
e
} (v),
e.RectangleStyle = function(t) {
function e(t) {
return (0, f.
default)(this, e),
(0, s.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, u.
default)(e, t),
e
} (v),
e.EllipseStyle = function(t) {
function e(t) {
return (0, f.
default)(this, e),
(0, s.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, u.
default)(e, t),
e
} (v)
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.deleteInstanceCacllback = function(t) {
t.data && (t.data = null),
t.buffer && t.buffer.delete()
},
e.deleteBuffersCallback = function(t) {
t.vertices && t.vertices.delete(),
t.indeices && t.indeices.delete()
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.GEOMETRY_TYPES = {
POINT: "POINT",
POLYLINE: "POLYLINE",
POLYGON: "POLYGON",
LABEL: "LABEL",
CIRCLE: "CIRCLE",
RECTANGLE: "RECTANGLE",
ELLIPSE: "ELLIPSE",
MASK: "MASK",
HIGHLIGHT: "HIGHLIGHT"
}
},
function(t, e, n) {
t.exports = {
default:
n(309),
__esModule: !0
}
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var i = n(75),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = function(t, e, n) {
return e in t ? (0, o.
default)(t, e, {
value: n,
enumerable: !0,
configurable: !0,
writable: !0
}) : t[e] = n,
t
}
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var i = n(16),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = o.
default ||
function(t) {
for (var e = 1; e < arguments.length; e++) {
var n = arguments[e];
for (var i in n) Object.prototype.hasOwnProperty.call(n, i) && (t[i] = n[i])
}
return t
}
},
function(t, e, n) {
n(225),
t.exports = n(2).Number.isNaN
},
function(t, e, n) {
var i = n(6);
i(i.S, "Number", {
isNaN: function(t) {
return t != t
}
})
},
function(t, e, n) {
"use strict";
var i = n(61);
t.exports = function(t, e) {
return !! t && i(function() {
e ? t.call(null,
function() {},
1) : t.call(null)
})
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
if (4 === t.length) {
for (var e = "#",
n = 1; n < 4; n += 1) e += t.slice(n, n + 1).concat(t.slice(n, n + 1));
t = e
}
var i = t.slice(1);
return {
r: parseInt(i.slice(0, 2), 16),
g: parseInt(i.slice(2, 4), 16),
b: parseInt(i.slice(4), 16)
}
}
function r(t) {
return t = t.replace(/rgb/, "rgba").replace(")", ",") + "1)",
a(t)
}
function a(t) {
return t = t.replace(/rgba\(/, "").replace(")", "").split(","),
{
r: parseInt(t[0]),
g: parseInt(t[1]),
b: parseInt(t[2]),
a: parseFloat(t[3])
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(0),
l = i(s),
u = n(1),
c = i(u),
f = n(41),
d = i(f),
h = n(398),
v = d.
default.isString,
p = d.
default.isArray,
_ = d.
default.isUndefined,
m = function() {
function t(e, n) {
if ((0, l.
default)(this, t), this.r = 1, this.g = 1, this.b = 1, this.a = 1, n && n.defaultColor && this.turnStr2Rgba(n.defaultColor), v(e)) this.turnStr2Rgba(e);
else if (p(e)) {
var i = n && n.max || 255;
this.r = e[0] / i,
this.g = e[1] / i,
this.b = e[2] / i,
this.a = _(e[3]) ? 1 : e[3]
}
}
return (0, c.
default)(t, [{
key: "turnStr2Rgba",
value: function(t) {
t = t.toLowerCase();
var e = h.HEX_REG,
n = h.RGB_REG,
i = h.RGBA_REG,
s = null;
e.test(t) ? s = o(t) : n.test(t) ? s = r(t) : i.test(t) && (s = a(t)),
s && (this.r = s.r / 255, this.g = s.g / 255, this.b = s.b / 255, this.a = _(s.a) ? 1 : s.a)
}
},
{
key: "toArray",
value: function() {
return [this.r, this.g, this.b, this.a]
}
},
{
key: "toUpArray",
value: function() {
return this.toArray().map(function(t) {
return 255 * t
})
}
},
{
key: "toString",
value: function() {
return "rgba(" + ["" + Math.round(255 * this.r), "" + Math.round(255 * this.g), "" + Math.round(255 * this.b), "" + this.a].join(",") + ")"
}
}]),
t
} ();
e.
default = m
},
function(t, e, n) {
"use strict";
var i = n(12),
o = n(34),
r = n(76),
a = n(45),
s = n(31),
l = n(80),
u = Object.assign;
t.exports = !u || n(30)(function() {
var t = {},
e = {},
n = Symbol(),
i = "abcdefghijklmnopqrst";
return t[n] = 7,
i.split("").forEach(function(t) {
e[t] = t
}),
7 != u({},
t)[n] || Object.keys(u({},
e)).join("") != i
}) ?
function(t, e) {
for (var n = s(t), u = arguments.length, c = 1, f = r.f, d = a.f; u > c;) for (var h, v = l(arguments[c++]), p = f ? o(v).concat(f(v)) : o(v), _ = p.length, m = 0; _ > m;) h = p[m++],
i && !d.call(v, h) || (n[h] = v[h]);
return n
}: u
},
function(t, e) {
t.exports = function(t) {
if ("function" != typeof t) throw TypeError(t + " is not a function!");
return t
}
},
function(t, e, n) {
var i = n(231),
o = n(321),
r = n(136),
a = n(88),
s = n(522);
t.exports = function(t, e) {
var n = 1 == t,
l = 2 == t,
u = 3 == t,
c = 4 == t,
f = 6 == t,
d = 5 == t || f,
h = e || s;
return function(e, s, v) {
for (var p, _, m = r(e), g = o(m), y = i(s, v, 3), x = a(g.length), b = 0, S = n ? h(e, x) : l ? h(e, 0) : void 0; x > b; b++) if ((d || b in g) && (p = g[b], _ = y(p, b, m), t)) if (n) S[b] = _;
else if (_) switch (t) {
case 3:
return ! 0;
case 5:
return p;
case 6:
return b;
case 2:
S.push(p)
} else if (c) return ! 1;
return f ? -1 : u || c ? c: S
}
}
},
function(t, e, n) {
var i = n(229);
t.exports = function(t, e, n) {
if (i(t), void 0 === e) return t;
switch (n) {
case 1:
return function(n) {
return t.call(e, n)
};
case 2:
return function(n, i) {
return t.call(e, n, i)
};
case 3:
return function(n, i, o) {
return t.call(e, n, i, o)
}
}
return function() {
return t.apply(e, arguments)
}
}
},
function(t, e, n) {
var i = n(322),
o = n(268),
r = n(216),
a = n(254),
s = n(214),
l = n(526),
u = Object.getOwnPropertyDescriptor;
e.f = n(103) ? u: function(t, e) {
if (t = r(t), e = a(e, !0), l) try {
return u(t, e)
} catch(t) {}
if (s(t, e)) return o(!i.f.call(t, e), t[e])
}
},
function(t, e, n) {
var i = n(11),
o = n(102),
r = n(61);
t.exports = function(t, e) {
var n = (o.Object || {})[t] || Object[t],
a = {};
a[t] = e(n),
i(i.S + i.F * r(function() {
n(1)
}), "Object", a)
}
},
function(t, e) {
var n = Math.ceil,
i = Math.floor;
t.exports = function(t) {
return isNaN(t = +t) ? 0 : (t > 0 ? i: n)(t)
}
},
, ,
function(t, e, n) {
"use strict";
function i(t) {
for (var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = e.result, o = void 0 === n ? [] : n, r = e.dimensions, a = void 0 === r ? 3 : r, s = 0; s < t.length;) {
var l = t[s];
Array.isArray(l) || ArrayBuffer.isView(l) ? i(l, {
result: o,
dimensions: a
}) : o.push(l.lng, l.lat),
s += 1
}
return o
}
function o(t, e) {
var n = t.getBounds();
return n.covers(e) || n.intersects(e)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.isInFrustum = o,
e.
default = {
to3DVertices: function(t, e) {
e = e || 0;
for (var n = [], i = 0, o = t.length / 2; i < o; i++) n.push(t[2 * i], t[2 * i + 1], e, 1);
return n
},
mixCoords: function(t, e, n, i) {
var o = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : 1,
r = [];
if (i = i || 0, n) for (var a = 0,
s = t.length / 2; a < s; a++) r.push([t[2 * a] * o + i, -1 * t[2 * a + 1] * o + i].concat(n));
else for (var l = 0,
u = t.length / 2; l < u; l++) r.push([t[2 * l] * o + i, -1 * t[2 * l + 1] * o + i, 0, 1]);
return "polygon" === e && r.push(r[0]),
r
},
flattenVertices: i,
fillArray: function(t) {
for (var e = t.target,
n = t.source,
i = t.start,
o = void 0 === i ? 0 : i, r = t.count, a = void 0 === r ? 1 : r, s = n.length, l = a * s, u = 0, c = o; u < s; u++) e[c] = n[u],
c += 1;
for (; u < l;) u < l - u ? (e.copyWithin(o + u, o, o + u), u *= 2) : (e.copyWithin(o + u, o, o + l - u), u = l);
return e
}
}
},
, ,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return arguments.length > 1 && void 0 !== arguments[1] && arguments[1] ? [t + 1 & 255, t + 1 >> 8 & 255, t + 1 >> 8 >> 8 & 255, 255] : [t + 1 & 255, t + 1 >> 8 & 255, t + 1 >> 8 >> 8 & 255]
}
function r(t) {
var e = (0, h.
default)(t, 3);
return e[0] + 256 * e[1] + 65536 * e[2] - 1
}
function a(t) {
for (var e = new f.
default,
n = [], i = 0; i < t.length; i += 4) if (255 === t[i + 3]) {
var o = r([t[i], t[i + 1], t[i + 2]]),
a = s(o);
a && a.id && !e.has(a.id) && (e.add(a.id), n.push(a))
}
return n
}
function s(t) {
var e = void 0;
return (0, u.
default)(v.styleNameConfig).forEach(function(n) { (0, u.
default)(v.styleNameConfig[n]).forEach(function(i) {
if (v.styleNameConfig[n][i].includes(t)) return void(e = {
type: n,
id: t,
tag: i
})
})
}),
e
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var l = n(17),
u = i(l),
c = n(241),
f = i(c),
d = n(32),
h = i(d);
e.encodePickingColor = o,
e.decodePickingColor = r,
e.decodeStylePickingColor = a;
var v = n(386)
},
function(t, e, n) {
t.exports = {
default:
n(412),
__esModule: !0
}
},
function(t, e, n) {
n(243),
t.exports = n(2).Object.assign
},
function(t, e, n) {
var i = n(6);
i(i.S + i.F, "Object", {
assign: n(228)
})
},
function(t, e) {
var n = {}.toString;
t.exports = function(t) {
return n.call(t).slice(8, -1)
}
},
function(t, e) {
t.exports = function(t) {
if (void 0 == t) throw TypeError("Can't call method on " + t);
return t
}
},
function(t, e, n) {
"use strict";
if (n(103)) {
var i = n(263),
o = n(62),
r = n(61),
a = n(11),
s = n(354),
l = n(441),
u = n(231),
c = n(284),
f = n(268),
d = n(215),
h = n(286),
v = n(234),
p = n(88),
_ = n(545),
m = n(269),
g = n(254),
y = n(214),
x = n(320),
b = n(63),
S = n(136),
w = n(428),
E = n(264),
T = n(266),
A = n(265).f,
P = n(443),
I = n(270),
k = n(78),
L = n(230),
M = n(344),
C = n(323),
R = n(444),
B = n(285),
N = n(350),
O = n(287),
D = n(421),
z = n(520),
F = n(104),
V = n(232),
Y = F.f,
U = V.f,
j = o.RangeError,
G = o.TypeError,
Z = o.Uint8Array,
H = Array.prototype,
W = l.ArrayBuffer,
X = l.DataView,
Q = L(0),
q = L(2),
K = L(3),
J = L(4),
$ = L(5),
tt = L(6),
et = M(!0),
nt = M(!1),
it = R.values,
ot = R.keys,
rt = R.entries,
at = H.lastIndexOf,
st = H.reduce,
lt = H.reduceRight,
ut = H.join,
ct = H.sort,
ft = H.slice,
dt = H.toString,
ht = H.toLocaleString,
vt = k("iterator"),
pt = k("toStringTag"),
_t = I("typed_constructor"),
mt = I("def_constructor"),
gt = s.CONSTR,
yt = s.TYPED,
xt = s.VIEW,
bt = L(1,
function(t, e) {
return At(C(t, t[mt]), e)
}),
St = r(function() {
return 1 === new Z(new Uint16Array([1]).buffer)[0]
}),
wt = !!Z && !!Z.prototype.set && r(function() {
new Z(1).set({})
}),
Et = function(t, e) {
var n = v(t);
if (n < 0 || n % e) throw j("Wrong offset!");
return n
},
Tt = function(t) {
if (b(t) && yt in t) return t;
throw G(t + " is not a typed array!")
},
At = function(t, e) {
if (! (b(t) && _t in t)) throw G("It is not a typed array constructor!");
return new t(e)
},
Pt = function(t, e) {
return It(C(t, t[mt]), e)
},
It = function(t, e) {
for (var n = 0,
i = e.length,
o = At(t, i); i > n;) o[n] = e[n++];
return o
},
kt = function(t, e, n) {
Y(t, e, {
get: function() {
return this._d[n]
}
})
},
Lt = function(t) {
var e, n, i, o, r, a, s = S(t),
l = arguments.length,
c = l > 1 ? arguments[1] : void 0,
f = void 0 !== c,
d = P(s);
if (void 0 != d && !w(d)) {
for (a = d.call(s), i = [], e = 0; ! (r = a.next()).done; e++) i.push(r.value);
s = i
}
for (f && l > 2 && (c = u(c, arguments[2], 2)), e = 0, n = p(s.length), o = At(this, n); n > e; e++) o[e] = f ? c(s[e], e) : s[e];
return o
},
Mt = function() {
for (var t = 0,
e = arguments.length,
n = At(this, e); e > t;) n[t] = arguments[t++];
return n
},
Ct = !!Z && r(function() {
ht.call(new Z(1))
}),
Rt = function() {
return ht.apply(Ct ? ft.call(Tt(this)) : Tt(this), arguments)
},
Bt = {
copyWithin: function(t, e) {
return z.call(Tt(this), t, e, arguments.length > 2 ? arguments[2] : void 0)
},
every: function(t) {
return J(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0)
},
fill: function(t) {
return D.apply(Tt(this), arguments)
},
filter: function(t) {
return Pt(this, q(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0))
},
find: function(t) {
return $(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0)
},
findIndex: function(t) {
return tt(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0)
},
forEach: function(t) {
Q(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0)
},
indexOf: function(t) {
return nt(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0)
},
includes: function(t) {
return et(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0)
},
join: function(t) {
return ut.apply(Tt(this), arguments)
},
lastIndexOf: function(t) {
return at.apply(Tt(this), arguments)
},
map: function(t) {
return bt(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0)
},
reduce: function(t) {
return st.apply(Tt(this), arguments)
},
reduceRight: function(t) {
return lt.apply(Tt(this), arguments)
},
reverse: function() {
for (var t, e = this,
n = Tt(e).length, i = Math.floor(n / 2), o = 0; o < i;) t = e[o],
e[o++] = e[--n],
e[n] = t;
return e
},
some: function(t) {
return K(Tt(this), t, arguments.length > 1 ? arguments[1] : void 0)
},
sort: function(t) {
return ct.call(Tt(this), t)
},
subarray: function(t, e) {
var n = Tt(this),
i = n.length,
o = m(t, i);
return new(C(n, n[mt]))(n.buffer, n.byteOffset + o * n.BYTES_PER_ELEMENT, p((void 0 === e ? i: m(e, i)) - o))
}
},
Nt = function(t, e) {
return Pt(this, ft.call(Tt(this), t, e))
},
Ot = function(t) {
Tt(this);
var e = Et(arguments[1], 1),
n = this.length,
i = S(t),
o = p(i.length),
r = 0;
if (o + e > n) throw j("Wrong length!");
for (; r < o;) this[e + r] = i[r++]
},
Dt = {
entries: function() {
return rt.call(Tt(this))
},
keys: function() {
return ot.call(Tt(this))
},
values: function() {
return it.call(Tt(this))
}
},
zt = function(t, e) {
return b(t) && t[yt] && "symbol" != typeof e && e in t && String( + e) == String(e)
},
Ft = function(t, e) {
return zt(t, e = g(e, !0)) ? f(2, t[e]) : U(t, e)
},
Vt = function(t, e, n) {
return ! (zt(t, e = g(e, !0)) && b(n) && y(n, "value")) || y(n, "get") || y(n, "set") || n.configurable || y(n, "writable") && !n.writable || y(n, "enumerable") && !n.enumerable ? Y(t, e, n) : (t[e] = n.value, t)
};
gt || (V.f = Ft, F.f = Vt),
a(a.S + a.F * !gt, "Object", {
getOwnPropertyDescriptor: Ft,
defineProperty: Vt
}),
r(function() {
dt.call({})
}) && (dt = ht = function() {
return ut.call(this)
});
var Yt = h({},
Bt);
h(Yt, Dt),
d(Yt, vt, Dt.values),
h(Yt, {
slice: Nt,
set: Ot,
constructor: function() {},
toString: dt,
toLocaleString: Rt
}),
kt(Yt, "buffer", "b"),
kt(Yt, "byteOffset", "o"),
kt(Yt, "byteLength", "l"),
kt(Yt, "length", "e"),
Y(Yt, pt, {
get: function() {
return this[yt]
}
}),
t.exports = function(t, e, n, l) {
l = !!l;
var u = t + (l ? "Clamped": "") + "Array",
f = "get" + t,
h = "set" + t,
v = o[u],
m = v || {},
g = v && T(v),
y = !v || !s.ABV,
S = {},
w = v && v.prototype,
P = function(t, n) {
var i = t._d;
return i.v[f](n * e + i.o, St)
},
I = function(t, n, i) {
var o = t._d;
l && (i = (i = Math.round(i)) < 0 ? 0 : i > 255 ? 255 : 255 & i),
o.v[h](n * e + o.o, i, St)
},
k = function(t, e) {
Y(t, e, {
get: function() {
return P(this, e)
},
set: function(t) {
return I(this, e, t)
},
enumerable: !0
})
};
y ? (v = n(function(t, n, i, o) {
c(t, v, u, "_d");
var r, a, s, l, f = 0,
h = 0;
if (b(n)) {
if (! (n instanceof W || "ArrayBuffer" == (l = x(n)) || "SharedArrayBuffer" == l)) return yt in n ? It(v, n) : Lt.call(v, n);
r = n,
h = Et(i, e);
var m = n.byteLength;
if (void 0 === o) {
if (m % e) throw j("Wrong length!");
if ((a = m - h) < 0) throw j("Wrong length!")
} else if ((a = p(o) * e) + h > m) throw j("Wrong length!");
s = a / e
} else s = _(n),
a = s * e,
r = new W(a);
for (d(t, "_d", {
b: r,
o: h,
l: a,
e: s,
v: new X(r)
}); f < s;) k(t, f++)
}), w = v.prototype = E(Yt), d(w, "constructor", v)) : r(function() {
v(1)
}) && r(function() {
new v( - 1)
}) && N(function(t) {
new v,
new v(null),
new v(1.5),
new v(t)
},
!0) || (v = n(function(t, n, i, o) {
c(t, v, u);
var r;
return b(n) ? n instanceof W || "ArrayBuffer" == (r = x(n)) || "SharedArrayBuffer" == r ? void 0 !== o ? new m(n, Et(i, e), o) : void 0 !== i ? new m(n, Et(i, e)) : new m(n) : yt in n ? It(v, n) : Lt.call(v, n) : new m(_(n))
}), Q(g !== Function.prototype ? A(m).concat(A(g)) : A(m),
function(t) {
t in v || d(v, t, m[t])
}), v.prototype = w, i || (w.constructor = v));
var L = w[vt],
M = !!L && ("values" == L.name || void 0 == L.name),
C = Dt.values;
d(v, _t, !0),
d(w, yt, u),
d(w, xt, !0),
d(w, mt, v),
(l ? new v(1)[pt] == u: pt in w) || Y(w, pt, {
get: function() {
return u
}
}),
S[u] = v,
a(a.G + a.W + a.F * (v != m), S),
a(a.S, u, {
BYTES_PER_ELEMENT: e
}),
a(a.S + a.F * r(function() {
m.of.call(v, 1)
}), u, {
from: Lt,
of: Mt
}),
"BYTES_PER_ELEMENT" in w || d(w, "BYTES_PER_ELEMENT", e),
a(a.P, u, Bt),
O(u),
a(a.P + a.F * wt, u, {
set: Ot
}),
a(a.P + a.F * !M, u, Dt),
i || w.toString == dt || (w.toString = dt),
a(a.P + a.F * r(function() {
new v(1).slice()
}), u, {
slice: Nt
}),
a(a.P + a.F * (r(function() {
return [1, 2].toLocaleString() != new v([1, 2]).toLocaleString()
}) || !r(function() {
w.toLocaleString.call([1, 2])
})), u, {
toLocaleString: Rt
}),
B[u] = M ? L: C,
i || M || d(w, vt, C)
}
} else t.exports = function() {}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(122),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = o.
default[1]
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.CONTROL_POSITION_STYLE = e.CONTROL_POSITION = e.MAP_APPROVAL_NUMBER = e.LOGO_URL = e.DEFAULT_CONTROL_ID = void 0;
var i = n(221),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i),
r = (e.DEFAULT_CONTROL_ID = {
SCALE: "scale",
ZOOM: "zoom",
FLOOR: "floor",
ROTATION: "rotation"
},
e.LOGO_URL = {
DEFAULT_LOGO: "https://mapapi.qq.com/web/jsapi/logo/logo_def.png",
GRAY_LOGO: "https://mapapi.qq.com/web/jsapi/logo/logo_gray.png"
},
e.MAP_APPROVAL_NUMBER = {
satellite: "GS(2022)1087",
vector: "GS(2022)2224"
},
e.CONTROL_POSITION = {
TOP_LEFT: 0,
TOP_CENTER: 1,
TOP_RIGHT: 2,
CENTER_LEFT: 3,
CENTER: 4,
CENTER_RIGHT: 5,
BOTTOM_LEFT: 6,
BOTTOM_CENTER: 7,
BOTTOM_RIGHT: 8
});
e.CONTROL_POSITION_STYLE = function() {
var t = {};
return (0, o.
default)(r).forEach(function(e) {
var n = e % 3,
i = Math.floor(e / 3),
o = "position: absolute;";
switch (i) {
case 0:
o += "top:0px;";
break;
case 1:
o += "top:50%;";
break;
case 2:
o += "bottom:0px;"
}
switch (n) {
case 0:
o += "left:0px;";
break;
case 1:
o += "left:50%;";
break;
case 2:
o += "right:0px;"
}
o += "transform: translate(" + (1 === n ? "-50%": "0") + ", " + (1 === i ? "-50%": "0") + ");",
t[e] = o
}),
t
} ()
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.TILE_STATE = void 0;
var o = n(16),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(10),
f = e.TILE_STATE = {
unloaded: "tile_unloaded",
loading: "tile_loading",
loaded: "tile_loaded",
errored: "tile_errored",
reloading: "tile_reloading",
expired: "tile_expired"
},
d = function() {
function t(e, n) { (0, s.
default)(this, t),
this.coord = e,
this.uid = c.uniqueId(),
this.tileSize = n,
this.state = f.loading,
this.visible = !0
}
return (0, u.
default)(t, [{
key: "show",
value: function() {
this.visible = !0
}
},
{
key: "hide",
value: function() {
this.visible = !1
}
},
{
key: "setData",
value: function(t) {
if (t && !t.baseData && (this.state = f.loaded), t && t.incrementData) return void(this._data = (0, r.
default)({},
this._data, t));
this._data = t
}
},
{
key: "updateData",
value: function(t) {
this.setData(t)
}
},
{
key: "getData",
value: function() {
return this._data
}
},
{
key: "getQueryData",
value: function(t) {
return this._data && this.visible ? t && "" !== t ? this._data[t] : this._data: null
}
},
{
key: "hasData",
value: function() {
return this.state === f.loaded || this.state === f.reloading || this.state === f.expired
}
},
{
key: "isLoading",
value: function() {
return this.state === f.loading || this.state === f.reloading
}
},
{
key: "isLoaded",
value: function() {
return this.state === f.loaded || this.state === f.errored || this.state === f.expired
}
},
{
key: "clear",
value: function() {
this.unloadData()
}
},
{
key: "unloadData",
value: function() {
this._data = null,
this.state = f.unloaded
}
}]),
t
} ();
e.
default = d
},
function(t, e, n) {
"use strict";
var i = n(8),
o = n(6),
r = n(40),
a = n(30),
s = n(19),
l = n(99),
u = n(71),
c = n(91),
f = n(7),
d = n(42),
h = n(14).f,
v = n(259)(0),
p = n(12);
t.exports = function(t, e, n, _, m, g) {
var y = i[t],
x = y,
b = m ? "set": "add",
S = x && x.prototype,
w = {};
return p && "function" == typeof x && (g || S.forEach && !a(function() { (new x).entries().next()
})) ? (x = e(function(e, n) {
c(e, x, t, "_c"),
e._c = new y,
void 0 != n && u(n, m, e[b], e)
}), v("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),
function(t) {
var e = "add" == t || "set" == t;
t in S && (!g || "clear" != t) && s(x.prototype, t,
function(n, i) {
if (c(this, x, t), !e && g && !f(n)) return "get" == t && void 0;
var o = this._c[t](0 === n ? 0 : n, i);
return e ? this: o
})
}), g || h(x.prototype, "size", {
get: function() {
return this._c.size
}
})) : (x = _.getConstructor(e, t, m, b), l(x.prototype, n), r.NEED = !0),
d(x, t),
w[t] = x,
o(o.G + o.W + o.F, w),
g || _.setStrong(x, t, m),
x
}
},
function(t, e, n) {
"use strict";
var i = n(6),
o = n(44),
r = n(22),
a = n(71);
t.exports = function(t) {
i(i.S, t, {
from: function(t) {
var e, n, i, s, l = arguments[1];
return o(this),
e = void 0 !== l,
e && o(l),
void 0 == t ? new this: (n = [], e ? (i = 0, s = r(l, arguments[2], 2), a(t, !1,
function(t) {
n.push(s(t, i++))
})) : a(t, !1, n.push, n), new this(n))
}
})
}
},
function(t, e, n) {
"use strict";
var i = n(6);
t.exports = function(t) {
i(i.S, t, {
of: function() {
for (var t = arguments.length,
e = new Array(t); t--;) e[t] = arguments[t];
return new this(e)
}
})
}
},
function(t, e, n) {
var i = n(270)("meta"),
o = n(63),
r = n(214),
a = n(104).f,
s = 0,
l = Object.isExtensible ||
function() {
return ! 0
},
u = !n(61)(function() {
return l(Object.preventExtensions({}))
}),
c = function(t) {
a(t, i, {
value: {
i: "O" + ++s,
w: {}
}
})
},
f = function(t, e) {
if (!o(t)) return "symbol" == typeof t ? t: ("string" == typeof t ? "S": "P") + t;
if (!r(t, i)) {
if (!l(t)) return "F";
if (!e) return "E";
c(t)
}
return t[i].i
},
d = function(t, e) {
if (!r(t, i)) {
if (!l(t)) return ! 0;
if (!e) return ! 1;
c(t)
}
return t[i].w
},
h = function(t) {
return u && v.NEED && l(t) && !r(t, i) && c(t),
t
},
v = t.exports = {
KEY: i,
NEED: !1,
fastKey: f,
getWeak: d,
onFreeze: h
}
},
function(t, e, n) {
var i = n(63);
t.exports = function(t, e) {
if (!i(t)) return t;
var n, o;
if (e && "function" == typeof(n = t.toString) && !i(o = n.call(t))) return o;
if ("function" == typeof(n = t.valueOf) && !i(o = n.call(t))) return o;
if (!e && "function" == typeof(n = t.toString) && !i(o = n.call(t))) return o;
throw TypeError("Can't convert object to primitive value")
}
},
function(t, e, n) {
"use strict";
function i(t, e) {
return Object.prototype.hasOwnProperty.call(t, e)
}
var o = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Int32Array;
e.assign = function(t) {
for (var e = Array.prototype.slice.call(arguments, 1); e.length;) {
var n = e.shift();
if (n) {
if ("object" != typeof n) throw new TypeError(n + "must be non-object");
for (var o in n) i(n, o) && (t[o] = n[o])
}
}
return t
},
e.shrinkBuf = function(t, e) {
return t.length === e ? t: t.subarray ? t.subarray(0, e) : (t.length = e, t)
};
var r = {
arraySet: function(t, e, n, i, o) {
if (e.subarray && t.subarray) return void t.set(e.subarray(n, n + i), o);
for (var r = 0; r < i; r++) t[o + r] = e[n + r]
},
flattenChunks: function(t) {
var e, n, i, o, r, a;
for (i = 0, e = 0, n = t.length; e < n; e++) i += t[e].length;
for (a = new Uint8Array(i), o = 0, e = 0, n = t.length; e < n; e++) r = t[e],
a.set(r, o),
o += r.length;
return a
}
},
a = {
arraySet: function(t, e, n, i, o) {
for (var r = 0; r < i; r++) t[o + r] = e[n + r]
},
flattenChunks: function(t) {
return [].concat.apply([], t)
}
};
e.setTyped = function(t) {
t ? (e.Buf8 = Uint8Array, e.Buf16 = Uint16Array, e.Buf32 = Int32Array, e.assign(e, r)) : (e.Buf8 = Array, e.Buf16 = Array, e.Buf32 = Array, e.assign(e, a))
},
e.setTyped(o)
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(106),
p = i(v),
_ = n(248),
m = n(10),
g = n(41),
y = i(g),
x = y.
default.isNumber,
b = {},
S = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this));
n.options = t;
var i = t.id;
return n.id = y.
default.isUndefined(i) ? (0, m.uniqueId)() : i,
n.init(t),
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "init",
value: function(t) {
this.onInit(t),
this.dom = this.createDOM(t)
}
},
{
key: "setPosition",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : _.CONTROL_POSITION.TOP_LEFT;
return t !== this.position && (this.appendToContainer(t), this.position = t),
this
}
},
{
key: "setClassName",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "";
return this.dom && (this.dom.className = t),
this.className = t,
this
}
},
{
key: "getDomPositionContainer",
value: function(t) {
var e = t.id,
n = this.options,
i = n.position,
o = n.className;
return this.setPosition(i),
this.setClassName(o),
b[e][i]
}
},
{
key: "appendToContainer",
value: function(t) {
if (!this.map || !this.map.id) return void console.error("当前没有添加该控件,请先添加控件再设置位置!");
var e = this.map.id;
if (b[e] || (b[e] = {}), !b[e][t]) {
b[e][t] = document.createElement("div");
var n = b[e][t];
n.style.right = "auto",
n.style.left = "auto",
n.style.top = "auto",
n.style.bottom = "auto",
n.style.cssText += _.CONTROL_POSITION_STYLE[t],
_.CONTROL_POSITION.BOTTOM_LEFT,
this.dom.parentNode && this.dom.parentNode.parentNode && this.dom.parentNode.parentNode.appendChild(n)
}
return b[e][t].firstChild ? b[e][t].insertBefore(this.dom, b[e][t].firstChild) : b[e][t].appendChild(this.dom),
b[e][t]
}
},
{
key: "createDOM",
value: function() {}
},
{
key: "onInit",
value: function() {}
},
{
key: "onDestroy",
value: function() {}
},
{
key: "onAdd",
value: function() {}
},
{
key: "onRemove",
value: function() {}
},
{
key: "addTo",
value: function(t, e) {
this.map = t;
var n = this.getDomPositionContainer(t);
e.appendChild(n),
this.onAdd()
}
},
{
key: "remove",
value: function() {
var t = this.map && this.map.id;
if (this.dom) {
var e = this.dom.parentNode;
this.dom.remove(),
e && !e.firstChild && (e.remove(), e = null, x(this.position) && t && delete b[t][this.position]),
this.position = null,
this.onRemove(),
this.map = null
}
}
},
{
key: "destroy",
value: function() {
this.remove(),
this.onDestroy(),
this.removeAllListeners(),
this.dom = null,
this.className = null,
this.position = null,
this.id = null
}
}]),
e
} (p.
default);
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(337),
p = i(v),
_ = n(29),
m = n(41),
g = i(m),
y = n(143),
x = n(23),
b = n(106),
S = n(10),
w = g.
default.isNumber,
E = g.
default.isUndefined,
T = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this));
return n.id = t.id || S.uniqueId(),
n.type = t.type || null,
n.sourceId = t.sourceId || null,
n.setZoomRange(t.minZoom, t.maxZoom),
n.setDataZoomRange(t.minDataZoom || t.minZoom, t.maxDataZoom || t.maxZoom),
n.visible = !!E(t.visible) || Boolean(t.visible),
n.setLevel(t.level || y.LAYER_LEVEL.GROUND),
n.setZIndex(t.zIndex || 0),
n.setOpacity(t.opacity),
n._childLayers = {},
n._initialize(t),
t.map && n.setMap(t.map),
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "getId",
value: function() {
return this.id
}
},
{
key: "setVisible",
value: function(t) {
return t = Boolean(t),
this._forEachChild(function(e, n) {
n.setVisible(t)
}),
this.visible === t ? this: (this.visible = t, this._fire("layer", {}), this)
}
},
{
key: "setZIndex",
value: function(t) {
return w(t) || (new _.BaseTypeError("Layer.zIndex", "number", t).error(), t = 0),
this._forEachChild(function(e, n) {
n.setZIndex(t)
}),
this.zIndex = t,
this.setRank((0, y.getRank)(this.level, this.zIndex)),
this
}
},
{
key: "setLevel",
value: function(t) {
this.level = t,
this.setRank((0, y.getRank)(this.level, this.zIndex))
}
},
{
key: "setRank",
value: function(t) {
this.rank = t,
this._forEachChild(function(e, n) {
n.setRank(t)
}),
this.emit("rank_changed")
}
},
{
key: "getRank",
value: function() {
return this.rank
}
},
{
key: "setMap",
value: function(t) {
return t instanceof p.
default || null === t ? this.map === t ? this: (this.map && (this.map.removeLayer(this.id), this._removeSource(), this.map = null), t && (this.map = t, t.addLayer(this), this._addSource()), this) : (console.error("传入的map参数并非TMap.Map实例"), this)
}
},
{
key: "getMap",
value: function() {
return this.map
}
},
{
key: "getZIndex",
value: function() {
return this.zIndex
}
},
{
key: "setZoomRange",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : x.minZoom,
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : x.maxZoom;
return w(t) || (new _.BaseTypeError("Layer.minZoom", "number", t).error(), t = x.minZoom),
w(e) || (new _.BaseTypeError("Layer.maxZoom", "number", e).error(), e = x.maxZoom),
this._forEachChild(function(n, i) {
i.setZoomRange(t, e)
}),
this.minZoom = t,
this.maxZoom = e,
this
}
},
{
key: "setDataZoomRange",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : x.minZoom,
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : x.maxZoom;
return w(t) || (new _.BaseTypeError("Layer.minDataZoom", "number", t).error(), t = x.minZoom),
w(e) || (new _.BaseTypeError("Layer.maxDataZoom", "number", e).error(), e = x.maxZoom),
this._forEachChild(function(n, i) {
i.setDataZoomRange(t, e)
}),
this.minDataZoom = t,
this.maxDataZoom = e,
this
}
},
{
key: "setOpacity",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1;
return w(t) || (new _.BaseTypeError("Layer.opacity", "number", t).error(), t = 1),
(t < 0 || t > 1) && (console.error("Layer.opacity 传入参数值范围应当在0~1之间"), t = S.clamp(t, 0, 1)),
this.opacity = t,
this
}
},
{
key: "_removeSource",
value: function() {}
},
{
key: "_addSource",
value: function() {}
},
{
key: "_initialize",
value: function() {}
},
{
key: "isHidden",
value: function(t) {
return !! (this.minZoom && t < this.minZoom) || ( !! (this.maxZoom && t > this.maxZoom) || !this.visible)
}
},
{
key: "appendChild",
value: function(t) {
var n = t instanceof e ? t: new e(t);
return n.setMap(null),
n.setZIndex(this.zIndex),
n.setRank(this.rank),
n.setZoomRange(this.minZoom, this.maxZoom),
n.setVisible(this.visible),
this._childLayers[n.id] = n,
n
}
},
{
key: "removeChild",
value: function(t) {
this._childLayers[t] && delete this._childLayers[t]
}
},
{
key: "hasChild",
value: function(t) {
return !! this._childLayers[t]
}
},
{
key: "getChild",
value: function(t) {
return this.hasChild(t) ? this._childLayers[t] : null
}
},
{
key: "_forEachChild",
value: function(t) {
S.forIn(this._childLayers,
function(e, n) {
t(e, n)
})
}
},
{
key: "flat",
value: function() {
var t = [];
return this.sourceId && t.push(this),
this._forEachChild(function(e, n) {
t = t.concat(n.flat())
}),
t
}
}]),
e
} (b);
e.
default = T
},
,
function(t, e, n) {
var i = n(22),
o = n(80),
r = n(31),
a = n(52),
s = n(312);
t.exports = function(t, e) {
var n = 1 == t,
l = 2 == t,
u = 3 == t,
c = 4 == t,
f = 6 == t,
d = 5 == t || f,
h = e || s;
return function(e, s, v) {
for (var p, _, m = r(e), g = o(m), y = i(s, v, 3), x = a(g.length), b = 0, S = n ? h(e, x) : l ? h(e, 0) : void 0; x > b; b++) if ((d || b in g) && (p = g[b], _ = y(p, b, m), t)) if (n) S[b] = _;
else if (_) switch (t) {
case 3:
return ! 0;
case 5:
return p;
case 6:
return b;
case 2:
S.push(p)
} else if (c) return ! 1;
return f ? -1 : u || c ? c: S
}
}
},
function(t, e, n) {
"use strict";
var i = n(14).f,
o = n(51),
r = n(99),
a = n(22),
s = n(91),
l = n(71),
u = n(72),
c = n(108),
f = n(119),
d = n(12),
h = n(40).fastKey,
v = n(183),
p = d ? "_s": "size",
_ = function(t, e) {
var n, i = h(e);
if ("F" !== i) return t._i[i];
for (n = t._f; n; n = n.n) if (n.k == e) return n
};
t.exports = {
getConstructor: function(t, e, n, u) {
var c = t(function(t, i) {
s(t, c, e, "_i"),
t._t = e,
t._i = o(null),
t._f = void 0,
t._l = void 0,
t[p] = 0,
void 0 != i && l(i, n, t[u], t)
});
return r(c.prototype, {
clear: function() {
for (var t = v(this, e), n = t._i, i = t._f; i; i = i.n) i.r = !0,
i.p && (i.p = i.p.n = void 0),
delete n[i.i];
t._f = t._l = void 0,
t[p] = 0
},
delete: function(t) {
var n = v(this, e),
i = _(n, t);
if (i) {
var o = i.n,
r = i.p;
delete n._i[i.i],
i.r = !0,
r && (r.n = o),
o && (o.p = r),
n._f == i && (n._f = o),
n._l == i && (n._l = r),
n[p]--
}
return !! i
},
forEach: function(t) {
v(this, e);
for (var n, i = a(t, arguments.length > 1 ? arguments[1] : void 0, 3); n = n ? n.n: this._f;) for (i(n.v, n.k, this); n && n.r;) n = n.p
},
has: function(t) {
return !! _(v(this, e), t)
}
}),
d && i(c.prototype, "size", {
get: function() {
return v(this, e)[p]
}
}),
c
},
def: function(t, e, n) {
var i, o, r = _(t, e);
return r ? r.v = n: (t._l = r = {
i: o = h(e, !0),
k: e,
v: n,
p: i = t._l,
n: void 0,
r: !1
},
t._f || (t._f = r), i && (i.n = r), t[p]++, "F" !== o && (t._i[o] = r)),
t
},
getEntry: _,
setStrong: function(t, e, n) {
u(t, e,
function(t, n) {
this._t = v(t, e),
this._k = n,
this._l = void 0
},
function() {
for (var t = this,
e = t._k,
n = t._l; n && n.r;) n = n.p;
return t._t && (t._l = n = n ? n.n: t._t._f) ? "keys" == e ? c(0, n.k) : "values" == e ? c(0, n.v) : c(0, [n.k, n.v]) : (t._t = void 0, c(1))
},
n ? "entries": "values", !n, !0),
f(e)
}
}
},
function(t, e, n) {
var i = n(49),
o = n(310);
t.exports = function(t) {
return function() {
if (i(this) != t) throw TypeError(t + "#toJSON isn't generic");
return o(this)
}
}
},
function(t, e, n) {
var i = n(78)("unscopables"),
o = Array.prototype;
void 0 == o[i] && n(215)(o, i, {}),
t.exports = function(t) {
o[i][t] = !0
}
},
function(t, e) {
t.exports = !1
},
function(t, e, n) {
var i = n(60),
o = n(535),
r = n(424),
a = n(435)("IE_PROTO"),
s = function() {},
l = function() {
var t, e = n(423)("iframe"),
i = r.length;
for (e.style.display = "none", n(426).appendChild(e), e.src = "javascript:", t = e.contentWindow.document, t.open(), t.write("<script>document.F=Object<\/script>"), t.close(), l = t.F; i--;) delete l.prototype[r[i]];
return l()
};
t.exports = Object.create ||
function(t, e) {
var n;
return null !== t ? (s.prototype = i(t), n = new s, s.prototype = null, n[a] = t) : n = l(),
void 0 === e ? n: o(n, e)
}
},
function(t, e, n) {
var i = n(537),
o = n(424).concat("length", "prototype");
e.f = Object.getOwnPropertyNames ||
function(t) {
return i(t, o)
}
},
function(t, e, n) {
var i = n(214),
o = n(136),
r = n(435)("IE_PROTO"),
a = Object.prototype;
t.exports = Object.getPrototypeOf ||
function(t) {
return t = o(t),
i(t, r) ? t[r] : "function" == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype: t instanceof Object ? a: null
}
},
function(t, e, n) {
var i = n(537),
o = n(424);
t.exports = Object.keys ||
function(t) {
return i(t, o)
}
},
function(t, e) {
t.exports = function(t, e) {
return {
enumerable: !(1 & t),
configurable: !(2 & t),
writable: !(4 & t),
value: e
}
}
},
function(t, e, n) {
var i = n(234),
o = Math.max,
r = Math.min;
t.exports = function(t, e) {
return t = i(t),
t < 0 ? o(t + e, 0) : r(t, e)
}
},
function(t, e) {
var n = 0,
i = Math.random();
t.exports = function(t) {
return "Symbol(".concat(void 0 === t ? "": t, ")_", (++n + i).toString(36))
}
},
function(t, e, n) {
var i = n(63);
t.exports = function(t, e) {
if (!i(t) || t._t !== e) throw TypeError("Incompatible receiver, " + e + " required!");
return t
}
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(446), n(445))
} (0,
function(t) {
return function() {
var e = t,
n = e.lib,
i = n.Base,
o = n.WordArray,
r = e.algo,
a = r.MD5,
s = r.EvpKDF = i.extend({
cfg: i.extend({
keySize: 4,
hasher: a,
iterations: 1
}),
init: function(t) {
this.cfg = this.cfg.extend(t)
},
compute: function(t, e) {
for (var n = this.cfg,
i = n.hasher.create(), r = o.create(), a = r.words, s = n.keySize, l = n.iterations; a.length < s;) {
u && i.update(u);
var u = i.update(t).finalize(e);
i.reset();
for (var c = 1; c < l; c++) u = i.finalize(u),
i.reset();
r.concat(u)
}
return r.sigBytes = 4 * s,
r
}
});
e.EvpKDF = function(t, e, n) {
return s.create(n).compute(t, e)
}
} (),
t.EvpKDF
})
},
function(t, e) {
t.exports = function() {
var t = [];
return t.toString = function() {
for (var t = [], e = 0; e < this.length; e++) {
var n = this[e];
n[2] ? t.push("@media " + n[2] + "{" + n[1] + "}") : t.push(n[1])
}
return t.join("")
},
t.i = function(e, n) {
"string" == typeof e && (e = [[null, e, ""]]);
for (var i = {},
o = 0; o < this.length; o++) {
var r = this[o][0];
"number" == typeof r && (i[r] = !0)
}
for (o = 0; o < e.length; o++) {
var a = e[o];
"number" == typeof a[0] && i[a[0]] || (n && !a[2] ? a[2] = n: n && (a[2] = "(" + a[2] + ") and (" + n + ")"), t.push(a))
}
},
t
}
},
,
function(t, e) {
function n(t, e) {
for (var n = 0; n < t.length; n++) {
var i = t[n],
o = d[i.id];
if (o) {
o.refs++;
for (var r = 0; r < o.parts.length; r++) o.parts[r](i.parts[r]);
for (; r < i.parts.length; r++) o.parts.push(l(i.parts[r], e))
} else {
for (var a = [], r = 0; r < i.parts.length; r++) a.push(l(i.parts[r], e));
d[i.id] = {
id: i.id,
refs: 1,
parts: a
}
}
}
}
function i(t) {
for (var e = [], n = {},
i = 0; i < t.length; i++) {
var o = t[i],
r = o[0],
a = o[1],
s = o[2],
l = o[3],
u = {
css: a,
media: s,
sourceMap: l
};
n[r] ? n[r].parts.push(u) : e.push(n[r] = {
id: r,
parts: [u]
})
}
return e
}
function o(t, e) {
var n = p(),
i = g[g.length - 1];
if ("top" === t.insertAt) i ? i.nextSibling ? n.insertBefore(e, i.nextSibling) : n.appendChild(e) : n.insertBefore(e, n.firstChild),
g.push(e);
else {
if ("bottom" !== t.insertAt) throw new Error("Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.");
n.appendChild(e)
}
}
function r(t) {
t.parentNode.removeChild(t);
var e = g.indexOf(t);
e >= 0 && g.splice(e, 1)
}
function a(t) {
var e = document.createElement("style");
return e.type = "text/css",
o(t, e),
e
}
function s(t) {
var e = document.createElement("link");
return e.rel = "stylesheet",
o(t, e),
e
}
function l(t, e) {
var n, i, o;
if (e.singleton) {
var l = m++;
n = _ || (_ = a(e)),
i = u.bind(null, n, l, !1),
o = u.bind(null, n, l, !0)
} else t.sourceMap && "function" == typeof URL && "function" == typeof URL.createObjectURL && "function" == typeof URL.revokeObjectURL && "function" == typeof Blob && "function" == typeof btoa ? (n = s(e), i = f.bind(null, n), o = function() {
r(n),
n.href && URL.revokeObjectURL(n.href)
}) : (n = a(e), i = c.bind(null, n), o = function() {
r(n)
});
return i(t),
function(e) {
if (e) {
if (e.css === t.css && e.media === t.media && e.sourceMap === t.sourceMap) return;
i(t = e)
} else o()
}
}
function u(t, e, n, i) {
var o = n ? "": i.css;
if (t.styleSheet) t.styleSheet.cssText = y(e, o);
else {
var r = document.createTextNode(o),
a = t.childNodes;
a[e] && t.removeChild(a[e]),
a.length ? t.insertBefore(r, a[e]) : t.appendChild(r)
}
}
function c(t, e) {
var n = e.css,
i = e.media;
if (i && t.setAttribute("media", i), t.styleSheet) t.styleSheet.cssText = n;
else {
for (; t.firstChild;) t.removeChild(t.firstChild);
t.appendChild(document.createTextNode(n))
}
}
function f(t, e) {
var n = e.css,
i = e.sourceMap;
i && (n += "\n/*# sourceMappingURL=data:application/json;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(i)))) + " */");
var o = new Blob([n], {
type: "text/css"
}),
r = t.href;
t.href = URL.createObjectURL(o),
r && URL.revokeObjectURL(r)
}
var d = {},
h = function(t) {
var e;
return function() {
return void 0 === e && (e = t.apply(this, arguments)),
e
}
},
v = h(function() {
return /msie [6-9]\b/.test(self.navigator.userAgent.toLowerCase())
}),
p = h(function() {
return document.head || document.getElementsByTagName("head")[0]
}),
_ = null,
m = 0,
g = [];
t.exports = function(t, e) {
if ("undefined" != typeof DEBUG && DEBUG && "object" != typeof document) throw new Error("The style-loader cannot be used in a non-browser environment");
e = e || {},
void 0 === e.singleton && (e.singleton = v()),
void 0 === e.insertAt && (e.insertAt = "bottom");
var o = i(t);
return n(o, e),
function(t) {
for (var r = [], a = 0; a < o.length; a++) {
var s = o[a],
l = d[s.id];
l.refs--,
r.push(l)
}
if (t) {
n(i(t), e)
}
for (var a = 0; a < r.length; a++) {
var l = r[a];
if (0 === l.refs) {
for (var u = 0; u < l.parts.length; u++) l.parts[u]();
delete d[l.id]
}
}
}
};
var y = function() {
var t = [];
return function(e, n) {
return t[e] = n,
t.filter(Boolean).join("\n")
}
} ()
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.LIGHT_FRAG = e.LIGHT_VERTEX = e.LIGHT_VARYING = e.LIGHT_UNIFORM = void 0;
var i = n(330),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i),
r = o.
default ? "\nvec4 lighting_apply_on_color(vec4 color) {\n\tfloat isInShadow = isInShadow();\n\tvec3 colorInLight = color.rgb * mix(\n\t\tlighting_vLightWeight,\n\t\tlighting_vLightWeight - lighting_vShadowWeight,\n\t\tisInShadow\n\t) + mix(\n\t\tlighting_vLightSpecular,\n\t\tlighting_vLightSpecular - lighting_vShadowSpecular,\n\t\tisInShadow\n\t);\n\tcolorInLight = mix(\n\t\tcolorInLight,\n\t\ttoneMapping(colorInLight, lighting_vToneMapping.y),\n\t\tlighting_vToneMapping.x\n\t);\n\treturn vec4(colorInLight, color.a);\n}\n": "\nvec4 lighting_apply_on_color(vec4 color) {\n\tvec3 colorInLight = color.rgb * lighting_vLightWeight + lighting_vLightSpecular;\n\treturn vec4(colorInLight, color.a);\n}\n";
e.LIGHT_UNIFORM = "\n#define LIGHT_MAX 4\n\n\nuniform vec4 lighting_uBase;\nuniform vec4 lighting_uAdvanced;\nuniform vec3 lighting_uAmbientColor;\nuniform vec3 lighting_uDirDirection[LIGHT_MAX];\nuniform vec3 lighting_uDirColor[LIGHT_MAX];\nuniform vec3 lighting_uPointPosition[LIGHT_MAX];\nuniform vec3 lighting_uPointAtt[LIGHT_MAX];\nuniform vec3 lighting_uPointColor[LIGHT_MAX];\nuniform vec2 lighting_uLightCount;\nuniform vec3 lighting_uViewPos;\nuniform mat4 lighting_uShadowLightPVMatrix;\n",
e.LIGHT_VARYING = "\n\nvarying vec3 lighting_vLightWeight;\nvarying vec3 lighting_vLightSpecular;\nvarying vec3 lighting_vShadowWeight;\nvarying vec3 lighting_vShadowSpecular;\nvarying mediump vec4 lighting_vShadowInfo;\nvarying vec2 lighting_vToneMapping;\n",
e.LIGHT_VERTEX = "\nvec3 lighting_vPosition;\nvec3 lighting_vNormal;\nvec3 lighting_vViewDir;\nvec2 lighting_vObjSpec;\n\n\nfloat lighting_calcDiffuse(vec3 lightDir) {\n\treturn max(dot(lightDir, lighting_vNormal), 0.);\n}\n\n\nfloat lighting_calcSpecular(vec3 lightDir) {\n\t\n\t\n\t\n\t\n\tvec3 halfwayDir = normalize(lighting_vViewDir + lightDir);\n\tfloat reflectStrength = max(dot(halfwayDir, lighting_vNormal), 0.);\n\n\treturn pow(reflectStrength, lighting_vObjSpec.y) * lighting_vObjSpec.x;\n}\n\n\nvoid lighting_setObjInfo(vec3 position, vec3 normal, mat4 modelMatrix, vec2 objSpec) {\n\tlighting_vPosition = (modelMatrix * vec4(position, 1.)).xyz;\n\tlighting_vNormal = normalize(modelMatrix * vec4(normal, 0.)).xyz;\n\tlighting_vViewDir = normalize(lighting_uViewPos - lighting_vPosition);\n\tlighting_vObjSpec = objSpec;\n\tlighting_vToneMapping = lighting_uAdvanced.xy;\n\t\n\tvec4 posInLightView = lighting_uShadowLightPVMatrix * vec4(lighting_vPosition, 1.0);\n\tvec3 normalized = (posInLightView.xyz/ posInLightView.w + 1.0) / 2.0;\n\tlighting_vShadowInfo = vec4(normalized, lighting_uAdvanced.z);\n}\n\n\nvoid lighting_calcDirLights(float enable) {\n\tvec3 diffuse = vec3(0.0);\n\tvec3 specular = vec3(0.0);\n\tvec3 shadowDiffuse = vec3(0.0);\n\tvec3 shadowSpecular = vec3(0.0);\n\n\tfor (int i = 0; i < LIGHT_MAX; i++) {\n\t\tfloat isValid = (1.0 - step(float(lighting_uLightCount.x), float(i))) * enable;\n\n\t\t\n\t\tdiffuse += mix(\n\t\t\tvec3(0.0),\n\t\t\tlighting_calcDiffuse(lighting_uDirDirection[i]) * lighting_uDirColor[i],\n\t\t\tisValid\n\t\t);\n\t\t\n\t\t\n\t\tspecular += mix(\n\t\t\tvec3(0.0),\n\t\t\tlighting_calcSpecular(lighting_uDirDirection[i]) * lighting_uDirColor[i],\n\t\t\tisValid\n\t\t);\n\n\t\t\n\t\tfloat isShadowLight = isValid * step(0., lighting_uAdvanced.z) * float((float(i) == lighting_uAdvanced.w));\n\t\tshadowDiffuse += mix(\n\t\t\tvec3(0.0),\n\t\t\tlighting_calcDiffuse(lighting_uDirDirection[i]) * lighting_uDirColor[i],\n\t\t\tisShadowLight\n\t\t);\n\t\tshadowSpecular += mix(\n\t\t\tvec3(0.0),\n\t\t\tlighting_calcSpecular(lighting_uDirDirection[i]) * lighting_uDirColor[i],\n\t\t\tisShadowLight\n\t\t);\n\t}\n\n\tlighting_vLightWeight += diffuse * lighting_uBase.z;\n\tlighting_vLightSpecular += specular * lighting_uBase.w;\n\tlighting_vShadowWeight = shadowDiffuse * lighting_uBase.z * lighting_uAdvanced.z;\n\tlighting_vShadowSpecular = shadowSpecular * lighting_uBase.w * lighting_uAdvanced.z;\n}\n\n\nvoid lighting_calcPointLights(float enable) {\n\tvec3 diffuse = vec3(0.0);\n\tvec3 specular = vec3(0.0);\n\n\tfor (int i = 0; i < LIGHT_MAX; i++) {\n\t\tfloat isValid = (1.0 - step(float(lighting_uLightCount.y), float(i))) * enable;\n\n\t\tvec3 posToLight = lighting_uPointPosition[i] - lighting_vPosition;\n\t\tvec3 direction = normalize(posToLight);\n\t\tfloat distance = length(posToLight);\n\t\t\n\t\t\n\t\tfloat attenuation = 1.0 / dot(vec3(1.0, 0.014, 0.0007), vec3(1.0, distance, distance * distance));\n\n\t\t\n\t\tdiffuse += mix(\n\t\t\tvec3(0.0),\n\t\t\tlighting_calcDiffuse(direction) * lighting_uPointColor[i] * attenuation,\n\t\t\tisValid\n\t\t);\n\t\t\n\t\t\n\t\tspecular += mix(\n\t\t\tvec3(0.0),\n\t\t\tlighting_calcSpecular(direction) * lighting_uPointColor[i] * attenuation,\n\t\t\tisValid\n\t\t);\n\t}\n\n\tlighting_vLightWeight += diffuse * lighting_uBase.z;\n\tlighting_vLightSpecular += specular * lighting_uBase.w;\n}\n\n\nvoid lighting_apply_on_vertex(vec3 position, vec3 normal, mat4 modelMatrix, vec2 objSpec) {\n\tlighting_setObjInfo(position, normal, modelMatrix, objSpec);\n\n\t\n\tlighting_vLightWeight = mix(\n\t\tvec3(1.0),\n\t\tlighting_uAmbientColor * lighting_uBase.y,\n\t\tlighting_uBase.x\n\t);\n\tlighting_vLightSpecular = vec3(0.0);\n\tlighting_vShadowWeight = vec3(0.0);\n\tlighting_vShadowSpecular = vec3(0.0);\n\n\t\n\tlighting_calcDirLights(lighting_uBase.x);\n\tlighting_calcPointLights(lighting_uBase.x);\n}\n\nvoid lighting_apply_on_vertex(vec3 position, vec3 normal, mat4 modelMatrix) {\n\tlighting_apply_on_vertex(position, normal, modelMatrix, vec2(0.4, 32.0));\n}\n",
e.LIGHT_FRAG = "\nuniform sampler2D lighting_uShadowSampler;\n\nvec3 toneMapping(vec3 hdrColor, float exposure) {\n\tconst float gamma = 2.2;\n\n\n\tvec3 mapped = vec3(1.0) - exp(-hdrColor * exposure);\n\t\n\n\tmapped = pow(mapped, vec3(1.0 / gamma));\n\t\n\treturn mapped;\n}\n\nfloat getShadowSceneDepth() {\n\treturn texture2D(lighting_uShadowSampler, lighting_vShadowInfo.xy).x;\n}\n\nfloat isInShadow() {\n float isInSideTexture = float(abs(lighting_vShadowInfo.x - 0.5) < 0.5 && abs(lighting_vShadowInfo.y - 0.5) < 0.5);\n\tfloat sceneDepth = getShadowSceneDepth();\n\treturn mix(\n\t\t0.0,\n\t\tstep(0.0005, abs(lighting_vShadowInfo.z - sceneDepth)) * step(sceneDepth, lighting_vShadowInfo.z),\n\t\tstep(0., lighting_vShadowInfo.w) * isInSideTexture\n );\n}\n\n" + r + "\n"
},
function(t, e, n) {
"use strict";
function i(t) {
var e = t.geometries.map(function(t) {
return t.paths || []
}),
n = new o.PolygonParseHelper({
complexPolygons: e,
IndexType: Uint32Array
});
n.updatePositions({
fp64: !0,
extruded: !0
});
var i = n.getPositions(),
r = n.getIndices(),
s = n.getPositions64xyLow(),
l = n.getVertexValid(),
u = n.getPickingColors(),
c = n.getElevations({
getElevation: function(e) {
var n = t.geometries[e],
i = t.styles[n.styleId];
return i && i.extrudeHeight ? i.extrudeHeight: 0
}
}),
f = n.getColors({
key: "fillColors",
getColor: function(e) {
var n = t.geometries[e],
i = t.styles[n.styleId];
if (i) {
return new a.
default(i.color).toUpArray()
}
return [0, 0, 0, 0]
}
}),
d = n.getColors({
key: "lineColors",
getColor: function(e) {
var n = t.geometries[e],
i = t.styles[n.styleId];
if (i) {
if (i.showBorder) {
var o = new a.
default(i.borderColor);
return "borderWidth" in i ? [0, 0, 0, 0] : o.toUpArray()
}
return [0, 0, 0, 0]
}
return [0, 0, 0, 0]
}
}),
h = i.slice(3),
v = s.slice(2),
p = i.slice(),
_ = s.slice();
return p.set(h),
_.set(v),
{
positions: i,
indices: r,
positions64xyLow: s,
vertexValid: l,
pickingColors: u,
elevations: c,
fillColors: f,
lineColors: d,
nextPositions: p,
nextPositions64xyLow: _
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(333),
r = n(227),
a = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t, e, n, i) {
n = n || 2;
var r = e && e.length,
s = r ? e[0] * n: t.length,
l = o(t, 0, s, n, !0),
u = [];
if (!l) return u;
var c = void 0,
d = void 0,
h = void 0,
v = void 0,
p = void 0,
_ = void 0,
m = void 0;
if (r && (l = f(t, e, l, n)), t.length > 80 * n) {
var g = (0, R.
default)(t, 2);
h = g[0],
v = g[1],
c = h,
d = v;
for (var y = n; y < s; y += n) p = t[y],
_ = t[y + 1],
p < c && (c = p),
_ < d && (d = _),
p > h && (h = p),
_ > v && (v = _);
m = Math.max(h - c, v - d)
}
return a(l, u, n, c, d, m, void 0, i),
u
}
function o(t, e, n, i, o) {
var r = void 0,
a = void 0;
if (o === M(t, e, n, i) > 0) for (r = e; r < n; r += i) a = I(r, t[r], t[r + 1], a);
else for (r = n - i; r >= e; r -= i) a = I(r, t[r], t[r + 1], a);
return a && S(a, a.next) && (k(a), a = a.next),
a
}
function r(t, e) {
if (!t) return t;
e || (e = t);
var n = t,
i = void 0;
do {
if (i = !1, n.steiner || !S(n, n.next) && 0 !== b(n.prev, n, n.next)) n = n.next;
else {
if (k(n), e = n.prev, (n = e) === n.next) return null;
i = !0
}
} while ( i || n !== e );
return e
}
function a(t, e, n, i, o, f, d, h) {
if (h = h || 0, t) { ! d && f && p(t, i, o, f);
for (var v = t,
_ = void 0,
m = void 0; t.prev !== t.next;) if (_ = t.prev, m = t.next, f ? l(t, i, o, f) : s(t)) e.push(_.i / n + h),
e.push(t.i / n + h),
e.push(m.i / n + h),
k(t),
t = m.next,
v = m.next;
else if ((t = m) === v) {
d ? 1 === d ? (t = u(t, e, n, h), a(t, e, n, i, o, f, 2, h)) : 2 === d && c(t, e, n, i, o, f, h) : a(r(t), e, n, i, o, f, 1, h);
break
}
}
}
function s(t) {
var e = t.prev,
n = t,
i = t.next;
if (b(e, n, i) >= 0) return ! 1;
for (var o = t.next.next; o !== t.prev;) {
if (y(e.x, e.y, n.x, n.y, i.x, i.y, o.x, o.y) && b(o.prev, o, o.next) >= 0) return ! 1;
o = o.next
}
return ! 0
}
function l(t, e, n, i) {
var o = t.prev,
r = t,
a = t.next;
if (b(o, r, a) >= 0) return ! 1;
for (var s = o.x < r.x ? o.x < a.x ? o.x: a.x: r.x < a.x ? r.x: a.x, l = o.y < r.y ? o.y < a.y ? o.y: a.y: r.y < a.y ? r.y: a.y, u = o.x > r.x ? o.x > a.x ? o.x: a.x: r.x > a.x ? r.x: a.x, c = o.y > r.y ? o.y > a.y ? o.y: a.y: r.y > a.y ? r.y: a.y, f = m(s, l, e, n, i), d = m(u, c, e, n, i), h = t.nextZ; h && h.z <= d;) {
if (h !== t.prev && h !== t.next && y(o.x, o.y, r.x, r.y, a.x, a.y, h.x, h.y) && b(h.prev, h, h.next) >= 0) return ! 1;
h = h.nextZ
}
for (h = t.prevZ; h && h.z >= f;) {
if (h !== t.prev && h !== t.next && y(o.x, o.y, r.x, r.y, a.x, a.y, h.x, h.y) && b(h.prev, h, h.next) >= 0) return ! 1;
h = h.prevZ
}
return ! 0
}
function u(t, e, n, i) {
var o = t;
do {
var r = o.prev,
a = o.next.next; ! S(r, a) && w(r, o, o.next, a) && T(r, a) && T(a, r) && (e.push(r.i / n + i), e.push(o.i / n + i), e.push(a.i / n + i), k(o), k(o.next), t = a, o = t), o = o.next
} while ( o !== t );
return o
}
function c(t, e, n, i, o, s, l) {
var u = t;
do {
for (var c = u.next.next; c !== u.prev;) {
if (u.i !== c.i && x(u, c)) {
var f = P(u, c);
return u = r(u, u.next),
f = r(f, f.next),
a(u, e, n, i, o, s, void 0, l),
void a(f, e, n, i, o, s, void 0, l)
}
c = c.next
}
u = u.next
} while ( u !== t )
}
function f(t, e, n, i) {
var a = [],
s = void 0,
l = void 0,
u = void 0,
c = void 0,
f = void 0;
for (s = 0, l = e.length; s < l; s++) u = e[s] * i,
c = s < l - 1 ? e[s + 1] * i: t.length,
f = o(t, u, c, i, !1),
f === f.next && (f.steiner = !0),
a.push(g(f));
for (a.sort(d), s = 0; s < a.length; s++) h(a[s], n),
n = r(n, n.next);
return n
}
function d(t, e) {
return t.x - e.x
}
function h(t, e) {
if (e = v(t, e)) {
var n = P(e, t);
r(n, n.next)
}
}
function v(t, e) {
var n = e,
i = t.x,
o = t.y,
r = -1 / 0,
a = void 0;
do {
if (o <= n.y && o >= n.next.y && n.next.y !== n.y) {
var s = n.x + (o - n.y) * (n.next.x - n.x) / (n.next.y - n.y);
if (s <= i && s > r) {
if (r = s, s === i) {
if (o === n.y) return n;
if (o === n.next.y) return n.next
}
a = n.x < n.next.x ? n: n.next
}
}
n = n.next
} while ( n !== e );
if (!a) return null;
if (i === r) return a.prev;
var l = a,
u = a.x,
c = a.y,
f = 1 / 0,
d = void 0;
for (n = a.next; n !== l;) i >= n.x && n.x >= u && i !== n.x && y(o < c ? i: r, o, u, c, o < c ? r: i, o, n.x, n.y) && ((d = Math.abs(o - n.y) / (i - n.x)) < f || d === f && n.x > a.x) && T(n, t) && (a = n, f = d),
n = n.next;
return a
}
function p(t, e, n, i) {
var o = t;
do {
null === o.z && (o.z = m(o.x, o.y, e, n, i)), o.prevZ = o.prev, o.nextZ = o.next, o = o.next
} while ( o !== t );
o.prevZ.nextZ = null,
o.prevZ = null,
_(o)
}
function _(t) {
var e = void 0,
n = void 0,
i = void 0,
o = void 0,
r = void 0,
a = void 0,
s = void 0,
l = void 0,
u = 1;
do {
for (n = t, t = null, r = null, a = 0; n;) {
for (a += 1, i = n, s = 0, e = 0; e < u && (s += 1, i = i.nextZ); e++);
for (l = u; s > 0 || l > 0 && i;) 0 !== s && (0 === l || !i || n.z <= i.z) ? (o = n, n = n.nextZ, s -= 1) : (o = i, i = i.nextZ, l -= 1),
r ? r.nextZ = o: t = o,
o.prevZ = r,
r = o;
n = i
}
r && (r.nextZ = null), u *= 2
} while ( a > 1 );
return t
}
function m(t, e, n, i, o) {
return t = 32767 * (t - n) / o,
e = 32767 * (e - i) / o,
t = 16711935 & (t | t << 8),
t = 252645135 & (t | t << 4),
t = 858993459 & (t | t << 2),
t = 1431655765 & (t | t << 1),
e = 16711935 & (e | e << 8),
e = 252645135 & (e | e << 4),
e = 858993459 & (e | e << 2),
e = 1431655765 & (e | e << 1),
t | e << 1
}
function g(t) {
var e = t,
n = t;
do {
e.x < n.x && (n = e), e = e.next
} while ( e !== t );
return n
}
function y(t, e, n, i, o, r, a, s) {
return (o - a) * (e - s) - (t - a) * (r - s) >= 0 && (t - a) * (i - s) - (n - a) * (e - s) >= 0 && (n - a) * (r - s) - (o - a) * (i - s) >= 0
}
function x(t, e) {
return t.next.i !== e.i && t.prev.i !== e.i && !E(t, e) && T(t, e) && T(e, t) && A(t, e)
}
function b(t, e, n) {
return (e.y - t.y) * (n.x - e.x) - (e.x - t.x) * (n.y - e.y)
}
function S(t, e) {
return t.x === e.x && t.y === e.y
}
function w(t, e, n, i) {
return !! (S(t, e) && S(n, i) || S(t, i) && S(n, e)) || b(t, e, n) > 0 != b(t, e, i) > 0 && b(n, i, t) > 0 != b(n, i, e) > 0
}
function E(t, e) {
var n = t;
do {
if (n.i !== t.i && n.next.i !== t.i && n.i !== e.i && n.next.i !== e.i && w(n, n.next, t, e)) return ! 0;
n = n.next
} while ( n !== t );
return ! 1
}
function T(t, e) {
return b(t.prev, t, t.next) < 0 ? b(t, e, t.next) >= 0 && b(t, t.prev, e) >= 0 : b(t, e, t.prev) < 0 || b(t, t.next, e) < 0
}
function A(t, e) {
var n = t,
i = !1,
o = (t.x + e.x) / 2,
r = (t.y + e.y) / 2;
do {
n.y > r != n.next.y > r && n.next.y !== n.y && o < (n.next.x - n.x) * (r - n.y) / (n.next.y - n.y) + n.x && (i = !i), n = n.next
} while ( n !== t );
return i
}
function P(t, e) {
var n = new L(t.i, t.x, t.y),
i = new L(e.i, e.x, e.y),
o = t.next,
r = e.prev;
return t.next = e,
e.prev = t,
n.next = o,
o.prev = n,
i.next = n,
n.prev = i,
r.next = i,
i.prev = r,
i
}
function I(t, e, n, i) {
var o = new L(t, e, n);
return i ? (o.next = i.next, o.prev = i, i.next.prev = o, i.next = o) : (o.prev = o, o.next = o),
o
}
function k(t) {
t.next.prev = t.prev,
t.prev.next = t.next,
t.prevZ && (t.prevZ.nextZ = t.nextZ),
t.nextZ && (t.nextZ.prevZ = t.prevZ)
}
function L(t, e, n) {
this.i = t,
this.x = e,
this.y = n,
this.prev = null,
this.next = null,
this.z = null,
this.prevZ = null,
this.nextZ = null,
this.steiner = !1
}
function M(t, e, n, i) {
for (var o = 0,
r = e,
a = n - i; r < n; r += i) o += (t[a] - t[r]) * (t[r + 1] + t[a + 1]),
a = r;
return o
}
var C = n(32),
R = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (C);
t.exports = i,
i.deviation = function(t, e, n, i) {
var o = e && e.length,
r = o ? e[0] * n: t.length,
a = Math.abs(M(t, 0, r, n));
if (o) for (var s = 0,
l = e.length; s < l; s++) {
var u = e[s] * n,
c = s < l - 1 ? e[s + 1] * n: t.length;
a -= Math.abs(M(t, u, c, n))
}
for (var f = 0,
d = 0; d < i.length; d += 3) {
var h = i[d] * n,
v = i[d + 1] * n,
p = i[d + 2] * n;
f += Math.abs((t[h] - t[p]) * (t[v + 1] - t[h + 1]) - (t[h] - t[v]) * (t[p + 1] - t[h + 1]))
}
return 0 === a && 0 === f ? 0 : Math.abs((f - a) / a)
},
i.flatten = function(t) {
for (var e = t[0][0].length, n = {
vertices: [],
holes: [],
dimensions: e
},
i = 0, o = 0; o < t.length; o++) {
for (var r = 0; r < t[o].length; r++) for (var a = 0; a < e; a++) n.vertices.push(t[o][r][a]);
o > 0 && (i += t[o - 1].length, n.holes.push(i))
}
return n
}
},
,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(10),
u = function() {
function t(e) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; (0, r.
default)(this, t),
e && (this.gl = e, this.id = n.id || "resource-" + (0, l.uniqueId)(), this._object = this._onCreate(n), this._initialize(n))
}
return (0, s.
default)(t, [{
key: "delete",
value: function() {
this._onDelete(),
this._object = null,
this.gl = null
}
},
{
key: "_onCreate",
value: function() {}
},
{
key: "_onDelete",
value: function() {}
},
{
key: "_initialize",
value: function() {}
},
{
key: "bind",
value: function() {}
},
{
key: "unbind",
value: function() {}
}]),
t
} ();
e.
default = u
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.TRAFFIC_LAYER_ID = e.SATELLITE_LAYER_ID = e.VECTOR_LAYER_ID = e.DEFAULT_BASEMAP = e.TRAFFIC_FEATURE = e.SATELLITE_FEATURE = e.TRAFFIC_ROAD_TYPE = e.MAP_TYPE = void 0;
var i = n(17),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i),
r = n(66),
a = e.MAP_TYPE = {
vector: "vector",
satellite: "satellite",
traffic: "traffic",
handdraw: "handdraw",
oversea: "oversea"
},
s = e.TRAFFIC_ROAD_TYPE = {
highway: 1,
motorway: 2,
national: 3,
provincial: 4,
county: 5,
country: 6,
other: 7
},
l = e.SATELLITE_FEATURE = {
satellite: "base",
road: "road"
},
u = e.TRAFFIC_FEATURE = {
base: "base",
flow: "flow"
};
e.DEFAULT_BASEMAP = {
vector: {
type: a.vector,
features: [r.BASE_LAYER_TYPE.base, r.BASE_LAYER_TYPE.building3d, r.BASE_LAYER_TYPE.point, r.BASE_LAYER_TYPE.label, r.BASE_LAYER_TYPE.arrow]
},
satellite: {
type: a.satellite,
features: [l.satellite, l.road]
},
traffic: {
type: a.traffic,
features: [u.base],
filter: (0, o.
default)(s)
},
handdraw: {
type: a.handdraw
},
oversea: {
type: a.oversea
}
},
e.VECTOR_LAYER_ID = {
base: "vector_bottom",
arrow: "vector_bottom_arrow",
building: "vector_top_building",
poi: "vector_top_poi"
},
e.SATELLITE_LAYER_ID = {
base: "satellite",
road: "road"
},
e.TRAFFIC_LAYER_ID = {
base: "traffic_base",
flow: "traffic_flow"
}
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var i = n(25),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = function(t) {
return function() {
var e = t.apply(this, arguments);
return new o.
default(function(t, n) {
function i(r, a) {
try {
var s = e[r](a),
l = s.value
} catch(t) {
return void n(t)
}
if (!s.done) return o.
default.resolve(l).then(function(t) {
i("next", t)
},
function(t) {
i("throw", t)
});
t(l)
}
return i("next")
})
}
}
},
function(t, e, n) {
t.exports = n(402)
},
function(t, e) {
t.exports = function(t, e, n, i) {
if (! (t instanceof e) || void 0 !== i && i in t) throw TypeError(n + ": incorrect invocation!");
return t
}
},
function(t, e) {
t.exports = {}
},
function(t, e, n) {
var i = n(206);
t.exports = function(t, e, n) {
for (var o in e) i(t, o, e[o], n);
return t
}
},
function(t, e, n) {
"use strict";
var i = n(62),
o = n(104),
r = n(103),
a = n(78)("species");
t.exports = function(t) {
var e = i[t];
r && e && !e[a] && o.f(e, a, {
configurable: !0,
get: function() {
return this
}
})
}
},
function(t, e, n) {
var i = n(104).f,
o = n(214),
r = n(78)("toStringTag");
t.exports = function(t, e, n) {
t && !o(t = n ? t: t.prototype, r) && i(t, r, {
configurable: !0,
value: e
})
}
},
function(t, e, n) {
var i = n(11),
o = n(245),
r = n(61),
a = n(439),
s = "[" + a + "]",
l = "…",
u = RegExp("^" + s + s + "*"),
c = RegExp(s + s + "*$"),
f = function(t, e, n) {
var o = {},
s = r(function() {
return !! a[t]() || l[t]() != l
}),
u = o[t] = s ? e(d) : a[t];
n && (o[n] = u),
i(i.P + i.F * s, "String", o)
},
d = f.trim = function(t, e) {
return t = String(o(t)),
1 & e && (t = t.replace(u, "")),
2 & e && (t = t.replace(c, "")),
t
};
t.exports = f
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) {
return function() {
function e(t, e, n) {
for (var i = [], r = 0, a = 0; a < e; a++) if (a % 4) {
var s = n[t.charCodeAt(a - 1)] << a % 4 * 2,
l = n[t.charCodeAt(a)] >>> 6 - a % 4 * 2;
i[r >>> 2] |= (s | l) << 24 - r % 4 * 8,
r++
}
return o.create(i, r)
}
var n = t,
i = n.lib,
o = i.WordArray,
r = n.enc;
r.Base64 = {
stringify: function(t) {
var e = t.words,
n = t.sigBytes,
i = this._map;
t.clamp();
for (var o = [], r = 0; r < n; r += 3) for (var a = e[r >>> 2] >>> 24 - r % 4 * 8 & 255, s = e[r + 1 >>> 2] >>> 24 - (r + 1) % 4 * 8 & 255, l = e[r + 2 >>> 2] >>> 24 - (r + 2) % 4 * 8 & 255, u = a << 16 | s << 8 | l, c = 0; c < 4 && r + .75 * c < n; c++) o.push(i.charAt(u >>> 6 * (3 - c) & 63));
var f = i.charAt(64);
if (f) for (; o.length % 4;) o.push(f);
return o.join("")
},
parse: function(t) {
var n = t.length,
i = this._map,
o = this._reverseMap;
if (!o) {
o = this._reverseMap = [];
for (var r = 0; r < i.length; r++) o[i.charCodeAt(r)] = r
}
var a = i.charAt(64);
if (a) {
var s = t.indexOf(a); - 1 !== s && (n = s)
}
return e(t, n, o)
},
_map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
}
} (),
t.enc.Base64
})
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) {
return function(e) {
function n(t, e, n, i, o, r, a) {
var s = t + (e & n | ~e & i) + o + a;
return (s << r | s >>> 32 - r) + e
}
function i(t, e, n, i, o, r, a) {
var s = t + (e & i | n & ~i) + o + a;
return (s << r | s >>> 32 - r) + e
}
function o(t, e, n, i, o, r, a) {
var s = t + (e ^ n ^ i) + o + a;
return (s << r | s >>> 32 - r) + e
}
function r(t, e, n, i, o, r, a) {
var s = t + (n ^ (e | ~i)) + o + a;
return (s << r | s >>> 32 - r) + e
}
var a = t,
s = a.lib,
l = s.WordArray,
u = s.Hasher,
c = a.algo,
f = []; !
function() {
for (var t = 0; t < 64; t++) f[t] = 4294967296 * e.abs(e.sin(t + 1)) | 0
} ();
var d = c.MD5 = u.extend({
_doReset: function() {
this._hash = new l.init([1732584193, 4023233417, 2562383102, 271733878])
},
_doProcessBlock: function(t, e) {
for (var a = 0; a < 16; a++) {
var s = e + a,
l = t[s];
t[s] = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8)
}
var u = this._hash.words,
c = t[e + 0],
d = t[e + 1],
h = t[e + 2],
v = t[e + 3],
p = t[e + 4],
_ = t[e + 5],
m = t[e + 6],
g = t[e + 7],
y = t[e + 8],
x = t[e + 9],
b = t[e + 10],
S = t[e + 11],
w = t[e + 12],
E = t[e + 13],
T = t[e + 14],
A = t[e + 15],
P = u[0],
I = u[1],
k = u[2],
L = u[3];
P = n(P, I, k, L, c, 7, f[0]),
L = n(L, P, I, k, d, 12, f[1]),
k = n(k, L, P, I, h, 17, f[2]),
I = n(I, k, L, P, v, 22, f[3]),
P = n(P, I, k, L, p, 7, f[4]),
L = n(L, P, I, k, _, 12, f[5]),
k = n(k, L, P, I, m, 17, f[6]),
I = n(I, k, L, P, g, 22, f[7]),
P = n(P, I, k, L, y, 7, f[8]),
L = n(L, P, I, k, x, 12, f[9]),
k = n(k, L, P, I, b, 17, f[10]),
I = n(I, k, L, P, S, 22, f[11]),
P = n(P, I, k, L, w, 7, f[12]),
L = n(L, P, I, k, E, 12, f[13]),
k = n(k, L, P, I, T, 17, f[14]),
I = n(I, k, L, P, A, 22, f[15]),
P = i(P, I, k, L, d, 5, f[16]),
L = i(L, P, I, k, m, 9, f[17]),
k = i(k, L, P, I, S, 14, f[18]),
I = i(I, k, L, P, c, 20, f[19]),
P = i(P, I, k, L, _, 5, f[20]),
L = i(L, P, I, k, b, 9, f[21]),
k = i(k, L, P, I, A, 14, f[22]),
I = i(I, k, L, P, p, 20, f[23]),
P = i(P, I, k, L, x, 5, f[24]),
L = i(L, P, I, k, T, 9, f[25]),
k = i(k, L, P, I, v, 14, f[26]),
I = i(I, k, L, P, y, 20, f[27]),
P = i(P, I, k, L, E, 5, f[28]),
L = i(L, P, I, k, h, 9, f[29]),
k = i(k, L, P, I, g, 14, f[30]),
I = i(I, k, L, P, w, 20, f[31]),
P = o(P, I, k, L, _, 4, f[32]),
L = o(L, P, I, k, y, 11, f[33]),
k = o(k, L, P, I, S, 16, f[34]),
I = o(I, k, L, P, T, 23, f[35]),
P = o(P, I, k, L, d, 4, f[36]),
L = o(L, P, I, k, p, 11, f[37]),
k = o(k, L, P, I, g, 16, f[38]),
I = o(I, k, L, P, b, 23, f[39]),
P = o(P, I, k, L, E, 4, f[40]),
L = o(L, P, I, k, c, 11, f[41]),
k = o(k, L, P, I, v, 16, f[42]),
I = o(I, k, L, P, m, 23, f[43]),
P = o(P, I, k, L, x, 4, f[44]),
L = o(L, P, I, k, w, 11, f[45]),
k = o(k, L, P, I, A, 16, f[46]),
I = o(I, k, L, P, h, 23, f[47]),
P = r(P, I, k, L, c, 6, f[48]),
L = r(L, P, I, k, g, 10, f[49]),
k = r(k, L, P, I, T, 15, f[50]),
I = r(I, k, L, P, _, 21, f[51]),
P = r(P, I, k, L, w, 6, f[52]),
L = r(L, P, I, k, v, 10, f[53]),
k = r(k, L, P, I, b, 15, f[54]),
I = r(I, k, L, P, d, 21, f[55]),
P = r(P, I, k, L, y, 6, f[56]),
L = r(L, P, I, k, A, 10, f[57]),
k = r(k, L, P, I, m, 15, f[58]),
I = r(I, k, L, P, E, 21, f[59]),
P = r(P, I, k, L, p, 6, f[60]),
L = r(L, P, I, k, S, 10, f[61]),
k = r(k, L, P, I, h, 15, f[62]),
I = r(I, k, L, P, x, 21, f[63]),
u[0] = u[0] + P | 0,
u[1] = u[1] + I | 0,
u[2] = u[2] + k | 0,
u[3] = u[3] + L | 0
},
_doFinalize: function() {
var t = this._data,
n = t.words,
i = 8 * this._nDataBytes,
o = 8 * t.sigBytes;
n[o >>> 5] |= 128 << 24 - o % 32;
var r = e.floor(i / 4294967296),
a = i;
n[15 + (o + 64 >>> 9 << 4)] = 16711935 & (r << 8 | r >>> 24) | 4278255360 & (r << 24 | r >>> 8),
n[14 + (o + 64 >>> 9 << 4)] = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8),
t.sigBytes = 4 * (n.length + 1),
this._process();
for (var s = this._hash,
l = s.words,
u = 0; u < 4; u++) {
var c = l[u];
l[u] = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8)
}
return s
},
clone: function() {
var t = u.clone.call(this);
return t._hash = this._hash.clone(),
t
}
});
a.MD5 = u._createHelper(d),
a.HmacMD5 = u._createHmacHelper(d)
} (Math),
t.MD5
})
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.PICK_UNIFORM = "\nuniform float picking_usePickingColor;\nuniform vec3 picking_selectedPickingColor;\n",
e.PICK_FUNCTION = "\n vec4 picking_getFinalColor(vec4 vertexColor, vec3 instancePickingColors) {\n \n return mix(\n vertexColor,\n\n vec4(instancePickingColors.rgb, 255.0).rgba / 255.0,\n\n picking_usePickingColor);\n }\n"
},
,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
if (!y.has(t)) {
var n = new l.
default(function(t) {
if (!d.
default || _.
default.isLocal) return void t(null);
var n = e.subkey,
i = e.subpid,
o = ["key=" + d.
default, "pid=" + location.host, "channel=0"];
n && o.push("key2=" + n, "pid2=" + i);
var r = v.
default.checkKeySrc + "?" + o.join("&");
g(null, r,
function(e) {
var i = void 0;
e && e.info && 0 === e.info.error ? (i = e.detail && e.detail.cfg) && (i.subkey = n) : console.error("鉴权失败:" + e.info.msg),
t(i)
},
function() {
console.error("鉴权失败:网络请求失败。"),
t(null)
})
});
y.set(t, n)
}
return y.get(t)
}
function r() {
return new l.
default(function(t) { (0, m.getStorageFrontier)().then(function(e) {
var n = ["apikey=" + d.
default, "ctrlver=-1", "ctrlpf=grid", "ctrlmb=jsapi", "frontier=" + (e && e.version || 0), "callback"],
i = v.
default.overseaSrc + "?" + n.join("&");
g(null, i,
function(e) {
t(e)
},
function() {
console.error("鉴权失败:海外图请求失败。"),
t(null)
})
})
})
}
function a(t) {
y.delete(t)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(25),
l = i(s),
u = n(148),
c = i(u);
e.checkKey = o,
e.overseaCheckKey = r,
e.revokeKeyCheck = a;
var f = n(471),
d = i(f),
h = n(23),
v = i(h),
p = n(105),
_ = i(p),
m = n(508),
g = n(340).send,
y = new c.
default
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(247),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = o.
default[0]
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
return Math.sqrt(t * t + e * e)
}
function r(t, e) {
var n = t.pageX,
i = t.pageY;
if (t.touches) {
var o = t.touches[e || 0];
n = o.pageX,
i = o.pageY
}
return {
x: n,
y: i
}
}
function a(t) {
return t
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Finger = void 0;
var s = n(24),
l = i(s),
u = n(17),
c = i(u),
f = n(3),
d = i(f),
h = n(0),
v = i(h),
p = n(1),
_ = i(p),
m = n(5),
g = i(m),
y = n(4),
x = i(y),
b = n(28),
S = n(120),
w = {
start: ["mousedown", "touchstart"],
move: ["mousemove", "touchmove"],
end: ["mouseup", "touchend"],
cancel: ["", "touchcancel"],
leave: ["mouseleave", ""]
},
E = 0,
T = (e.Finger = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; (0, v.
default)(this, e);
var i = (0, g.
default)(this, (e.__proto__ || (0, d.
default)(e)).call(this));
if (!t) throw new Error("element is invalid");
return i.options = n,
i.identifier = "Finger__" + E,
E += 1,
i.touched = !1,
i.panning = !1,
i.element = t,
i.element.__Finger__identifier = i.identifier,
i.handlers = [],
i.isDoubleTap = !1,
i.y1 = null,
i.x1 = i.y1,
i.y2 = null,
i.x2 = i.y2,
i.deltaTime = null,
i.lastStartTime = null,
i.panSpeedStartTime = null,
i.panSpeedStartPos = null,
i.now = null,
i.tapTimeout = null,
i.holdTimeout = null,
i.swipeTimeout = null,
i.startVector = null,
i.startDistance = null,
i.init(),
i
}
return (0, x.
default)(e, t),
(0, _.
default)(e, [{
key: "init",
value: function() {
var t = this,
e = "ontouchstart" in document ? 1 : 0,
n = (0, c.
default)(w).forEach(function(n) {
if (w[n][e]) {
if ("leave" === n) return void(0, b.on)(t.element, w[n][e], T.end, t); (0, b.on)(t.element, w[n][e], T[n], t)
}
});
this.handlers.concat(n)
}
},
{
key: "destroy",
value: function() {
clearTimeout(this.tapTimeout),
clearTimeout(this.holdTimeout),
clearTimeout(this.swipeTimeout),
this.removeAllListeners("touch-start"),
this.removeAllListeners("multi-touch-start"),
this.removeAllListeners("hold"),
this.removeAllListeners("pinch"),
this.removeAllListeners("rotate"),
this.removeAllListeners("pan-start"),
this.removeAllListeners("pan"),
this.removeAllListeners("pan-end"),
this.removeAllListeners("swipe"),
this.removeAllListeners("tap"),
this.removeAllListeners("doubletap"),
this.removeAllListeners("touch-end"),
this.removeAllListeners("multi-touch-end"),
this.removeAllListeners("touch-cancel"),
this.identifier = null,
delete this.element.__Finger__identifier,
this.handlers.forEach(function(t) {
t && t.remove && t.remove()
}),
this.touched = !1,
this.handlers = [],
this.isDoubleTap = !1,
this.y1 = null,
this.x1 = this.y1,
this.y2 = null,
this.x2 = this.y2,
this.deltaTime = null,
this.lastStartTime = null,
this.now = null,
this.tapTimeout = null,
this.holdTimeout = null,
this.swipeTimeout = null,
this.startVector = null,
this.startDistance = null
}
}]),
e
} (S), {
start: function(t) {
var e = this;
if (t && t.target) {
this.touched = !0,
this.now = Date.now(),
this.deltaTime = this.now - (this.lastStartTime || this.now);
var n = r(t);
"number" == typeof this.x1 && "number" == typeof this.y1 && (this.isDoubleTap = this.deltaTime < 300 && Math.abs(n.x - this.x1) < 10 && Math.abs(n.y - this.y1) < 10),
this.x1 = n.x,
this.y1 = n.y;
var i = a(t);
if (this.emit("touch-start", i), t.touches && t.touches.length > 1) {
var s = r(t, 0),
u = r(t, 1);
this.startVector = [u.x - s.x, u.y - s.y],
this.startDistance = o.apply(void 0, (0, l.
default)(this.startVector)),
i.vector = this.startVector,
i.vectorDistance = this.startDistance,
clearTimeout(this.holdTimeout),
this.emit("multi-touch-start", i)
}
this.lastStartTime = this.now,
this.holdTimeout = setTimeout(function() {
e.emit("hold", i)
},
750),
this.options.stopPropagation && t.stopPropagation()
}
},
move: function(t) {
console.log(55365)
if (t && t.target && this.touched) {
var e = r(t),
n = a(t);
if (this.isDoubleTap = !1, clearTimeout(this.holdTimeout), null !== this.x2 ? (n.deltaX = e.x - this.x2, n.deltaY = e.y - this.y2) : (n.deltaX = 0, n.deltaY = 0), t.touches && t.touches.length > 1 && this.startVector && null !== this.startVector.x) {
var i = r(t, 0),
s = r(t, 1),
l = [s.x - i.x, s.y - i.y],
u = o.apply(void 0, l),
c = u / this.startDistance,
f = Math.acos((this.startVector[0] * l[0] + this.startVector[1] * l[1]) / (u * this.startDistance));
f = l[0] * this.startVector[1] - this.startVector[0] * l[1] >= 0 ? f: -f,
Math.abs(c - 1) > .01 && (n.scale = c, this.emit("pinch", n)),
0 !== f && (n.angle = f, this.emit("rotate", n)),
t.preventDefault()
} else if (this.touched && (0 !== n.deltaY || 0 !== n.deltaX)) if (this.panning) {
this.emit("pan", n);
var d = Date.now();
d - this.panSpeedStartTime > 300 && (this.panSpeedStartTime = d, this.panSpeedStartPos = e)
} else this.emit("pan-start", n),
this.panning = !0,
this.panSpeedStartTime = Date.now(),
this.panSpeedStartPos = e;
this.options.preventDefaultMove && t.preventDefault(),
this.x2 = e.x,
this.y2 = e.y,
this.options.stopPropagation && t.stopPropagation()
}
},
end: function(t) {
console.log(9999)
var e = this;
if (t && t.target) {
clearTimeout(this.holdTimeout),
this.now = Date.now();
var n = this.x2 - this.x1,
i = this.y2 - this.y1,
o = null === this.x2 || Math.abs(n) < 10 && Math.abs(i) < 10,
r = this.now - this.lastStartTime < 200 && o,
s = a(t);
if (null !== this.x2 && null !== this.y2 && this.panning) {
var l = Math.abs(n) > Math.abs(i) ? n > 0 ? "RIGHT": "LEFT": i > 0 ? "DOWN": "TOP",
u = 0,
c = 0;
if (this.now - this.panSpeedStartTime < 300) {
var f = this.x2 - this.panSpeedStartPos.x,
d = this.y2 - this.panSpeedStartPos.y,
h = this.now - this.panSpeedStartTime;
c = f / h,
u = d / h
}
s.swipeDirection = l,
s.speedX = c,
s.speedY = u,
s.deltaX = n,
s.deltaY = i,
this.panning && (this.emit("pan-end", s), this.panning = !1),
this.swipeTimeout = setTimeout(function() {
e.emit("swipe", s)
})
} else o && r && (this.tapTimeout = setTimeout(function() {
e.emit("tap", s),
e.isDoubleTap && (e.emit("doubletap", s), e.isDoubleTap = !1)
},
0));
this.emit("touch-end", s),
t.touches && t.touches.length > 0 && t.touches.length < 2 && this.emit("multi-touch-end", s),
this.startDistance = null,
this.startVector = [0, 0],
this.y2 = null,
this.x2 = this.y2,
this.touched = !1,
this.options.preventDefaultEnd && t.preventDefault(),
this.options.stopPropagation && t.stopPropagation()
}
},
cancel: function(t) {
clearTimeout(this.tapTimeout),
clearTimeout(this.holdTimeout),
clearTimeout(this.swipeTimeout),
this.touched = !1,
this.emit("touch-cancel", t)
}
})
},
function(t, e, n) {
"use strict";
function i(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = r(t, e);
return (0, o.toDom)(n)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Template = void 0,
e.templeteToDom = i;
var o = n(210),
r = e.Template = function() {
var t = {},
e = function(t) {
return String(t).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;").replace(/[ ]/g, "&nbsp;")
};
return function(n, i) {
if ("string" == typeof n) {
var o = t[n];
if (!t[n]) {
var r = n.replace(/<%\s*([^=][^%>]*)\s*%>/g,
function() {
return "';" + arguments[1] + " tmp+='"
}).replace(/<%=\s*([^%>]+)\s*%>/g,
function() {
return "' + strip(" + arguments[1] + ") +'"
}).replace(/<%=\s*([^%>]+)\s*%>/g,
function() {
return "' + " + arguments[1] + "+ '"
});
r = 'var tmp = ""; with(obj){ tmp = \'' + r + "'; } return tmp;",
o = new Function("obj", "strip", r),
t[n] = o
}
return o(i, e)
}
}
} ()
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return t.length >= 3 && (0, w.
default)(t[0].lat) && (0, w.
default)(t[0].lng)
}
function r(t) {
return t.length >= 1 && t.every(function(t) {
return t.length >= 3 && o(t)
})
}
function a(t) {
return t.length >= 1 && t.every(function(t) {
return r(t)
})
}
function s(t) {
var e = t[0],
n = t[t.length - 1];
return e.lat === n.lat && e.lng === n.lng ? t: t.concat([e])
}
function l(t) {
for (var e = 0,
n = 1,
i = void 0,
o = void 0; n < t.length;) i = o || t[0],
o = t[n],
e += (o.lng - i.lng) * (o.lat + i.lat),
n += 1;
return e > 0
}
function u(t) {
return (o(t) ? [[s(t)]] : r(t) ? [t.map(function(t) {
return s(t)
})] : t.map(function(t) {
return t.map(s)
})).map(function(t) {
return t.map(function(t, e) {
var n = [];
return t.forEach(function(t) {
if (n.length > 0) {
var e = n[n.length - 1];
t.lat === e.lat && t.lng === e.lng || n.push(t)
} else n.push(t)
}),
0 === e ? l(n) ? n.reverse() : n: l(n) ? n: n.reverse()
})
})
}
function c(t) {
return u(t).reduce(function(t, e) {
var n = e.reduce(function(t, e) {
return t.push(e),
t
},
[]);
return t.push.apply(t, (0, b.
default)(n)),
t
},
[])
}
function f(t) {
return o(t) ? t.length: t.reduce(function(t, e) {
return t + e.reduce(function(t, e) {
return t + e.length
},
0)
},
0)
}
function d(t) {
return t.reduce(function(t, e) {
return t + h(e)
},
0)
}
function h(t) {
var e = 0,
n = !0,
i = !0,
o = !1,
r = void 0;
try {
for (var a, s = (0, y.
default)(t); ! (i = (a = s.next()).done); i = !0) {
var l = a.value,
u = l.length;
e += n ? u >= 3 ? u - 3 : 0 : u + 1,
n = !1
}
} catch(t) {
o = !0,
r = t
} finally {
try { ! i && s.
return && s.
return ()
} finally {
if (o) throw r
}
}
return e
}
function v(t) {
var e = null;
if (t.length > 1) {
var n = 0;
e = [],
t.forEach(function(t) {
n += t.length,
e.push(n)
}),
e.pop()
}
return e
}
function p(t, e) {
var n = 3 * d(t),
i = m(t),
o = new e(n),
r = 0;
return t.forEach(function(t, e) {
var n = _(t),
a = !0,
s = !1,
l = void 0;
try {
for (var u, c = (0, y.
default)(n); ! (a = (u = c.next()).done); a = !0) {
var f = u.value;
o[r] = f + i[e],
r += 1
}
} catch(t) {
s = !0,
l = t
} finally {
try { ! a && c.
return && c.
return ()
} finally {
if (s) throw l
}
}
}),
o
}
function _(t) {
var e = v(t),
n = I(t, {
dimensions: 2,
result: []
});
return (0, P.
default)(n, e, 2)
}
function m(t) {
var e = new Array(t.length + 1);
e[0] = 0;
var n = 0;
return t.forEach(function(t, i) {
n += t.reduce(function(t, e) {
return t + e.length
},
0),
e[i + 1] = n
}),
e
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var g = n(27),
y = i(g),
x = n(24),
b = i(x),
S = n(343),
w = i(S);
e.isSimple = o,
e.isPart = r,
e.isComplex = a,
e.isClockWise = l,
e.normalize = u,
e.getBorderPolyline = c,
e.getVertexCount = f,
e.getTriangleCount = d,
e.getTriangleCountOfPart = h,
e.getSurfaceIndices = p;
var E = n(237),
T = i(E),
A = n(278),
P = i(A),
I = T.
default.flattenVertices
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
if (e) {
var n = e.find(function(e) {
return e.layerid === t
});
return n ? {
minZoom: n.zoom_min,
maxZoom: n.zoom_max,
getTileUrl: function(t, e, i) {
var o = n.url;
return n.params.forEach(function(i) {
var r = n[i];
Array.isArray(r) && (r = r[(t + e) % r.length]),
o = o.replace("{" + i + "}", r)
}),
o = o.replace("{x}", t).replace("{y}", e).replace("{z}", i)
}
}: void 0
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(16),
a = i(r),
s = n(3),
l = i(s),
u = n(0),
c = i(u),
f = n(1),
d = i(f),
h = n(5),
v = i(h),
p = n(35),
_ = i(p),
m = n(4),
g = i(m),
y = n(382),
x = i(y),
b = n(90),
S = n(66),
w = n(143),
E = n(41),
T = i(E),
A = n(29),
P = n(294),
I = n(43),
k = T.
default.isFunction,
L = T.
default.isString,
M = T.
default.isNumber,
C = function(t) {
function e(t) { (0, c.
default)(this, e),
t.type = S.RENDER_LAYER_TYPE.imageTile;
var n = (0, v.
default)(this, (e.__proto__ || (0, l.
default)(e)).call(this, t));
return (0, I.statCn)("ImageTileLayer"),
n
}
return (0, g.
default)(e, t),
(0, d.
default)(e, [{
key: "_initialize",
value: function(t) { (0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "_initialize", this).call(this, t),
this._setTileUrlGetter(t.getTileUrl),
this.sourceId = this.sourceId || this.id
}
},
{
key: "setZIndex",
value: function(t) {
return M(t) || new A.BaseTypeError("ImageTileLayer.zIndex", "number", t).error(),
(0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "setZIndex", this).call(this, t)
}
},
{
key: "_setTileUrlGetter",
value: function(t) {
k(t) ? L(t(0, 0, 0)) ? this.getTileUrl = t: new A.BaseTypeError("ImageTileLayerOptions.getTileUrl返回值", "string", t(0, 0, 0)).
throw () : new A.BaseTypeError("ImageTileLayerOptions.getTileUrl", "function", t).
throw ()
}
},
{
key: "_addSource",
value: function() {
this.map && !this.map.getSource(this.sourceId) && (this.map.addSource(this.sourceId, {
type: b.SOURCE_TYPE.imageTile,
tileSize: this.tileSize,
data: this.getTileUrl,
minZoom: this.minDataZoom,
maxZoom: this.maxDataZoom
}), this._fire("layer", {}))
}
},
{
key: "_removeSource",
value: function() {
this.map && this.map.removeSource(this.sourceId),
this._fire("source_removed", {})
}
}], [{
key: "createCustomLayer",
value: function(t) {
var n = t.map,
i = t.layerId;
return n ? (0, P.checkKey)(n.id).then(function(r) {
if (!r) throw "请传入正确的key";
if (!r.custom_layer || !r.custom_layer.enable) throw "无个性化图层权限";
var s = o(i, r.custom_layer.layers);
if (!s) throw "请传入正确的layerId"; (0, I.cl)({
id: i,
subkey: r.subkey
});
var l = new e((0, a.
default)(s, t));
return l.setZIndex((0, w.getRank)(w.LAYER_LEVEL.BUILDING + 1, 0) - (0, w.getRank)(w.LAYER_LEVEL.BUILDING, 0) - 1),
n.moveLayer(l.getId(), w.LAYER_LEVEL.BUILDING),
l
}).
catch(function(t) {
return console.error("个性化图层鉴权失败:" + t),
null
}) : (console.error("个性化图层鉴权失败:未绑定地图对象。"), null)
}
}]),
e
} (x.
default);
e.
default = C
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
if (t.row > e.row) {
var n = t;
t = e,
e = n
}
return {
x0: t.column,
y0: t.row,
x1: e.column,
y1: e.row,
dx: e.column - t.column,
dy: e.row - t.row
}
}
function r(t, e, n, i, o) {
var r = Math.max(n, Math.floor(e.y0)),
a = Math.min(i, Math.ceil(e.y1));
if (t.x0 === e.x0 && t.y0 === e.y0 ? t.x0 + e.dy / t.dy * t.dx < e.x1: t.x1 - e.dy / t.dy * t.dx < e.x0) {
var s = t;
t = e,
e = s
}
for (var l = t.dx / t.dy,
u = e.dx / e.dy,
c = t.dx > 0,
f = e.dx < 0,
d = r; d < a; d++) {
var h = l * Math.max(0, Math.min(t.dy, d + c - t.y0)) + t.x0,
v = u * Math.max(0, Math.min(e.dy, d + f - e.y0)) + e.x0;
o(Math.floor(v), Math.ceil(h), d)
}
}
function a(t, e, n, i, a, s) {
var l = o(t, e),
u = o(e, n),
c = o(n, t),
f = void 0;
l.dy > u.dy && (f = l, l = u, u = f),
l.dy > c.dy && (f = l, l = c, c = f),
u.dy > c.dy && (f = u, u = c, c = f),
l.dy && r(c, l, i, a, s),
u.dy && r(c, u, i, a, s)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(17),
l = i(s),
u = n(0),
c = i(u),
f = n(1),
d = i(f),
h = n(23),
v = i(h),
p = function() {
function t(e, n, i, o, r) { (0, c.
default)(this, t),
this.z = e,
this.x = n,
this.y = i,
this.w = o,
this.tileSize = r || v.
default.tileSize,
this.id = n + "_" + i + "_" + e,
this._children = null,
this._parent = null
}
return (0, d.
default)(t, [{
key: "url",
value: function(t) {
var e = this.getServiceCoord(),
n = e.x,
i = e.y,
o = e.z;
return t[(this.x + this.y) % t.length].replace("{z}", o).replace("{x}", n).replace("{y}", i).replace("{version}", v.
default.dataVersion.tile)
}
},
{
key: "setIconUrls",
value: function(t) {
this._iconUrls = t
}
},
{
key: "getServiceCoord",
value: function() {
var t = this.tileSize ? v.
default.tileSize / this.tileSize: 1;
return {
x: this.x,
y: Math.pow(2, this.z) * t - this.y - 1,
z: this.z
}
}
},
{
key: "urlForBatchChildren",
value: function(t) {
var e = this.children().map(function(t) {
return t.getServiceCoord()
}).map(function(t) {
return t.z + "_" + t.x + "_" + t.y
}).join();
return t[(this.x + this.y) % t.length].replace("{tiles}", e).replace("{version}", v.
default.dataVersion.tile)
}
},
{
key: "parent",
value: function(e) {
return 0 === this.z ? null: this._parent ? this._parent: (this.z > e ? this._parent = new t(this.z - 1, this.x, this.y, this.w) : this._parent = new t(this.z - 1, Math.floor(this.x / 2), Math.floor(this.y / 2), this.w), this._parent)
}
},
{
key: "ancestor",
value: function(e) {
var n = Math.round(this.z) - Math.round(e);
if (n <= 0) return null;
var i = Math.pow(2, n);
return new t(this.z - n, Math.floor(this.x / i), Math.floor(this.y / i), this.w)
}
},
{
key: "children",
value: function(e) {
if (this._children) return this._children;
if (this.z >= e) return this._children = [new t(this.z + 1, this.x, this.y, this.w)],
this._children;
var n = this.z + 1,
i = 2 * this.x,
o = 2 * this.y;
return this._children = [new t(n, i, o, this.w), new t(n, i + 1, o, this.w), new t(n, i, o + 1, this.w), new t(n, i + 1, o + 1, this.w)],
this._children
}
},
{
key: "descendant",
value: function(e) {
var n = this.x,
i = this.y,
o = this.z,
r = this.w,
a = Math.round(e) - Math.round(o);
if (a <= 0) return null;
for (var s = Math.pow(2, a), l = [], u = 0; u < s; u++) for (var c = 0; c < s; c++) l.push(new t(e, n * s + u, i * s + c, r));
return l
}
},
{
key: "isVirtualCoord",
value: function() {
return this.z <= 0
}
},
{
key: "wrapXAroundCenter",
value: function(t) {
var e = this.x,
n = this.z,
i = Math.pow(2, n),
o = t.getLng() / 360 + .5,
r = e / i,
a = r - o;
return a > .5 ? e - i: a < -.5 ? e + i: e
}
}], [{
key: "converter",
value: function(t) {
return new this(t.z, t.x, t.y, t.w, t.tileSize)
}
},
{
key: "cover",
value: function(e, n) {
function i(n, i, a) {
var s = void 0,
l = void 0,
u = void 0,
c = void 0;
if (a >= 0 && a <= o) for (s = n; s < i; s++) l = Math.floor(s / o),
u = (s % o + o) % o,
c = new t(e, u, a, l),
r[c.id] = c
}
var o = 1 << e,
r = {};
return a(n[0], n[1], n[2], 0, o, i),
a(n[2], n[3], n[0], 0, o, i),
(0, l.
default)(r).map(function(t) {
return r[t]
})
}
},
{
key: "coverAll",
value: function(e) {
for (var n = 1 << e,
i = [], o = 0; o < n; o++) for (var r = 0; r < n; r++) {
var a = new t(e, o, r, 0);
i.push(a)
}
return i
}
}]),
t
} ();
e.
default = p
},
function(t, e, n) {
"use strict";
function i(t) {
return t === o.DEFAULT || o[t] === o.DEFAULT
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.isDefaultStyle = i;
var o = e.STYLE_ID = {
DEFAULT: 0,
DARK: 1,
LIGHT: 2,
GAME: 3
}
},
,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return {
state:
0,
transition: function(t) {
var e = "overlay" === t;
switch (this.state) {
case 0:
this.state = e ? 1 : 0;
break;
case 1:
this.state = e ? 1 : 2;
break;
case 2:
this.state = e ? 1 : 0
}
}
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(16),
a = i(r),
s = n(3),
l = i(s),
u = n(0),
c = i(u),
f = n(1),
d = i(f),
h = n(5),
v = i(h),
p = n(35),
_ = i(p),
m = n(4),
g = i(m),
y = n(10),
x = i(y),
b = n(504),
S = i(b),
w = n(28),
E = i(w),
T = n(484),
A = i(T),
P = n(209),
I = i(P),
k = n(29),
L = n(41),
M = i(L),
C = n(43),
R = n(112),
B = function(t) {
function e(t) { (0, c.
default)(this, e);
var n = (0, v.
default)(this, (e.__proto__ || (0, l.
default)(e)).call(this));
return t.geometries = t.geometries || [],
n.id = t.id || x.
default.uniqueId(),
n.zIndex = t.zIndex >= 0 ? t.zIndex: 0,
n.styles = t.styles || {},
n.minZoom = t.minZoom,
n.maxZoom = t.maxZoom,
n._setGeometryType(),
n._checkGeometries(t.geometries, n.styles),
n._rawGeometries = n._assignIdToGeometry(t.geometries),
n._idSet = n._updateGeometryIdSet(n._rawGeometries),
n.geometries = n._transferFromGeometry(n._rawGeometries),
n._checkStyles(n.styles),
n._initialize(t),
n._bubbleHandler = [],
n._lastestOverlayMouseMoveObj = null,
n._mousemoveFSM = o(),
t.map && n.setMap(t.map),
(0, C.statCn)(n._className),
n
}
return (0, g.
default)(e, t),
(0, d.
default)(e, [{
key: "_initialize",
value: function() {}
},
{
key: "_emitGeoEvent",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};
this.emit(t, (0, a.
default)({},
n, {
geometry: e,
type: t,
target: this
}))
}
},
{
key: "_bindBubbleHandler",
value: function() {
var t = this;
this._bubbleHandler.push(E.
default.on(this.map._bubbleMiddleware, "mousemove",
function(e) {
2 === t._mousemoveFSM.state && (t._lastestOverlayMouseMoveObj = null, t._emitGeoEvent("mouseout", null, e), t._emitGeoEvent("hover", null, e)),
t._mousemoveFSM.transition.call(t._mousemoveFSM, "map")
})),
this._bubbleHandler.push(E.
default.on(this.map._bubbleMiddleware, "action",
function(e) {
if (e && e.layerId === t.id) {
var n = t.geometries[e.objectIndex];
t._emitGeoEvent(e.eventType, n, e.mapEvent),
"mousemove" === e.eventType && (t._mousemoveFSM.transition.call(t._mousemoveFSM, "overlay"), t._lastestOverlayMouseMoveObj ? n !== t._lastestOverlayMouseMoveObj && t._emitGeoEvent("hover", n, e.mapEvent) : (t._emitGeoEvent("mouseover", n, e.mapEvent), t._emitGeoEvent("hover", n, e.mapEvent)), t._lastestOverlayMouseMoveObj = n)
}
})),
this._bubbleHandler.push(E.
default.on(this.map, "destroy",
function() {
t.setMap(null)
}))
}
},
{
key: "_removeBubbleHander",
value: function() {
this._bubbleHandler.forEach(function(t) {
t && t.remove && t.remove()
})
}
},
{
key: "_setGeometryType",
value: function() {}
},
{
key: "_createLayer",
value: function() {
this.layer = new A.
default({
map:
this.map,
id: this.id,
type: this._layerType,
zIndex: this.zIndex,
minZoom: this.minZoom,
maxZoom: this.maxZoom,
sourceData: this._getRenderSourceData()
})
}
},
{
key: "_removeLayer",
value: function() {
this.layer && this.layer.setMap(null)
}
},
{
key: "setVisible",
value: function(t) {
return t = Boolean(t),
this.layer && this.layer.setVisible(t),
this
}
},
{
key: "setMap",
value: function(t) {
return null === t || t instanceof window.TMap.Map ? t === this.map ? this: (t ? this.map ? (this.setMap(null), this.setMap(t)) : this.id && t.getLayer(this.id) ? console.error("Map中已存在id为" + this.id + "的图层,无法重复添加") : (this.map = t, this._bindBubbleHandler(), this._createLayer()) : (this._removeBubbleHander(), this._removeLayer(), this.map = null), this) : (console.error("所传入参数并非TMap.Map的实例"), this)
}
},
{
key: "setGeometries",
value: function(t) {
return Array.isArray(t) ? t === this._rawGeometries ? this: ((0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "setGeometries", this).call(this, t, this.styles), this.map && this.map.getSource(this.id).setData(this._getRenderSourceData()), this) : (new k.BaseTypeError("geometries", "Array", t).error(), this)
}
},
{
key: "setStyles",
value: function(t) {
return t ? (t.hasOwnProperty || new k.BaseTypeError("styles", "Object", t).error(), this._checkStyles(t), t === this.styles ? this: (this.styles = t, this.map && this.map.getSource(this.id).setData(this._getRenderSourceData()), this)) : this
}
},
{
key: "setZIndex",
value: function(t) {
return M.
default.isNumber(t) ? t < 0 ? (console.error("zIndex希望设置为非负数,实际值为: " + t), this) : (this.layer && this.layer.setZIndex(t), this.zIndex = t, this) : (new k.BaseTypeError("zIndex", "Number", t).error(), this)
}
},
{
key: "getMap",
value: function() {
return this.map
}
},
{
key: "getVisible",
value: function() {
return this.layer && this.layer.visible
}
},
{
key: "getStyles",
value: function() {
return (0, a.
default)({},
this.styles)
}
},
{
key: "getZIndex",
value: function() {
return this.zIndex
}
},
{
key: "updateGeometries",
value: function(t, n) {
return t ? ((0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "updateGeometries", this).call(this, t, n), this.map && this.map.getSource(this.id).setData(this._getRenderSourceData()), this) : this
}
},
{
key: "add",
value: function(t) {
return (0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "add", this).call(this, t)
}
},
{
key: "remove",
value: function(t) {
return (0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "remove", this).call(this, t)
}
},
{
key: "destroy",
value: function() { (0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "destroy", this).call(this),
this.removeAllListeners(),
this.setMap(null),
this.styles = null,
this.id = null,
this.zIndex = null,
this.minZoom = null,
this.maxZoom = null
}
},
{
key: "getGeometryType",
value: function() {
return this._geometryType
}
},
{
key: "snap",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1 / 0,
n = arguments[2];
this._snapTargets || (this._updateSnapTargets(), this.on("geometry_changed", this._updateSnapTargets.bind(this)));
var i = null;
return i = this._snapToPoints(t, e, n),
i || (i = this._snapToSegments(t, e, n)),
i
}
},
{
key: "_snapToPoints",
value: function(t, e, n) {
var i = this._snapTargets.points,
o = this.map;
n && !n.isEmpty() && (i = i.filter(function(t) {
return n.contains(t)
}));
var r = o.projectToContainer(t),
a = null,
s = 1 / 0;
return i.forEach(function(t) {
var n = o.projectToContainer(t),
i = r.dist(n);
i < e && i < s && (a = t, s = i)
}),
a ? {
latLng: a,
dist: s
}: null
}
},
{
key: "_snapToSegments",
value: function(t, e, n) {
var i = this._snapTargets.segments,
o = this.map;
n && !n.isEmpty() && (i = i.filter(function(t) {
var e = new I.
default;
return e.extend(t[0]),
e.extend(t[1]),
n.intersects(e)
}));
for (var r = o.projectToContainer(t), a = null, s = 1 / 0, l = 0; l < i.length; l++) {
var u = i[l],
c = o.projectToContainer(u[0]),
f = o.projectToContainer(u[1]),
d = f.sub(c),
h = r.sub(c),
v = h.dot(d) / d.lengthSq();
if (v > 0 && v < 1) {
var p = d.mult(v),
_ = h.sub(p),
m = _.length();
m < e && m < s && (a = o.unprojectFromContainer(c.add(p)), s = m)
}
}
return a ? {
latLng: a,
dist: s
}: null
}
},
{
key: "_updateSnapTargets",
value: function() {
this._snapTargets = {
points: this._getAllPoints(),
segments: this._getAllSegments()
}
}
},
{
key: "_getAllPoints",
value: function() {
return []
}
},
{
key: "_getAllSegments",
value: function() {
return []
}
},
{
key: "_getRenderableGeometries",
value: function() {
var t = this;
return this.geometries.filter(function(e) {
return e && t.styles
}).map(function(e) {
var n = (0, a.
default)({},
e);
return t.styles[e.styleId] || (n.styleId = "default"),
n
})
}
},
{
key: "_getRenderSourceData",
value: function() {
return {
type: this._geometryType,
styles: this.styles,
geometries: this._getRenderableGeometries()
}
}
},
{
key: "_checkStyles",
value: function(t) {
t.
default || (t.
default = this._getDefaultStyle())
}
}]),
e
} (S.
default);
e.
default = B,
B.LatLngBoundsToBoundingBox = function(t) {
var e = t.getNorthEast(),
n = t.getSouthWest(),
i = new TMap.LatLng((e.lat + n.lat) / 2, (e.lng + n.lng) / 2),
o = (0, R.latLngToMercator)(e),
r = (0, R.latLngToMercator)(n),
a = o.x - r.x,
s = o.y - r.y;
return i.height = ((e.height || 0) + (0 | n.height)) / 2,
{
center: i,
width: a,
height: s
}
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.MAP_ZOOM_TYPE = {
DEFAULT: 0,
CENTER: 1
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(211),
p = i(v),
_ = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.textureShader = !0,
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "afterDraw",
value: function() {
this.gl.activeTexture(this.gl.TEXTURE0),
this.gl.bindTexture(this.gl.TEXTURE_2D, null),
this.gl.activeTexture(this.gl.TEXTURE1),
this.gl.bindTexture(this.gl.TEXTURE_2D, null)
}
}]),
e
} (p.
default);
e.
default = _
},
function(t, e, n) {
t.exports = {
default:
n(308),
__esModule: !0
}
},
function(t, e, n) {
n(73),
n(33),
n(39),
n(314),
n(318),
n(317),
n(316),
t.exports = n(2).Map
},
function(t, e, n) {
n(315),
t.exports = n(2).Math.log2
},
function(t, e, n) {
n(319),
t.exports = n(2).Object.values
},
function(t, e, n) {
var i = n(71);
t.exports = function(t, e) {
var n = [];
return i(t, !1, n.push, n, e),
n
}
},
function(t, e, n) {
var i = n(7),
o = n(117),
r = n(9)("species");
t.exports = function(t) {
var e;
return o(t) && (e = t.constructor, "function" != typeof e || e !== Array && !o(e.prototype) || (e = void 0), i(e) && null === (e = e[r]) && (e = void 0)),
void 0 === e ? Array: e
}
},
function(t, e, n) {
var i = n(311);
t.exports = function(t, e) {
return new(i(t))(e)
}
},
function(t, e) {
t.exports = Math.sign ||
function(t) {
return 0 == (t = +t) || t != t ? t: t < 0 ? -1 : 1
}
},
function(t, e, n) {
"use strict";
var i = n(260),
o = n(183);
t.exports = n(250)("Map",
function(t) {
return function() {
return t(this, arguments.length > 0 ? arguments[0] : void 0)
}
},
{
get: function(t) {
var e = i.getEntry(o(this, "Map"), t);
return e && e.v
},
set: function(t, e) {
return i.def(o(this, "Map"), 0 === t ? 0 : t, e)
}
},
i, !0)
},
function(t, e, n) {
var i = n(6);
i(i.S, "Math", {
log2: function(t) {
return Math.log(t) / Math.LN2
}
})
},
function(t, e, n) {
n(251)("Map")
},
function(t, e, n) {
n(252)("Map")
},
function(t, e, n) {
var i = n(6);
i(i.P + i.R, "Map", {
toJSON: n(261)("Map")
})
},
function(t, e, n) {
var i = n(6),
o = n(118)(!1);
i(i.S, "Object", {
values: function(t) {
return o(t)
}
})
},
function(t, e, n) {
var i = n(244),
o = n(78)("toStringTag"),
r = "Arguments" == i(function() {
return arguments
} ()),
a = function(t, e) {
try {
return t[e]
} catch(t) {}
};
t.exports = function(t) {
var e, n, s;
return void 0 === t ? "Undefined": null === t ? "Null": "string" == typeof(n = a(e = Object(t), o)) ? n: r ? i(e) : "Object" == (s = i(e)) && "function" == typeof e.callee ? "Arguments": s
}
},
function(t, e, n) {
var i = n(244);
t.exports = Object("z").propertyIsEnumerable(0) ? Object: function(t) {
return "String" == i(t) ? t.split("") : Object(t)
}
},
function(t, e) {
e.f = {}.propertyIsEnumerable
},
function(t, e, n) {
var i = n(60),
o = n(229),
r = n(78)("species");
t.exports = function(t, e) {
var n, a = i(t).constructor;
return void 0 === a || void 0 == (n = i(a)[r]) ? e: o(n)
}
},
, ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.attributePart = "\n\tattribute vec2 a_Positions;\n\tattribute vec3 a_InstanceTrans;\n\tattribute vec4 a_InstanceCoords;\n\tattribute vec4 a_InstanceTextBounds;\n\tattribute vec4 a_InstanceInfo;\n",
e.uniformPart = "\n\tuniform mat4 u_matrix;\n\tuniform vec2 u_resolution;\n\tuniform float u_fadeChange;\n\tuniform vec2 u_InstanceTileTextureOffset;\n\tuniform vec2 u_iconTextureResolution;\n\tuniform vec2 u_textTextureResolution;\n\tuniform float u_showPoint;\n\tuniform float u_showLabel;\n\tuniform float u_mapScale;\n",
e.varyingPart = "\n\tvarying vec2 v_TexCoord;\n\tvarying float v_isShow;\n\tvarying float v_isIcon;\n\tvarying float v_opacity;\n\tvarying vec4 v_ndcCoord;\n",
e.filterPart = "\nfloat getFilterOpacity(float opacity, float type) {\n\treturn mix(\n\t\tmix(0.0, opacity, u_showPoint),\n\t\tmix(0.0, opacity, u_showLabel),\n\t\ttype\n\t);\n}\n",
e.projectScreenPart = "\nvec2 project(vec4 device) {\n vec3 device_normal = device.xyz / device.w;\n vec2 clip_pos = (device_normal * 0.5 + 0.5).xy;\n return clip_pos * u_resolution;\n}\n\nvec4 unproject(vec2 screen, float z, float w) {\n vec2 clip_pos = screen / u_resolution;\n vec2 device_normal = clip_pos * 2.0 - 1.0;\n return vec4(device_normal * w, z, w);\n}\n",
e.glPositionPart = "\n\t\tvec4 center_proj = u_matrix * vec4(transCoord, 0., 1.);\n\t\tvec2 center_screen = project(center_proj);\n \n\t\tfloat s_rotate = a_InstanceInfo.x;\n\t\tfloat angle_sin = sin(s_rotate);\n float angle_cos = cos(s_rotate);\n\t\tmat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n \n\t\tvec2 positions = a_Positions * 0.5 + 0.5;\n\t\tvec2 corner_screen = rotation_matrix * vec2(\n\t\t\t(a_InstanceCoords.x * positions.x - a_InstanceCoords.z) * u_mapScale,\n\t\t\t(a_InstanceCoords.y * (positions.y - 1.0) + a_InstanceCoords.w) * u_mapScale\n\t\t) + center_screen.xy;\n\t\tvec4 corner_proj = unproject(corner_screen, center_proj.z, center_proj.w);\n\t\tgl_Position = corner_proj;\n\n\t\tv_ndcCoord = center_proj;\n",
e.glPositionCusPart = "\n\t\tvec4 center_proj = u_matrix * vec4(transCoord, 0., 1.);\n\t\tvec2 center_screen = project(center_proj);\n \n\t\tfloat s_rotate = a_InstanceInfo.x;\n\t\tfloat angle_sin = sin(s_rotate);\n float angle_cos = cos(s_rotate);\n\t\tmat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n \n\t\tvec2 positions = a_Positions * 0.5 + 0.5;\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\tvec2 corner_screen = rotation_matrix * vec2(\n\t\t\t(a_InstanceCoords.x * positions.x - a_InstanceCoords.z) * u_mapScale * mix(1.0 , a_InstanceStrentchinglens.x , a_InstanceInfo.z),\n\t\t\t(a_InstanceCoords.y * (positions.y - 1.0) + a_InstanceCoords.w) * mix(1.0 , a_InstanceStrentchinglens.y , a_InstanceInfo.z) * u_mapScale\n\t\t) + center_screen.xy;\n\t\tvec4 corner_proj = unproject(corner_screen, center_proj.z, center_proj.w);\n\t\tgl_Position = corner_proj;\n\t\t\n\t\tv_ndcCoord = center_proj;\n",
e.fragPart = "\n\tuniform sampler2D u_SamplerMask;\n\tuniform sampler2D u_SamplerText;\n\tuniform sampler2D u_SamplerIcon;\n\tuniform float u_asbackground;\n\tuniform float u_maskScale;\n",
e.maskPart = "\n\tvec2 v_texCoord = (v_ndcCoord.xy / v_ndcCoord.w * u_maskScale + 1.0) / 2.0;\n\t\n\tfloat maskCull = texture2D(u_SamplerMask, v_texCoord).r;\n\tfloat clipCull = texture2D(u_SamplerMask, v_texCoord).g;\n\tfloat isCulledByMask = step(0.99, clipCull) * step(maskCull, 0.1);\n\t\n\t\n\t\n\t\n"
},
, , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(23),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = o.
default.highQualityRender
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = t.getSouthWest(),
n = t.getNorthEast(),
i = t.getSouthEast();
return [n, t.getNorthWest(), e, i]
}
function r(t, e, n) {
var i = (0, u.latLngToMercator)(t);
return [new f.
default(e / 2, n / 2), new f.
default(e / 2, -n / 2), new f.
default( - e / 2, -n / 2), new f.
default( - e / 2, n / 2)].map(function(t) {
return t.x = i.x + t.x,
t.y = i.y + t.y,
(0, u.mercatorToLatLng)(t)
})
}
function a(t) {
return (0, l.
default)(t)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.getBoundsPath = o,
e.getRectanglePath = r;
var s = n(277),
l = i(s),
u = n(112),
c = n(74),
f = i(c);
e.
default = a
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
var i = "highlightRegion" === t ? T: 983040 & t,
o = n[i] && n[i][t];
return o ? f(o, e) : k[t] ? k[t] : null
}
function r(t) {
var e = {};
return e[T] = a(t.regionStyles),
e[A] = s(t.labelStyles),
e[E] = l(t.lineStyles),
e[w] = u(t.pointStyles),
e[P] = c(t.arrowStyles),
e[T].highlightRegion = [{
minScale: 16,
maxScale: 22,
fillStyle: "rgba(0, 0, 0, 0.1)",
strokeStyle: "#888888",
lineWidth: .5
}],
e
}
function a(t) {
var e = {};
return (0, h.
default)(t).forEach(function(n) {
e[n] = {},
e[n] = t[n].map(function(t) {
return {
minScale: t.minScaleVal,
maxScale: t.maxScaleVal,
topStyle: (0, b.convertColorToHex)(t.top_color),
bottomStyle: (0, b.convertColorToHex)(t.bottom_color),
insideStyle: (0, b.convertColorToHex)(t.bottom_color),
outsideStyle: (0, b.convertColorToHex)(t.outside_color),
lineWidth: t.sidewidth
}
})
}),
e
}
function s(t) {
var e = {};
return (0, h.
default)(t).forEach(function(n) {
e[n] = {},
e[n] = t[n].map(function(t) {
var e = (0, b.getFontStyle)(t.effect),
n = (0, b.getFontWeight)(),
i = t.font_size,
o = (0, b.getFontFamily)(t.font_name);
return {
minScale: t.minScaleVal,
maxScale: t.maxScaleVal,
effect: t.effect,
font: e + " " + n + " " + i + "px " + o,
fontStyle: e,
fontWeight: n,
fontSize: i,
fontFamily: o,
fillStyle: (0, b.convertColorToHex)(t.font_color),
strokeStyle: (0, b.convertColorToHex)(t.background_color),
lineWidth: t.effect_size
}
})
}),
e
}
function l(t) {
var e = {};
return (0, h.
default)(t).forEach(function(n) {
e[n] = {},
e[n] = t[n].map(function(t) {
return {
minScale: t.minScaleVal,
maxScale: t.maxScaleVal,
fillStyle: (0, b.convertColorToHex)(t.color_fill),
fillWidth: t.width,
fillLineCap: "round",
fillLineJoin: "bevel",
strokeStyle: (0, b.convertColorToHex)(t.color_side),
strokeWidth: t.sidewidth,
strokeLineCap: "butt",
strokeLineJoin: "bevel"
}
})
}),
e
}
function u(t) {
var e = {};
return (0, h.
default)(t).forEach(function(n) {
e[n] = {},
e[n] = t[n].map(function(t) {
return {
minScale: t.minScaleVal,
maxScale: t.maxScaleVal,
icon_offset: t.icon_offset,
labelid: t.labelid,
density: t.density
}
})
}),
e
}
function c() {
return {}
}
function f(t, e) {
var n = null;
return t.some(function(t) {
return n = t,
e >= t.minScale && e <= t.maxScale || 22 === e && 21 === t.maxScale
}) && n || null
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.IndoorStyleMap = e.customStyle = e.ARROW_NUM = e.LABEL_NUM = e.REGION_NUM = e.LINE_NUM = e.POINT_NUM = void 0;
var d = n(17),
h = i(d),
v = n(148),
p = i(v),
_ = n(0),
m = i(_),
g = n(1),
y = i(g);
e.getStyle = o;
var x = n(646),
b = n(647),
S = null,
w = e.POINT_NUM = 65536,
E = e.LINE_NUM = 131072,
T = e.REGION_NUM = 196608,
A = e.LABEL_NUM = 262144,
P = e.ARROW_NUM = 327680,
I = r(x.STYLE),
k = e.customStyle = {};
e.IndoorStyleMap = function() {
function t() { (0, m.
default)(this, t),
this.styleMap = new p.
default,
this.styleMap.set("default", I)
}
return (0, y.
default)(t, [{
key: "set",
value: function(t, e) {
var n = r(e);
this.styleMap.set(t, n)
}
},
{
key: "get",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "default";
return this.has(t) ? this.styleMap.get(t) : this.styleMap.get("default")
}
},
{
key: "has",
value: function(t) {
return this.styleMap.has(t)
}
},
{
key: "getFeatureStyle",
value: function(t, e, n) {
return o(t, e, this.get(n))
}
}], [{
key: "getInstance",
value: function() {
return null === S && (S = new t),
S
}
}]),
t
} ()
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return t.reduce(function(t, e) {
return t + y.getVertexCount(e)
},
0)
}
function r(t) {
return t.reduce(function(t, e) {
return t + y.getTriangleCount(e)
},
0)
}
function a(t) {
var e = new Array(t.length + 1);
e[0] = 0;
var n = 0;
return t.forEach(function(t, i) {
n += y.getVertexCount(t),
e[i + 1] = n
}),
e
}
function s(t) {
var e = t.complexPolygons,
n = t.IndexType,
i = void 0 === n ? Uint32Array: n,
o = 3 * r(e),
s = a(e),
l = new i(o),
u = 0;
return e.forEach(function(t, e) {
var n = y.getSurfaceIndices(t, i),
o = !0,
r = !1,
a = void 0;
try {
for (var c, f = (0, h.
default)(n); ! (o = (c = f.next()).done); o = !0) {
var d = c.value;
l[u] = d + s[e],
u += 1
}
} catch(t) {
r = !0,
a = t
} finally {
try { ! o && f.
return && f.
return ()
} finally {
if (r) throw a
}
}
}),
l
}
function l(t) {
var e = t.cache,
n = e.positions,
i = e.positions64xyLow,
o = e.vertexValid,
r = t.complexPolygons,
a = t.fp64,
s = 0;
r.forEach(function(t) {
t.forEach(function(t) {
t.forEach(function(t) {
t.forEach(function(t) {
var e = t.lng,
o = t.lat,
r = t.z || 0;
n[3 * s] = e,
n[3 * s + 1] = o,
n[3 * s + 2] = r,
a && (i[2 * s] = (0, S.fp64LowPart)(e), i[2 * s + 1] = (0, S.fp64LowPart)(o)),
s += 1
}),
o[s - 1] = 0
})
})
})
}
function u(t) {
var e = t.cache,
n = t.complexPolygons,
i = t.pointCount,
o = t.getElevation,
r = e || new Float32Array(i),
a = 0;
return n.forEach(function(t, e) {
var n = o(e),
i = y.getVertexCount(t);
E({
target: r,
source: [n],
start: a,
count: i
}),
a += i
}),
r
}
function c(t) {
var e = t.cache,
n = t.complexPolygons,
i = t.pointCount,
o = t.getColor,
r = e || new Uint8ClampedArray(4 * i),
a = 0;
return n.forEach(function(t, e) {
var n = o(e);
isNaN(n[3]) && (n[3] = 255);
var i = y.getVertexCount(t);
E({
target: r,
source: n,
start: a,
count: i
}),
a += n.length * i
}),
r
}
function f(t) {
var e = t.complexPolygons,
n = t.pointCount,
i = new Uint8ClampedArray(3 * n),
o = 0;
return e.forEach(function(t, e) {
var n = (0, w.encodePickingColor)(e),
r = y.getVertexCount(t);
E({
target: i,
source: n,
start: o,
count: r
}),
o += n.length * r
}),
i
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.PolygonParseHelper = void 0;
var d = n(27),
h = i(d),
v = n(0),
p = i(v),
_ = n(1),
m = i(_),
g = n(298),
y = function(t) {
if (t && t.__esModule) return t;
var e = {};
if (null != t) for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
return e.
default = t,
e
} (g),
x = n(237),
b = i(x),
S = n(139),
w = n(240),
E = b.
default.fillArray,
T = [0, 0, 0, 255];
e.PolygonParseHelper = function() {
function t(e) {
var n = e.complexPolygons,
i = e.IndexType; (0, p.
default)(this, t),
n = n.map(function(t) {
return y.normalize(t)
});
var r = o(n);
this.complexPolygons = n,
this.pointCount = r,
this.IndexType = i,
this.attributes = {
pickingColors: f({
complexPolygons: n,
pointCount: r
})
}
}
return (0, m.
default)(t, [{
key: "updatePositions",
value: function(t) {
var e = t.fp64,
n = t.extruded;
e = !0;
var i = this.attributes,
o = this.complexPolygons,
r = this.pointCount;
i.positions = i.positions || new Float32Array(3 * r),
i.vertexValid = i.vertexValid || new Uint8ClampedArray(r).fill(1),
e && (i.positions64xyLow = i.positions64xyLow || new Float32Array(2 * r)),
l({
cache: i,
complexPolygons: o,
extruded: n,
fp64: e
})
}
},
{
key: "getIndices",
value: function() {
return s({
complexPolygons: this.complexPolygons,
IndexType: this.IndexType
})
}
},
{
key: "getPositions",
value: function() {
return this.attributes.positions
}
},
{
key: "getPositions64xyLow",
value: function() {
return this.attributes.positions64xyLow
}
},
{
key: "getVertexValid",
value: function() {
return this.attributes.vertexValid
}
},
{
key: "getElevations",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.key,
n = void 0 === e ? "elevations": e,
i = t.getElevation,
o = void 0 === i ?
function() {
return 100
}: i,
r = this.attributes,
a = this.complexPolygons,
s = this.pointCount,
l = u({
cache: r[n],
complexPolygons: a,
pointCount: s,
getElevation: o
});
return r[n] = l,
l
}
},
{
key: "getColors",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.key,
n = void 0 === e ? "colors": e,
i = t.getColor,
o = void 0 === i ?
function() {
return T
}: i,
r = this.attributes,
a = this.complexPolygons,
s = this.pointCount,
l = c({
cache: r[n],
complexPolygons: a,
pointCount: s,
getColor: o
});
return r[n] = l,
l
}
},
{
key: "getPickingColors",
value: function() {
return this.attributes.pickingColors
}
}]),
t
} ()
},
, , ,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
var t = ["position:absolute;", "left:0;", "top:0;", "overflow:hidden;", "z-index:1000;", "width:100%;", "height:100%;"],
e = document.createElement("div");
e.style.cssText = t.join("");
var n = document.createElement("div");
return n.style.cssText = "left:0;top:0;z-index:101;",
e.appendChild(n),
{
root: e,
childs: {
domOverlayLayer: n
}
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(223),
a = i(r),
s = n(140),
l = i(s),
u = n(113),
c = i(u),
f = n(17),
d = i(f),
h = n(16),
v = i(h),
p = n(3),
_ = i(p),
m = n(0),
g = i(m),
y = n(1),
x = i(y),
b = n(5),
S = i(b),
w = n(4),
E = i(w),
T = n(775),
A = i(T),
P = n(747),
I = i(P),
k = n(735),
L = i(k),
M = n(627),
C = i(M),
R = n(248),
B = n(629),
N = i(B),
O = n(472),
D = i(O),
z = n(474),
F = i(z),
V = n(473),
Y = i(V),
U = n(294),
j = n(376),
G = n(726),
Z = n(43),
H = n(399),
W = i(H),
X = n(23),
Q = i(X),
q = n(105),
K = i(q),
J = n(637),
$ = i(J),
tt = n(736),
et = i(tt),
nt = n(112),
it = n(29),
ot = n(41),
rt = i(ot),
at = n(137),
st = n(304),
lt = n(663),
ut = i(lt),
ct = n(486),
ft = i(ct),
dt = n(143),
ht = n(794),
vt = n(750),
pt = n(660),
_t = n(28),
mt = n(463),
gt = n(630),
yt = n(106),
xt = n(47),
bt = n(209),
St = n(74),
wt = n(10),
Et = rt.
default.isString,
Tt = rt.
default.isUndefined,
At = rt.
default.isBoolean,
Pt = rt.
default.isNumber,
It = rt.
default.isObject,
kt = {
center: new xt(39.88795, 116.49369),
zoom: 13,
minZoom: Q.
default.minZoom,
maxZoom: Q.
default.maxZoom,
minPitch: Q.
default.minPitch,
maxPitch: Q.
default.maxPitch,
rotation: 0,
pitch: 0,
scale: 1,
offset: {
x: 0,
y: 0
},
draggable: !0,
scrollable: !0,
pitchable: !0,
rotatable: !0,
doubleClickZoom: !0,
mapZoomType: st.MAP_ZOOM_TYPE.DEFAULT,
viewMode: at.VIEW_MODE.MAP_3D,
mapStyleId: "DEFAULT",
showControl: !0,
enableExtendZoom: !1
},
Lt = _t.isLowMobileDevice() ? 30 : 55,
Mt = wt.uniqueId(),
Ct = function(t) {
function e(t, n) { (0, g.
default)(this, e);
var i = (0, S.
default)(this, (e.__proto__ || (0, _.
default)(e)).call(this)),
o = Date.now();
n = wt.extend({},
kt, n),
n.heading = 360 - n.rotation;
var r = n,
a = r.minZoom,
s = r.maxZoom,
l = r.minPitch,
u = r.maxPitch;
if ("number" == typeof a ? n.minZoom = Math.max(a, Q.
default.minZoom):
(new it.ClassTypeError("MapOptions的minZoom参数", "Number", a).warn(), n.minZoom = Q.
default.minZoom), "number" == typeof s) if (n.enableExtendZoom) {
if (s > Q.
default.maxZoom) {
var c = Math.min(s, 25);
Q.
default.maxZoom = c,
n.maxZoom = c
}
} else n.maxZoom = Math.min(n.maxZoom, Q.
default.maxZoom);
else new it.ClassTypeError("MapOptions的maxZoom参数", "Number", s).warn(),
n.maxZoom = Q.
default.maxZoom;
"number" == typeof l ? n.minPitch = Math.max(l, Q.
default.minPitch):
(new it.ClassTypeError("MapOptions的minPitch参数", "Number", l).warn(), n.minPitch = Q.
default.minPitch),
"number" == typeof u ? n.maxPitch = Math.min(u, Q.
default.maxPitch):
(new it.ClassTypeError("MapOptions的maxPitch参数", "Number", u).warn(), n.maxPitch = Q.
default.maxPitch),
i._destroyed = !1,
i._glContextLost = !1,
i.drawContainer = Et(t) ? document.getElementById(t) : t,
i._uniqueId = "map-" + i.drawContainer.id + "_" + wt.uniqueId(),
i._initContainer();
var f = n,
d = f.subkey,
h = f.subpid; (0, U.checkKey)(i.id, {
subkey: d,
subpid: h
}),
i.subkey = d,
i.subpid = h,
n.map = i;
var p = new A.
default(i.canvasContainer, n);
i.renderEngine = p,
i.drawManager = new vt(p),
i.transform = new ht(n, p),
i.transform._setEventedParent(i, null),
i.controlManager = new C.
default(i),
i.layerResource = new pt(n, i),
i.indoorManager = new $.
default({
map:
i
}),
i.OverseaManager = new et.
default({
map:
i
}),
i.fpsManager = new I.
default,
i.fpsManager.map = i,
i.fpsManager.setCallback(i._render.bind(i)),
i._shouldKeepHighFps = !1,
i._renderCallbackList = [],
(0, v.
default)(i, j.easableMixin),
(0, v.
default)(i, G.animatableMap),
wt.bindAll(["_onData", "_render"], i),
i._initListeners(),
i.jumpTo({
center: n.center,
zoom: n.zoom,
heading: n.heading || 0,
pitch: n.pitch || 0,
scale: n.scale || 0
}),
i.highFpsReferIndex = 0;
var m = p.getDrawContainer();
return i.resize(m.clientWidth, m.clientHeight),
i._update(),
i.handler = new mt(i, {
mapZoomType: n.mapZoomType
}),
i._bubbleMiddleware = new L.
default(i, i._checkFeaturePickingType(n)),
i.setDraggable(n.draggable),
i.setScrollable(n.scrollable),
i.setDoubleClickZoom(n.doubleClickZoom),
i.setViewMode(n.viewMode),
i.setShowControl(n.showControl),
i.dragRotate.setRotatable(n.rotatable),
i.dragRotate.setPitchable(n.pitchable),
i._initControls(),
i.enableAreaClip(n.clip),
(0, Z.minfo)({
zoom: n.zoom,
pitch: n.pitch,
rotation: n.rotation,
width: i.transform.width,
height: i.transform.height
}),
(0, Z.fps)(i),
(0, Z.frt)(i, o, _t.isPC() ? "pc": "mobile"),
(0, Z.ds)(i, _t.isLowMobileDevice(), _t.mobileSystem()),
i
}
return (0, E.
default)(e, t),
(0, x.
default)(e, [{
key: "_initListeners",
value: function() {
var t = this;
this._on("preload", this._preLoad),
this._on("data", this._onData),
this._on("data",
function(e) {
"metadata" === e.sourceDataType && t._update()
}),
_t.on(this, "layer,transit_end", this._update.bind(this, !1)),
this._on("move", _t.debounce(function() {
t._update()
},
10)),
this._on("tilesloaded", _t.debounce(function() {
t._update()
},
250)),
_t.on(this, "movestart,transit_start",
function() {
t._changeFPS(Lt)
}),
_t.on(this, "data,moveend,transit_end", _t.debounce(function() {
t._destroyed || t._shouldKeepHighFps || t._changeFPS(6)
},
3e3)),
_t.on(this, "moveend,data_loaded", _t.debounce(function() {
t.renderEngine && t.layerResource && t.renderEngine.updateLabel(t.layerResource.getDrawLayers())
},
10)),
this.on("mapstyle_changed",
function(e) {
var n = e.styleId;
t.renderEngine.onMapStyleUpdate(n),
t.drawManager.resetGradualPlacement(),
t._update()
})
}
},
{
key: "resetRenderEngine",
value: function() {
this.renderEngine = new A.
default(this.canvasContainer, {})
}
},
{
key: "_changeFPS",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : Lt;
this.fpsManager.updateFPS(t)
}
},
{
key: "keepHighFps",
value: function(t) {
t ? this.highFpsReferIndex += 1 : this.highFpsReferIndex -= 1,
this.highFpsReferIndex = Math.max(this.highFpsReferIndex, 0),
this.highFpsReferIndex <= 0 ? this._shouldKeepHighFps = !1 : (this._changeFPS(Lt), this._shouldKeepHighFps = !0)
}
},
{
key: "setCenter",
value: function(t, e) {
return this.jumpTo({
center: t
},
e)
}
},
{
key: "getCenter",
value: function() {
return this.transform.center
}
},
{
key: "setZoom",
value: function(t, e) {
return this.jumpTo({
zoom: t
},
e),
this
}
},
{
key: "getZoom",
value: function() {
return this.transform && this.transform.zoom
}
},
{
key: "setPitch",
value: function(t, e) {
return this._viewMode !== at.VIEW_MODE.MAP_2D && this.getPitchable() ? (this.jumpTo({
pitch: t
},
e), this) : this
}
},
{
key: "setMaxZoom",
value: function(t, e) {
var n = this.transform;
return isNaN(t) || !Pt(t) ? (new it.BaseTypeError("maxZoom", "number", t).error(), this) : n.maxZoom === +t ? this: ( + t < n.minZoom || +t > Q.
default.maxZoom ? console.error("无法设置maxZoom,请检查maxZoom值是否大于" + Q.
default.maxZoom + "或小于当前minZoom。") : (n.zoom > t && this.jumpTo({
zoom: t
},
e), n.maxZoom = +t), this)
}
},
{
key: "setMinZoom",
value: function(t, e) {
var n = this.transform;
return isNaN(t) || !Pt(t) ? (new it.BaseTypeError("minZoom", "number", t).error(), this) : n.minZoom === +t ? this: ( + t > n.maxZoom || +t < Q.
default.minZoom ? console.error("无法设置minZoom,请检查minZoom值是否小于" + Q.
default.minZoom + "或大于当前maxZoom。") : (n.zoom < t && this.jumpTo({
zoom: t
},
e), n.minZoom = +t), this)
}
},
{
key: "setMaxPitch",
value: function(t, e) {
var n = this.transform;
return isNaN(t) || !Pt(t) ? (new it.BaseTypeError("maxPitch", "number", t).error(), this) : n.maxPitch === +t ? this: ( + t > n.maxPitch || +t > Q.
default.maxPitch ? console.error("无法设置maxPitch,请检查maxPitch值是否大于" + Q.
default.maxPitch + "或小于当前minPitch。") : (n.pitch > t && this.jumpTo({
pitch: t
},
e), n.maxPitch = +t), this)
}
},
{
key: "getPitch",
value: function() {
return this.transform.pitch
}
},
{
key: "getRoll",
value: function() {
return this.transform.roll
}
},
{
key: "setRoll",
value: function(t) {
this.transform.roll = t
}
},
{
key: "frequentEaseTo",
value: function(t) {
var e = this;
if (this._once("moveend",
function() {
e._easeToStore = null
}), !this.moving) return this._easeToStore = t,
void this.easeTo(t); (0, d.
default)(t).forEach(function(n) {
e._easeToStore[n] = t[n]
}),
this.easeTo(this._easeToStore)
}
},
{
key: "setPitchable",
value: function(t) {
return At(t) ? "2D" === this.getViewMode() || t === this.getPitchable() ? this: (t ? (this.dragRotate.setPitchable(!0), this.touchTilt.enable(), this.controlManager.setViewMode("3D")) : (this.frequentEaseTo({
pitch: 0
}), this.dragRotate.setPitchable(!1), this.touchTilt.disable(), this.controlManager.setViewMode("3D")), this) : (new it.BaseTypeError("setPitchable参数", "Boolean", t).error(), this)
}
},
{
key: "getPitchable",
value: function() {
return this.dragRotate.pitchable
}
},
{
key: "setRotatable",
value: function(t) {
return At(t) ? "2D" === this.getViewMode() || t === this.getRotatable() ? this: (t ? (this.dragRotate.setRotatable(!0), this.touchZoomRotate.enableRotation(), this.controlManager.setViewMode("3D")) : (this.frequentEaseTo({
rotation: 0
}), this.dragRotate.setRotatable(!1), this.touchZoomRotate.disableRotation(), this.controlManager.setViewMode("3D")), this) : (new it.BaseTypeError("setRotatable参数", "Boolean", t).error(), this)
}
},
{
key: "getRotatable",
value: function() {
return this.dragRotate.rotatable
}
},
{
key: "setScale",
value: function(t, e) {
return Pt(t) ? t <= 0 ? this: (this.jumpTo({
scale: t
},
e), this) : (new it.BaseTypeError("scale", "number", t).error(), this)
}
},
{
key: "getScale",
value: function() {
return this.transform.scale
}
},
{
key: "setOffset",
value: function(t) {
return It(t) && Pt(t.x) && Pt(t.y) ? (this.renderEngine.camera.setOffset(t), this.emit("offset_changed")) : new it.ClassTypeError("Map.offset", "Object:{x,y}", t).error(),
this
}
},
{
key: "getOffset",
value: function() {
return this.renderEngine.camera.offset
}
},
{
key: "setRotation",
value: function(t, e) {
return this._viewMode !== at.VIEW_MODE.MAP_2D && this.getRotatable() ? (this.jumpTo({
heading: 360 - t
},
e), this) : this
}
},
{
key: "getRotation",
value: function() {
return 360 - this.transform.heading
}
},
{
key: "getHeading",
value: function() {
return this.transform.heading
}
},
{
key: "getContainer",
value: function() {
return this.drawContainer
}
},
{
key: "getBounds",
value: function() {
return this.transform && this.transform.getBounds()
}
},
{
key: "getRenderContainer",
value: function() {
return this.renderEngine.getDrawContainer()
}
},
{
key: "setDraggable",
value: function(t) {
var e = t ? "enable": "disable";
return this.dragPan[e](),
this.dragRotate[e](),
this.longPress[e](),
this.draggable = !!t,
this
}
},
{
key: "getDraggable",
value: function() {
return this.draggable
}
},
{
key: "setScrollable",
value: function(t) {
var e = t ? "enable": "disable";
return this.scrollZoom[e](),
this
}
},
{
key: "getScrollable",
value: function() {
return this.scrollZoom.isEnabled()
}
},
{
key: "setDoubleClickZoom",
value: function(t) {
var e = t ? "enable": "disable";
return this.doubleClickZoom[e](),
this
}
},
{
key: "getDoubleClickZoom",
value: function() {
return this.doubleClickZoom.isEnabled()
}
},
{
key: "setBoundary",
value: function(t) {
return this.transform.boundary = t,
this._update(),
this
}
},
{
key: "getBoundary",
value: function() {
return this.transform.boundary
}
},
{
key: "getIndoorManager",
value: function() {
return this.indoorManager
}
},
{
key: "getLightManager",
value: function() {
return this.renderEngine.lightManager
}
},
{
key: "setViewMode",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : at.VIEW_MODE.MAP_3D,
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
if (t = String(t).toUpperCase(), this._viewMode === t) return this;
switch (t) {
case at.VIEW_MODE.MAP_2D:
this.easeTo({
pitch:
0,
heading: 0,
roll: 0
},
e),
this.dragRotate.disable(),
this.touchZoomRotate.disableRotation(),
this.touchTilt.disable();
break;
default:
if (new it.EnumError("viewMode", [at.VIEW_MODE.MAP_2D, at.VIEW_MODE.MAP_3D, at.VIEW_MODE.SPHERE], t).error(), !Tt(this.getViewMode())) return this;
t = at.VIEW_MODE.MAP_3D;
case at.VIEW_MODE.SPHERE:
case at.VIEW_MODE.MAP_3D:
this.draggable && (this.dragRotate.enable(), this.touchZoomRotate.enableRotation(), this.touchTilt.enable())
}
return this.controlManager.setViewMode(t),
this.transform.transitTo(t, e),
this._viewMode = t,
this
}
},
{
key: "getViewMode",
value: function() {
return this._viewMode
}
},
{
key: "getBaseMap",
value: function() {
return this.layerResource.baseMap
}
},
{
key: "setBaseMap",
value: function(t) {
this.layerResource.baseMap = t;
var e = this.getControl(Mt);
return e && e.updateMapAppNum(this.layerResource.hasSatellite()),
this
}
},
{
key: "setMapStyleId",
value: function(t) {
return t && Et(t) ? this.layerResource.setMapStyleId(t) : console.error("传入的mapStyleId有误" + t),
this
}
},
{
key: "setMapStyleConfig",
value: function(t) {
return It(t) ? "{}" === (0, c.
default)(t) ? (console.error("setMapStyleConfig传入的参数为空对象"), this) : (this.layerResource.setMapStyleConfig(t), this) : (new it.BaseTypeError("StyleConfig", "object", t).error(), this)
}
},
{
key: "getShowControl",
value: function() {
return this._showControl
}
},
{
key: "setShowControl",
value: function(t) {
this._showControl = t
}
},
{
key: "getControl",
value: function(t) {
return this.controlManager.getControl(t)
}
},
{
key: "removeControl",
value: function(t) {
return this.controlManager.removeControl(t),
this
}
},
{
key: "addControl",
value: function(t) {
return this.controlManager.addControl(t),
this
}
},
{
key: "panTo",
value: function(t, e, n) {
return this.easeTo({
center: t
},
e, n)
}
},
{
key: "panBy",
value: function(t, e, n) {
return t = St.convert(t).mult( - 1),
this.panTo(this.transform.center, wt.extend({
offset: t
},
e), n)
}
},
{
key: "flyTo",
value: function() {}
},
{
key: "zoomBy",
value: function(t, e, n) {
var i = this.getZoom() + t,
o = this.transform;
i = Math.max(Math.min(i, o.maxZoom), o.minZoom),
this.zoomTo(i, e, n)
}
},
{
key: "zoomTo",
value: function(t, e, n) {
return this.easeTo({
zoom: t
},
e, n)
}
},
{
key: "rotateTo",
value: function(t, e, n) {
return this.easeTo({
rotation: t
},
e, n)
}
},
{
key: "headTo",
value: function(t, e, n) {
return this.easeTo({
heading: t
},
e, n)
}
},
{
key: "pitchTo",
value: function(t, e) {
return this.easeTo({
pitch: t
},
e)
}
},
{
key: "naviTo",
value: function(t, e, n, i) {
return this.easeTo({
heading: e,
center: t
},
wt.extend({
isMatrix: !1
},
n), i)
}
},
{
key: "jumpTo",
value: function(t, e) {
this.stopMoving();
var n = this.transform,
i = !1,
o = !1,
r = !1,
a = !1,
s = !1;
return "zoom" in t && n.zoom !== +t.zoom && ((0, l.
default)( + t.zoom) ? new it.BaseTypeError("zoom", "number", t.zoom).error() : (i = !0, n.zoom = +t.zoom)),
"center" in t && (n.center = xt.convert(t.center), a = !0),
"heading" in t && n.heading !== +t.heading && (o = !0, n.heading = +t.heading),
"pitch" in t && n.pitch !== +t.pitch && (r = !0, n.pitch = +t.pitch),
"roll" in t && n.roll !== +t.roll && (s = !0, n.roll = +t.roll),
"scale" in t && n.scale !== t.scale && (n.scale = t.scale),
this._fire("movestart", e)._fire("move", e),
i && this._fire("zoomstart", e)._fire("zoom", e)._fire("zoomend", e),
o && this._fire("rotate", e),
r && this._fire("pitchstart", e)._fire("pitch", e)._fire("pitchend", e),
s && this._fire("rollstart", e)._fire("roll", e)._fire("rollend", e),
a && this._fire("panstart", e)._fire("pan", e)._fire("panend", e),
this._fire("moveend", e)
}
},
{
key: "easeTo",
value: function(t) {
var e = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
i = arguments[2];
this.stopMoving(),
n = wt.extend({
offset: [0, 0],
duration: 500,
easing: wt.ease
},
n),
!1 === n.animate && (n.duration = 0);
var o = this.transform,
r = this.getZoom(),
a = this.getHeading(),
s = this.getPitch(),
l = this.getRoll(),
u = this.getCenter(),
c = r,
f = a,
d = s,
h = l;
Pt(t.zoom) ? c = t.zoom: Tt(t.zoom) || new it.BaseTypeError("mapStatus.zoom", "number", t.zoom).error(),
Pt(t.rotation) ? f = this._normalizeHeading(360 - t.rotation, a) : Tt(t.rotation) || new it.BaseTypeError("mapStatus.rotation", "number", t.rotation).error(),
Pt(t.heading) && (f = this._normalizeHeading(t.heading, a)),
Pt(t.pitch) ? d = t.pitch: Tt(t.pitch) || new it.BaseTypeError("mapStatus.pitch", "number", t.pitch).error(),
Pt(t.roll) ? h = t.roll: Tt(t.roll) || new it.BaseTypeError("mapStatus.roll", "number", t.roll).error();
var v = null,
p = null;
n.around && (v = n.around, p = this.projectToContainer(v));
var _ = this.projectToContainer(u),
m = St.convert(n.offset),
g = xt.convert(t.center || u);
this._normalizeCenter(g);
var y = o.latLngToCoord(u),
x = o.latLngToCoord(g),
b = x.sub(y),
S = o.zoomScale(c - r);
return this.zooming = c !== r && c <= o.maxZoom && c >= o.minZoom,
this.rotating = a !== f,
this.pitching = d !== s,
this.panning = 0 !== b.add(m).length(),
this.rolling = l !== h,
this._viewMode === at.VIEW_MODE.MAP_2D && (this.rotating = !1, this.pitching = !1, this.rolling = !1),
this.zooming + this.rotating + this.pitching + this.rolling + this.panning ? (this._prepareMoving(i, n.noMoveStart), clearTimeout(this._onEaseEnd), this._ease(function(t) {
if (this.zooming && (o.zoom = (0, W.
default)(r, c, t)), this.rotating && (o.heading = (0, W.
default)(a, f, t)), this.pitching && (o.pitch = (0, W.
default)(s, d, t)), this.rolling && (o.roll = (0, W.
default)(l, h, t)), n.around) o.setLocationAtPoint(v, p);
else {
var e = o.zoomScale(o.zoom - r),
u = c > r ? Math.min(2, S) : Math.max(.5, S),
g = Math.pow(u, 1 - t),
x = b.mult(t * g),
w = _.add(m.mult(t * g)),
E = o.coordToLatLng(y.add(x).mult(e), o.zoom);
o.setLocationAtPoint(E, w)
}
this._fireMoveEvents(i)
},
function() {
n.delayEndEvents ? e._onEaseEnd = setTimeout(function() {
return e._moveToEnd(i)
},
n.delayEndEvents) : e._moveToEnd(i)
},
function() {
e._moveToEnd(i, !0)
},
n), this) : this
}
},
{
key: "getNonStopRotate",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1,
n = arguments[1];
if (!this.rotateTickTimer) {
this.rotating = !0;
var i = this.transform;
this.rotateTickTimer = function(o) {
t.isRotateAnimationRunning && ( - 1 === o ? i.heading -= .8 * e: i.heading += .8 * e, _t.frame(t.rotateTickTimer.bind(t, o)), t._fireMoveEvents(n))
}
}
return {
begin: function(e) {
t._prepareMoving(n),
t.rotating = !0,
t.isRotateAnimationRunning = !0,
t.rotateTickTimer(e)
},
cancel: function() {
t.isRotateAnimationRunning && (t._moveToEnd(n), t.isRotateAnimationRunning = !1)
}
}
}
},
{
key: "getNonStopPitch",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1,
n = arguments[1];
if (!this.pitchTickTimer) {
this.pitching = !0;
var i = this.transform;
this.pitchTickTimer = function(o) {
t.isPitchAnimationRunning && ( - 1 === o ? i.pitch -= .8 * e: i.pitch += .8 * e, _t.frame(t.pitchTickTimer.bind(t, o)), t._fireMoveEvents(n))
}
}
return {
begin: function(e) {
t._prepareMoving(n),
t.isPitchAnimationRunning = !0,
t.pitching = !0,
t.pitchTickTimer(e)
},
cancel: function() {
t.isPitchAnimationRunning && (t.pitching = !1, t._moveToEnd(n), t.isPitchAnimationRunning = !1)
}
}
}
},
{
key: "_prepareMoving",
value: function(t, e) {
this.moving = !0,
e || (this._fire("movestart", t), this.zooming && this._fire("zoomstart", t), this.rotating && this._fire("rotatestart", t), this.pitching && this._fire("pitchstart", t), this.panning && this._fire("panstart", t))
}
},
{
key: "_fireMoveEvents",
value: function(t) {
this._fire("move", t),
this.zooming && this._fire("zoom", t),
this.rotating && this._fire("rotate", t),
this.pitching && this._fire("pitch", t),
this.panning && this._fire("pan", t)
}
},
{
key: "_moveToEnd",
value: function(t, e) {
var n = this.zooming,
i = this.rotating,
o = this.pitching,
r = this.panning;
this.moving = !1,
this.zooming = !1,
this.rotating = !1,
this.pitching = !1,
this.panning = !1,
n && this._fire(e ? "zoomcancel": "zoomend", t),
i && this._fire(e ? "rotatecancel": "rotateend", t),
o && this._fire(e ? "pitchcancel": "pitchend", t),
r && this._fire(e ? "pancancel": "panend", t),
this._fire(e ? "movecancel": "moveend", t)
}
},
{
key: "resetNorth",
value: function(t, e) {
return this.rotateTo(0, wt.extend({
duration: 1e3
},
t), e),
this
}
},
{
key: "snapToNorth",
value: function(t, e) {
return Math.abs(this.getHeading()) < 7 ? this.resetNorth(t, e) : this
}
},
{
key: "fitBounds",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
if (! (t && t instanceof bt)) return new it.ClassTypeError("Map.fitBounds的bounds参数", "LatLngBounds", t).error(),
this;
var n = e.minZoom,
i = void 0 === n ? this.transform.minZoom: n,
o = e.maxZoom,
r = void 0 === o ? this.transform.maxZoom: o,
a = e.animate,
s = void 0 === a || a,
l = e.ease,
u = void 0;
if (Pt(e.padding)) {
var c = e.padding;
u = {
top: c,
bottom: c,
right: c,
left: c
}
} else u = (0, v.
default)({
top:
0,
bottom: 0,
right: 0,
left: 0
},
e.padding);
if (!wt.deepEqual((0, d.
default)(u).sort(function(t, e) {
return t < e ? -1 : t > e ? 1 : 0
}), ["bottom", "left", "right", "top"])) return void wt.warnOnce("FitBoundsOptions.padding must be a positive number, or an Object with keys 'bottom', 'left', 'right', 'top'");
t = bt.convert(t);
var f = u,
h = f.top,
p = f.bottom,
_ = f.left,
m = f.right,
g = [(_ - m) / 2, (h - p) / 2],
y = St.convert(g),
x = this.transform,
b = x.latLngToCoord(t.getNorthWest()),
S = x.latLngToCoord(t.getSouthEast()),
w = x._minZoom,
E = x.coordToLatLng(b.add(S).div(2));
if (0 === x.pitch) {
var T = S.sub(b),
A = (x.width - m - _) / T.x,
P = (x.height - h - p) / T.y;
if (P < 0 || A < 0) return wt.warnOnce("传入参数无效导致map无法进行fitBounds操作"),
this;
w = x.scaleZoom(x.scrollScale * Math.min(A, P))
} else w = this._getZoomByBounds(t, {
padding: u
});
w = Math.max(Math.min(w, r), i);
var I = {
center: E,
zoom: w,
heading: 0
};
return s ? this.easeTo(I, (0, v.
default)({
offset:
y
},
l)) : this.jumpTo(I),
this
}
},
{
key: "_getZoomByBounds",
value: function(t, e) {
var n = e.padding,
i = n.top,
o = n.bottom,
r = n.left,
a = n.right,
s = [(r - a) / 2, (i - o) / 2],
l = St.convert(s),
u = this.transform,
c = u._minZoom,
f = u._maxZoom,
d = u._minPitch,
h = u._maxPitch,
v = u._fov,
p = u.width,
_ = u.height,
m = u.zoom,
g = u.tileZoom,
y = u._center,
x = u._pitch,
b = u._roll,
S = u._scale,
w = u.viewTransition,
E = u._boundary,
T = {
minZoom: c,
maxZoom: f,
minPitch: d,
maxPitch: h,
fov: v,
width: p,
height: _,
zoom: m,
tileZoom: g,
center: y,
pitch: x,
roll: b,
scale: S,
viewTransition: w,
boundary: E,
heading: 0
},
A = x / Math.PI * 180,
P = b / Math.PI * 180;
this.renderEngine.camera.setRotate(A, 0, P);
var I = new ht(T, this.renderEngine),
k = c,
L = c,
M = f,
C = !1,
R = this._getCenterByBounds(t),
B = {
x: p / 2,
y: _ / 2
};
for (B.x = B.x + l.x, B.y = B.y + l.y; M - L > .001;) {
k = (L + M) / 2,
I.zoom = k,
I.setLocationAtPoint(R, B);
var N = I.latLngToScreen(t.getNorthWest()),
O = I.latLngToScreen(t.getSouthEast()),
D = I.latLngToScreen(t.getSouthWest()),
z = I.latLngToScreen(t.getNorthEast()),
F = Math.min.apply(null, [N.x, O.x, D.x, z.x]),
V = Math.max.apply(null, [N.x, O.x, D.x, z.x]),
Y = Math.min.apply(null, [N.y, O.y, D.y, z.y]),
U = Math.max.apply(null, [N.y, O.y, D.y, z.y]);
F > r && Y > i && V < p - a && U < _ - o ? (C = !0, L = k) : (M = k, C = !1)
}
return C || (k = L),
k
}
},
{
key: "_getCenterByBounds",
value: function(t) {
var e = this.transform,
n = e.latLngToCoord(t.getNorthWest()),
i = e.latLngToCoord(t.getSouthEast());
return e.coordToLatLng(n.add(i).div(2))
}
},
{
key: "getZoomByBounds",
value: function(t) {
var e = this.transform,
n = e.latLngToCoord(t.getNorthWest()),
i = e.latLngToCoord(t.getSouthEast()),
o = i.sub(n),
r = e.width / o.x,
a = e.height / o.y;
return a < 0 || r < 0 ? void wt.warnOnce("bounds error!") : Math.min(e.scaleZoom(e.scrollScale * Math.min(r, a)), e.maxZoom)
}
},
{
key: "stopMoving",
value: function() {
return this.stopEase(),
this.stopAnimation(),
this
}
},
{
key: "stopEase",
value: function() {
return this._abortFn && (this._abortFn(), this._finishEase()),
this
}
},
{
key: "getSource",
value: function(t) {
return this.layerResource.getSource(t)
}
},
{
key: "addSource",
value: function(t, e) {
this.layerResource.addSource(t, e)
}
},
{
key: "removeSource",
value: function(t) {
this.layerResource.removeSource(t)
}
},
{
key: "addLayer",
value: function(t) {
this.layerResource.addLayer(t)
}
},
{
key: "removeLayer",
value: function(t) {
this.layerResource.removeLayer(t)
}
},
{
key: "moveLayer",
value: function(t, e) {
return this.layerResource.moveLayer(t, e),
this
}
},
{
key: "getLayer",
value: function(t) {
return this.layerResource.getLayer(t)
}
},
{
key: "findLayer",
value: function(t) {
return this.layerResource.findLayer(t)
}
},
{
key: "addVisualPlugin",
value: function(t) {
this.layerResource.addVisualPlugin(t),
this._update()
}
},
{
key: "removeVisualPlugin",
value: function(t) {
this.layerResource.removeVisualPlugin(t),
this._update()
}
},
{
key: "indoorStateChange",
value: function(t, e) {
this.layerResource.updateIndoorData(t, e)
}
},
{
key: "unprojectFromContainer",
value: function(t) {
return t instanceof St ? this.transform.screenToLatLng(t) : t && t.x && t.y ? this.transform.screenToLatLng(new St(t.x, t.y)) : (new it.ClassTypeError("Map.unprojectFromContainer的point参数", "Point", t).error(), null)
}
},
{
key: "projectToContainer",
value: function(t) {
if (t instanceof xt) {
var e = this.transform.latLngToScreen(t);
return new St(e.x, e.y)
}
return new it.ClassTypeError("Map.projectToContainer的latLng参数", "LatLng", t).error(),
null
}
},
{
key: "projectToCenterLocalPlane",
value: function(t) {
if (t instanceof xt) {
return this.transform.latLngToCenterLocalPixel(t)
}
return new it.ClassTypeError("Map.projectToCenterLocalPlane的latLng参数", "LatLng", t).error(),
null
}
},
{
key: "projectToWorldPlane",
value: function(t, e) {
if (t instanceof xt) {
return this.transform.latLngToCoord(t, e)
}
return new it.ClassTypeError("Map.projectToWorldPlane的latLng参数", "LatLng", t).error(),
null
}
},
{
key: "_getSpatialResolution",
value: function(t, e) {
t = t || this.getZoom();
var n = (e || this.getCenter().getLat()) * Math.PI / 180;
return (0, nt.getSpatialResolution)(t) * Math.cos(n) / this.getScale()
}
},
{
key: "_onData",
value: function() {
this.drawManager.updatePlace(),
this._rerender()
}
},
{
key: "_preLoad",
value: function() {
this.layerResource._sources.vector_source.preload(this.transform)
}
},
{
key: "_normalizeHeading",
value: function(t, e) {
t = wt.wrap(t, -180, 180);
var n = Math.abs(t - e);
return Math.abs(t - 360 - e) < n && (t -= 360),
Math.abs(t + 360 - e) < n && (t += 360),
t
}
},
{
key: "_normalizeCenter",
value: function(t) {
var e = this.transform,
n = t.lng - e.center.lng;
t.lng += n > 180 ? -360 : n < -180 ? 360 : 0
}
},
{
key: "_rerender",
value: function() {
this._changeFPS(Lt),
this.fpsManager.start()
}
},
{
key: "_render",
value: function() {
var t = this.getRenderContainer();
this.resize(t.clientWidth, t.clientHeight);
var e = this.drawManager.render(this.layerResource, this.transform);
this._bubbleMiddleware && this._bubbleMiddleware.runPick(),
e && this._rerender(),
this._renderCallbackList.forEach(function(t) {
return t && t()
})
}
},
{
key: "addRenderCallback",
value: function(t) {
this._renderCallbackList.push(t)
}
},
{
key: "removeRenderCallback",
value: function(t) {
var e = this._renderCallbackList.indexOf(t);
this._renderCallbackList.splice(e, 1)
}
},
{
key: "resize",
value: function(t, e) {
t && e && (t === this.width && e === this.height || (this.width = t, this.height = e, this.transform.resize(t, e), this.drawManager.resize(t, e), this._update(), this._frameId = null, this._fire("resize", {
width: t,
height: e
},
!0)))
}
},
{
key: "_update",
value: function() {
this._destroyed || this._glContextLost || (this.layerResource._updateSource(this.transform, this.renderEngine.camera, {
causedBy: "move"
}), this.drawManager.updatePlace(), this._rerender())
}
},
{
key: "_initContainer",
value: function() {
this.drawContainer.style.webkitTapHighlightColor = "rgba(0,0,0,0)",
"static" === getComputedStyle(this.drawContainer).getPropertyValue("position") && (this.drawContainer.style.position = "relative");
var t = document.createElement("canvas");
t.style.cssText = "width:100%; height: 100%;";
var e = o();
this.drawContainer.appendChild(t),
this.drawContainer.appendChild(e.root),
this.canvasContainer = t,
this._overlayer = e
}
},
{
key: "_initControls",
value: function() {
var t = this;
if ((0, U.checkKey)(this.id).then(function(e) {
void 0 !== e || K.
default.isLocal || t.addControl(new N.
default({
position:
R.CONTROL_POSITION.BOTTOM_CENTER
}))
}), this.addControl(new gt({
id: Mt,
position: R.CONTROL_POSITION.BOTTOM_LEFT,
hasSatellite: this.layerResource.hasSatellite()
})), this.lgId = Mt, !1 === this._showControl) return this;
this.addControl(new D.
default({
id:
R.DEFAULT_CONTROL_ID.SCALE,
position: R.CONTROL_POSITION.BOTTOM_LEFT,
center: this.getCenter(),
zoom: this.getZoom(),
scale: this.getScale()
})),
this.addControl(new F.
default({
id:
R.DEFAULT_CONTROL_ID.ZOOM,
position: R.CONTROL_POSITION.TOP_RIGHT
})),
this.addControl(new Y.
default({
id:
R.DEFAULT_CONTROL_ID.ROTATION,
position: R.CONTROL_POSITION.TOP_RIGHT
}))
}
},
{
key: "_onContextError",
value: function(t) {
"restored" === t ? (this._rerender(), this._glContextLost = !1, (0, Z.err)({
type: "ctx",
code: 1
}), this._fire("context_restored")) : (this.stop(), this._glContextLost = !0, (0, Z.err)({
type: "ctx",
code: 0
}), this._fire("context_lost"))
}
},
{
key: "enableAreaHighlight",
value: function(t) {
var e = t.layerId || "$tmap_highlight",
n = this.getLayer(e);
if (n || (n = new ut.
default({
id:
e,
map: this,
geometries: []
})), t) {
var i = t.paths,
o = void 0 === i ? [] : i,
r = t.highlightColor,
a = t.shadeColor;
n.update([{
id: "highlight",
paths: o
}], {
highlightColor: r,
shadeColor: a
})
}
return n.setVisible(!0),
this
}
},
{
key: "disableAreaHighlight",
value: function(t) {
var e = t && t.layerId || "$tmap_highlight",
n = this.getLayer(e);
return n ? (n.setVisible(!1), this) : this
}
},
{
key: "enableAreaClip",
value: function(t) {
if (t && t.paths && this._checkMaskPaths(t.paths)) {
t.layerId = "$tmap_clip_highlight",
t.shadeColor = this.renderEngine.getBgColor(),
this.enableAreaHighlight(t),
this.moveLayer("$tmap_clip_highlight", dt.LAYER_LEVEL.OVERLAY_AA);
var e = this.getLayer("$tmap_clip_clip");
e || (e = new ft.
default({
map:
this,
id: "$tmap_clip_clip",
geometries: [],
isMaskReverse: !0
})),
e.add([{
id: "$tmap_clip_clip",
paths: t.paths
}]),
this.clipOptions = t,
this.on("bgcolor_change", this._updateClipBgColor)
}
}
},
{
key: "disableAreaClip",
value: function() {
this.disableAreaHighlight({
layerId: "$tmap_clip_highlight"
}),
this.removeLayer("$tmap_clip_clip"),
this.removeSource("$tmap_clip_clip"),
this.off("bgcolor_change", this._updateClipBgColor)
}
},
{
key: "_updateClipBgColor",
value: function(t) {
this.enableAreaHighlight((0, a.
default)({},
this.clipOptions, {
shadeColor: t
})),
this.moveLayer("$tmap_clip_highlight", dt.LAYER_LEVEL.OVERLAY_AA)
}
},
{
key: "_checkMaskPaths",
value: function(t) {
if (!Array.isArray(t)) return ! 1;
var e = !0;
return t.forEach(function(t, n) {
rt.
default.isValidLatLng(t) || (e = !1, console.error("areaClip.paths: 希望传入Geometry数组实际第" + n + "元素非latlng格式"))
}),
e
}
},
{
key: "_checkFeaturePickingType",
value: function(t) {
var e = t.enableFeaturePicking,
n = t.featurePickingRadius,
i = e,
o = n;
return e ? (isNaN(n) || !Pt(n) ? (new it.BaseTypeError("featurePickingRadius", "number", n).error(), o = null) : n <= 0 && (o = null), At(e) || (new it.BaseTypeError("enableFeaturePicking", "Boolean", e).error(), i = !1), {
featurePicking: i,
pickingRadius: o
}) : {}
}
},
{
key: "stop",
value: function() {
this.fpsManager.stop()
}
},
{
key: "destroy",
value: function() {
this._destroyed || (this.emit("destroy"), this.stopMoving(), (0, U.revokeKeyCheck)(this.id), this.controlManager.destroy(), this.handler.destroy(), this.fpsManager.destroy(), this.layerResource.destroy(), this._bubbleMiddleware.destroy(), this.renderEngine.destroy(), this.drawManager.destroy(), this.indoorManager = null, this.fpsManager = null, this.handler = null, this.layerResource = null, this._bubbleMiddleware = null, this.renderEngine = null, this.drawManager = null, this.transform = null, this._clearAllListeners(), this.drawContainer.innerHTML = "", this.canvasContainer.width = 1, this.canvasContainer.height = 1, this.canvasContainer = null, this._overlayer = null, this.drawContainer = null, this.isPitchAnimationRunning = null, this.isRotateAnimationRunning = null, this.pitchTickTimer = null, this.rotateTickTimer = null, this._destroyed = !0)
}
},
{
key: "_getPoiInfo",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = this.drawManager.getPoi(t);
if (e) {
e.latLng = this.unprojectFromContainer(e.coord);
var n = Math.round(this.getZoom()) >= Q.
default.minShowIndoorZoom && this.indoorManager.getVisible() && this.indoorManager.getIndoorBuildingList().length;
if (!e.isIndoor && n) for (var i = this.indoorManager.getIndoorBuildingList(), o = 0; o < i.length; o++) {
var r = i[o],
a = r.getBuildingInfo();
if (a && a.bounds.contains(e.latLng)) {
e = null;
break
}
}
}
return e
}
},
{
key: "id",
get: function() {
return this._uniqueId
}
}]),
e
} (yt);
e.
default = Ct
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
if ((0, T.isSimple)(t)) {
for (var e = [], n = t.length, i = 0; i < n; i++) {
var r = void 0;
if (i < n - 1) r = [t[i], t[i + 1]];
else {
if (t[i].equals(t[0])) continue;
r = [t[i], t[0]]
}
e.push(r)
}
return e
}
return t.map(function(t) {
return o(t)
}).flat()
}
var r = n(16),
a = i(r),
s = n(17),
l = i(s),
u = n(3),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(5),
_ = i(p),
m = n(35),
g = i(m),
y = n(4),
x = i(y),
b = n(303),
S = i(b),
w = n(220),
E = n(66),
T = n(298),
A = n(339),
P = i(A),
I = n(506),
k = i(I),
L = n(29),
M = n(41),
C = i(M),
R = n(10),
B = i(R),
N = n(218),
O = N.PolygonStyle,
D = n(218),
z = D.ExtrudablePolygonStyle,
F = C.
default.isValidColor,
V = C.
default.isNumber,
Y = function(t) {
function e(t) { (0, d.
default)(this, e);
var n = (0, _.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t));
return n._createSubOverlay(t),
n
}
return (0, x.
default)(e, t),
(0, v.
default)(e, [{
key: "_initialize",
value: function() {
this._childGeometryOverlays = []
}
},
{
key: "_setGeometryType",
value: function() {
this._geometryType = w.GEOMETRY_TYPES.POLYGON,
this._layerType = E.RENDER_LAYER_TYPE.polygon,
this._className = "MultiPolygon"
}
},
{
key: "_checkGeometries",
value: function() { (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []).forEach(function(t, e) {
t ? t.styleId || (t.styleId = "default") : console.error("MultiPolygon.geometries: 希望传入PolygonGeometry数组实际第" + e + "元素不存在!"),
t.paths && ((0, T.isSimple)(t.paths) || (0, T.isPart)(t.paths) || (0, T.isComplex)(t.paths)) || console.error("MultiPolygon.geometries: 希望传入PolygonGeometry数组实际第" + e + "元素的paths属性无效")
})
}
},
{
key: "_getDefaultStyle",
value: function() {
return new O
}
},
{
key: "_checkStyles",
value: function(t) { (0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "_checkStyles", this).call(this, t),
(0, l.
default)(t).forEach(function(e) {
var n = t[e];
n && (n instanceof O || n instanceof z) ? n instanceof O ? F(n.color) ? F(n.borderColor) || console.error("MultiPolygon.styles: 样式id ", e, " 对应的PolygonStyle.borderColor属性无效", n) : console.error("MultiPolygon.styles: 样式id ", e, " 对应的PolygonStyle.color属性无效", n) : n instanceof z && (F(n.color) ? F(n.borderColor) ? V(n.extrudeHeight) || console.error("MultiPolygon.styles: 样式id ", e, " 对应的ExtrudablePolygonStyle.extrudeHeight属性无效", n) : console.error("MultiPolygon.styles: 样式id ", e, " 对应的ExtrudablePolygonStyle.borderColor属性无效", n) : console.error("MultiPolygon.styles: 样式id ", e, " 对应的ExtrudablePolygonStyle.color属性无效", n)) : console.error("MultiPolygon.styles: 样式id ", e, "希望传入PolygonStyle或ExtrudablePolygonStyle实例实际传入", n)
})
}
},
{
key: "_createSubOverlay",
value: function(t) {
var e = this._extractSubStyles(),
n = this._extractSubGeometries(),
i = new k.
default((0, a.
default)(t, {
id: this.id + "_border",
styles: e,
geometries: n
}));
this._childGeometryOverlays.push(i)
}
},
{
key: "_extractSubGeometries",
value: function() {
var t = this;
return this.geometries.reduce(function(e, n) {
var i = t.styles[n.styleId] || t.styles.
default;
if (i && i.showBorder && i instanceof O) {
var o = (0, T.getBorderPolyline)(n.paths);
e.push({
styleId: n.styleId,
paths: o,
rank: n.rank
})
}
return e
},
[])
}
},
{
key: "_extractSubStyles",
value: function() {
var t = {};
return B.
default.forIn(this.styles,
function(e, n) {
n && n.showBorder && n instanceof O && (t[e] = new P.
default({
id:
e,
color: n.borderColor,
width: n.borderWidth,
lineCap: "round",
dashArray: n.borderDashArray
}))
}),
t
}
},
{
key: "setVisible",
value: function(t) {
return t = Boolean(t),
(0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "setVisible", this).call(this, t),
this._childGeometryOverlays.forEach(function(e) {
e.setVisible(t)
}),
this
}
},
{
key: "setMap",
value: function(t) {
return (0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "setMap", this).call(this, t),
this._childGeometryOverlays.forEach(function(e) {
return e.setMap(t)
}),
this
}
},
{
key: "setZIndex",
value: function(t) {
return V(t) ? t < 0 ? (console.error("zIndex希望设置为非负数,实际值为: " + t), this) : ((0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "setZIndex", this).call(this, t), this._childGeometryOverlays.forEach(function(e) {
return e.setZIndex(t)
}), this) : (new L.BaseTypeError("zIndex", "Number", t).error(), this)
}
},
{
key: "updateGeometries",
value: function(t, n) {
return t ? ((0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "updateGeometries", this).call(this, t, n), this._updateSubGeometries(), this) : this
}
},
{
key: "_updateSubGeometries",
value: function() {
var t = this._extractSubGeometries();
this._childGeometryOverlays.forEach(function(e) {
return e.setGeometries(t)
})
}
},
{
key: "_updateSubStyles",
value: function() {
var t = this._extractSubStyles();
this._childGeometryOverlays.forEach(function(e) {
return e.setStyles(t)
}),
this._updateSubGeometries()
}
},
{
key: "setGeometries",
value: function(t) {
return t ? ((0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "setGeometries", this).call(this, t), this._updateSubGeometries(), this) : this
}
},
{
key: "setStyles",
value: function(t) {
return t ? ((0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "setStyles", this).call(this, t), this._updateSubStyles(), this) : this
}
},
{
key: "destroy",
value: function() {
this._childGeometryOverlays.forEach(function(t) {
return t.destroy()
}),
(0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "destroy", this).call(this)
}
},
{
key: "_getAllPoints",
value: function() {
return this.geometries.map(function(t) {
return t.paths.flat(1 / 0)
}).flat()
}
},
{
key: "_getAllSegments",
value: function() {
return this.geometries.map(function(t) {
return o(t.paths)
}).flat()
}
}]),
e
} (S.
default);
t.exports = Y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
if (m(t)) {
var n = (0, u.
default)(t, 2),
i = n[0],
o = n[1];
return _(i) && _(o) ? (i = Math.max(Math.round(i), 0), o = Math.max(Math.round(o), 0), [i, o]) : (new p.BaseTypeError("PolylineStyle." + e + "[index]", "number", i), [0, 0])
}
return new p.BaseTypeError("PolylineStyle." + e, "array", t).error(),
[0, 0]
}
function r() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = ["width", "height", "space"],
n = {};
if (e.forEach(function(e) {
if (e in t) {
var i = t[e];
_(i) ? n[e] = Math.min(Math.max(i, 0), 255) : new p.BaseTypeError("ArrowOptions." + e, "number", i).error()
}
}), !g(t.align)) {
var i = t.align;
i in x ? n.align = i: new p.EnumError("ArrowOptions.align", (0, s.
default)(x), i).error()
}
return n
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(17),
s = i(a),
l = n(32),
u = i(l),
c = n(0),
f = i(c),
d = n(10),
h = n(41),
v = i(h),
p = n(29),
_ = v.
default.isNumber,
m = v.
default.isArray,
g = v.
default.isUndefined,
y = {
color: "#3777FF",
width: 3,
borderWidth: 0,
borderColor: "#3777FF",
lineCap: "butt",
dashArray: [0, 0],
showArrow: !1,
arrowOptions: {
width: 6,
height: 4,
space: 50,
align: "middle"
},
eraseColor: "#C2CBD2",
enableBloom: !1
},
x = {
middle: 0,
left: 1,
right: 2
},
b = function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, f.
default)(this, t),
e = (0, d.extend)({},
y, e),
this.color = e.color,
this.width = e.width,
this.borderColor = e.borderColor,
this.borderWidth = e.borderWidth || 0,
this.lineCap = "round" === e.lineCap ? 2 : "square" === e.lineCap ? 1 : 0,
this.dashArray = o(e.dashArray, "dashArray"),
this.eraseColor = e.eraseColor,
this.enableBloom = !!e.enableBloom;
var n = (0, d.extend)({},
y.arrowOptions, r(e.arrowOptions)),
i = n.width,
a = n.height,
s = n.space,
l = n.align;
this.arrowInfo = [i, a * !!e.showArrow, s, x[l]]
};
e.
default = b
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return document.getElementsByTagName("head")[0]
}
function r(t) {
return [].concat((0, _.
default)(new URLSearchParams(t.split("?")[1]))).reduce(function(t, e) {
var n = (0, v.
default)(e, 2),
i = n[0],
o = n[1];
return t[i] = o,
t
},
{})
}
function a() {
return "cb" + (new Date).getTime().toString(36) + (I++).toString(36)
}
function s(t, e) {
P.push({
name: t,
sender: e
})
}
function l(t) {
t.clearAttributes && t.clearAttributes(),
t[E] = null,
t.onerror = null,
t.parentNode && t.parentNode.removeChild(t)
}
function u(t, e) {
var n = t.replace("https://apis.map.qq.com", "").replace("&servicesk=" + e, ""),
i = [].concat((0, _.
default)(new URLSearchParams(n.split("?")[1]))).sort(function(t, e) {
return t[0].localeCompare(e[0])
}).map(function(t) {
return t.join("=")
}).join("&"),
o = n.split("?")[0] + "?" + i + e;
return "https://apis.map.qq.com" + n + "&sig=" + (0, g.
default)(o)
}
function c(t, e, n, i, a) {
var l = null,
c = !1,
f = [];
e.indexOf("callback") > -1 ? (e = e.replace("&callback", ""), f = ["output=jsonp", "callback=" + A + "." + t]) : f = ["output=jsonp", "pf=jsapi", "ref=jsapi", "cb=" + A + "." + t];
var h = S.createElement("script");
h.setAttribute("type", "text/javascript"),
h.setAttribute("charset", a || "GBK"),
h.async = !0;
var v = e + ( - 1 === e.indexOf("?") ? "?": "&") + f.join("&"),
p = r(v);
p.servicesk && (v = u(v, p.servicesk)),
h.src = v,
h.onerror = function() {
c = !0,
i && i(),
d(t)
},
T[t] = function(t) {
l = t
},
h[E] = function() {
w.test(this.readyState) && (d(t), l ? (l.id = t, n && n(l)) : c || i && i())
};
var _ = o();
_.insertBefore(h, _.firstChild),
s(t, h)
}
function f(t, e, n, i) {
return t || (t = a()),
b(function() {
d(t),
c(t, e, n, i)
}),
t
}
function d(t) {
if (t) {
for (var e = 0,
n = null,
i = P.length; e < i; e++) if (P[e].name === t) {
n = P.splice(e, 1)[0];
break
}
n && l(n.sender),
T[t] && delete T[t]
}
}
var h = n(32),
v = i(h),
p = n(24),
_ = i(p),
m = n(400),
g = i(m),
y = n(56),
x = n(392),
b = x.domReady,
S = window.document,
w = /loaded|complete|undefined/i,
E = S.dispatchEvent ? "onload": "onreadystatechange",
T = window[y]._svcb || (window[y]._svcb = {}),
A = y + "._svcb",
P = [],
I = 0;
e.send = f,
e.cancel = d
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.LIGHT_TYPE = {
AMBIENT: "ambient",
DIRECTION: "dir",
POINT: "point",
SPOT: "spot"
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(211),
m = i(_),
g = [ - 1, -1, 1, -1, -1, 1, 1, 1],
y = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.shaderParams = {
attributes: ["aClipSpacePosition"],
uniforms: t.uniformList || []
},
n.vertices = new Float32Array(g),
n
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "preDraw",
value: function() { (0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "preDraw", this).call(this),
this.buffers || (this.buffers = this.createBuffer(null, this.vertices)),
this.bindBuffer()
}
},
{
key: "bindBuffer",
value: function() {
var t = this.gl;
this.buffers.vertices.bind(),
this.buffers.vertices.pointToAttrib({
location: this.aClipSpacePosition,
size: 2,
type: t.FLOAT
})
}
},
{
key: "draw",
value: function(t) {
var e = this.gl;
e.useProgram(e.program),
this.setUniforms(t),
e.drawArrays(e.TRIANGLE_STRIP, 0, 4)
}
},
{
key: "setUniforms",
value: function() {}
}]),
e
} (m.
default);
e.
default = y
},
function(t, e, n) {
t.exports = {
default:
n(411),
__esModule: !0
}
},
function(t, e, n) {
var i = n(216),
o = n(88),
r = n(269);
t.exports = function(t) {
return function(e, n, a) {
var s, l = i(e),
u = o(l.length),
c = r(a, u);
if (t && n != n) {
for (; u > c;) if ((s = l[c++]) != s) return ! 0
} else for (; u > c; c++) if ((t || c in l) && l[c] === n) return t || c || 0;
return ! t && -1
}
}
},
function(t, e, n) {
"use strict";
var i = n(62),
o = n(11),
r = n(206),
a = n(286),
s = n(253),
l = n(348),
u = n(284),
c = n(63),
f = n(61),
d = n(350),
h = n(288),
v = n(427);
t.exports = function(t, e, n, p, _, m) {
var g = i[t],
y = g,
x = _ ? "set": "add",
b = y && y.prototype,
S = {},
w = function(t) {
var e = b[t];
r(b, t, "delete" == t ?
function(t) {
return ! (m && !c(t)) && e.call(this, 0 === t ? 0 : t)
}: "has" == t ?
function(t) {
return ! (m && !c(t)) && e.call(this, 0 === t ? 0 : t)
}: "get" == t ?
function(t) {
return m && !c(t) ? void 0 : e.call(this, 0 === t ? 0 : t)
}: "add" == t ?
function(t) {
return e.call(this, 0 === t ? 0 : t),
this
}: function(t, n) {
return e.call(this, 0 === t ? 0 : t, n),
this
})
};
if ("function" == typeof y && (m || b.forEach && !f(function() { (new y).entries().next()
}))) {
var E = new y,
T = E[x](m ? {}: -0, 1) != E,
A = f(function() {
E.has(1)
}),
P = d(function(t) {
new y(t)
}),
I = !m && f(function() {
for (var t = new y,
e = 5; e--;) t[x](e, e);
return ! t.has( - 0)
});
P || (y = e(function(e, n) {
u(e, y, t);
var i = v(new g, e, y);
return void 0 != n && l(n, _, i[x], i),
i
}), y.prototype = b, b.constructor = y),
(A || I) && (w("delete"), w("has"), _ && w("get")),
(I || T) && w(x),
m && b.clear && delete b.clear
} else y = p.getConstructor(e, t, _, x),
a(y.prototype, n),
s.NEED = !0;
return h(y, t),
S[t] = y,
o(o.G + o.W + o.F * (y != g), S),
m || p.setStrong(y, t, _),
y
}
},
function(t, e, n) {
"use strict";
n(548);
var i = n(206),
o = n(215),
r = n(61),
a = n(245),
s = n(78),
l = n(433),
u = s("species"),
c = !r(function() {
var t = /./;
return t.exec = function() {
var t = [];
return t.groups = {
a: "7"
},
t
},
"7" !== "".replace(t, "$<a>")
}),
f = function() {
var t = /(?:)/,
e = t.exec;
t.exec = function() {
return e.apply(this, arguments)
};
var n = "ab".split(t);
return 2 === n.length && "a" === n[0] && "b" === n[1]
} ();
t.exports = function(t, e, n) {
var d = s(t),
h = !r(function() {
var e = {};
return e[d] = function() {
return 7
},
7 != "" [t](e)
}),
v = h ? !r(function() {
var e = !1,
n = /a/;
return n.exec = function() {
return e = !0,
null
},
"split" === t && (n.constructor = {},
n.constructor[u] = function() {
return n
}),
n[d](""),
!e
}) : void 0;
if (!h || !v || "replace" === t && !c || "split" === t && !f) {
var p = /./ [d],
_ = n(a, d, "" [t],
function(t, e, n, i, o) {
return e.exec === l ? h && !o ? {
done: !0,
value: p.call(e, n, i)
}: {
done: !0,
value: t.call(n, e, i)
}: {
done: !1
}
}),
m = _[0],
g = _[1];
i(String.prototype, t, m),
o(RegExp.prototype, d, 2 == e ?
function(t, e) {
return g.call(t, this, e)
}: function(t) {
return g.call(t, this)
})
}
}
},
function(t, e, n) {
"use strict";
var i = n(60);
t.exports = function() {
var t = i(this),
e = "";
return t.global && (e += "g"),
t.ignoreCase && (e += "i"),
t.multiline && (e += "m"),
t.unicode && (e += "u"),
t.sticky && (e += "y"),
e
}
},
function(t, e, n) {
var i = n(231),
o = n(529),
r = n(428),
a = n(60),
s = n(88),
l = n(443),
u = {},
c = {},
e = t.exports = function(t, e, n, f, d) {
var h, v, p, _, m = d ?
function() {
return t
}: l(t),
g = i(n, f, e ? 2 : 1),
y = 0;
if ("function" != typeof m) throw TypeError(t + " is not iterable!");
if (r(m)) {
for (h = s(t.length); h > y; y++) if ((_ = e ? g(a(v = t[y])[0], v[1]) : g(t[y])) === u || _ === c) return _
} else for (p = m.call(t); ! (v = p.next()).done;) if ((_ = o(p, g, v.value, e)) === u || _ === c) return _
};
e.BREAK = u,
e.RETURN = c
},
function(t, e, n) {
var i = n(244);
t.exports = Array.isArray ||
function(t) {
return "Array" == i(t)
}
},
function(t, e, n) {
var i = n(78)("iterator"),
o = !1;
try {
var r = [7][i]();
r.
return = function() {
o = !0
},
Array.from(r,
function() {
throw 2
})
} catch(t) {}
t.exports = function(t, e) {
if (!e && !o) return ! 1;
var n = !1;
try {
var r = [7],
a = r[i]();
a.next = function() {
return {
done: n = !0
}
},
r[i] = function() {
return a
},
t(r)
} catch(t) {}
return n
}
},
function(t, e) {
e.f = Object.getOwnPropertySymbols
},
function(t, e, n) {
"use strict";
var i = n(320),
o = RegExp.prototype.exec;
t.exports = function(t, e) {
var n = t.exec;
if ("function" == typeof n) {
var r = n.call(t, e);
if ("object" != typeof r) throw new TypeError("RegExp exec method returned something other than an Object or null");
return r
}
if ("RegExp" !== i(t)) throw new TypeError("RegExp#exec called on incompatible receiver");
return o.call(t, e)
}
},
function(t, e, n) {
var i = n(102),
o = n(62),
r = o["__core-js_shared__"] || (o["__core-js_shared__"] = {}); (t.exports = function(t, e) {
return r[t] || (r[t] = void 0 !== e ? e: {})
})("versions", []).push({
version: i.version,
mode: n(263) ? "pure": "global",
copyright: "© 2019 Denis Pushkarev (zloirock.ru)"
})
},
function(t, e, n) {
for (var i, o = n(62), r = n(215), a = n(270), s = a("typed_array"), l = a("view"), u = !(!o.ArrayBuffer || !o.DataView), c = u, f = 0, d = "Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(","); f < 9;)(i = o[d[f++]]) ? (r(i.prototype, s, !0), r(i.prototype, l, !0)) : c = !1;
t.exports = {
ABV: u,
CONSTR: c,
TYPED: s,
VIEW: l
}
},
function(t, e, n) {
var i = n(62),
o = i.navigator;
t.exports = o && o.userAgent || ""
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) {
return function(e) {
var n = t,
i = n.lib,
o = i.Base,
r = i.WordArray,
a = n.x64 = {};
a.Word = o.extend({
init: function(t, e) {
this.high = t,
this.low = e
}
}),
a.WordArray = o.extend({
init: function(t, e) {
t = this.words = t || [],
this.sigBytes = void 0 != e ? e: 8 * t.length
},
toX32: function() {
for (var t = this.words,
e = t.length,
n = [], i = 0; i < e; i++) {
var o = t[i];
n.push(o.high),
n.push(o.low)
}
return r.create(n, this.sigBytes)
},
clone: function() {
for (var t = o.clone.call(this), e = t.words = this.words.slice(0), n = e.length, i = 0; i < n; i++) e[i] = e[i].clone();
return t
}
})
} (),
t
})
},
, , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.easableMixin = void 0;
var i = n(28);
e.easableMixin = {
_abortFn: null,
_finishFn: null,
_ease: function(t, e, n, o) {
var r = this;
this._finishFn = e;
var a = !1;
this._abortFn = (0, i.timed)(function(e) {
t.call(this, o.easing(e)),
1 === e && this._finishEase()
},
function() {
a || (delete r._finishFn, n && n.call(r), a = !0, delete r._abortFn)
},
!1 === o.animate ? 0 : o.duration, this)
},
_finishEase: function() {
delete this._abortFn;
var t = this._finishFn;
delete this._finishFn,
t && t.call(this)
},
_stopEase: function() {
this._abortFn && (this._abortFn(), this._finishEase())
}
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(32),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = function() {
function t(e, n) { (0, s.
default)(this, t),
this.p0 = e,
this.p1 = n
}
return (0, u.
default)(t, [{
key: "getXYCoefficient",
value: function() {
var t = (0, r.
default)(this.p0.elements, 3),
e = t[0],
n = t[1],
i = t[2],
o = (0, r.
default)(this.p1.elements, 3),
a = o[0],
s = o[1],
l = o[2];
return [(a - e) / (l - i), (e * l - a * i) / (l - i), (s - n) / (l - i), (n * l - s * i) / (l - i)]
}
}]),
t
} ();
e.
default = c
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(32),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(107),
f = function() {
function t(e, n) { (0, s.
default)(this, t),
this.center = e,
this.radius = n
}
return (0, u.
default)(t, [{
key: "intersectWithLine",
value: function(t) {
var e = t.getXYCoefficient(),
n = (0, r.
default)(e, 4),
i = n[0],
o = n[1],
a = n[2],
s = n[3],
l = (0, r.
default)(this.center.elements, 3),
u = l[0],
f = l[1],
d = l[2],
h = this.radius,
v = o - u,
p = s - f,
_ = -d,
m = i * i + a * a + 1,
g = 2 * (i * v + a * p + _),
y = v * v + p * p + _ * _ - h * h,
x = g * g - 4 * m * y;
if (x < 0) return [];
var b = ( - g + Math.sqrt(x)) / (2 * m),
S = ( - g - Math.sqrt(x)) / (2 * m),
w = i * b + o,
E = a * b + s,
T = i * S + o,
A = a * S + s;
return [new c.Vector3(w, E, b), new c.Vector3(T, A, S)]
}
}]),
t
} ();
e.
default = f
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.ConfigUtil = e.INDOOR_ICON_SIZE = void 0;
var i = n(23),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i),
r = 0;
e.INDOOR_ICON_SIZE = o.
default.iconSize,
e.ConfigUtil = {
setBV: function(t) {
r = t
},
getBV: function() {
return r
},
getIconPath: function() {
var t = Math.floor(3 * Math.random());
return o.
default.indoorIconSrc.replace("%$%", 0 === t ? 1 : t)
},
getIconSrc: function(t) {
return "" + this.getIconPath() + t + ".png?v=" + this.getBV()
}
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return t[0] + (t[1] << 8) + (t[2] << 16)
}
function r(t, e) {
var n = {};
n.x = 360 * t / 268435456 - 180;
var i = 180 - 360 * e / 268435456;
n.y = Math.atan(Math.exp(.017453292519943295 * i)) / .008726646259971648 - 90;
var o = new _.
default(n.y, n.x);
return o.x = n.x,
o.y = n.y,
o
}
function a(t) {
return (0, v.
default)({},
t)
}
function s(t, e) {
var n = (0, S.mercatorToLatLng)(new g.
default(t, e));
return n.x = t,
n.y = e,
n
}
function l(t, e) {
return (0, S.latLngToMercator)(new _.
default(e, t))
}
function u(t) {
var e = t.map(function(t) {
return {
lng: t.x,
lat: t.y
}
});
return (0, b.isClockWise)(e)
}
function c(t, e, n, i) {
var o = (0, y.getStyle)(t, e, i);
if (!o) return ! 1;
var r = (0, y.getStyle)(o.labelid, e, i);
if (!r) return ! 1;
if (o.icon_offset && 65535 !== o.icon_offset || r.effect && 5 === r.effect) {
var a = o.icon_offset;
if (n && "number" == typeof o.icon_offset && isFinite(o.icon_offset) && 65535 !== o.icon_offset && -1 !== o.icon_offset) {
if (r.fontSize > 0) return ! 0
} else if (r.fontSize > 0) return ! 0;
return !! ("number" == typeof a && isFinite(a) && a >= 0 && a < 500)
}
return r.fontSize > 0
}
function f(t, e, n, i) {
var o = c(t, e, n, i),
r = !1,
a = !1;
if (!o) return {
isValid: o,
drawIcon: r,
drawLabel: a
};
var s = (0, y.getStyle)(t, e, i),
l = (0, y.getStyle)(s.labelid, e, i);
if (s.icon_offset && 65535 !== s.icon_offset || l.effect && 5 === l.effect) {
var u = s.icon_offset;
a = (n && "number" == typeof s.icon_offset && isFinite(s.icon_offset) && 65535 !== s.icon_offset && s.icon_offset, l.fontSize > 0),
r = !!("number" == typeof u && isFinite(u) && u >= 0 && u < 500)
} else r = !1,
a = l.fontSize > 0;
return {
isValid: o,
drawLabel: a,
drawIcon: r
}
}
function d(t, e, n, i) {
var o = (0, y.getStyle)(t.styleId, e, i);
if (!o) return void console.warn("style is invalid!");
var r = (0, y.getStyle)(o.labelid, e, i);
if (!r) return void console.warn("labelStyle is invalid!");
var a = t.drawInfo || f(t.styleId, e, t.direct, i),
s = x.INDOOR_ICON_SIZE,
l = x.INDOOR_ICON_SIZE,
u = /\\/g,
c = null,
d = null,
h = s / 2,
v = l / 2,
p = t.text.split(u);
return p.map(function(e, i) {
var o = {
x: 0,
y: 0
},
s = {
w: 0,
h: 0
},
l = {
x: 0,
y: 0
},
u = {
text: e,
coords: [l.x, l.y],
anchor: o,
textBounds: s
};
if (!a.drawLabel) return u;
switch (t.direct) {
case 2:
c = "right",
d = "middle";
break;
case 3:
c = "center",
d = "top";
break;
case 4:
c = "center",
d = "bottom";
break;
case 1:
c = "left",
d = "middle";
break;
default:
c = "center",
d = "middle"
}
var f = 0;
return n.font !== r.font && (n.font = r.font),
f = n.measureText(e).width,
s.w = Math.ceil(f),
s.h = t.fontSize,
"left" === c && a.drawIcon ? (o.x = 0 + h + 2 + f / 2, l.x = o.x) : "right" === c && a.drawIcon ? (o.x = 0 - h - 2 - f / 2, l.x = o.x) : (o.x = 0, l.x = 0),
"top" === d ? (o.y = 0 + v + (r.fontSize + 2) * (i + 1) - r.fontSize / 2, l.y = o.y) : "bottom" === d ? (o.y = 0 - v - (r.fontSize + 2) * (p.length - i) + r.fontSize / 2, l.y = o.y) : a.drawIcon && a.drawLabel ? (o.y = 0 + (1 === p.length ? 0 : (r.fontSize / 2 + 2) * (0 === i ? -1 : 1)), l.y = o.y) : a.drawIcon ? (o.y = 0, l.y = 0) : a.drawLabel && (1 === p.length ? (o.y = 0, l.y = 0) : (o.y = 0 + (r.fontSize / 2 + 2) * (0 === i ? -1 : 1), l.y = o.y)),
u.coords = [l.x, l.y],
u
})
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var h = n(223),
v = i(h);
e.readUint24 = o,
e.pixels2LongLat = r,
e.extendCopy = a,
e.mercator2latLng = s,
e.latLng2Mercator = l,
e.isClockWise = u,
e.isValidPointStyle = c,
e.getPoiDrawInfo = f,
e.getPoiRect = d;
var p = n(47),
_ = i(p),
m = n(74),
g = i(m),
y = n(332),
x = n(379),
b = n(298),
S = n(112)
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = null;
e.
default = {
setStyleTag: function(t) {
i = t
},
isDefaultNoSideLine: function(t) {
var e = i,
n = e.lineTag,
o = ["street", "path", "secondaryroad"],
r = o.some(function(e) {
return n[e] && n[e].some(function(e) {
return e === Number(t)
})
});
return Number(r)
}
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(257),
p = i(v),
_ = n(41),
m = i(_),
g = n(29),
y = m.
default.isNumber,
x = function(t) {
function e(t) {
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_initialize",
value: function(t) {
this._setTileSize(t.tileSize)
}
},
{
key: "_setTileSize",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 256;
y(t) || (new g.BaseTypeError("TileLayer.tileSize", "number", t).error(), t = 256),
this.tileSize = t
}
}]),
e
} (p.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(148),
r = i(o),
a = n(25),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(35),
m = i(_),
g = n(4),
y = i(g),
x = n(382),
b = i(x),
S = n(137),
w = i(S),
E = n(90),
T = n(66),
A = n(29),
P = n(23),
I = function(t) {
function e(t) {
return (0, f.
default)(this, e),
(0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t))
}
return (0, y.
default)(e, t),
(0, h.
default)(e, [{
key: "_initialize",
value: function(t) { (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_initialize", this).call(this, t),
t.type && ("string" != typeof t.type ? new A.BaseTypeError("Layer.type", "string", t.type).error() : this.features = k[t.type]),
this.features = this.features || t.features || [],
this.maxDataZoom = t.maxDataZoom || P.maxDataZoom,
this.vectorSrc = t.vectorSrc,
this._checkSourceId()
}
},
{
key: "setMap",
value: function(t) {
return (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "setMap", this).call(this, t),
t && this._init(),
this
}
},
{
key: "_init",
value: function() {
var t = this;
this._createSource().then(function() {
t.features.forEach(function(e) {
var n = new b.
default({
id:
e.id || e.type + "_" + t.id,
type: e.type,
maxDataZoom: t.maxDataZoom,
sourceId: t.layerSourceId,
tileSize: 256
});
n.filter = e.filter,
t.appendChild(n)
}),
t._fire("layer", {})
})
}
},
{
key: "_createSource",
value: function() {
var t = this,
e = this._checkVectorSrc();
return this.map.getSource(this.layerSourceId) ? s.
default.resolve():
(this.map.addSource(this.layerSourceId, {
tileSize: P.tileSize,
minZoom: this.minZoom,
maxZoom: this.maxZoom,
minDataZoom: this.minDataZoom,
maxDataZoom: this.maxDataZoom,
type: E.SOURCE_TYPE.vector,
data: {
vectorSrc: e.vectorSrc || P.vectorSrc,
batchVectorSrc: e.batchVectorSrc || P.batchVectorSrc
},
enc: !1
}), this.map.layerResource.getStyleIdPromise().then(function(e) {
t.map.getSource(t.layerSourceId).setStyleId(e)
},
function(t) {
return console.warn("底图样式未能加载:", t),
s.
default.resolve()
}))
}
},
{
key: "_checkSourceId",
value: function() {
if (this.layerSourceId) return void(this.layerSourceId = this.layerSourceId);
var t = this.vectorSrc;
return this.layerSourceMap = P.layerSourceMap || new r.
default,
P.layerSourceMap = this.layerSourceMap,
Array.isArray(t) ? void this._checkSourceIdUpdate(t.sort().toString()) : "string" == typeof t ? void this._checkSourceIdUpdate(t) : void(this.layerSourceId = w.
default.VECTOR_SOURCE_ID)
}
},
{
key: "_checkSourceIdUpdate",
value: function(t) {
var e = this,
n = !0;
if (this.layerSourceMap.forEach(function(i, o) {
i === t && (n = !1, e.layerSourceId = o)
}), n) {
var i = w.
default.VECTOR_SOURCE_ID + "_" + this.id;
this.layerSourceMap.set(i, t),
this.layerSourceId = i
}
}
},
{
key: "_checkVectorSrc",
value: function() {
var t = this,
e = this.vectorSrc,
n = {};
return Array.isArray(e) && e.forEach(function(e) {
n.vectorSrc = n.vectorSrc || [],
n.batchVectorSrc = n.batchVectorSrc || [],
n.vectorSrc.push(t._concatVectorSrc(e)),
n.batchVectorSrc.push(t._concatVectorSrc(e))
}),
"string" == typeof e && (n.vectorSrc = [this._concatVectorSrc(e, "vector")], n.batchVectorSrc = [this._concatVectorSrc(e, "batchvector")]),
n
}
},
{
key: "_concatVectorSrc",
value: function(t) {
return "batchvector" === (arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "batchvector") ? t + "?" + P.batchVectorSrc[0].split("?")[1] : t + "?" + P.vectorSrc[0].split("?")[1]
}
},
{
key: "_removeSource",
value: function() {
if (this.map) { ! this.map.findLayer(function(t) {
return t instanceof e
}) && (this.map.removeSource(this.layerSourceId), P.layerSourceMap && P.layerSourceMap.delete(this.layerSourceId), this.layerSourceMap = P.layerSourceMap)
}
}
}]),
e
} (b.
default);
e.
default = I;
var k = {
base: [{
type: T.BASE_LAYER_TYPE.base,
filter: T.BASE_LAYER_TYPE.base
},
{
type: T.BASE_LAYER_TYPE.ground,
filter: T.BASE_LAYER_TYPE.ground
}],
arrow: [{
type: T.BASE_LAYER_TYPE.arrow,
filter: T.BASE_LAYER_TYPE.arrow
}],
building2d: [{
type: T.BASE_LAYER_TYPE.building2d,
filter: T.BASE_LAYER_TYPE.building3d
}],
building3d: [{
type: T.BASE_LAYER_TYPE.building3d,
filter: T.BASE_LAYER_TYPE.building3d
}],
point: [{
type: T.BASE_LAYER_TYPE.point,
filter: T.BASE_LAYER_TYPE.point
},
{
type: T.BASE_LAYER_TYPE.text,
filter: T.BASE_LAYER_TYPE.text
}],
label: [{
type: T.BASE_LAYER_TYPE.label,
filter: T.BASE_LAYER_TYPE.label
},
{
type: T.BASE_LAYER_TYPE.text,
filter: T.BASE_LAYER_TYPE.text
}]
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(10),
u = i(l),
c = function() {
function t(e, n) { (0, r.
default)(this, t),
this.max = e,
this.onRemove = n,
this.reset()
}
return (0, s.
default)(t, [{
key: "reset",
value: function() {
var t = this;
return u.
default.forIn(this.data,
function(e, n) {
t.onRemove(n)
}),
this.data = {},
this.order = [],
this
}
},
{
key: "add",
value: function(t, e) {
if (this.has(t)) this.order.splice(this.order.indexOf(t), 1),
this.data[t] = e,
this.order.push(t);
else if (this.data[t] = e, this.order.push(t), this.order.length > this.max) {
var n = this.get(this.order[0]);
n && this.onRemove(n)
}
return this
}
},
{
key: "has",
value: function(t) {
return t in this.data
}
},
{
key: "keys",
value: function() {
return this.order
}
},
{
key: "get",
value: function(t) {
if (!this.has(t)) return null;
var e = this.data[t];
return delete this.data[t],
this.order.splice(this.order.indexOf(t), 1),
e
}
},
{
key: "getWithoutRemoving",
value: function(t) {
return this.has(t) ? this.data[t] : null
}
},
{
key: "remove",
value: function(t) {
if (!this.has(t)) return this;
var e = this.data[t];
return delete this.data[t],
this.onRemove(e),
this.order.splice(this.order.indexOf(t), 1),
this
}
},
{
key: "setMaxSize",
value: function(t) {
for (this.max = t; this.order.length > this.max;) {
var e = this.get(this.order[0]);
e && this.onRemove(e)
}
return this
}
}]),
t
} ();
e.
default = c
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = y.
default.QMAPI_style + t;
return a(e).then(function(n) {
var i = n.version,
o = n.cacheJson;
return u({
styleId: t,
version: i,
serviceSrc: P.styleSrc,
qosId: "st"
}).then(function(n) {
if (n ? l(e, n) : n = o, !n) throw Error("未知错误:获取样式文件失败。");
return (0, m.setBgColor)(t, n.data),
n.data
})
}).
catch(function(t) {
console.error(t)
})
}
function r(t) {
var e = y.
default.QMAPI_style_indoor + t;
return a(e).then(function(n) {
var i = n.version,
o = n.cacheJson;
return u({
styleId: t,
version: i,
serviceSrc: P.indoorStyleSrc,
qosId: "in_st"
}).then(function(t) {
return t ? (l(e, t), t.data) : o ? o.data: null
},
function(t) {
return t && console.error(t.status + ": " + t.message),
null
})
})
}
function a(t) {
return new _.
default(function(e) {
A.support() ? A.get(t,
function(t) {
var n = JSON.parse(t) || null,
i = n ? n.version: -1;
e({
version: i,
cacheJson: n
})
}) : (console.error("兼容性错误当前浏览器不支持LocalStorage。"), e({
version: -1
}))
})
}
function s(t, e) {
return new _.
default(function(n) {
if (A.support()) { (0, m.setBgColor)(e, t);
var i = y.
default.QMAPI_style + "config";
A.set(i, (0, v.
default)({
data:
t
}),
function() {
n(!0)
})
} else console.error("兼容性错误当前浏览器不支持LocalStorage。"),
n(!1)
})
}
function l(t, e) {
A.support() && A.set(t, (0, v.
default)(e))
}
function u(t) {
var e = t.styleId,
n = t.version,
i = void 0 === n ? -1 : n,
o = t.serviceSrc,
r = void 0 === o ? P.styleSrc: o,
a = t.qosId,
s = void 0 === a ? "st": a,
l = d(r, {
id: e,
version: i
});
return new _.
default(function(t, n) {
T.getJSON(null, l,
function(o, r, a) {
"in_st" === s ? c({
err: o,
result: r,
time: a,
resolve: t,
reject: n,
styleId: e,
version: i
}) : f({
err: o,
result: r,
time: a,
resolve: t,
reject: n,
styleId: e,
version: i
})
})
})
}
function c(t) {
var e = t.err,
n = t.result,
i = t.time,
o = t.resolve,
r = t.reject,
a = t.styleId,
s = t.version;
if (!e && n && n.data) {
var l = !0;
for (var u in n.data) if (n.data.hasOwnProperty(u)) {
l = !1;
break
}
l ? o(null) : ((0, x.qos)("in_st", {
styleId: a,
version: s,
loadTime: i
}), o(n))
} else(0, x.qos)("in_st", {
styleId: a,
version: s,
error: e && e.status || 0
}),
r(e || "未知错误:获取样式文件失败。")
}
function f(t) {
var e = t.err,
n = t.result,
i = t.time,
o = t.resolve,
r = t.reject,
a = t.styleId,
s = t.version;
if (e || !n)(0, x.qos)("st", {
styleId: a,
version: s,
error: e && e.status || 0
}),
r(e || "未知错误:获取样式文件失败。");
else {
if (n && n.data && E.
default.isLocal) return void o(n);
if (n && 0 === n.isup) o(null);
else {
var l = n && n.url;
if (!l) return void r("未返回cdn地址获取样式失败。");
T.getJSON(null, l,
function(t, n, l) {
t || !n ? ((0, x.qos)("st", {
styleId: a,
version: s,
error: e && e.status || 0
}), r(e || "未知错误:获取样式文件失败。")) : ((0, x.qos)("st", {
styleId: a,
version: s,
loadTime: i + l
}), o(n))
})
}
}
}
function d(t, e) {
var n = t;
return S.
default.forIn(e,
function(t, e) {
n = n.replace("{" + t + "}", e)
}),
n
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var h = n(113),
v = i(h),
p = n(25),
_ = i(p);
e.loadStyleFile = o,
e.loadIndoorStyleFile = r,
e.setStyleConfig = s,
e.loadStyleFileFromServer = u;
var m = n(496),
g = n(137),
y = i(g),
x = n(43),
b = n(10),
S = i(b),
w = n(105),
E = i(w),
T = n(79),
A = n(89),
P = n(23)
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.styleNameConfig = {
regionTag: {
airportsarea: [196832],
building: [196619, 197120, 197121, 197122, 197123],
commercial: [196890],
grass: [196614, 196615, 196616, 196833],
hospital: [196774],
land: [196609, 196612, 196613, 196617],
otherarea: [196775, 196831, 196856, 196857, 196858, 196859, 196860, 196861, 196862, 196863, 196864, 196865, 196866, 196867, 196868, 196869, 196877, 196894, 196895, 196934],
park: [196622],
parkinglots: [196629, 196787],
resident: [196621, 196627, 196630, 196632],
school: [196773],
sportsfield: [196626, 196789, 196790, 196791, 196792, 196793, 196794, 196795, 196796, 196798],
subwayarea: [196634, 196635, 196636, 196637, 196638, 196639, 196640, 196641, 196642, 196643, 196644, 196645, 196646, 196647, 196648, 196649, 196684, 196685, 196686, 196687, 196688, 196689, 196690, 196651, 196652, 196653, 196654, 196655, 196656, 196657, 196658, 196659, 196660, 196691, 196692, 196693, 196694, 196695, 196696, 196697, 196698, 196661, 196662, 196663, 196664, 196665, 196666, 196667, 196668, 196669, 196670, 196671, 196672, 196673, 196674, 196675, 196676, 196677, 196678, 196679, 196680, 196681, 196682, 196683, 196699, 196700, 196701, 196702, 196703, 196704, 196705, 196706, 196707, 196708, 196709, 196710, 196711, 196712, 196713, 196714, 196715, 196716, 196717, 196718, 196719, 196720, 196721, 196722, 196723, 196724, 196725, 196726, 196727, 196728, 196729, 196730, 196731, 196732, 196733, 196734, 196735, 196736, 196737, 196738, 196739, 196650, 196740, 196741, 196742, 196743, 196744, 196745, 196746, 196747, 196748, 196749, 196750, 196753, 196754, 196755, 196756, 196757, 196758, 196759, 196760, 196761, 196762, 196763, 196764, 196765, 196766, 196767, 196768, 196769, 196770, 196771, 196772, 196776, 196777, 196778, 196779, 196780, 196781, 196782, 196783, 196784, 196785, 196786, 196799, 196800, 196801, 196802, 196803, 196815, 196816, 196817, 196818, 196819, 196820, 196821, 196822, 196823, 196824, 196825, 196826, 196827, 196828, 196829, 196830, 196834, 196835, 196836, 196837, 196838, 196839, 196840, 196841, 196842, 196843, 196844, 196845, 196846, 196847, 196848, 196849, 196850, 196851, 196852, 196853, 196854, 196855, 196870, 196871, 196872, 196874, 196875, 196876, 196881, 196878, 196879, 196880, 196882, 196883, 196884, 196885, 196886, 196887, 196888, 196889, 196891, 196892, 196893, 196896, 196897, 196898, 196899, 196900, 196901, 196902, 196903, 196904, 196905, 196906, 196907, 196908, 196909, 196910, 196911, 196912, 196913, 196914, 196915, 196916, 196917, 196918, 196919, 196920, 196921, 196922, 196923, 196924, 196925, 196926, 196927, 196928, 196929, 196930, 196931, 196932, 196933, 196935, 196936, 196938, 196939, 196940, 196941, 196942, 196944, 196945, 196946, 196947],
water: [196610, 196611, 196618]
},
labelTag: {
aoi: [262149, 262150, 262404, 262405, 262406, 262482, 262483, 262484, 262153, 262952],
autoservice: [262864],
bridge: [262154, 262953, 262946, 262947, 262948, 262949, 262950],
building: [262145, 262409, 262487, 262708, 262713, 262494, 262506, 262954],
business: [262493, 262515],
city: [262157, 262158, 262159, 262160],
commercial: [262942],
continent: [262395, 262426],
country: [262402, 262865],
district: [262155],
education: [262453, 262488],
entertainment: [262486],
ferry: [262162, 262801],
government: [262869],
highway: [262166, 262418, 262425, 262792, 262799, 262812, 262813],
highwaynum: [262164, 262165, 262169, 262170, 262783, 262784],
hospital: [262407],
hotel: [262452],
island: [262146],
lifeservice: [262866, 262867, 262868],
mainroad: [262178, 262179, 262185, 262186, 262415, 262416, 262419, 262420, 262790, 262791, 262797, 262798, 262802, 262803, 262810, 262811],
motorway: [262173, 262417, 262424, 262793, 262800],
nationalnum: [262163, 262168, 262785],
ocean: [262147, 262396, 262707],
other: [262151, 262496, 262497, 262498, 262499, 262500, 262501, 262502, 262503, 262504, 262505, 262507, 262508, 262509, 262510, 262511, 262512, 262514],
path: [262903],
province: [262533],
railway: [262908, 263057],
restrant: [262450, 262495],
roadnum: [262167, 262176, 262786],
scenic: [262288, 262489, 262870, 262941],
secondaryroad: [262180, 262181, 262187, 262188, 262413, 262414, 262421, 262422, 262788, 262789, 262795, 262796, 262804, 262805, 262808, 262809],
shopping: [262451, 262945],
street: [262182, 262189, 262412, 262423, 262787, 262794, 262806, 262807],
subwaygate: [262454, 262455, 262456, 262457, 262458, 262459, 262460, 262461, 262462, 262463, 262464, 262465, 262466, 262467, 262468, 262469, 262470, 262471, 262472, 262473, 262474, 262475, 262476, 262477, 262478, 262479, 262480, 262481, 262492, 262485, 262691, 262696, 262750, 262818, 262841, 262842, 262853, 262921, 262922, 262927, 262940, 263016],
subwayline: [262544, 262545, 262546, 262547, 262548, 262549, 262550, 262551, 262552, 262553, 262554, 262555, 262556, 262557, 262558, 262559, 262560, 262561, 262564, 262565, 262566, 262567, 262568, 262569, 262570, 262571, 262572, 262573, 262574, 262575, 262576, 262577, 262578, 262579, 262580, 262581, 262582, 262583, 262584, 262585, 262586, 262587, 262588, 262589, 262590, 262591, 262592, 262593, 262594, 262595, 262596, 262597, 262598, 262599, 262600, 262601, 262602, 262603, 262604, 262605, 262606, 262607, 262608, 262609, 262610, 262611, 262612, 262613, 262614, 262615, 262616, 262617, 262618, 262619, 262620, 262621, 262622, 262623, 262624, 262625, 262626, 262627, 262628, 262629, 262630, 262631, 262632, 262633, 262634, 262635, 262636, 262637, 262638, 262639, 262640, 262641, 262642, 262643, 262644, 262645, 262646, 262647, 262648, 262649, 262650, 262651, 262652, 262653, 262654, 262655, 262656, 262657, 262658, 262659, 262660, 262661, 262662, 262663, 262664, 262665, 262666, 262667, 262668, 262669, 262670, 262671, 262672, 262673, 262674, 262675, 262676, 262677, 262678, 262679, 262680, 262681, 262682, 262684, 262686, 262688, 262690, 262693, 262695, 262698, 262700, 262702, 262704, 262706, 262710, 262712, 262715, 262717, 262719, 262721, 262723, 262725, 262727, 262729, 262731, 262733, 262735, 262737, 262739, 262741, 262743, 262745, 262747, 262749, 262752, 262762, 262767, 262768, 262769, 262770, 262771, 262772, 262773, 262774, 262775, 262776, 262777, 262778, 262779, 262780, 262781, 262782, 262815, 262817, 262820, 262822, 262824, 262826, 262828, 262830, 262832, 262834, 262836, 262838, 262840, 262844, 262846, 262848, 262850, 262852, 262855, 262857, 262859, 262861, 262863, 262905, 262907, 262910, 262909, 262912, 262914, 262916, 262918, 262920, 262924, 262926, 262929, 262931, 262933, 262935, 262937, 262939, 262944, 262973, 262975, 262977, 262979, 262981, 262983, 262985, 262987, 262989, 262991, 262993, 262995, 262997, 262999, 263001, 263003, 263005, 263007, 263009, 263011, 263013, 263015, 263018, 263020, 263022, 263024, 263026, 263028, 263030, 263032, 263034, 263036, 263038, 263040, 263042, 263044, 263046, 263048, 263050, 263052, 263054, 263056, 263061, 263063, 263065, 263067, 263069, 263073, 263075, 263077, 263079],
subwaystation: [262287],
town: [262156],
transport: [262410, 262871],
village: [262152]
},
lineTag: {
ferry: [131115],
guojie: [131073, 131074, 131075],
highway: [131082, 131088, 131335, 131337, 131090, 131396, 131406],
mainroad: [131084, 131085, 131105, 131106, 131107, 131333, 131342, 131108, 131109, 131110, 131111, 131334, 131344, 131112, 131398, 131399, 131408, 131409],
motorway: [131083, 131089, 131329, 131338, 131091, 131397, 131407],
path: [131336, 131483, 131484, 131405, 131453, 131454, 131455, 131456, 131457, 131506],
pfurniture: [131352, 131353, 131354, 131355, 131511, 131512],
railway: [131086, 131087, 131489],
secondaryroad: [131208, 131097, 131098, 131099, 131331, 131340, 131100, 131101, 131102, 131103, 131332, 131341, 131104, 131400, 131401, 131410, 131411, 131507],
shengjie: [131078, 131079, 131080, 131486],
street: [131092, 131093, 131094, 131330, 131339, 131095, 131096, 131345, 131412, 131505],
subwayline: [131117, 131118, 131119, 131120, 131121, 131122, 131123, 131124, 131125, 131126, 131127, 131128, 131129, 131130, 131131, 131132, 131133, 131134, 131135, 131136, 131137, 131138, 131139, 131140, 131141, 131142, 131143, 131144, 131145, 131146, 131147, 131148, 131149, 131150, 131151, 131152, 131153, 131154, 131155, 131156, 131157, 131158, 131159, 131160, 131161, 131162, 131163, 131164, 131165, 131166, 131167, 131168, 131169, 131170, 131171, 131172, 131173, 131174, 131175, 131176, 131177, 131178, 131179, 131180, 131181, 131182, 131183, 131184, 131185, 131186, 131187, 131188, 131189, 131190, 131191, 131192, 131193, 131194, 131195, 131196, 131197, 131198, 131199, 131200, 131201, 131202, 131203, 131204, 131205, 131206, 131207, 131209, 131210, 131211, 131212, 131213, 131214, 131215, 131216, 131217, 131218, 131219, 131220, 131221, 131222, 131223, 131224, 131225, 131226, 131227, 131228, 131229, 131230, 131231, 131232, 131233, 131234, 131235, 131236, 131237, 131238, 131239, 131240, 131241, 131242, 131243, 131244, 131245, 131246, 131247, 131248, 131249, 131250, 131251, 131252, 131253, 131254, 131255, 131256, 131257, 131258, 131259, 131260, 131261, 131262, 131263, 131264, 131265, 131266, 131267, 131268, 131269, 131270, 131271, 131272, 131273, 131274, 131275, 131276, 131277, 131278, 131279, 131280, 131281, 131282, 131283, 131284, 131285, 131286, 131287, 131288, 131289, 131290, 131291, 131292, 131293, 131294, 131295, 131296, 131297, 131298, 131299, 131300, 131301, 131302, 131303, 131304, 131305, 131306, 131307, 131308, 131309, 131310, 131311, 131312, 131313, 131314, 131315, 131316, 131317, 131318, 131319, 131320, 131321, 131322, 131323, 131324, 131325, 131326, 131327, 131346, 131347, 131348, 131349, 131350, 131351, 131356, 131357, 131358, 131359, 131360, 131361, 131362, 131363, 131364, 131365, 131366, 131367, 131368, 131369, 131370, 131371, 131384, 131385, 131386, 131387, 131388, 131389, 131390, 131391, 131392, 131393, 131394, 131395, 131402, 131403, 131404, 131413, 131414, 131415, 131416, 131417, 131437, 131438, 131439, 131440, 131441, 131442, 131443, 131444, 131445, 131446, 131447, 131448, 131449, 131450, 131451, 131452, 131458, 131459, 131460, 131461, 131462, 131463, 131464, 131465, 131466, 131467, 131468, 131469, 131470, 131471, 131472, 131473, 131474, 131475, 131476, 131477, 131478, 131479, 131480, 131481, 131482, 131487, 131488, 131491, 131492, 131493, 131494, 131495, 131496, 131497, 131498, 131499, 131500, 131501, 131502, 131503, 131504, 131508, 131509, 131510, 131513, 131514, 131515, 131516, 131517, 131518, 131519, 131520, 131521, 131522, 131523, 131524, 131525, 131526, 131527, 131528, 131529, 131530, 131531, 131532, 131533, 131534, 131535, 131536, 131537, 131538, 131539, 131540, 131541, 131542, 131543, 131544, 131545, 131546, 131547, 131548, 131549, 131550, 131551, 131552, 131554, 131555, 131556, 131557, 131558, 131560, 131561, 131562, 131563],
water: [131081]
},
pointTag: {
aoi: [65546, 65550, 65686, 65687, 65688, 65755, 65756, 65757, 65554, 66202, 66618],
autoservice: [65606, 66173, 66174, 66175, 66176, 66177],
bridge: [65547, 66612, 66613, 66614, 66615, 66616, 66617],
building: [65568, 65574, 65577, 65587, 65592, 65594, 65600, 65602, 65603, 65604, 65608, 65619, 65620, 65621, 65622, 65623, 65624, 65625, 65626, 65627, 65628, 65629, 65630, 65632, 65703, 66092, 66098, 66099, 66100, 66101, 66102, 66103, 66096, 66105, 66106, 66107, 66108, 66109, 66110, 66111, 66112, 66113, 66114, 66115, 66116, 66120, 66132, 66133, 66134, 66135, 66136, 66137, 66138, 66139, 66140, 66141, 66142, 66178, 66179, 66180, 66181, 66183, 66184, 66186, 66187, 66189, 66190, 66191, 66192, 66193, 66194, 66224, 66414, 66415, 66416, 66417, 66418, 66419, 66420, 66421, 66422, 66423, 66424, 66425, 66426, 66427, 66428, 66429, 66430, 66431, 66432, 66433, 66434, 66435, 66634, 66684, 66685, 66686, 66850],
business: [65578, 65618, 66582],
carpark: [65607, 66526, 66527],
city: [65543, 65555, 65557, 65558, 65559, 65693],
commercial: [65758],
continent: [65537],
country: [65541, 65556],
district: [65542],
education: [65562, 65571, 65583, 65584, 65701, 65702, 65741, 65742, 66227, 66849],
entertainment: [65569, 65593, 65613, 65743, 66199, 66200, 66226],
government: [65579],
hospital: [65581, 65598, 65705, 66852],
hotel: [65582, 65733, 65734, 65735, 66123, 66124, 66125, 66126, 66127, 66128, 66163, 66164, 66165, 66166, 66167, 66168, 66169, 66170, 66171, 66172, 66188, 66222, 66490, 66541],
island: [65539],
lifeservice: [65586, 65596, 65597, 65599, 65617, 65738, 65739, 65740, 66118, 66119, 66129, 66182, 66185, 66221],
ocean: [65538, 65540, 65549],
other: [65553, 65616, 65631, 65700, 65706, 65707, 65708, 65709, 66196, 66564, 66565, 66577],
province: [66572],
restrant: [65591, 65595, 65601, 65729, 65730, 65731, 65732, 65704, 66223, 66851],
scenic: [65552, 65563, 65564, 65565, 65566, 65567, 65573, 65585, 65744, 66198, 66201, 66491, 66492, 66493, 66494, 66495, 66496, 66497, 66498, 66499, 66500, 66501, 66502, 66503, 66504, 66505, 66506, 66507, 66508, 66509, 66510, 66511, 66512, 66513, 66514, 66515, 66516, 66517, 66518, 66519, 66520, 66521, 66522, 66523, 66524, 66525, 66528, 66529, 66530, 66531, 66532, 66533, 66534, 66535, 66536, 66537, 66538, 66539, 66540, 66542, 66543, 66544, 66545, 66546, 66547, 66548, 66549, 66550, 66551, 66552, 66553, 66554, 66555, 66556, 66557, 66558, 66559, 66560, 66561, 66562, 66563],
shopping: [65588, 65589, 65736, 65737, 66619],
subwaygate: [65836, 65837, 65838, 65839, 65840, 65841, 65842, 65843, 65844, 65845, 65745, 65846, 65847, 65848, 65849, 65850, 65851, 65852, 65853, 65854, 65855, 65856, 65857, 65858, 65859, 65860, 65861, 65862, 65863, 65864, 65894, 66080, 66086, 66160, 66233, 66398, 66402, 66413, 66590, 66594, 66600, 66610, 66679, 66682, 66775, 66844],
subwayline: [65936, 65937, 65938, 65939, 65940, 65941, 65942, 65943, 65944, 65945, 65946, 65947, 65948, 65949, 65950, 65951, 65952, 65953, 65954, 65955, 65956, 65957, 65958, 65959, 65960, 65961, 65962, 65963, 65964, 65965, 65966, 65967, 65968, 65969, 65970, 65971, 65972, 65973, 65974, 65975, 65976, 65978, 65979, 65980, 65981, 65982, 65983, 65984, 65985, 65986, 65987, 65988, 65989, 65990, 65991, 65992, 65993, 65994, 65995, 65996, 65997, 65998, 65999, 66e3, 66001, 66002, 66003, 66004, 66005, 66006, 66007, 66008, 66009, 66010, 66011, 66012, 66013, 66014, 66015, 66016, 66017, 66018, 66019, 66020, 66021, 66022, 66023, 66024, 66025, 66026, 66027, 66028, 66029, 66030, 66031, 66032, 66033, 66034, 66035, 66036, 66037, 66038, 66039, 66040, 66041, 66042, 66043, 66044, 66045, 66046, 66047, 66048, 66049, 66050, 66051, 66052, 66053, 66054, 66055, 66056, 66057, 66058, 66059, 66060, 66061, 66062, 66063, 66064, 66065, 66066, 66067, 66068, 66069, 66070, 66071, 66072, 66073, 66074, 66075, 66076, 66081, 66082, 66087, 66088, 66089, 66090, 66091, 66097, 66104, 66117, 66130, 66131, 66143, 66144, 66145, 66146, 66147, 66148, 66149, 66150, 66151, 66152, 66153, 66154, 66155, 66156, 66161, 66162, 66195, 66203, 66206, 66207, 66208, 66209, 66210, 66211, 66212, 66213, 66214, 66215, 66216, 66217, 66218, 66219, 66220, 66228, 66229, 66234, 66377, 66378, 66380, 66382, 66385, 66387, 66389, 66390, 66391, 66392, 66403, 66404, 66405, 66406, 66409, 66486, 66487, 66566, 66568, 66569, 66573, 66574, 66579, 66581, 66583, 66584, 66585, 66586, 66595, 66596, 66601, 66602, 66603, 66604, 66605, 66606, 66611, 66638, 66639, 66640, 66641, 66642, 66643, 66644, 66645, 66646, 66647, 66648, 66649, 66650, 66651, 66652, 66653, 66654, 66655, 66656, 66657, 66658, 66659, 66660, 66661, 66662, 66663, 66664, 66665, 66666, 66667, 66668, 66669, 66670, 66671, 66672, 66673, 66674, 66675, 66676, 66683, 66687, 66688, 66834, 66835, 66836, 66837, 66838, 66840, 66841, 66845, 66848],
subwaystation: [65635, 65637, 65639, 65641, 65643, 65645, 65647, 65649, 65651, 65653, 65654, 65655, 65657, 65659, 65661, 65663, 65665, 65667, 65669, 65673, 65675, 65677, 65681, 65683, 65684, 65689, 65691, 65694, 65696, 65698, 65710, 66077, 66083, 66157, 66204, 66205, 66230, 66375, 66235, 66236, 66237, 66238, 66239, 66240, 66241, 66242, 66243, 66244, 66245, 66246, 66247, 66248, 66249, 66250, 66251, 66252, 66253, 66254, 66255, 66256, 66257, 66258, 66259, 66260, 66261, 66262, 66263, 66264, 66265, 66266, 66267, 66268, 66269, 66270, 66271, 66272, 66273, 66274, 66275, 66276, 66277, 66278, 66279, 66280, 66281, 66282, 66283, 66284, 66285, 66286, 66287, 66288, 66289, 66290, 66291, 66292, 66293, 66294, 66295, 66296, 66297, 66298, 66299, 66300, 66301, 66302, 66303, 66304, 66305, 66306, 66307, 66308, 66309, 66310, 66311, 66312, 66313, 66314, 66315, 66316, 66317, 66318, 66319, 66320, 66321, 66322, 66323, 66324, 66325, 66326, 66327, 66328, 66329, 66330, 66331, 66332, 66333, 66334, 66335, 66336, 66337, 66338, 66339, 66340, 66342, 66343, 66344, 66345, 66346, 66347, 66348, 66349, 66350, 66351, 66352, 66353, 66354, 66355, 66356, 66357, 66358, 66359, 66360, 66361, 66362, 66363, 66364, 66365, 66366, 66367, 66368, 66369, 66370, 66371, 66372, 66373, 66374, 66376, 66379, 66381, 66383, 66384, 66386, 66388, 66393, 66394, 66395, 66399, 66407, 66408, 66410, 66411, 66488, 66489, 66567, 66570, 66571, 66575, 66576, 66580, 66587, 66588, 66591, 66592, 66597, 66598, 66607, 66608, 66677, 66678, 66680, 66681, 66773, 66774, 66842, 66843],
town: [65544],
transport: [65560, 65570, 65572, 65576, 65605, 65609, 65610, 65611, 65614, 65615, 66093, 66094, 66095, 66121, 66122, 66225],
village: [65545, 65551, 65580, 66578]
}
}
},
function(t, e, n) {
"use strict";
function i(t, e) {
var n = (0, r.
default)(t.getLat()),
i = (0, r.
default)(e.getLat());
return 2 * Math.asin(Math.sqrt(Math.pow(Math.sin((n - i) / 2), 2) + Math.cos(n) * Math.cos(i) * Math.pow(Math.sin(((0, r.
default)(t.getLng()) - (0, r.
default)(e.getLng())) / 2), 2)))
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(124),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o);
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
return (0, a.
default)(t, e) * (n || l.
default)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(387),
a = i(r),
s = n(295),
l = i(s);
e.
default = o
},
,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(106),
p = i(v),
_ = n(337),
m = i(_),
g = n(28),
y = n(43),
x = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this));
return n.onInit(t),
n.dom = n.createDOM(),
n.map = null,
n.setMap(t.map),
(0, y.statCn)("DOMOverlay"),
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_addToMap",
value: function() {
this.map && (this.map._overlayer.childs.domOverlayLayer.appendChild(this.dom), this.updateDOM(), this._listener = (0, g.throttleWithFrame)(this.updateDOM.bind(this)), this.map.on("move", this._listener), this.map.on("resize", this._listener), this.map.on("offset_changed", this._listener), this._onMapdestroy = this._onMapdestroy.bind(this), this.map.on("destroy", this._onMapdestroy))
}
},
{
key: "_onMapdestroy",
value: function() {
this.setMap(null)
}
},
{
key: "_removeFromMap",
value: function() {
this.map && (this.dom.parentNode && this.dom.parentNode.removeChild(this.dom), this.map.off("move", this._listener), this.map.off("resize", this._listener), this.map.off("offset_changed", this._listener), this.map.off("destroy", this._onMapdestroy), this._listener = null)
}
},
{
key: "getMap",
value: function() {
return this.map
}
},
{
key: "setMap",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null;
return this.map === t ? this: !t || t instanceof m.
default ? (this._removeFromMap(), this.map = t, this._addToMap(), this) : (console.error("类型错误: map参数类型错误应为TMap.Map。"), this)
}
},
{
key: "destroy",
value: function() {
return this.onDestroy(),
this.setMap(null),
this.removeAllListeners(),
this
}
},
{
key: "onInit",
value: function() {}
},
{
key: "onDestroy",
value: function() {}
},
{
key: "createDOM",
value: function() {
return document.createElement("div")
}
},
{
key: "updateDOM",
value: function() {}
}]),
e
} (p.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(74),
s = i(a),
l = n(10),
u = {
color: "rgba(0, 0, 0, 1)",
backgroundColor: "rgba(0, 0, 0, 0)",
borderColor: "rgba(0, 0, 0, 0)",
strokeColor: "rgba(0, 0, 0, 0)",
borderWidth: 0,
size: 14,
scale: 1,
borderRadius: 0,
offset: new s.
default(0, 0),
angle: 0,
alignment: "center",
verticalAlignment: "middle"
},
c = function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, r.
default)(this, t),
e = (0, l.extend)({},
u, e),
this.color = e.color,
this.backgroundColor = e.backgroundColor,
this.borderColor = e.borderColor,
this.borderWidth = e.borderWidth,
this.strokeColor = e.strokeColor,
this.size = e.size,
this.width = e.width,
this.height = e.height,
this.padding = e.padding,
this.borderRadius = e.borderRadius,
this.scale = e.scale,
this.offset = e.offset,
this.angle = e.angle,
this.alignment = e.alignment,
this.verticalAlignment = e.verticalAlignment
};
e.
default = c
},
function(t, e, n) {
"use strict";
function i() {
r.removeEventListener("DOMContentLoaded", i, !1),
o.fireReady()
}
var o = [],
r = document;
o.isReady = !1,
o._used = !1,
o.ready = function(t) {
o.initReady(),
o.isReady ? t() : o.push(t)
},
o.initReady = function() {
if (!o._used) {
if (o._used = !0, "complete" === r.readyState || "interactive" === r.readyState) return o.fireReady();
r.addEventListener("DOMContentLoaded", i, !1)
}
},
o.fireReady = function() {
if (!o.isReady) {
if (!r.body) return setTimeout(o.fireReady, 16);
if (o.isReady = !0, o.length) for (var t, e = 0; t = o[e]; e++) t()
}
},
e.domReady = o.ready
},
function(t, e, n) {
"use strict";
function i(t, e) {
if (!t.unprojectFromContainer(e)) return ! 1;
var n = !0,
i = t.renderEngine.camera.getFogEdge()[1] + .15;
if (i < 1) {
var o = (1 - i) * t.transform.height / 2;
e.y < o && (n = !1)
}
return n
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.isResponsible = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(211),
m = i(_),
g = n(110),
y = n(139),
x = n(112),
b = n(219),
S = n(10),
w = i(S),
E = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.store = new g.Store("buffer", 128, 16, b.deleteInstanceCacllback),
n.commonUniformList = ["uMatrix", "uCenter", "uZoom", "uPixelsPerMeter", "uResolution", "uProject_uCommonUnitsPerWorldUnit", "uProject_uCommonUnitsPerWorldUnit2", "uRelativeCenter"],
n
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "draw",
value: function(t, e, n, i) {
if (t && n) {
var o = this.gl;
o.useProgram(o.program),
this.setUniforms(t, e, n, i);
var r = this.setBuffers(t);
o.drawElements(o.TRIANGLES, r.index.length, r.index.type, 0),
o.bindBuffer(o.ARRAY_BUFFER, null),
o.bindBuffer(o.ELEMENT_ARRAY_BUFFER, null)
}
}
},
{
key: "setBuffers",
value: function(t) {
var e = this.gl,
n = this.store,
i = t.uid,
o = !1;
if (n) {
n.exist(i) ? this.isBufferChanged(n.get(i), t) && (o = !0) : n.set(i, this.createBuffer(t));
var r = n.get(i);
return w.
default.forIn(r,
function(n, i) {
var r = i.buffer,
a = i.location,
s = i.size,
l = i.type;
r.bind(),
o && (r.bufferData(t[n], {
usage: e.DYNAMIC_DRAW
}), i.data = t[n]),
"index" !== n && r.pointToAttrib({
location: a,
size: s,
type: l
})
}),
r
}
}
},
{
key: "setUniforms",
value: function(t, e, n, i) {
var o = this.gl,
r = e.center,
a = e.zoom,
s = 1 / (0, x.getSpatialResolution)(a),
l = i.distanceScales || e.getDistanceScales(),
u = (0, y.splitLatLngNumber)(r.lat),
c = (0, y.splitLatLngNumber)(r.lng),
f = {
latPart: (0, y.splitLatLngNumber)(t.center.lat),
lngPart: (0, y.splitLatLngNumber)(t.center.lng)
};
o.uniformMatrix4fv(this.uMatrix, !1, n.elements),
o.uniform4f(this.uCenter, c.high, u.high, c.low, u.low),
o.uniform1f(this.uZoom, a),
o.uniform3f(this.uPixelsPerMeter, s, s, s),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit, l.pixelsPerDegree[0], l.pixelsPerDegree[1], l.pixelsPerDegree[2]),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit2, l.pixelsPerDegree2[0], l.pixelsPerDegree2[1], l.pixelsPerDegree2[2]),
o.uniform2f(this.uResolution, e.width, e.height),
o.uniform4f(this.uRelativeCenter, f.lngPart.high, f.latPart.high, f.lngPart.low, f.latPart.low)
}
},
{
key: "destroy",
value: function() {
this.commonUniformList = null,
(0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (m.
default);
e.
default = E
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(513),
f = i(c),
d = new Float32Array([1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, -1, 1, 0, 1]),
h = function() {
function t(e) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; (0, s.
default)(this, t);
var i = n.id,
o = void 0 === i ? "pass": i;
this.id = o,
this.gl = e,
this.props = {},
(0, r.
default)(this.props, n)
}
return (0, u.
default)(t, [{
key: "setProps",
value: function(t) { (0, r.
default)(this.props, t)
}
},
{
key: "render",
value: function(t) {
var e = t.inputBuffer,
n = t.outputBuffer,
i = t.preserve,
o = void 0 !== i && i,
r = t.colorIndex,
a = void 0 === r ? 0 : r,
s = this.gl;
n ? n.bind(s) : s.frameBuffer && s.frameBuffer.unbind(),
o || s.clear(s.COLOR_BUFFER_BIT | s.DEPTH_BUFFER_BIT | s.STENCIL_BUFFER_BIT),
this._renderPass({
inputBuffer: e,
colorIndex: a
})
}
},
{
key: "destroy",
value: function() {
this._onDestroy(),
this._painter && this._painter.destroy(),
this.id = null,
this.gl = null,
this.props = null
}
},
{
key: "_onDestroy",
value: function() {}
},
{
key: "_renderPass",
value: function(t) {
var e = t.inputBuffer,
n = this.gl;
this._painter || (this._painter = new f.
default({
gl:
n
})),
e.color.bind(n),
this._painter.preDraw(),
this._painter.draw({
matrix: {
elements: d
},
size: {
width: 2,
height: 2
},
texInfo: {
s: 0,
t: 0,
w: 1,
h: 1
},
opacity: 1
})
}
}]),
t
} ();
e.
default = h
},
function(t, e, n) {
"use strict";
function i(t) {
return Math.pow(2, Math.ceil((0, r.
default)(t)))
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(306),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o);
e.getPowerOf2 = i,
e.
default = {
extendCanvasToPow2: function(t, e) {
function n(t) {
if (t < 2) return ! 1;
var e = (0, r.
default)(t);
return e === ~~e
}
return e = e || 1,
t && t.isPow2 && 1 === e ? t: n(t.width) && n(t.height) && 1 === e ? (t.isPow2 = !0, t) : function(t, e) {
var n = document.createElement("canvas"),
o = n.getContext("2d");
return n.width = i(t.width * e),
n.height = i(t.height * e),
o.drawImage(t, 0, 0, n.width, n.height),
n.isPow2 = !0,
n
} (t, e)
}
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(475),
u = i(l),
c = n(247).
default,
f = n(74),
d = n(47),
h = n(10),
v = c[0],
p = function() {
function t() { (0, r.
default)(this, t),
this.a = new f(128, 128),
this.b = 256 / 360,
this.c = 256 / (2 * Math.PI),
this.d = !0
}
return (0, s.
default)(t, [{
key: "fromLatLngToPoint",
value: function(t) {
var e = new f(0, 0),
n = this.a;
e.x = n.x + t.lng * this.b;
var i = h.clamp(Math.sin(h.degreeToRadian(t.lat)), -(1 - 1e-15), 1 - 1e-15);
return e.y = n.y + .5 * Math.log((1 + i) / (1 - i)) * -this.c,
e.z = t.height * this.c / v * Math.cos(h.degreeToRadian(t.lat)),
e
}
},
{
key: "fromPointToLatLng",
value: function(t) {
var e = this.a,
n = h.radianToDegree(2 * Math.atan(Math.exp((t.y - e.y) / -this.c)) - Math.PI / 2),
i = (t.x - e.x) / this.b,
o = (t.z || 0) * v * Math.cos(h.degreeToRadian(n)) / this.c;
return new d(n, i, o, !0)
}
},
{
key: "latLngToCoord",
value: function(t, e) {
var n = this.fromLatLngToPoint(t);
if (n) {
var i = e,
o = Math.pow(2, i);
n.x = n.x * o,
n.y = n.y * o,
n.z = n.z * o
}
return n
}
},
{
key: "coordToLatLng",
value: function(t, e) {
var n = e,
i = Math.pow(2, n),
o = new u.
default(t.x / i, t.y / i, (t.z || 0) / i);
return this.fromPointToLatLng(o)
}
}]),
t
} ();
t.exports = p
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.HEX_REG = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/,
e.RGB_REG = /^rgb\((\d+,?\s*){3}\)$/,
e.RGBA_REG = /^rgba\((\d+,?\s*){3},\s*[0-9.]+\)$/
},
function(t, e, n) {
"use strict";
function i(t, e, n) {
return t * (1 - n) + e * n
}
function o(t, e) {
t = a.
default.wrap(t, 0, 360);
var n = Math.abs(t, e);
return Math.abs(t - 360 - e) < n && (t -= 360),
Math.abs(t + 360 - e) < n && (t += 360),
t
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(10),
a = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
i.number = i,
i.vec2 = function(t, e, n) {
return [i(t[0], e[0], n), i(t[1], e[1], n)]
},
i.color = function(t, e, n) {
return [i(t[0], e[0], n), i(t[1], e[1], n), i(t[2], e[2], n), i(t[3], e[3], n)]
},
i.array = function(t, e, n) {
return t.map(function(t, o) {
return i(t, e[o], n)
})
},
i.latlng = function(t, e, n) {
return [i(t.getLat(), e.getLat(), n), i(t.getLng(), e.getLng(), n)]
},
i.rotation = function(t, e, n) {
return e = o(e, t),
i(t, e, n)
},
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t) {
return r(o(a(t)))
}
function o(t) {
return l(u(s(t), 8 * t.length))
}
function r(t) {
for (var e, n = m ? "0123456789ABCDEF": "0123456789abcdef", i = "", o = 0; o < t.length; o++) e = t.charCodeAt(o),
i += n.charAt(e >>> 4 & 15) + n.charAt(15 & e);
return i
}
function a(t) {
for (var e, n, i = "",
o = -1; ++o < t.length;) e = t.charCodeAt(o),
n = o + 1 < t.length ? t.charCodeAt(o + 1) : 0,
55296 <= e && e <= 56319 && 56320 <= n && n <= 57343 && (e = 65536 + ((1023 & e) << 10) + (1023 & n), o++),
e <= 127 ? i += String.fromCharCode(e) : e <= 2047 ? i += String.fromCharCode(192 | e >>> 6 & 31, 128 | 63 & e) : e <= 65535 ? i += String.fromCharCode(224 | e >>> 12 & 15, 128 | e >>> 6 & 63, 128 | 63 & e) : e <= 2097151 && (i += String.fromCharCode(240 | e >>> 18 & 7, 128 | e >>> 12 & 63, 128 | e >>> 6 & 63, 128 | 63 & e));
return i
}
function s(t) {
for (var e = Array(t.length >> 2), n = 0; n < e.length; n++) e[n] = 0;
for (var n = 0; n < 8 * t.length; n += 8) e[n >> 5] |= (255 & t.charCodeAt(n / 8)) << n % 32;
return e
}
function l(t) {
for (var e = "",
n = 0; n < 32 * t.length; n += 8) e += String.fromCharCode(t[n >> 5] >>> n % 32 & 255);
return e
}
function u(t, e) {
t[e >> 5] |= 128 << e % 32,
t[14 + (e + 64 >>> 9 << 4)] = e;
for (var n = 1732584193,
i = -271733879,
o = -1732584194,
r = 271733878,
a = 0; a < t.length; a += 16) {
var s = n,
l = i,
u = o,
c = r;
n = f(n, i, o, r, t[a + 0], 7, -680876936),
r = f(r, n, i, o, t[a + 1], 12, -389564586),
o = f(o, r, n, i, t[a + 2], 17, 606105819),
i = f(i, o, r, n, t[a + 3], 22, -1044525330),
n = f(n, i, o, r, t[a + 4], 7, -176418897),
r = f(r, n, i, o, t[a + 5], 12, 1200080426),
o = f(o, r, n, i, t[a + 6], 17, -1473231341),
i = f(i, o, r, n, t[a + 7], 22, -45705983),
n = f(n, i, o, r, t[a + 8], 7, 1770035416),
r = f(r, n, i, o, t[a + 9], 12, -1958414417),
o = f(o, r, n, i, t[a + 10], 17, -42063),
i = f(i, o, r, n, t[a + 11], 22, -1990404162),
n = f(n, i, o, r, t[a + 12], 7, 1804603682),
r = f(r, n, i, o, t[a + 13], 12, -40341101),
o = f(o, r, n, i, t[a + 14], 17, -1502002290),
i = f(i, o, r, n, t[a + 15], 22, 1236535329),
n = d(n, i, o, r, t[a + 1], 5, -165796510),
r = d(r, n, i, o, t[a + 6], 9, -1069501632),
o = d(o, r, n, i, t[a + 11], 14, 643717713),
i = d(i, o, r, n, t[a + 0], 20, -373897302),
n = d(n, i, o, r, t[a + 5], 5, -701558691),
r = d(r, n, i, o, t[a + 10], 9, 38016083),
o = d(o, r, n, i, t[a + 15], 14, -660478335),
i = d(i, o, r, n, t[a + 4], 20, -405537848),
n = d(n, i, o, r, t[a + 9], 5, 568446438),
r = d(r, n, i, o, t[a + 14], 9, -1019803690),
o = d(o, r, n, i, t[a + 3], 14, -187363961),
i = d(i, o, r, n, t[a + 8], 20, 1163531501),
n = d(n, i, o, r, t[a + 13], 5, -1444681467),
r = d(r, n, i, o, t[a + 2], 9, -51403784),
o = d(o, r, n, i, t[a + 7], 14, 1735328473),
i = d(i, o, r, n, t[a + 12], 20, -1926607734),
n = h(n, i, o, r, t[a + 5], 4, -378558),
r = h(r, n, i, o, t[a + 8], 11, -2022574463),
o = h(o, r, n, i, t[a + 11], 16, 1839030562),
i = h(i, o, r, n, t[a + 14], 23, -35309556),
n = h(n, i, o, r, t[a + 1], 4, -1530992060),
r = h(r, n, i, o, t[a + 4], 11, 1272893353),
o = h(o, r, n, i, t[a + 7], 16, -155497632),
i = h(i, o, r, n, t[a + 10], 23, -1094730640),
n = h(n, i, o, r, t[a + 13], 4, 681279174),
r = h(r, n, i, o, t[a + 0], 11, -358537222),
o = h(o, r, n, i, t[a + 3], 16, -722521979),
i = h(i, o, r, n, t[a + 6], 23, 76029189),
n = h(n, i, o, r, t[a + 9], 4, -640364487),
r = h(r, n, i, o, t[a + 12], 11, -421815835),
o = h(o, r, n, i, t[a + 15], 16, 530742520),
i = h(i, o, r, n, t[a + 2], 23, -995338651),
n = v(n, i, o, r, t[a + 0], 6, -198630844),
r = v(r, n, i, o, t[a + 7], 10, 1126891415),
o = v(o, r, n, i, t[a + 14], 15, -1416354905),
i = v(i, o, r, n, t[a + 5], 21, -57434055),
n = v(n, i, o, r, t[a + 12], 6, 1700485571),
r = v(r, n, i, o, t[a + 3], 10, -1894986606),
o = v(o, r, n, i, t[a + 10], 15, -1051523),
i = v(i, o, r, n, t[a + 1], 21, -2054922799),
n = v(n, i, o, r, t[a + 8], 6, 1873313359),
r = v(r, n, i, o, t[a + 15], 10, -30611744),
o = v(o, r, n, i, t[a + 6], 15, -1560198380),
i = v(i, o, r, n, t[a + 13], 21, 1309151649),
n = v(n, i, o, r, t[a + 4], 6, -145523070),
r = v(r, n, i, o, t[a + 11], 10, -1120210379),
o = v(o, r, n, i, t[a + 2], 15, 718787259),
i = v(i, o, r, n, t[a + 9], 21, -343485551),
n = p(n, s),
i = p(i, l),
o = p(o, u),
r = p(r, c)
}
return Array(n, i, o, r)
}
function c(t, e, n, i, o, r) {
return p(_(p(p(e, t), p(i, r)), o), n)
}
function f(t, e, n, i, o, r, a) {
return c(e & n | ~e & i, t, e, o, r, a)
}
function d(t, e, n, i, o, r, a) {
return c(e & i | n & ~i, t, e, o, r, a)
}
function h(t, e, n, i, o, r, a) {
return c(e ^ n ^ i, t, e, o, r, a)
}
function v(t, e, n, i, o, r, a) {
return c(n ^ (e | ~i), t, e, o, r, a)
}
function p(t, e) {
var n = (65535 & t) + (65535 & e);
return (t >> 16) + (e >> 16) + (n >> 16) << 16 | 65535 & n
}
function _(t, e) {
return t << e | t >>> 32 - e
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var m = 0;
e.
default = i
},
function(t, e, n) {
t.exports = {
default:
n(410),
__esModule: !0
}
},
function(t, e, n) {
var i = function() {
return this
} () || Function("return this")(),
o = i.regeneratorRuntime && Object.getOwnPropertyNames(i).indexOf("regeneratorRuntime") >= 0,
r = o && i.regeneratorRuntime;
if (i.regeneratorRuntime = void 0, t.exports = n(403), o) i.regeneratorRuntime = r;
else try {
delete i.regeneratorRuntime
} catch(t) {
i.regeneratorRuntime = void 0
}
},
function(t, e) { !
function(e) {
"use strict";
function n(t, e, n, i) {
var r = e && e.prototype instanceof o ? e: o,
a = Object.create(r.prototype),
s = new h(i || []);
return a._invoke = u(t, n, s),
a
}
function i(t, e, n) {
try {
return {
type: "normal",
arg: t.call(e, n)
}
} catch(t) {
return {
type: "throw",
arg: t
}
}
}
function o() {}
function r() {}
function a() {}
function s(t) { ["next", "throw", "return"].forEach(function(e) {
t[e] = function(t) {
return this._invoke(e, t)
}
})
}
function l(t) {
function e(n, o, r, a) {
var s = i(t[n], t, o);
if ("throw" !== s.type) {
var l = s.arg,
u = l.value;
return u && "object" == typeof u && g.call(u, "__await") ? Promise.resolve(u.__await).then(function(t) {
e("next", t, r, a)
},
function(t) {
e("throw", t, r, a)
}) : Promise.resolve(u).then(function(t) {
l.value = t,
r(l)
},
a)
}
a(s.arg)
}
function n(t, n) {
function i() {
return new Promise(function(i, o) {
e(t, n, i, o)
})
}
return o = o ? o.then(i, i) : i()
}
var o;
this._invoke = n
}
function u(t, e, n) {
var o = T;
return function(r, a) {
if (o === P) throw new Error("Generator is already running");
if (o === I) {
if ("throw" === r) throw a;
return p()
}
for (n.method = r, n.arg = a;;) {
var s = n.delegate;
if (s) {
var l = c(s, n);
if (l) {
if (l === k) continue;
return l
}
}
if ("next" === n.method) n.sent = n._sent = n.arg;
else if ("throw" === n.method) {
if (o === T) throw o = I,
n.arg;
n.dispatchException(n.arg)
} else "return" === n.method && n.abrupt("return", n.arg);
o = P;
var u = i(t, e, n);
if ("normal" === u.type) {
if (o = n.done ? I: A, u.arg === k) continue;
return {
value: u.arg,
done: n.done
}
}
"throw" === u.type && (o = I, n.method = "throw", n.arg = u.arg)
}
}
}
function c(t, e) {
var n = t.iterator[e.method];
if (n === _) {
if (e.delegate = null, "throw" === e.method) {
if (t.iterator.
return && (e.method = "return", e.arg = _, c(t, e), "throw" === e.method)) return k;
e.method = "throw",
e.arg = new TypeError("The iterator does not provide a 'throw' method")
}
return k
}
var o = i(n, t.iterator, e.arg);
if ("throw" === o.type) return e.method = "throw",
e.arg = o.arg,
e.delegate = null,
k;
var r = o.arg;
return r ? r.done ? (e[t.resultName] = r.value, e.next = t.nextLoc, "return" !== e.method && (e.method = "next", e.arg = _), e.delegate = null, k) : r: (e.method = "throw", e.arg = new TypeError("iterator result is not an object"), e.delegate = null, k)
}
function f(t) {
var e = {
tryLoc: t[0]
};
1 in t && (e.catchLoc = t[1]),
2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]),
this.tryEntries.push(e)
}
function d(t) {
var e = t.completion || {};
e.type = "normal",
delete e.arg,
t.completion = e
}
function h(t) {
this.tryEntries = [{
tryLoc: "root"
}],
t.forEach(f, this),
this.reset(!0)
}
function v(t) {
if (t) {
var e = t[x];
if (e) return e.call(t);
if ("function" == typeof t.next) return t;
if (!isNaN(t.length)) {
var n = -1,
i = function e() {
for (; ++n < t.length;) if (g.call(t, n)) return e.value = t[n],
e.done = !1,
e;
return e.value = _,
e.done = !0,
e
};
return i.next = i
}
}
return {
next: p
}
}
function p() {
return {
value: _,
done: !0
}
}
var _, m = Object.prototype,
g = m.hasOwnProperty,
y = "function" == typeof Symbol ? Symbol: {},
x = y.iterator || "@@iterator",
b = y.asyncIterator || "@@asyncIterator",
S = y.toStringTag || "@@toStringTag",
w = "object" == typeof t,
E = e.regeneratorRuntime;
if (E) return void(w && (t.exports = E));
E = e.regeneratorRuntime = w ? t.exports: {},
E.wrap = n;
var T = "suspendedStart",
A = "suspendedYield",
P = "executing",
I = "completed",
k = {},
L = {};
L[x] = function() {
return this
};
var M = Object.getPrototypeOf,
C = M && M(M(v([])));
C && C !== m && g.call(C, x) && (L = C);
var R = a.prototype = o.prototype = Object.create(L);
r.prototype = R.constructor = a,
a.constructor = r,
a[S] = r.displayName = "GeneratorFunction",
E.isGeneratorFunction = function(t) {
var e = "function" == typeof t && t.constructor;
return !! e && (e === r || "GeneratorFunction" === (e.displayName || e.name))
},
E.mark = function(t) {
return Object.setPrototypeOf ? Object.setPrototypeOf(t, a) : (t.__proto__ = a, S in t || (t[S] = "GeneratorFunction")),
t.prototype = Object.create(R),
t
},
E.awrap = function(t) {
return {
__await: t
}
},
s(l.prototype),
l.prototype[b] = function() {
return this
},
E.AsyncIterator = l,
E.async = function(t, e, i, o) {
var r = new l(n(t, e, i, o));
return E.isGeneratorFunction(e) ? r: r.next().then(function(t) {
return t.done ? t.value: r.next()
})
},
s(R),
R[S] = "Generator",
R[x] = function() {
return this
},
R.toString = function() {
return "[object Generator]"
},
E.keys = function(t) {
var e = [];
for (var n in t) e.push(n);
return e.reverse(),
function n() {
for (; e.length;) {
var i = e.pop();
if (i in t) return n.value = i,
n.done = !1,
n
}
return n.done = !0,
n
}
},
E.values = v,
h.prototype = {
constructor: h,
reset: function(t) {
if (this.prev = 0, this.next = 0, this.sent = this._sent = _, this.done = !1, this.delegate = null, this.method = "next", this.arg = _, this.tryEntries.forEach(d), !t) for (var e in this)"t" === e.charAt(0) && g.call(this, e) && !isNaN( + e.slice(1)) && (this[e] = _)
},
stop: function() {
this.done = !0;
var t = this.tryEntries[0],
e = t.completion;
if ("throw" === e.type) throw e.arg;
return this.rval
},
dispatchException: function(t) {
function e(e, i) {
return r.type = "throw",
r.arg = t,
n.next = e,
i && (n.method = "next", n.arg = _),
!!i
}
if (this.done) throw t;
for (var n = this,
i = this.tryEntries.length - 1; i >= 0; --i) {
var o = this.tryEntries[i],
r = o.completion;
if ("root" === o.tryLoc) return e("end");
if (o.tryLoc <= this.prev) {
var a = g.call(o, "catchLoc"),
s = g.call(o, "finallyLoc");
if (a && s) {
if (this.prev < o.catchLoc) return e(o.catchLoc, !0);
if (this.prev < o.finallyLoc) return e(o.finallyLoc)
} else if (a) {
if (this.prev < o.catchLoc) return e(o.catchLoc, !0)
} else {
if (!s) throw new Error("try statement without catch or finally");
if (this.prev < o.finallyLoc) return e(o.finallyLoc)
}
}
}
},
abrupt: function(t, e) {
for (var n = this.tryEntries.length - 1; n >= 0; --n) {
var i = this.tryEntries[n];
if (i.tryLoc <= this.prev && g.call(i, "finallyLoc") && this.prev < i.finallyLoc) {
var o = i;
break
}
}
o && ("break" === t || "continue" === t) && o.tryLoc <= e && e <= o.finallyLoc && (o = null);
var r = o ? o.completion: {};
return r.type = t,
r.arg = e,
o ? (this.method = "next", this.next = o.finallyLoc, k) : this.complete(r)
},
complete: function(t, e) {
if ("throw" === t.type) throw t.arg;
return "break" === t.type || "continue" === t.type ? this.next = t.arg: "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e),
k
},
finish: function(t) {
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
var n = this.tryEntries[e];
if (n.finallyLoc === t) return this.complete(n.completion, n.afterLoc),
d(n),
k
}
},
catch: function(t) {
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
var n = this.tryEntries[e];
if (n.tryLoc === t) {
var i = n.completion;
if ("throw" === i.type) {
var o = i.arg;
d(n)
}
return o
}
}
throw new Error("illegal catch attempt")
},
delegateYield: function(t, e, n) {
return this.delegate = {
iterator: v(t),
resultName: e,
nextLoc: n
},
"next" === this.method && (this.arg = _),
k
}
}
} (function() {
return this
} () || Function("return this")())
},
, , , , ,
function(t, e, n) {
var i = n(2),
o = i.JSON || (i.JSON = {
stringify: JSON.stringify
});
t.exports = function(t) {
return o.stringify.apply(o, arguments)
}
},
function(t, e, n) {
n(414),
t.exports = n(2).Math.fround
},
function(t, e, n) {
n(415),
t.exports = n(2).Number.isFinite
},
function(t, e, n) {
n(73),
n(33),
n(39),
n(416),
n(419),
n(418),
n(417),
t.exports = n(2).Set
},
function(t, e, n) {
var i = n(313),
o = Math.pow,
r = o(2, -52),
a = o(2, -23),
s = o(2, 127) * (2 - a),
l = o(2, -126),
u = function(t) {
return t + 1 / r - 1 / r
};
t.exports = Math.fround ||
function(t) {
var e, n, o = Math.abs(t),
c = i(t);
return o < l ? c * u(o / l / a) * l * a: (e = (1 + a / r) * o, n = e - (e - o), n > s || n != n ? c * (1 / 0) : c * n)
}
},
function(t, e, n) {
var i = n(6);
i(i.S, "Math", {
fround: n(413)
})
},
function(t, e, n) {
var i = n(6),
o = n(8).isFinite;
i(i.S, "Number", {
isFinite: function(t) {
return "number" == typeof t && o(t)
}
})
},
function(t, e, n) {
"use strict";
var i = n(260),
o = n(183);
t.exports = n(250)("Set",
function(t) {
return function() {
return t(this, arguments.length > 0 ? arguments[0] : void 0)
}
},
{
add: function(t) {
return i.def(o(this, "Set"), t = 0 === t ? 0 : t, t)
}
},
i)
},
function(t, e, n) {
n(251)("Set")
},
function(t, e, n) {
n(252)("Set")
},
function(t, e, n) {
var i = n(6);
i(i.P + i.R, "Set", {
toJSON: n(261)("Set")
})
},
function(t, e, n) {
"use strict";
var i = n(436)(!0);
t.exports = function(t, e, n) {
return e + (n ? i(t, e).length: 1)
}
},
function(t, e, n) {
"use strict";
var i = n(136),
o = n(269),
r = n(88);
t.exports = function(t) {
for (var e = i(this), n = r(e.length), a = arguments.length, s = o(a > 1 ? arguments[1] : void 0, n), l = a > 2 ? arguments[2] : void 0, u = void 0 === l ? n: o(l, n); u > s;) e[s++] = t;
return e
}
},
function(t, e, n) {
"use strict";
var i = n(104),
o = n(268);
t.exports = function(t, e, n) {
e in t ? i.f(t, e, o(0, n)) : t[e] = n
}
},
function(t, e, n) {
var i = n(63),
o = n(62).document,
r = i(o) && i(o.createElement);
t.exports = function(t) {
return r ? o.createElement(t) : {}
}
},
function(t, e) {
t.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")
},
function(t, e, n) {
var i = n(78)("match");
t.exports = function(t) {
var e = /./;
try {
"/./" [t](e)
} catch(n) {
try {
return e[i] = !1,
!"/./" [t](e)
} catch(t) {}
}
return ! 0
}
},
function(t, e, n) {
var i = n(62).document;
t.exports = i && i.documentElement
},
function(t, e, n) {
var i = n(63),
o = n(434).set;
t.exports = function(t, e, n) {
var r, a = e.constructor;
return a !== n && "function" == typeof a && (r = a.prototype) !== n.prototype && i(r) && o && o(t, r),
t
}
},
function(t, e, n) {
var i = n(285),
o = n(78)("iterator"),
r = Array.prototype;
t.exports = function(t) {
return void 0 !== t && (i.Array === t || r[o] === t)
}
},
function(t, e, n) {
var i = n(63),
o = n(244),
r = n(78)("match");
t.exports = function(t) {
var e;
return i(t) && (void 0 !== (e = t[r]) ? !!e: "RegExp" == o(t))
}
},
function(t, e, n) {
"use strict";
var i = n(263),
o = n(11),
r = n(206),
a = n(215),
s = n(285),
l = n(530),
u = n(288),
c = n(266),
f = n(78)("iterator"),
d = !([].keys && "next" in [].keys()),
h = function() {
return this
};
t.exports = function(t, e, n, v, p, _, m) {
l(n, e, v);
var g, y, x, b = function(t) {
if (!d && t in T) return T[t];
switch (t) {
case "keys":
case "values":
return function() {
return new n(this, t)
}
}
return function() {
return new n(this, t)
}
},
S = e + " Iterator",
w = "values" == p,
E = !1,
T = t.prototype,
A = T[f] || T["@@iterator"] || p && T[p],
P = A || b(p),
I = p ? w ? b("entries") : P: void 0,
k = "Array" == e ? T.entries || A: A;
if (k && (x = c(k.call(new t))) !== Object.prototype && x.next && (u(x, S, !0), i || "function" == typeof x[f] || a(x, f, h)), w && A && "values" !== A.name && (E = !0, P = function() {
return A.call(this)
}), i && !m || !d && !E && T[f] || a(T, f, P), s[e] = P, s[S] = h, p) if (g = {
values: w ? P: b("values"),
keys: _ ? P: b("keys"),
entries: I
},
m) for (y in g) y in T || r(T, y, g[y]);
else o(o.P + o.F * (d || E), e, g);
return g
}
},
function(t, e) {
var n = Math.expm1;
t.exports = !n || n(10) > 22025.465794806718 || n(10) < 22025.465794806718 || -2e-17 != n( - 2e-17) ?
function(t) {
return 0 == (t = +t) ? t: t > -1e-6 && t < 1e-6 ? t + t * t / 2 : Math.exp(t) - 1
}: n
},
function(t, e) {
t.exports = Math.sign ||
function(t) {
return 0 == (t = +t) || t != t ? t: t < 0 ? -1 : 1
}
},
function(t, e, n) {
"use strict";
var i = n(347),
o = RegExp.prototype.exec,
r = String.prototype.replace,
a = o,
s = function() {
var t = /a/,
e = /b*/g;
return o.call(t, "a"),
o.call(e, "a"),
0 !== t.lastIndex || 0 !== e.lastIndex
} (),
l = void 0 !== /()??/.exec("")[1]; (s || l) && (a = function(t) {
var e, n, a, u, c = this;
return l && (n = new RegExp("^" + c.source + "$(?!\\s)", i.call(c))),
s && (e = c.lastIndex),
a = o.call(c, t),
s && a && (c.lastIndex = c.global ? a.index + a[0].length: e),
l && a && a.length > 1 && r.call(a[0], n,
function() {
for (u = 1; u < arguments.length - 2; u++) void 0 === arguments[u] && (a[u] = void 0)
}),
a
}),
t.exports = a
},
function(t, e, n) {
var i = n(63),
o = n(60),
r = function(t, e) {
if (o(t), !i(e) && null !== e) throw TypeError(e + ": can't set as prototype!")
};
t.exports = {
set: Object.setPrototypeOf || ("__proto__" in {} ?
function(t, e, i) {
try {
i = n(231)(Function.call, n(232).f(Object.prototype, "__proto__").set, 2),
i(t, []),
e = !(t instanceof Array)
} catch(t) {
e = !0
}
return function(t, n) {
return r(t, n),
e ? t.__proto__ = n: i(t, n),
t
}
} ({},
!1) : void 0),
check: r
}
},
function(t, e, n) {
var i = n(353)("keys"),
o = n(270);
t.exports = function(t) {
return i[t] || (i[t] = o(t))
}
},
function(t, e, n) {
var i = n(234),
o = n(245);
t.exports = function(t) {
return function(e, n) {
var r, a, s = String(o(e)),
l = i(n),
u = s.length;
return l < 0 || l >= u ? t ? "": void 0 : (r = s.charCodeAt(l), r < 55296 || r > 56319 || l + 1 === u || (a = s.charCodeAt(l + 1)) < 56320 || a > 57343 ? t ? s.charAt(l) : r: t ? s.slice(l, l + 2) : a - 56320 + (r - 55296 << 10) + 65536)
}
}
},
function(t, e, n) {
var i = n(429),
o = n(245);
t.exports = function(t, e, n) {
if (i(e)) throw TypeError("String#" + n + " doesn't accept regex!");
return String(o(t))
}
},
function(t, e, n) {
"use strict";
var i = n(234),
o = n(245);
t.exports = function(t) {
var e = String(o(this)),
n = "",
r = i(t);
if (r < 0 || r == 1 / 0) throw RangeError("Count can't be negative");
for (; r > 0; (r >>>= 1) && (e += e)) 1 & r && (n += e);
return n
}
},
function(t, e) {
t.exports = "\t\n\v\f\r   \u2028\u2029\ufeff"
},
function(t, e, n) {
var i, o, r, a = n(231),
s = n(527),
l = n(426),
u = n(423),
c = n(62),
f = c.process,
d = c.setImmediate,
h = c.clearImmediate,
v = c.MessageChannel,
p = c.Dispatch,
_ = 0,
m = {},
g = function() {
var t = +this;
if (m.hasOwnProperty(t)) {
var e = m[t];
delete m[t],
e()
}
},
y = function(t) {
g.call(t.data)
};
d && h || (d = function(t) {
for (var e = [], n = 1; arguments.length > n;) e.push(arguments[n++]);
return m[++_] = function() {
s("function" == typeof t ? t: Function(t), e)
},
i(_),
_
},
h = function(t) {
delete m[t]
},
"process" == n(244)(f) ? i = function(t) {
f.nextTick(a(g, t, 1))
}: p && p.now ? i = function(t) {
p.now(a(g, t, 1))
}: v ? (o = new v, r = o.port2, o.port1.onmessage = y, i = a(r.postMessage, r, 1)) : c.addEventListener && "function" == typeof postMessage && !c.importScripts ? (i = function(t) {
c.postMessage(t + "", "*")
},
c.addEventListener("message", y, !1)) : i = "onreadystatechange" in u("script") ?
function(t) {
l.appendChild(u("script")).onreadystatechange = function() {
l.removeChild(this),
g.call(t)
}
}: function(t) {
setTimeout(a(g, t, 1), 0)
}),
t.exports = {
set: d,
clear: h
}
},
function(t, e, n) {
"use strict";
function i(t, e, n) {
var i, o, r, a = new Array(n),
s = 8 * n - e - 1,
l = (1 << s) - 1,
u = l >> 1,
c = 23 === e ? z(2, -24) - z(2, -77) : 0,
f = 0,
d = t < 0 || 0 === t && 1 / t < 0 ? 1 : 0;
for (t = D(t), t != t || t === N ? (o = t != t ? 1 : 0, i = l) : (i = F(V(t) / Y), t * (r = z(2, -i)) < 1 && (i--, r *= 2), t += i + u >= 1 ? c / r: c * z(2, 1 - u), t * r >= 2 && (i++, r /= 2), i + u >= l ? (o = 0, i = l) : i + u >= 1 ? (o = (t * r - 1) * z(2, e), i += u) : (o = t * z(2, u - 1) * z(2, e), i = 0)); e >= 8; a[f++] = 255 & o, o /= 256, e -= 8);
for (i = i << e | o, s += e; s > 0; a[f++] = 255 & i, i /= 256, s -= 8);
return a[--f] |= 128 * d,
a
}
function o(t, e, n) {
var i, o = 8 * n - e - 1,
r = (1 << o) - 1,
a = r >> 1,
s = o - 7,
l = n - 1,
u = t[l--],
c = 127 & u;
for (u >>= 7; s > 0; c = 256 * c + t[l], l--, s -= 8);
for (i = c & (1 << -s) - 1, c >>= -s, s += e; s > 0; i = 256 * i + t[l], l--, s -= 8);
if (0 === c) c = 1 - a;
else {
if (c === r) return i ? NaN: u ? -N: N;
i += z(2, e),
c -= a
}
return (u ? -1 : 1) * i * z(2, c - e)
}
function r(t) {
return t[3] << 24 | t[2] << 16 | t[1] << 8 | t[0]
}
function a(t) {
return [255 & t]
}
function s(t) {
return [255 & t, t >> 8 & 255]
}
function l(t) {
return [255 & t, t >> 8 & 255, t >> 16 & 255, t >> 24 & 255]
}
function u(t) {
return i(t, 52, 8)
}
function c(t) {
return i(t, 23, 4)
}
function f(t, e, n) {
A(t[k], e, {
get: function() {
return this[n]
}
})
}
function d(t, e, n, i) {
var o = +n,
r = E(o);
if (r + e > t[j]) throw B(L);
var a = t[U]._b,
s = r + t[G],
l = a.slice(s, s + e);
return i ? l: l.reverse()
}
function h(t, e, n, i, o, r) {
var a = +n,
s = E(a);
if (s + e > t[j]) throw B(L);
for (var l = t[U]._b, u = s + t[G], c = i( + o), f = 0; f < e; f++) l[u + f] = c[r ? f: e - f - 1]
}
var v = n(62),
p = n(103),
_ = n(263),
m = n(354),
g = n(215),
y = n(286),
x = n(61),
b = n(284),
S = n(234),
w = n(88),
E = n(545),
T = n(265).f,
A = n(104).f,
P = n(421),
I = n(288),
k = "prototype",
L = "Wrong index!",
M = v.ArrayBuffer,
C = v.DataView,
R = v.Math,
B = v.RangeError,
N = v.Infinity,
O = M,
D = R.abs,
z = R.pow,
F = R.floor,
V = R.log,
Y = R.LN2,
U = p ? "_b": "buffer",
j = p ? "_l": "byteLength",
G = p ? "_o": "byteOffset";
if (m.ABV) {
if (!x(function() {
M(1)
}) || !x(function() {
new M( - 1)
}) || x(function() {
return new M,
new M(1.5),
new M(NaN),
"ArrayBuffer" != M.name
})) {
M = function(t) {
return b(this, M),
new O(E(t))
};
for (var Z, H = M[k] = O[k], W = T(O), X = 0; W.length > X;)(Z = W[X++]) in M || g(M, Z, O[Z]);
_ || (H.constructor = M)
}
var Q = new C(new M(2)),
q = C[k].setInt8;
Q.setInt8(0, 2147483648),
Q.setInt8(1, 2147483649),
!Q.getInt8(0) && Q.getInt8(1) || y(C[k], {
setInt8: function(t, e) {
q.call(this, t, e << 24 >> 24)
},
setUint8: function(t, e) {
q.call(this, t, e << 24 >> 24)
}
},
!0)
} else M = function(t) {
b(this, M, "ArrayBuffer");
var e = E(t);
this._b = P.call(new Array(e), 0),
this[j] = e
},
C = function(t, e, n) {
b(this, C, "DataView"),
b(t, M, "DataView");
var i = t[j],
o = S(e);
if (o < 0 || o > i) throw B("Wrong offset!");
if (n = void 0 === n ? i - o: w(n), o + n > i) throw B("Wrong length!");
this[U] = t,
this[G] = o,
this[j] = n
},
p && (f(M, "byteLength", "_l"), f(C, "buffer", "_b"), f(C, "byteLength", "_l"), f(C, "byteOffset", "_o")),
y(C[k], {
getInt8: function(t) {
return d(this, 1, t)[0] << 24 >> 24
},
getUint8: function(t) {
return d(this, 1, t)[0]
},
getInt16: function(t) {
var e = d(this, 2, t, arguments[1]);
return (e[1] << 8 | e[0]) << 16 >> 16
},
getUint16: function(t) {
var e = d(this, 2, t, arguments[1]);
return e[1] << 8 | e[0]
},
getInt32: function(t) {
return r(d(this, 4, t, arguments[1]))
},
getUint32: function(t) {
return r(d(this, 4, t, arguments[1])) >>> 0
},
getFloat32: function(t) {
return o(d(this, 4, t, arguments[1]), 23, 4)
},
getFloat64: function(t) {
return o(d(this, 8, t, arguments[1]), 52, 8)
},
setInt8: function(t, e) {
h(this, 1, t, a, e)
},
setUint8: function(t, e) {
h(this, 1, t, a, e)
},
setInt16: function(t, e) {
h(this, 2, t, s, e, arguments[2])
},
setUint16: function(t, e) {
h(this, 2, t, s, e, arguments[2])
},
setInt32: function(t, e) {
h(this, 4, t, l, e, arguments[2])
},
setUint32: function(t, e) {
h(this, 4, t, l, e, arguments[2])
},
setFloat32: function(t, e) {
h(this, 4, t, c, e, arguments[2])
},
setFloat64: function(t, e) {
h(this, 8, t, u, e, arguments[2])
}
});
I(M, "ArrayBuffer"),
I(C, "DataView"),
g(C[k], m.VIEW, !0),
e.ArrayBuffer = M,
e.DataView = C
},
function(t, e, n) {
e.f = n(78)
},
function(t, e, n) {
var i = n(320),
o = n(78)("iterator"),
r = n(285);
t.exports = n(102).getIteratorMethod = function(t) {
if (void 0 != t) return t[o] || t["@@iterator"] || r[i(t)]
}
},
function(t, e, n) {
"use strict";
var i = n(262),
o = n(531),
r = n(285),
a = n(216);
t.exports = n(430)(Array, "Array",
function(t, e) {
this._t = a(t),
this._i = 0,
this._k = e
},
function() {
var t = this._t,
e = this._k,
n = this._i++;
return ! t || n >= t.length ? (this._t = void 0, o(1)) : "keys" == e ? o(0, n) : "values" == e ? o(0, t[n]) : o(0, [n, t[n]])
},
"values"),
r.Arguments = r.Array,
i("keys"),
i("values"),
i("entries")
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) { !
function() {
var e = t,
n = e.lib,
i = n.Base,
o = e.enc,
r = o.Utf8,
a = e.algo;
a.HMAC = i.extend({
init: function(t, e) {
t = this._hasher = new t.init,
"string" == typeof e && (e = r.parse(e));
var n = t.blockSize,
i = 4 * n;
e.sigBytes > i && (e = t.finalize(e)),
e.clamp();
for (var o = this._oKey = e.clone(), a = this._iKey = e.clone(), s = o.words, l = a.words, u = 0; u < n; u++) s[u] ^= 1549556828,
l[u] ^= 909522486;
o.sigBytes = a.sigBytes = i,
this.reset()
},
reset: function() {
var t = this._hasher;
t.reset(),
t.update(this._iKey)
},
update: function(t) {
return this._hasher.update(t),
this
},
finalize: function(t) {
var e = this._hasher,
n = e.finalize(t);
return e.reset(),
e.finalize(this._oKey.clone().concat(n))
}
})
} ()
})
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) {
return function() {
var e = t,
n = e.lib,
i = n.WordArray,
o = n.Hasher,
r = e.algo,
a = [],
s = r.SHA1 = o.extend({
_doReset: function() {
this._hash = new i.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
},
_doProcessBlock: function(t, e) {
for (var n = this._hash.words,
i = n[0], o = n[1], r = n[2], s = n[3], l = n[4], u = 0; u < 80; u++) {
if (u < 16) a[u] = 0 | t[e + u];
else {
var c = a[u - 3] ^ a[u - 8] ^ a[u - 14] ^ a[u - 16];
a[u] = c << 1 | c >>> 31
}
var f = (i << 5 | i >>> 27) + l + a[u];
f += u < 20 ? 1518500249 + (o & r | ~o & s) : u < 40 ? 1859775393 + (o ^ r ^ s) : u < 60 ? (o & r | o & s | r & s) - 1894007588 : (o ^ r ^ s) - 899497514,
l = s,
s = r,
r = o << 30 | o >>> 2,
o = i,
i = f
}
n[0] = n[0] + i | 0,
n[1] = n[1] + o | 0,
n[2] = n[2] + r | 0,
n[3] = n[3] + s | 0,
n[4] = n[4] + l | 0
},
_doFinalize: function() {
var t = this._data,
e = t.words,
n = 8 * this._nDataBytes,
i = 8 * t.sigBytes;
return e[i >>> 5] |= 128 << 24 - i % 32,
e[14 + (i + 64 >>> 9 << 4)] = Math.floor(n / 4294967296),
e[15 + (i + 64 >>> 9 << 4)] = n,
t.sigBytes = 4 * e.length,
this._process(),
this._hash
},
clone: function() {
var t = o.clone.call(this);
return t._hash = this._hash.clone(),
t
}
});
e.SHA1 = o._createHelper(s),
e.HmacSHA1 = o._createHmacHelper(s)
} (),
t.SHA1
})
},
, , , ,
function(t, e, n) {
"use strict";
t.exports = {
2 : "need dictionary",
1 : "stream end",
0 : "",
"-1": "file error",
"-2": "stream error",
"-3": "data error",
"-4": "insufficient memory",
"-5": "buffer error",
"-6": "incompatible version"
}
},
, , , , , , , , , , ,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
if (t && e) return e.y - t.y <= x && e.x - t.x <= x
}
var r = n(27),
a = i(r),
s = n(0),
l = i(s),
u = n(1),
c = i(u),
f = n(742),
d = i(f),
h = n(210),
v = n(74),
p = n(106),
_ = n(28),
m = n(10),
g = m.forIn,
y = {
scrollZoom: n(744),
touchZoomRotate: n(746),
touchTilt: n(745),
doubleClickZoom: n(739),
dragRotate: n(741),
dragPan: n(740),
longPress: n(743)
},
x = 10,
b = function() {
function t(e, n) { (0, l.
default)(this, t),
e.handler || (this.members = [e], this.map = e, this.eventHandlers = [], this.eventHandlers.push(_.on(window, "resize", this.onWindowResize.bind(this))), this.el = e.getContainer(), this.rl = e.getRenderContainer(), this.transform = e.transform, this.controlManager = e.controlManager, this.idleHandler = new d.
default(this.transform), this.contextMenuEvent = null, this.mouseDown = !1, this.startPos = null, this.startTouchPoints = null, this.tapped = null, g(y,
function(t, i) {
e[t] = new i(e, n),
n && n.disInteractive || e[t].enable()
}), this.eventHandlers.push(_.on(this.controlManager, {
control_added: function(t) {
e._fire("control_added", t, !0)
},
control_removed: function(t) {
e._fire("control_removed", t, !0)
}
})), this.eventHandlers.push(_.on(this.idleHandler, "idle",
function() {
e._fire("idle", null, !0)
})), this.eventHandlers.push(_.on(e.canvasContainer, {
webglcontextlost: e._onContextError.bind(e, "lost"),
webglcontaxtrestored: e._onContextError.bind(e, "restored")
})), this.eventHandlers.push(_.on(this.el, {
mouseout: this.onMouseOut.bind(this),
mousedown: this.onMouseDown.bind(this),
mouseup: this.onMouseUp.bind(this),
mousemove: this.onMouseMove.bind(this),
touchstart: this.onTouchStart.bind(this),
touchend: this.onTouchEnd.bind(this),
touchmove: this.onTouchMove.bind(this),
touchcancel: this.onTouchCancel.bind(this),
click: this.onClick.bind(this),
dblclick: this.onDblClick.bind(this),
contextmenu: this.onContextMenu.bind(this)
})))
}
return (0, c.
default)(t, [{
key: "destroy",
value: function() {
var t = this;
g(y,
function(e) {
t.map[e] && (t.map[e].disable(), delete t.map[e])
}),
this.eventHandlers.forEach(function(t) {
t && t.remove && t.remove()
}),
this.members = null,
this.map = null,
this.eventHandlers = [],
this.el = null,
this.rl = null,
this.transform = null,
this.idleHandler = null,
this.contextMenuEvent = null,
this.mouseDown = !1,
this.startPos = null,
this.tapped = null
}
},
{
key: "onWindowResize",
value: function() {
var t = this.rl.clientWidth,
e = this.rl.clientHeight;
this.map.resize(t, e)
}
},
{
key: "onMouseOut",
value: function(t) {
this.fireMouseEvent("mouseout", t)
}
},
{
key: "onMouseDown",
value: function(t) {
this.map.stopMoving(),
this.startPos = h.mousePos(this.el, t),
this.fireMouseEvent("mousedown", t),
this.mouseDown = !0
}
},
{
key: "onMouseUp",
value: function(t) {
if (this.contextMenuEvent && !this.rotating && this.fireMouseEvent("contextmenu", this.contextMenuEvent), this.contextMenuEvent = null, this.mouseDown = !1, this.fireMouseEvent("mouseup", t), t && 2 === t.button) {
var e = h.mousePos(this.el, t);
this.startPos && e.equals(this.startPos) && this.fireMouseEvent("rightclick", t)
}
}
},
{
key: "onMouseMove",
value: function(t) {
if (! (this.map.dragPan && this.map.dragPan.isActive() || this.map.dragRotate && this.map.dragRotate.isActive())) {
for (var e = t.toElement || t.target; e && e !== this.el;) e = e.parentNode;
e === this.el && this.fireMouseEvent("mousemove", t)
}
}
},
{
key: "onTouchStart",
value: function(t) {
console.log(56456465465464)
if (t.preventDefault(), this.map.stopMoving(), this.fireTouchEvent("touchstart", t), t.touches && !(t.touches.length > 1)) {
var e = this.startTouchPoints;
if (this.startTouchPoints = h.touchPos(this.el, t), this.tapped) {
clearTimeout(this.tapped),
this.tapped = null;
var n = e && e[0],
i = this.startTouchPoints && this.startTouchPoints[0];
n && i && (this.maybeDoubleTap = o(n, i)),
this.tapped = setTimeout(this.onTouchTimeout.bind(this), 300)
} else this.tapped = setTimeout(this.onTouchTimeout.bind(this), 300)
}
}
},
{
key: "onTouchMove",
value: function(t) {
console.log(4564654)
this.fireTouchEvent("touchmove", t);
var e = this.startTouchPoints[0],
n = h.touchPos(this.el, t)[0];
this.maybeDoubleTap && e && n && (this.maybeDoubleTap = o(e, n))
}
},
{
key: "onTouchEnd",
value: function(t) {
var e = this;
this.fireTouchEvent("touchend", t),
setTimeout(function() {
if (e.tapped) {
var n = e.startTouchPoints[0],
i = h.touchPos(e.el, t)[0];
if (n && i) {
var r = o(n, i);
r && e.fireTouchEvent("click", t),
r && e.maybeDoubleTap && setTimeout(function() {
e.fireTouchEvent("dblclick", t),
e.maybeDoubleTap = !1
},
50)
}
}
},
50)
}
},
{
key: "onTouchCancel",
value: function(t) {
this.maybeDoubleTap = !1,
this.fireTouchEvent("touchcancel", t)
}
},
{
key: "onTouchTimeout",
value: function() {
this.maybeDoubleTap = !1,
this.tapped = null
}
},
{
key: "onClick",
value: function(t) {
var e = h.mousePos(this.el, t);
this.startPos && e.dist(this.startPos) < x && this.fireMouseEvent("click", t)
}
},
{
key: "onDblClick",
value: function(t) {
this.fireMouseEvent("dblclick", t),
t.preventDefault()
}
},
{
key: "onContextMenu",
value: function(t) {
var e = this.map.dragRotate && this.map.dragRotate.isActive();
this.mouseDown || e ? this.mouseDown && (this.contextMenuEvent = t) : this.fireMouseEvent("contextmenu", t),
t.preventDefault()
}
},
{
key: "fireMouseEvent",
value: function(t, e) {
var n = h.mousePos(this.el, e),
i = {
latLng: this.map.unprojectFromContainer(n),
point: n,
originalEvent: e
};
"click" === t && (i.poi = this.map._getPoiInfo(n));
var o = !0,
r = !1,
s = void 0;
try {
for (var l, u = (0, a.
default)(this.members); ! (o = (l = u.next()).done); o = !0) {
l.value._fire(t, i)
}
} catch(t) {
r = !0,
s = t
} finally {
try { ! o && u.
return && u.
return ()
} finally {
if (r) throw s
}
}
}
},
{
key: "fireTouchEvent",
value: function(t, e) {
var n = this,
i = h.touchPos(this.el, e),
o = i.reduce(function(t, e, n, i) {
return t.add(e.div(i.length))
},
new v(0, 0)),
r = {
latLng: this.map.unprojectFromContainer(o),
point: o,
latLngs: i.map(function(t) {
return n.map.unprojectFromContainer(t)
},
this),
points: i,
originalEvent: e
};
"click" === t && (r.poi = this.map._getPoiInfo(i[0]));
var s = !0,
l = !1,
u = void 0;
try {
for (var c, f = (0, a.
default)(this.members); ! (s = (c = f.next()).done); s = !0) {
c.value._fire(t, r)
}
} catch(t) {
l = !0,
u = t
} finally {
try { ! s && f.
return && f.
return ()
} finally {
if (l) throw u
}
}
}
},
{
key: "registe",
value: function(t) {
if (! (t instanceof p)) throw new Error("illegal event type!");
var e = !0,
n = !1,
i = void 0;
try {
for (var o, r = (0, a.
default)(this.members); ! (e = (o = r.next()).done); e = !0) {
if (o.value === t) return
}
} catch(t) {
n = !0,
i = t
} finally {
try { ! e && r.
return && r.
return ()
} finally {
if (n) throw i
}
}
this.members.push(t)
}
},
{
key: "cancel",
value: function(t) {
if (! (t instanceof p)) throw new Error("illegal event type!");
for (var e = this.members,
n = e.length - 1; n > -1; n--) e[n] === t && e.splice(n, 1)
}
}]),
t
} ();
t.exports = b
},
function(t, e, n) {
"use strict";
n(801),
n(803),
n(802),
n(809),
n(808),
n(811),
n(810),
n(812),
n(805),
n(806),
n(804),
n(807),
n(982),
n(1025)
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.imageVertex = "\nprecision mediump float;\n\nattribute vec2 a_position;\n\nuniform mat4 u_matrix;\nuniform vec2 u_size;\nuniform vec4 u_texInfo;\nvarying vec2 v_texCoord;\n\nvoid main() {\n\t\n\tv_texCoord = vec2(u_texInfo[0] + a_position.x * u_texInfo[2], u_texInfo[1] + a_position.y * u_texInfo[3]);\n\t\n\tvec2 position = vec2(a_position.x * u_size.x, (a_position.y - 1.0) * u_size.y);\n\n\tgl_Position = u_matrix * vec4(position, 0.0, 1.0);\n}\n"
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.INSTANCE_PARTS = "\nattribute vec2 positions;\n \nattribute vec3 instancePositions;\nattribute vec2 instancePositions64xyLow;\nattribute vec2 instanceSizes;\nattribute vec4 instanceInfos;\n\n\nattribute vec3 instancePickingColors;\nattribute vec4 instanceFrames;\nattribute vec3 instancePixelOffset;\n",
e.UNIFORM_PARTS = "\nuniform float u_sizeScale;\nuniform float u_sizeMinPixels;\nuniform float u_sizeMaxPixels;\nuniform vec2 u_textureDim;\nuniform float u_opacity;\nuniform float u_mapScale;\n\n",
e.generateMainPart = function(t, e) {
return "\n \n vec2 imageSize = instanceFrames.zw;\n \n vec2 sizePixels = clamp(instanceSizes * u_sizeScale, vec2(u_sizeMinPixels), vec2(u_sizeMaxPixels));\n \n " + t + "\n\n vec3 latlngPoint = instancePositions;\n float delta = latlngPoint.x - uCenter.x;\n\n\n\n\n\n\n latlngPoint.x = mix( mix(latlngPoint.x,latlngPoint.x + 360.0,step(delta,-180.)), latlngPoint.x - 360.0, step(180., delta));\n \n if (bool(instanceInfos.w)) {\n vec4 center_proj = uMatrix * vec4(project_view_local_position_precision(latlngPoint, instancePositions64xyLow.xy), 1.0);\n vec2 center_screen = proj_position_to_screen(center_proj);\n vec2 corner_screen = center_screen + pixelOffset * u_mapScale;\n \n gl_Position = screen_to_proj_position(corner_screen, center_proj.z, center_proj.w);\n } else {\n gl_Position = uMatrix * vec4(project_view_local_position_precision(latlngPoint.xy, instancePositions64xyLow.xy) + pixelOffset, 0.0, 1.0);\n }\n \n vTextureCoords = mix(\n instanceFrames.xy,\n instanceFrames.xy + imageSize,\n (positions.xy + 1.0) / 2.0\n ) / u_textureDim;\n \n vTextureCoords.y = 1.0 - vTextureCoords.y;\n \n\n " + e + "\n vColor = picking_getFinalColor(vColor, instancePickingColors);\n vOpacity = instancePixelOffset.z;\n "
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217),
o = n(292),
r = n(276);
e.
default = {
v: "\n\t\t#define SHADER_NAME polygon-vertex-shader\n\n\t\tattribute vec2 vertexPositions;\n\t\t\n\t\tattribute float vertexValid;\n\t\tattribute vec3 positions;\n\t\tattribute vec2 positions64xyLow;\n\t\tattribute vec3 nextPositions;\n\t\tattribute vec2 nextPositions64xyLow;\n\t\tattribute float elevations;\n\t\tattribute vec4 fillColors;\n\t\tattribute vec4 lineColors;\n\t\tattribute vec3 pickingColors;\n\n\t\t" + i.UNIFORM_PART + "\n \n\t\t" + o.PICK_UNIFORM + "\n\t\t\n\t\t" + r.LIGHT_UNIFORM + "\n\t\t\n\t\tuniform bool u_isSideVertex;\n\t\tuniform bool u_extruded;\n\t\tuniform bool u_isWireframe;\n\t\tuniform float u_elevationScale;\n\t\tuniform float u_opacity;\n\t\t\n\t\tvarying vec4 vColor;\n\t\tvarying float isValid;\n\n\t\t" + r.LIGHT_VARYING + "\n\n\t\t" + i.PROJECTION_PART + "\n \n\t\t" + o.PICK_FUNCTION + "\n\t\t\n\t\t" + r.LIGHT_VERTEX + "\n\t\t" + r.LIGHT_FRAG + "\n\t\t\n\t\tvoid main(void) {\n\t\t\tvec3 pos;\n\t\t\tvec2 pos64xyLow;\n\t\t\tvec3 normal;\n\t\t\tvec4 colors = mix(fillColors, lineColors, float(u_isWireframe));\n\n\t\t\tfloat isSideVertex = float(u_isSideVertex);\n\t\t\tfloat extruded = float(u_extruded);\n\n\t\t\tpos = mix(\n\t\t\t\tpositions,\n\t\t\t\t\n\t\t\t\tmix(positions, nextPositions, vertexPositions.x),\n\t\t\t\tisSideVertex\n\t\t\t);\n\t\t\tpos64xyLow = mix(\n\t\t\t\tpositions64xyLow,\n\t\t\t\tmix(positions64xyLow, nextPositions64xyLow, vertexPositions.x),\n\t\t\t\tisSideVertex\n\t\t\t);\n\t\t\tisValid = mix(1.0, vertexValid, isSideVertex);\n\t\t\tpos.z += mix(\n\t\t\t\t0.0,\n\t\t\t\tabs(elevations) * mix(1.0, vertexPositions.y, isSideVertex),\n\t\t\t\textruded\n\t\t\t) * u_elevationScale;\n\t\t\t\n\t\t\t\n\t\t\tpos.z = mix(pos.z, mix(pos.z - abs(elevations), pos.z, float(elevations >= 0.0)), extruded);\n\t\t\t\n\t\t\tvec3 local_position = project_view_local_position_precision(pos.xyz, pos64xyLow.xy);\n\t\t\tvec3 current_local_position = project_view_local_position_precision(positions.xyz, positions64xyLow.xy);\n\t\t\tvec3 next_local_position = project_view_local_position_precision(nextPositions.xyz, nextPositions64xyLow.xy);\n\n\t\t\tgl_Position = uMatrix * vec4(local_position, 1.0);\n\t\t\t\n\t\t\tnormal = mix(\n\t\t\t\tvec3(0., 0., 1.),\n\t\t\t\tmix(\n\t\t\t\t\tvec3(0.0, 0.0, 1.0),\n\t\t\t\t\tnormalize(\n\t\t\t\t\t\tcross(\n\t\t\t\t\t\t\tnormalize(vec3(next_local_position.xy - current_local_position.xy, 0.0)),\n\t\t\t\t\t\t\tvec3(0.0, 0.0, 1.0)\n\t\t\t\t\t\t)\n\t\t\t\t\t),\n\t\t\t\t\tfloat(u_isSideVertex && !u_isWireframe)\n\t\t\t\t),\n\t\t\t\textruded\n\t\t\t);\n\n\t\t\tlighting_apply_on_vertex(local_position.xyz, normal, mat4(1.0));\n\t\t\tvec4 color = vec4(colors.rgb, colors.a * u_opacity) / 255.0;\n\t\t\tvec4 lightingColor = mix(\n\t\t\t\tcolor,\n\t\t\t\tlighting_apply_on_color(color),\n\t\t\t\t\n\t\t\t\textruded\n\t\t\t);\n\t\t\tvColor = picking_getFinalColor(lightingColor, pickingColors);\n\t\t}\n\t",
f: "\n\t\t#define SHADER_NAME polygon-fragment-shader\n\n\t\tprecision highp float;\n\t\t\n\t\tvarying vec4 vColor;\n\t\tvarying float isValid;\n\t\t\n\t\tvoid main(void) {\n\t\t\tif (isValid < 0.5) {\n\t\t\t\tdiscard;\n\t\t\t}\n\t\t\tgl_FragColor = vColor;\n\t\t}\n\t",
name: "polygon"
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(17),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(41),
f = i(c),
d = n(29),
h = f.
default.isNumber,
v = f.
default.isValidColor,
p = f.
default.isObject,
_ = function() {
function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, s.
default)(this, t);
var n = e.stops,
i = void 0 === n ? {}: n,
o = e.angle,
r = void 0 === o ? 0 : o;
if (this.stops = {},
!p(i)) return void new d.BaseTypeError("stops", "object", i).error();
for (var a in i) {
var l = i[a];
if (!v(l)) return void console.error("GradientColorOptions.stops中key为 " + a + " 的color属性无效", l);
this.stops[a] = l
}
if (!h(r)) return void new d.BaseTypeError("GradientColorOptions.angle", "number", r).error();
this.angle = r
}
return (0, u.
default)(t, [{
key: "addColorStop",
value: function(t, e) {
return h(t) ? v(e) ? void(this.stops[t] = e) : void console.error("addColorStop中key为 " + t + " 的color属性无效", e) : void new d.BaseTypeError("offset", "number", e).error()
}
},
{
key: "setAngle",
value: function(t) {
if (!h(t)) return void new d.BaseTypeError("setAngle.angle", "number", t).error();
this.angle = t
}
},
{
key: "getAngle",
value: function() {
return this.angle
}
},
{
key: "isEmpty",
value: function() {
return (0, r.
default)(this.stops).length <= 0
}
}], [{
key: "createDoubleColorGradient",
value: function(e, n) {
var i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0;
if (!v(e)) return console.error("参数错误createDoubleColorGradient.color1 颜色值不合法。"),
null;
if (!v(n)) return console.error("参数错误createDoubleColorGradient.color2 颜色值不合法。"),
null;
if (!h(i)) return new d.BaseTypeError("createDoubleColorGradient.angle", "number", i).error(),
null;
var o = new t;
return o.addColorStop(0, e),
o.addColorStop(1, n),
o.setAngle(i),
o
}
},
{
key: "convert",
value: function(e) {
var n = e.constructor === Array ? e: [];
if (e.constructor === Object && 2 === (0, r.
default)(e).length) for (var i in e) n.push(e[i]);
if (2 === n.length && v(n[0]) && v(n[1])) {
var o = new t;
return o.addColorStop(0, n[0]),
o.addColorStop(1, n[1]),
o
}
return null
}
}]),
t
} ();
t.exports = _
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(10),
u = i(l),
c = function() {
function t(e, n, i) { (0, r.
default)(this, t),
this.worker = e,
this.parent = n,
this.mapId = i,
this.callbacks = {},
this.callbackID = 0,
this.receive = this.receive.bind(this),
this.worker.addEventListener("message", this.receive, !1)
}
return (0, s.
default)(t, [{
key: "send",
value: function(t, e, n, i) {
var o = this;
if (this.worker) {
var r = n ? u.
default.uniqueId() + ":" + this.callbackID: null;
if (this.callbackID += 1, n && (this.callbacks[r] = n), e.dataFinishCallback) {
var a = e.dataFinishCallback;
a.finishPromise().then(function(t) {
o.worker && o.worker.postMessage({
targetMapId: i,
sourceMapId: o.mapId,
type: a.type,
id: String(r),
data: t
})
}),
e.dataFinishCallback = null
}
this.worker && this.worker.postMessage({
targetMapId: i,
sourceMapId: this.mapId,
type: t,
id: String(r),
data: e
})
}
}
},
{
key: "receive",
value: function(t) {
var e = this,
n = t.data,
i = n.id,
o = void 0;
if (!n.targetMapId || this.mapId === n.targetMapId) {
var r = function(t, n, o) {
if (e.worker) {
var r = null;
n && n.transferableList && (r = n.transferableList, delete n.transferableList),
e.worker.postMessage({
sourceMapId: e.mapId,
type: "<response>",
id: String(i),
error: t,
data: n,
time: o
},
r || [])
}
};
if ("<response>" === n.type) o = this.callbacks[n.id],
n.data && n.data.baseData || delete this.callbacks[n.id],
o && o(n.error || null, n.data, n.time);
else if (void 0 !== n.id && this.parent[n.type]) this.parent[n.type](n.sourceMapId, n.data, r);
else if (void 0 !== n.id && this.parent.getWorkerSource) {
var a = n.type.split("."),
s = this.parent.getWorkerSource(n.sourceMapId, a[0]);
s[a[1]](n.data, r)
}
}
}
},
{
key: "remove",
value: function() {
this.worker.removeEventListener("message", this.receive, !1),
this.worker = null
}
}]),
t
} ();
t.exports = c
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
var i = {};
return d.
default.forIn(t,
function(t, o) {
if (e.hasOwnProperty(t)) {
var r = e[t];
if (_.
default.isNumber(o)) i[t] = "rotation" === t || "heading" === t ? v.
default.rotation(o, r, n) : (0, v.
default)(o, r, n);
else if (o instanceof g.
default) {
var a = v.
default.latlng(o, r, n);
i[t] = new g.
default(a[0], a[1])
} else o instanceof Array && (i[t] = v.
default.array(o, r, n))
}
}),
i
}
function r(t, e) {
for (var n = 1; n < t.length; n++) {
var i = t[n];
if (i.percentage >= e) {
var r = t[n - 1];
return o(r, i, (e - r.percentage) / (i.percentage - r.percentage))
}
}
}
function a(t, e) {
t.sort(function(t, e) {
return t.percentage - e.percentage
}),
0 !== t[0].percentage && t.unshift((0, u.
default)({},
e, {
percentage: 0
}));
var n = t[t.length - 1];
1 !== n.percentage && t.push((0, u.
default)({},
n, {
percentage: 1
}))
}
function s() {
delete this._onAnimateFrame,
delete this._onAnimateLoopEnd,
delete this._onAnimateResume,
delete this._onStop,
delete this._onPause,
delete this._abortTimeProcess
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.animatableMixin = void 0;
var l = n(16),
u = i(l),
c = n(28),
f = n(10),
d = i(f),
h = n(399),
v = i(h),
p = n(41),
_ = i(p),
m = n(47),
g = i(m);
e.animatableMixin = {
_animateStatus: "done",
_animate: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [],
e = arguments[1],
n = e.onFrame,
i = void 0 === n ?
function() {}: n,
o = e.onEnd,
l = void 0 === o ?
function() {}: o,
u = e.onLoop,
c = void 0 === u ?
function() {}: u,
f = e.onStop,
h = void 0 === f ?
function() {}: f,
v = e.onPause,
p = void 0 === v ?
function() {}: v,
m = e.onResume,
g = void 0 === m ?
function() {}: m,
y = this,
x = arguments[2],
b = x.duration,
S = void 0 === b ? 1e3: b,
w = x.loop,
E = void 0 === w ? 1 : w,
T = x.initTick,
A = void 0 === T ? 0 : T,
P = x.id,
I = void 0 === P ? d.
default.uniqueId():
P,
k = x.easing,
L = void 0 === k ? d.
default.linearEase:
k,
M = arguments[3];
if (this._isIdle() || this._stopAnimate(), t.length < 2) return void console.error("参数错误关键帧数量不足2" + t.length + "。");
if (a(t, M), !((E = Number(E)) < 1) && _.
default.isNumber(E)) {
var C = 1,
R = A;
return c.call(this, C),
this._onAnimateLoopEnd = function() {
C < E ? (C += 1, c.call(y, C), y._startLoop(S, 0)) : (y._animateStatus = "done", l.call(y), s.call(y))
},
this._onAnimateFrame = function(e) {
R = e,
e = L(e);
var n = r(t, e);
i.call(y, {
percentage: e,
frame: n
}),
1 === e && y._onAnimateLoopEnd()
},
this._onAnimateResume = function() {
y._startLoop(S, R),
g.call(y)
},
this._onStop = h,
this._onPause = p,
this._animateStatus = "doing",
this._startLoop(S, A),
i.call(this, {
percentage: 0,
frame: t[0]
}),
I
}
},
_startLoop: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 0;
this._abortTimeProcess = (0, c.timed)(this._onAnimateFrame, null, t, this, e)
},
_stopAnimate: function() {
this._isIdle() || (this._animateStatus = "done", this._abortTimeProcess && this._abortTimeProcess(), this._onStop && this._onStop.call(this), s.call(this))
},
_pauseAnimate: function() {
this._isAnimating() && (this._animateStatus = "paused", this._abortTimeProcess && this._abortTimeProcess(), this._onPause && this._onPause.call(this))
},
_resumeAnimate: function() {
this._isPaused() && (this._animateStatus = "doing", this._onAnimateResume && this._onAnimateResume())
},
_isAnimating: function() {
return "doing" === this._animateStatus
},
_isPaused: function() {
return "paused" === this._animateStatus
},
_isIdle: function() {
return "done" === this._animateStatus
}
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(105),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = o.
default.key || ""
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(256),
p = i(v),
_ = {
Scale: {
m: "米",
km: "公里",
mile: "英里",
feet: "英尺"
}
},
m = function(t, e) {
"[object String]" === Object.prototype.toString.call(t.innerText) ? t.innerText = e: t.textContent = e
},
g = "position:absolute;border:1px solid #ffffff;width:2px;height:6px;background:#000;font-size:0;line-height:0;",
y = g + "border-bottom-width:0px;",
x = g + "border-top-width:0px;",
b = function(t) {
var e = Math.pow(10, ("" + Math.floor(t)).length - 1),
n = t / e;
return n = n >= 10 ? 10 : n >= 5 ? 5 : n >= 2 ? 2 : 1,
e * n
},
S = function(t) {
return Math.round(125 * t) - 10
},
w = function(t, e, n) {
if (t && e && n) return Math.abs(156543.04 / n * Math.cos(t.lat * Math.PI / 180)) / Math.pow(2, e)
},
E = function(t) {
var e = document.createElement("div");
return "up" === t ? (e.style.cssText = y + ";border-right-width:0px", e.style.top = "7px", e.style.height = "9px") : "down" === t && (e.style.cssText = x + ";border-right-width:0px", e.style.top = "17px", e.style.height = "6px"),
e.style.left = 0,
e.style.zIndex = 0,
e.className = "tmap-scale-line",
e
},
T = function(t) {
var e = document.createElement("div");
return "up" === t ? (e.style.cssText = y, e.style.top = "0px") : "down" === t && (e.style.cssText = x, e.style.top = "9px"),
e.style.left = "81px",
e.style.zIndex = 2,
e.className = "tmap-scale-line",
e
},
A = function() {
var t = document.createElement("div");
return t.style.cssText = "position:absolute;border:1px solid #ffffff;width:2px;height:6px;background:#000;font-size:0;line-height:0;z-index:1;border-left-width:0px;",
t.style.left = "3px",
t.style.width = "80px",
t.style.height = "2px",
t.style.top = "6px",
t.className = "tmap-scale-line",
t
},
P = function(t) {
var e = document.createElement("div"),
n = "up" === t ? "top: 0px;": "bottom:-17px;";
return e.style.cssText = "position:relative; " + n + " font:11px arial,simsun;color:#000;text-align:left; left:5px;",
e.className = "tmap-scale-text",
e
},
I = function(t) {
for (var e = [], n = ["up", "down"], i = 0; i < 2; i++) {
var o = n[i],
r = document.createElement("div");
r.style.cssText = "width:100px;position:absolute;";
var a = document.createElement("div");
a.style.cssText = "position:absolute;height:7px;width:84px;bottom:0px;";
var s = E(o),
l = T(o),
u = A(),
c = P(o);
r.appendChild(s),
a.appendChild(l),
a.appendChild(u),
r.appendChild(c),
r.appendChild(a),
e[o + "_rr"] = l,
e[o + "_rl"] = s,
e[o + "_rm"] = u,
e[o + "_ruler"] = a,
e[o + "_text"] = c,
e[o + "_rl"] = s,
t.appendChild(r)
}
var f = void 0;
return {
getMaxWidth: function() {
return f
},
refresh: function(t) {
var n = void 0,
i = void 0,
o = e.up_rr,
r = e.up_rm,
a = e.up_text,
s = e.up_ruler,
l = e.down_rr,
u = e.down_rm,
c = e.down_ruler,
d = e.down_text,
h = b(t);
n = S(h / t);
var v = n;
i = h < 1e3 ? h + " " + _.Scale.m: h / 1e3 + " " + _.Scale.km,
m(a, i),
a.style.width = "80px",
r.style.width = n + "px",
o.style.left = n + 0 + "px";
var p = 3.2808399 * t,
g = void 0,
y = void 0,
x = void 0;
p > 5280 ? (g = p / 5280, y = b(g), n = S(y / g), i = y + " " + _.Scale.mile) : (x = b(p), n = S(x / p), i = x + " " + _.Scale.feet),
m(d, i);
var w = parseInt(r.style.width, 10),
E = n > w ? n: w;
d.style.width = "80px",
u.style.width = E + "px",
l.style.left = n + "px",
u.style.visibility = n > w ? "": "hidden",
r.style.visibility = n > w ? "hidden": "",
c.style.zIndex = n > w ? 0 : 1,
s.style.zIndex = n > w ? 1 : 0,
f = Math.max(v, E)
}
}
},
k = function(t, e, n, i) {
var o = document.createElement("div");
o.style.cssText = "position:absolute;";
var r = I(o),
a = function(e, n, i) {
var o = w(e, n, i);
if (o) {
var a = 125 * o;
r.refresh(a),
t.style.width = r.getMaxWidth() + 10 + "px"
}
};
return a(e, n, i),
t.style.width = "100px",
t.style.height = "35px",
t.appendChild(o),
{
node: t,
updateZoom: a
}
},
L = function(t, e, n) {
var i = document.createElement("div");
return i.className = "tmap-scale-control",
k(i, t, e, n)
},
M = function(t) {
function e(t) {
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "createDOM",
value: function(t) {
var e = t.center,
n = t.zoom,
i = t.scale,
o = document.createElement("div");
return o.style.width = "125px",
o.style.height = "35px",
this.scaleControlView = L(e, n, i),
o.appendChild(this.scaleControlView.node),
o
}
},
{
key: "onAdd",
value: function() {
this.updateControl = this.updateControl.bind(this),
this.map.on("zoom_changed", this.updateControl),
this.map.on("scale_changed", this.updateControl)
}
},
{
key: "onRemove",
value: function() {
this.map.off("zoom_changed", this.updateControl),
this.map.off("scale_changed", this.updateControl)
}
},
{
key: "updateControl",
value: function() {
var t = this.map.getCenter(),
e = this.map.getZoom(),
n = this.map.getScale();
this.scaleControlView.updateZoom(t, e, n)
}
}]),
e
} (p.
default);
e.
default = M
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(256),
p = i(v),
_ = n(297),
m = n(296),
g = n(28),
y = i(g),
x = n(137),
b = n(1027),
S = n(1041),
w = n(1042),
E = n(1040);
n(1031);
var T = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.clickStrategy = {
compassCircle: function(t) {
if ("end" !== t && "2D" !== n.getViewMode()) return ! n.getPitchable() && n.getRotatable() ? void(n.map && n.map.easeTo({
heading: 0
})) : n.getPitchable() && !n.getRotatable() ? void(n.map && n.map.easeTo({
pitch: 0
})) : void(n.map && n.map.easeTo({
pitch: 0,
heading: 0,
roll: 0
}))
},
rotateTop: function(t) {
"2D" !== n.getViewMode() && n.getPitchable() && n.map && (n.pitchHandle || (n.pitchHandle = n.map.getNonStopPitch()), "start" === t ? n.pitchHandle.begin(1) : "end" === t && n.pitchHandle.cancel())
},
rotateBottom: function(t) {
"2D" !== n.getViewMode() && n.getPitchable() && n.map && (n.pitchHandle || (n.pitchHandle = n.map.getNonStopPitch()), "start" === t ? n.pitchHandle.begin( - 1) : "end" === t && n.pitchHandle.cancel())
},
rotateLeft: function(t) {
"2D" !== n.getViewMode() && n.getRotatable() && n.map && (n.rotateHandle || (n.rotateHandle = n.map.getNonStopRotate()), "start" === t ? n.rotateHandle.begin(1) : "end" === t && n.rotateHandle.cancel())
},
rotateRight: function(t) {
"2D" !== n.getViewMode() && n.getRotatable() && n.map && (n.rotateHandle || (n.rotateHandle = n.map.getNonStopRotate()), "start" === t ? n.rotateHandle.begin( - 1) : "end" === t && n.rotateHandle.cancel())
}
},
n._bindEvents(),
n._construct(),
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_construct",
value: function() {
this.compassImg = this.dom.querySelector(".compass-img"),
this.compassCircle = this.dom.querySelector(".compass-circle"),
this.rotateLeftImg = this.dom.querySelector(".rotate-left-img"),
this.rotateRightImg = this.dom.querySelector(".rotate-right-img"),
this.rotateTopImg = this.dom.querySelector(".rotate-top-img"),
this.rotateBottomImg = this.dom.querySelector(".rotate-bottom-img"),
this.compassImg.src = E,
this.rotateLeftImg.src = w,
this.rotateRightImg.src = w,
this.rotateTopImg.src = S,
this.rotateBottomImg.src = S
}
},
{
key: "createDOM",
value: function() {
var t = document.createElement("div"),
e = (0, _.Template)(b, {});
return t.innerHTML ? t.insertAdjacentHTML("afterbegin", e) : t.innerHTML = e,
t
}
},
{
key: "onAdd",
value: function() {
var t = this.onRotateChange.bind(this),
e = this.onPitchChange.bind(this);
if (this.throttleRotateChange = y.
default.throttle(t, 50), this.throttlePitchChange = y.
default.throttle(e, 50), this.map.on("rotate", this.throttleRotateChange), this.map.on("pitch", this.throttlePitchChange), "3D" === this.getViewMode()) {
var n = this.map.getPitch(),
i = this.map.getRotation();
this.setButtonUseful(!0),
this.checkButtonState(n),
this.checkCompassState(n, i)
} else this.setButtonUseful(!1)
}
},
{
key: "_bindEvents",
value: function() {
var t = this;
this.handlers = [],
["compass-circle", "rotate-left", "rotate-right", "rotate-top", "rotate-bottom"].forEach(function(e) {
t.handleListen(e)
}),
this.handlers.push((0, g.on)(this.dom, "dblclick",
function(t) {
t.stopPropagation()
})),
this.handlers.push((0, g.on)(this.dom, "mousedown,mousemove,mouseup,mouseover,mouseleave,click,dblclick, touchstart,touchmove,touchend",
function(t) {
t.stopPropagation()
}))
}
},
{
key: "onRotateChange",
value: function(t) {
var e = t.target.getRotation();
this.compassImg.style.transform = "rotateZ(" + e + "deg)"
}
},
{
key: "onPitchChange",
value: function(t) {
var e = Math.round(t.target.getPitch());
this.compassCircle.style.transform = "rotatex(" + e + "deg)",
this.checkButtonState(e)
}
},
{
key: "handleListen",
value: function(t) {
var e = this,
n = this.toCamel(t),
i = this.dom.querySelector("." + t),
o = new m.Finger(i, {
preventDefaultMove: !0,
preventDefaultEnd: !0,
stopPropagation: !0
});
this.handlers.push((0, g.on)(o, "touch-start",
function() {
e.clickStrategy[n] && e.clickStrategy[n]("start")
})),
this.handlers.push((0, g.on)(o, "touch-end",
function() {
e.clickStrategy[n] && e.clickStrategy[n]("end")
}))
}
},
{
key: "toCamel",
value: function(t) {
return t && t.replace(/\-(\w)/g,
function(t, e) {
return e.toUpperCase()
})
}
},
{
key: "setButtonUseful",
value: function(t) {
if (!t) {
return void["rotate-bottom", "rotate-top", "rotate-left", "rotate-right"].forEach(function(t) {
document.getElementsByClassName(t)[0].classList.add("unclickable-" + t),
document.getElementsByClassName(t)[0].classList.remove("clickable-" + t)
})
}
var e = this.getPitchable(),
n = this.getRotatable(),
i = [],
o = [];
e ? i = i.concat(["rotate-bottom", "rotate-top"]) : o = o.concat(["rotate-bottom", "rotate-top"]),
n ? i = i.concat(["rotate-left", "rotate-right"]) : o = o.concat(["rotate-left", "rotate-right"]),
i.forEach(function(t) {
document.getElementsByClassName(t)[0].classList.add("clickable-" + t),
document.getElementsByClassName(t)[0].classList.remove("unclickable-" + t)
}),
o.forEach(function(t) {
document.getElementsByClassName(t)[0].classList.add("unclickable-" + t),
document.getElementsByClassName(t)[0].classList.remove("clickable-" + t)
})
}
},
{
key: "checkButtonState",
value: function(t) {
0 === t && this.lastPitch !== t ? (document.getElementsByClassName("rotate-bottom")[0].classList.add("unclickable-rotate-bottom"), document.getElementsByClassName("rotate-bottom")[0].classList.remove("clickable-rotate-bottom")) : 0 === this.lastPitch && 0 !== t ? (document.getElementsByClassName("rotate-bottom")[0].classList.add("clickable-rotate-bottom"), document.getElementsByClassName("rotate-bottom")[0].classList.remove("unclickable-rotate-bottom")) : 80 === t && this.lastPitch !== t ? (document.getElementsByClassName("rotate-top")[0].classList.add("unclickable-rotate-top"), document.getElementsByClassName("rotate-top")[0].classList.remove("clickable-rotate-top")) : 80 === this.lastPitch && 80 !== t && (document.getElementsByClassName("rotate-top")[0].classList.add("clickable-rotate-top"), document.getElementsByClassName("rotate-top")[0].classList.remove("unclickable-rotate-top")),
this.lastPitch = t
}
},
{
key: "checkCompassState",
value: function(t, e) {
this.compassImg.style.transform = "rotateZ(" + e + "deg)",
this.compassCircle.style.transform = "rotatex(" + t + "deg)"
}
},
{
key: "getViewMode",
value: function() {
return this.map.getViewMode()
}
},
{
key: "getPitchable",
value: function() {
return this.map.getPitchable()
}
},
{
key: "getRotatable",
value: function() {
return this.map.getRotatable()
}
},
{
key: "setViewMode",
value: function(t) {
t === x.VIEW_MODE.MAP_2D ? this.setButtonUseful(!1) : this.setButtonUseful(!0)
}
},
{
key: "onRemove",
value: function() {
this.map.off("rotate", this.throttleRotateChange),
this.map.off("pitch", this.throttlePitchChange),
this.rotateHandle = null,
this.lastPitch = null,
this.throttleRotateChange = null,
this.throttlePitchChange = null
}
},
{
key: "onDestroy",
value: function() {
this.handlers.forEach(function(t) {
t && t.remove()
})
}
}]),
e
} (p.
default);
e.
default = T
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(256),
p = i(v),
_ = n(297),
m = n(296),
g = n(28),
y = n(1028),
x = n(1043),
b = n(1044);
n(1032);
var S = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.dom.querySelector(".tmap-zoom-in-image").src = x,
n.dom.querySelector(".tmap-zoom-out-image").src = b,
n._bindEvents(),
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "createDOM",
value: function() {
var t = document.createElement("div"),
e = (0, _.Template)(y, {});
return t.innerHTML ? t.insertAdjacentHTML("afterbegin", e) : t.innerHTML = e,
t
}
},
{
key: "setNumVisible",
value: function(t) {
t ? (this.dom.querySelector(".tmap-zoom-control").style.height = "102px", this.dom.querySelector(".tmap-zoom-number").style.display = "block", this.dom.querySelector(".tmap-zoom-spliter").style.display = "none", this.dom.querySelector(".tmap-zoom-out").style.top = "70px") : (this.dom.querySelector(".tmap-zoom-control").style.height = "80px", this.dom.querySelector(".tmap-zoom-number").style.display = "none", this.dom.querySelector(".tmap-zoom-spliter").style.display = "block", this.dom.querySelector(".tmap-zoom-out").style.top = "48px")
}
},
{
key: "_bindEvents",
value: function() {
var t = this;
this.zoomIn = this.dom.querySelector(".tmap-zoom-in"),
this.zoomOut = this.dom.querySelector(".tmap-zoom-out"),
this.zoomNumberShow = this.dom.querySelector(".tmap-zoom-number"),
this.updateZoomNumberDisplay = function() {
t.zoomNumberShow.innerHTML = t.map.getZoom().toFixed(1)
},
this.handlers = [],
this.zoomInFinger = new m.Finger(this.zoomIn, {
preventDefaultMove: !0,
preventDefaultEnd: !0,
stopPropagation: !0
}),
this.zoomOutFinger = new m.Finger(this.zoomOut, {
preventDefaultMove: !0,
preventDefaultEnd: !0,
stopPropagation: !0
}),
this.handlers.push((0, g.on)(this.zoomInFinger, "tap",
function() {
t.map && t.map.zoomBy(1)
})),
this.handlers.push((0, g.on)(this.zoomOutFinger, "tap",
function() {
t.map && t.map.zoomBy( - 1)
})),
this.handlers.push((0, g.on)(this.dom, "dblclick",
function(t) {
t.stopPropagation()
})),
this.handlers.push((0, g.on)(this.dom, "mousedown,mousemove,mouseup,mouseover,mouseleave,click,dblclick, touchstart,touchmove,touchend",
function(t) {
t.stopPropagation()
}))
}
},
{
key: "onAdd",
value: function() {
this.updateZoomNumberDisplay(),
this.map.on("zoom", this.updateZoomNumberDisplay)
}
},
{
key: "onRemove",
value: function() {
this.updateZoomNumberDisplay && this.map.off("zoom", this.updateZoomNumberDisplay)
}
},
{
key: "onDestroy",
value: function() {
this.handlers.forEach(function(t) {
t && t.remove()
})
}
}]),
e
} (p.
default);
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(74),
p = i(v),
_ = function(t) {
function e(t, n) {
var i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0; (0, s.
default)(this, e);
var o = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n));
return o.z = i,
o
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "getZ",
value: function() {
return this.z
}
},
{
key: "clone",
value: function() {
return new e(this.x, this.y, this.z)
}
}]),
e
} (p.
default);
e.
default = _
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
for (var n = (0, l.latLngToMercator)(t), i = [], o = 0; o <= f; o++) {
var r = o * d,
a = new c.
default(0, 0);
a.x = Math.cos(r),
a.y = Math.sin(r),
i.push(a)
}
for (var s = i.length - 1; s >= 0; s--) {
var u = i[s];
i.push(new c.
default(u.y, u.x))
}
for (var h = i.length - 1; h >= 0; h--) {
var v = i[h];
i.push(new c.
default( - v.x, v.y))
}
for (var p = i.length - 1; p >= 0; p--) {
var _ = i[p];
i.push(new c.
default(_.x, -_.y))
}
var m = t.getLat() * Math.PI / 180;
return i.map(function(t) {
return t.x = n.x + e / Math.cos(m) * t.x,
t.y = n.y + e / Math.cos(m) * t.y,
(0, l.mercatorToLatLng)(t)
})
}
function r(t) {
return (0, s.
default)(t)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.getCirclePath = o;
var a = n(277),
s = i(a),
l = n(112),
u = n(74),
c = i(u),
f = 9,
d = 5 * Math.PI / 180;
e.
default = r
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
for (var i = (0, l.latLngToMercator)(t), o = [], r = 0; r <= f; r++) {
var a = r * d,
s = new c.
default(0, 0);
s.x = Math.cos(a),
s.y = Math.sin(a),
o.push(s)
}
for (var u = o.length - 1; u >= 0; u--) {
var h = o[u];
o.push(new c.
default(h.y, h.x))
}
for (var v = o.length - 1; v >= 0; v--) {
var p = o[v];
o.push(new c.
default( - p.x, p.y))
}
for (var _ = o.length - 1; _ >= 0; _--) {
var m = o[_];
o.push(new c.
default(m.x, -m.y))
}
var g = t.getLat() * Math.PI / 180;
return o.map(function(t) {
return t.x = i.x + e / Math.cos(g) * t.x,
t.y = i.y + n / Math.cos(g) * t.y,
(0, l.mercatorToLatLng)(t)
})
}
function r(t) {
return (0, s.
default)(t)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.getEllipsePath = o;
var a = n(277),
s = i(a),
l = n(112),
u = n(74),
c = i(u),
f = 9,
d = 5 * Math.PI / 180;
e.
default = r
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(47),
u = i(l),
c = n(209),
f = i(c),
d = function() {
function t(e, n) { (0, r.
default)(this, t),
this.markerCluster = e,
this.gridSize = e.gridSize,
this.averageCenter = e.averageCenter,
this.zoom = n,
this.center = null,
this.geometries = [],
this.geometrySet = {},
this.bounds = null
}
return (0, s.
default)(t, [{
key: "getClusterInfo",
value: function() {
return {
center: this.center,
geometries: this.geometries,
bounds: this.bounds
}
}
},
{
key: "getCenter",
value: function() {
return this.center
}
},
{
key: "add",
value: function(t) {
if (!this.geometrySet[t.id]) {
if (this.center) {
if (this.averageCenter) {
var e = this.geometries.length + 1,
n = (this.center.lat * (e - 1) + t.position.lat) / e,
i = (this.center.lng * (e - 1) + t.position.lng) / e;
this.center = new u.
default(n, i),
this._calculateBounds()
}
} else this.center = t.position,
this._calculateBounds();
this.geometrySet[t.id] = t,
this.geometries.push(t)
}
}
},
{
key: "_calculateBounds",
value: function() {
var t = new f.
default(this.center, this.center);
this.bounds = this.markerCluster._getExtendedBounds(t, this.zoom)
}
},
{
key: "getBounds",
value: function() {
var t = new f.
default(this.center, this.center);
return this.geometries.forEach(function(e) {
t.extend(new u.
default(e.position.lat, e.position.lng))
}),
t
}
},
{
key: "getGeometries",
value: function() {
return this.geometries
}
},
{
key: "isInBounds",
value: function(t) {
return this.bounds.contains(t.position)
}
},
{
key: "remove",
value: function() {
this.markerCluster = null,
this.gridSize = null,
this.averageCenter = null,
this.center = null,
this.geometries = [],
this.geometrySet = {},
this.bounds = null
}
}], [{
key: "normalizeClusterInfo",
value: function(t) {
return {
center: u.
default.convert(t.center),
geometries: t.geometries.map(function(t) {
return t.position = u.
default.convert(t.position),
t
}),
bounds: f.
default._convertFromWorker(t.bounds)
}
}
}]),
t
} ();
e.
default = d
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(27),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = /^[og]\s*(.+)?/,
f = /^mtllib /,
d = /^usemtl /,
h = function() {
function t(e) {
var n = e.index,
i = e.name,
o = void 0 === i ? "": i,
r = e.mtllib,
a = e.smooth,
l = e.groupStart; (0, s.
default)(this, t),
this.index = n,
this.name = o,
this.mtllib = r,
this.smooth = a,
this.groupStart = l,
this.groupEnd = -1,
this.groupCount = -1,
this.inherited = !1
}
return (0, u.
default)(t, [{
key: "clone",
value: function() {
return new t({
index: arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : this.index,
name: this.name,
mtllib: this.mtllib,
smooth: this.smooth,
groupStart: 0
})
}
}]),
t
} (),
v = function() {
function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : ""; (0, s.
default)(this, t),
this.name = e,
this.geometry = {
vertices: [],
normals: [],
colors: [],
uvs: []
},
this.materials = [],
this.smooth = !0
}
return (0, u.
default)(t, [{
key: "startMaterial",
value: function(t, e) {
var n = this._finalize(!1);
n && (n.inherited || n.groupCount <= 0) && this.materials.splice(n.index, 1);
var i = new h({
index: this.materials.length,
name: t,
mtllib: Array.isArray(e) && e.length > 0 ? e[e.length - 1] : "",
smooth: void 0 !== n ? n.smooth: this.smooth,
groupStart: void 0 !== n ? n.groupEnd: 0
});
return this.materials.push(i),
i
}
},
{
key: "currentMaterial",
value: function() {
if (this.materials.length > 0) return this.materials[this.materials.length - 1]
}
},
{
key: "_finalize",
value: function(t) {
var e = this.currentMaterial();
if (e && -1 === e.groupEnd && (e.groupEnd = this.geometry.vertices.length / 3, e.groupCount = e.groupEnd - e.groupStart, e.inherited = !1), t && this.materials.length > 1) for (var n = this.materials.length - 1; n >= 0; n--) this.materials[n].groupCount <= 0 && this.materials.splice(n, 1);
return t && 0 === this.materials.length && this.materials.push({
name: "",
smooth: this.smooth
}),
e
}
}]),
t
} (),
p = function() {
function t() { (0, s.
default)(this, t),
this.objects = [],
this.object = null,
this.vertices = [],
this.normals = [],
this.colors = [],
this.uvs = [],
this.materialLibraries = [],
this.startObject("", !1)
}
return (0, u.
default)(t, [{
key: "startObject",
value: function(t) {
var e = !(arguments.length > 1 && void 0 !== arguments[1]) || arguments[1];
if (this.object && !this.object.fromDeclaration) return this.object.name = t,
void(this.object.fromDeclaration = e);
var n = this.object && "function" == typeof this.object.currentMaterial ? this.object.currentMaterial() : void 0;
if (this.object && "function" == typeof this.object._finalize && this.object._finalize(!0), this.object = new v(t), this.object.fromDeclaration = e, n && n.name && "function" == typeof n.clone) {
var i = n.clone(0);
i.inherited = !0,
this.object.materials.push(i)
}
this.objects.push(this.object)
}
},
{
key: "finalize",
value: function() {
this.object && "function" == typeof this.object._finalize && this.object._finalize(!0)
}
},
{
key: "parseVertexIndex",
value: function(t, e) {
var n = parseInt(t, 10);
return 3 * (n >= 0 ? n - 1 : n + e / 3)
}
},
{
key: "parseNormalIndex",
value: function(t, e) {
var n = parseInt(t, 10);
return 3 * (n >= 0 ? n - 1 : n + e / 3)
}
},
{
key: "parseUVIndex",
value: function(t, e) {
var n = parseInt(t, 10);
return 2 * (n >= 0 ? n - 1 : n + e / 2)
}
},
{
key: "addVertex",
value: function(t, e, n) {
var i = this.vertices,
o = this.object.geometry.vertices;
o.push(i[t + 0], i[t + 1], i[t + 2]),
o.push(i[e + 0], i[e + 1], i[e + 2]),
o.push(i[n + 0], i[n + 1], i[n + 2])
}
},
{
key: "addVertexPoint",
value: function(t) {
var e = this.vertices;
this.object.geometry.vertices.push(e[t + 0], e[t + 1], e[t + 2])
}
},
{
key: "addVertexLine",
value: function(t) {
var e = this.vertices;
this.object.geometry.vertices.push(e[t + 0], e[t + 1], e[t + 2])
}
},
{
key: "addNormal",
value: function(t, e, n) {
var i = this.normals,
o = this.object.geometry.normals;
o.push(i[t + 0], i[t + 1], i[t + 2]),
o.push(i[e + 0], i[e + 1], i[e + 2]),
o.push(i[n + 0], i[n + 1], i[n + 2])
}
},
{
key: "addColor",
value: function(t, e, n) {
var i = this.colors,
o = this.object.geometry.colors;
o.push(i[t + 0], i[t + 1], i[t + 2]),
o.push(i[e + 0], i[e + 1], i[e + 2]),
o.push(i[n + 0], i[n + 1], i[n + 2])
}
},
{
key: "addUV",
value: function(t, e, n) {
var i = this.uvs,
o = this.object.geometry.uvs;
o.push(i[t + 0], i[t + 1]),
o.push(i[e + 0], i[e + 1]),
o.push(i[n + 0], i[n + 1])
}
},
{
key: "addUVLine",
value: function(t) {
var e = this.uvs;
this.object.geometry.uvs.push(e[t + 0], e[t + 1])
}
},
{
key: "addFace",
value: function(t, e, n, i, o, r, a, s, l) {
var u = this.vertices.length,
c = this.parseVertexIndex(t, u),
f = this.parseVertexIndex(e, u),
d = this.parseVertexIndex(n, u);
if (this.addVertex(c, f, d), void 0 !== i && "" !== i) {
var h = this.uvs.length;
c = this.parseUVIndex(i, h),
f = this.parseUVIndex(o, h),
d = this.parseUVIndex(r, h),
this.addUV(c, f, d)
}
if (void 0 !== a && "" !== a) {
var v = this.normals.length;
c = this.parseNormalIndex(a, v),
f = a === s ? c: this.parseNormalIndex(s, v),
d = a === l ? c: this.parseNormalIndex(l, v),
this.addNormal(c, f, d)
}
this.colors.length > 0 && this.addColor(c, f, d)
}
},
{
key: "addPointGeometry",
value: function(t) {
this.object.geometry.type = "Points";
var e = this.vertices.length,
n = !0,
i = !1,
o = void 0;
try {
for (var a, s = (0, r.
default)(t); ! (n = (a = s.next()).done); n = !0) {
var l = a.value;
this.addVertexPoint(this.parseVertexIndex(l, e))
}
} catch(t) {
i = !0,
o = t
} finally {
try { ! n && s.
return && s.
return ()
} finally {
if (i) throw o
}
}
}
},
{
key: "addLineGeometry",
value: function(t, e) {
this.object.geometry.type = "Line";
var n = this.vertices.length,
i = this.uvs.length,
o = !0,
a = !1,
s = void 0;
try {
for (var l, u = (0, r.
default)(t); ! (o = (l = u.next()).done); o = !0) {
var c = l.value;
this.addVertexLine(this.parseVertexIndex(c, n))
}
} catch(t) {
a = !0,
s = t
} finally {
try { ! o && u.
return && u.
return ()
} finally {
if (a) throw s
}
}
var f = !0,
d = !1,
h = void 0;
try {
for (var v, p = (0, r.
default)(e); ! (f = (v = p.next()).done); f = !0) {
var _ = v.value;
this.addUVLine(this.parseUVIndex(_, i))
}
} catch(t) {
d = !0,
h = t
} finally {
try { ! f && p.
return && p.
return ()
} finally {
if (d) throw h
}
}
}
}]),
t
} ();
e.
default = function(t) {
var e = new p; - 1 !== t.indexOf("\r\n") && (t = t.replace(/\r\n/g, "\n")),
-1 !== t.indexOf("\\\n") && (t = t.replace(/\\\n/g, ""));
for (var n = t.split("\n"), i = "", o = "", a = [], s = "function" == typeof "".trimLeft, l = 0, u = n.length; l < u; l++) if (i = n[l], i = s ? i.trimLeft() : i.trim(), 0 !== i.length && "#" !== (o = i.charAt(0))) if ("v" === o) {
var h = i.split(/\s+/);
switch (h[0]) {
case "v":
e.vertices.push(parseFloat(h[1]), parseFloat(h[2]), parseFloat(h[3])),
8 === h.length && e.colors.push(parseFloat(h[4]), parseFloat(h[5]), parseFloat(h[6]));
break;
case "vn":
e.normals.push(parseFloat(h[1]), parseFloat(h[2]), parseFloat(h[3]));
break;
case "vt":
e.uvs.push(parseFloat(h[1]), parseFloat(h[2]))
}
} else if ("f" === o) {
for (var v = i.substr(1).trim(), _ = v.split(/\s+/), m = [], g = 0, y = _.length; g < y; g++) {
var x = _[g];
if (x.length > 0) {
var b = x.split("/");
m.push(b)
}
}
for (var S = m[0], w = 1, E = m.length - 1; w < E; w++) {
var T = m[w],
A = m[w + 1];
e.addFace(S[0], T[0], A[0], S[1], T[1], A[1], S[2], T[2], A[2])
}
} else if ("l" === o) {
var P = i.substring(1).trim().split(" "),
I = void 0,
k = [];
if ( - 1 === i.indexOf("/")) I = P;
else {
I = [];
for (var L = 0,
M = P.length; L < M; L++) {
var C = P[L].split("/");
"" !== C[0] && I.push(C[0]),
"" !== C[1] && k.push(C[1])
}
}
e.addLineGeometry(I, k)
} else if ("p" === o) {
var R = i.substr(1).trim(),
B = R.split(" ");
e.addPointGeometry(B)
} else if (null !== (a = c.exec(i))) {
var N = (" " + a[0].substr(1).trim()).substr(1);
e.startObject(N)
} else if (d.test(i)) e.object.startMaterial(i.substring(7).trim(), e.materialLibraries);
else if (f.test(i)) e.materialLibraries.push(i.substring(7).trim());
else {
if ("s" !== o) {
if ("\0" === i) continue;
throw new Error('Unexpected line: "' + i + '"')
}
if (a = i.split(" "), a.length > 1) {
var O = a[1].trim().toLowerCase();
e.object.smooth = "0" !== O && "off" !== O
} else e.object.smooth = !0;
var D = e.object.currentMaterial();
D && (D.smooth = e.object.smooth)
}
e.finalize();
var z = [],
F = [],
V = !0,
Y = !1,
U = void 0;
try {
for (var j, G = (0, r.
default)(e.objects); ! (V = (j = G.next()).done); V = !0) {
var Z = j.value,
H = Z.geometry;
if (0 !== H.vertices.length) {
var W = {
header: {
vertexCount: H.vertices.length / 3
},
attributes: {}
};
switch (H.type) {
case "Points":
W.mode = 0;
break;
case "Line":
W.mode = 1;
break;
default:
W.mode = 4
}
W.attributes.POSITION = {
value: new Float32Array(H.vertices),
size: 3
},
H.normals.length > 0 && (W.attributes.NORMAL = {
value: new Float32Array(H.normals),
size: 3
}),
H.colors.length > 0 && (W.attributes.COLOR_0 = {
value: new Float32Array(H.colors),
size: 3
}),
H.uvs.length > 0 && (W.attributes.TEXCOORD_0 = {
value: new Float32Array(H.uvs),
size: 2
}),
W.materials = [];
var X = !0,
Q = !1,
q = void 0;
try {
for (var K, J = (0, r.
default)(Z.materials); ! (X = (K = J.next()).done); X = !0) {
var $ = K.value,
tt = {
name: $.name,
flatShading: !$.smooth
};
W.materials.push(tt),
F.push(tt)
}
} catch(t) {
Q = !0,
q = t
} finally {
try { ! X && J.
return && J.
return ()
} finally {
if (Q) throw q
}
}
W.name = Z.name,
z.push(W)
}
}
} catch(t) {
Y = !0,
U = t
} finally {
try { ! V && G.
return && G.
return ()
} finally {
if (Y) throw U
}
}
return {
meshes: z,
materials: F
}
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return t.length >= 2 && (0, h.
default)(t[0].lat) && (0, h.
default)(t[0].lng)
}
function r(t) {
return t.length >= 1 && t.every(function(t) {
return o(t)
})
}
function a(t) {
return (o(t) ? [t] : t).map(function(t) {
return s(t)
})
}
function s(t) {
var e = t.length > 0 ? [t[0]] : [];
return t.forEach(function(t) {
var n = e[e.length - 1];
t.lat === n.lat && t.lng === n.lng || e.push(t)
}),
e
}
function l(t) {
var e = [];
return t.forEach(function(n, i) {
if (i > 0) {
var o = t[i - 1],
r = [o.lng, o.lat],
a = [n.lng, n.lat],
s = u(n.lng, o.lng);
if (s < 5) {
var l = n.lng,
c = n.lat;
e.push({
lng: l,
lat: c,
height: 0
})
} else { (0, p.
default)(r, a, {
npoints: Math.ceil(s / 5)
}).geometry.coordinates.forEach(function(t) {
if (Array.isArray(t[0])) t.forEach(function(t) {
var n = (0, f.
default)(t, 2),
i = n[0],
o = n[1];
e.push({
lng: i,
lat: o,
height: 0
})
});
else {
var n = (0, f.
default)(t, 2),
i = n[0],
o = n[1];
e.push({
lng: i,
lat: o,
height: 0
})
}
})
}
return ! 0
}
var d = n.lng,
h = n.lat;
e.push({
lng: d,
lat: h,
height: 0
})
}),
e
}
function u(t, e) {
return Math.abs(e - t) < 180 ? Math.abs(e - t) : 360 - Math.abs(e - t)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var c = n(32),
f = i(c),
d = n(343),
h = i(d);
e.isSimple = o,
e.isComplexLine = r,
e.normalize = a,
e.deduplicatePoint = s,
e.cross180 = l;
var v = n(649),
p = i(v)
},
function(t, e, n) {
"use strict";
function i(t, e) {
return function(n) {
return new r.
default(n, t, e)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(651),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o);
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t, e) {
return f.
default.batchRender && (e += 1),
e === f.
default.maxDataZoom && t > e
}
function o(t, e) {
return e < f.
default.maxDataZoom && t <= e
}
function r(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0;
return f.
default.batchRender && (e += 1),
Math.abs(t - e) <= n
}
function a(t, e, n) {
return ! (r(t, e, 1) || n && o(e, n) || i(t, e))
}
function s(t, e, n) {
return ! (r(Math.round(t), e) || n && o(e, n) || i(t, e))
}
function l(t, e, n) {
return s(t, e, n)
}
function u(t, e) {
return s(t, e)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.isInterceptForBase64 = a,
e.isInterceptForGPU = s,
e.isInterceptForTileData = l,
e.isInterceptForPlacement = u;
var c = n(23),
f = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (c)
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return [{
name:
"a_Position",
components: 2,
type: "UNSIGNED_SHORT",
offset: 0
},
{
name: "a_Color",
components: 4,
type: "UNSIGNED_BYTE",
offset: 4
},
{
name: "a_Normal",
components: 2,
type: "UNSIGNED_BYTE",
offset: 8
},
{
name: "a_LineInfo",
components: 2,
type: "UNSIGNED_BYTE",
offset: 10
},
{
name: "a_LineDistance",
components: 1,
type: "UNSIGNED_SHORT",
offset: 12
},
{
name: "a_SideInfo",
components: 2,
type: "UNSIGNED_BYTE",
offset: 14
},
{
name: "a_PickingColor",
components: 4,
type: "UNSIGNED_BYTE",
offset: 16
}]
}
function r() {
return ["Uint16", "Uint16", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint16", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8"]
}
function a(t) {
var e = t.transX,
n = void 0 === e ? 0 : e,
i = t.transY,
o = void 0 === i ? 0 : i,
r = t.scale,
a = void 0 === r ? 1 : r;
return Math.round(n / 256) + 4 * Math.round(o / 256) + 16 * Math.round(1 / a)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(0),
l = i(s),
u = n(1),
c = i(u),
f = n(74),
d = i(f),
h = n(481),
v = i(h),
p = n(278),
_ = i(p),
m = n(237),
g = i(m),
y = n(381),
x = (i(y), n(23)),
b = i(x),
S = b.
default.batchRender ? "Uint32": "Uint16",
w = function() {
function t(e) { (0, l.
default)(this, t),
e = e || {},
this.normalScale = 63,
this.type = e.type || "default",
this.noTerminal = e.noTerminal || !1,
this.lineDistance = e.startDistance || 0;
var n = (0, v.
default)(r(), o()),
i = (0, v.
default)([S]);
this.vertiesDataBuffer = n(4096),
this.indicesDataBuffer = i(4096),
this.lineCount = 0
}
return (0, c.
default)(t, [{
key: "addLine",
value: function(t, e, n, i, o, r, s, l) {
function u(t, e, o, r) {
x = e.sub(t);
var a = x.perp().unit().mult(b)._round(),
s = a.mult( - 1),
l = e.dist(t),
u = Math.max(1, Math.floor(h + l)),
c = o.length,
d = 1024 + ~~t.x + w,
v = 1024 + ~~t.y + E,
p = 1024 + ~~e.x + w,
_ = 1024 + ~~e.y + E;
a.x += 128,
a.y += 128,
s.x += 128,
s.y += 128,
o.add([[d, v, n[0], n[1], n[2], n[3], a.x, a.y, i, S, 10 * h + T, A, P, f[0], f[1], f[2], f[3]], [d, v, n[0], n[1], n[2], n[3], s.x, s.y, i, S, 10 * h + T, A, P, f[0], f[1], f[2], f[3]], [p, _, n[0], n[1], n[2], n[3], s.x, s.y, i, S, 10 * u + T, A, P, f[0], f[1], f[2], f[3]], [p, _, n[0], n[1], n[2], n[3], a.x, a.y, i, S, 10 * u + T, A, P, f[0], f[1], f[2], f[3]]]),
r.add([[c + 0], [c + 1], [c + 3], [c + 1], [c + 2], [c + 3]]),
h = u
}
function c(t, e, o) {
var r = 1.732 * b,
a = e.length,
s = 1024 + ~~t.x + w,
l = 1024 + ~~t.y + E;
e.add([[s, l, n[0], n[1], n[2], n[3], 128, 2 * b + 128, i - 0, 0, 10 + T, A, P, f[0], f[1], f[2], f[3]], [s, l, n[0], n[1], n[2], n[3], 128 - r, -1 * b + 128, i - 0, 0, 10 + T, A, P, f[0], f[1], f[2], f[3]], [s, l, n[0], n[1], n[2], n[3], r + 128, -1 * b + 128, i - 0, 0, 10 + T, A, P, f[0], f[1], f[2], f[3]]]),
o.add([[a + 0], [a + 1], [a + 2]])
}
this.lineCount += 1,
t = t || {};
var f = t.pickingColor || [0, 0, 0, 0],
h = s || 1,
v = t,
p = v.noTerminal,
_ = this.vertiesDataBuffer,
m = this.indicesDataBuffer,
g = void 0,
y = void 0,
x = void 0,
b = this.normalScale,
S = 0;
o && r ? S = Math.min(10 * o, 240) + Math.floor(10 - r / o * 10) : (o = 0, r = 0);
var w = 2048 * (t.preWidth || 0),
E = 2048 * (t.nextWidth || 0),
T = t.deltaSideWidth || 0,
A = t.isSide || 0,
P = a(t.transform);
h = h % (o + r) || 1;
for (var I = [], k = 0, L = e.length / 2; k < L; k++) I.push(new d.
default(2 * e[2 * k], 2 * -e[2 * k + 1]));
if (l && I.push(I[0], I[1]), !S && !p && I.length > 2) {
p || c(I[0], _, m);
for (var M = 1,
C = I.length; M < C; M++) y = I[M],
c.bind(this)(y, _, m)
}
for (var R = 1,
B = I.length; R < B; R++) g = I[R - 1],
y = I[R],
u.bind(this)(g, y, _, m)
}
},
{
key: "addPolygon",
value: function(t, e) {
for (var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
i = this.vertiesDataBuffer, o = this.indicesDataBuffer, r = n.pickingColor, s = a(n.transform), l = g.
default.mixCoords(t, "polygon", e.concat([0, 0, 0, 0, 0, 0, s]).concat(r || [0, 0, 0, 0]), 1024, 2), u = _.
default.flatten([l]), c = u.vertices, f = u.dimensions, d = (0, _.
default)(c, u.holes, f, i.length), h = 0, v = c.length / f; h < v; h++) {
for (var p = [], m = h * f, y = (h + 1) * f; m < y; m++) p.push(c[m]);
i.add([p])
}
o.add(d)
}
}]),
t
} ();
e.
default = w
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return t === S.RENDER_LAYER_TYPE.marker || t === S.RENDER_LAYER_TYPE.label
}
function r(t) {
return t === S.RENDER_LAYER_TYPE.polygon || t === S.RENDER_LAYER_TYPE.circle || t === S.RENDER_LAYER_TYPE.ellipse || t === S.RENDER_LAYER_TYPE.rectangle
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_);
e.hasBorderLayer = r;
var g = n(257),
y = i(g),
x = n(90),
b = n(143),
S = n(66),
w = function(t) {
function e(t) {
return (0, u.
default)(this, e),
o(t.type) ? t.level = b.LAYER_LEVEL.OVERLAY_NAA: t.level = b.LAYER_LEVEL.OVERLAY_AA,
(0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t))
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "_initialize",
value: function(t) { (0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "_initialize", this).call(this, t),
this.sourceData = t.sourceData,
this.sourceId = this.id
}
},
{
key: "_addSource",
value: function() {
this.map && !this.map.getSource(this.sourceId) && this.map.addSource(this.sourceId, {
type: x.SOURCE_TYPE.geojson,
tileSize: this.tileSize,
data: this.sourceData
})
}
},
{
key: "_removeSource",
value: function() {
this.map && this.map.removeSource(this.sourceId)
}
}]),
e
} (y.
default);
e.
default = w
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(257),
p = i(v),
_ = n(90),
m = n(209),
g = i(m),
y = n(29),
x = function(t) {
function e(t) {
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_initialize",
value: function() {
this.sourceId = this.sourceId || this.id
}
},
{
key: "getBounds",
value: function() {
return this._bounds
}
},
{
key: "setBounds",
value: function(t) {
return t instanceof g.
default ? (this._bounds = t, this._resetData(), this) : (new y.BaseTypeError("bounds", "LatLngBounds", t).error(), this)
}
},
{
key: "_updateMediaSource",
value: function(t) {
this._mediaSource = t,
this._resetData()
}
},
{
key: "_resetData",
value: function() {
this.map && this.map.getSource(this.id).setData({
mediaSource: this._mediaSource,
bounds: this._bounds
})
}
},
{
key: "_addSource",
value: function() {
this._mediaSource && this._bounds && this._mediaSource && this._bounds && this.map && !this.map.getSource(this.sourceId) && (this.map.addSource(this.sourceId, {
type: _.SOURCE_TYPE.ground,
tileSize: this.tileSize,
data: {
mediaSource: this._mediaSource,
bounds: this._bounds
}
}), this._fire("layer", {}))
}
},
{
key: "_removeSource",
value: function() {
this.map && this.map.removeSource(this.sourceId)
}
}]),
e
} (p.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
if (L(t)) {
var e = t.id,
n = void 0 === e ? (0, b.uniqueId)() : e,
i = t.paths;
return t.id = n,
k(i) ? i.flat(3).every(function(t, e) {
var n = M(t);
return n || new P.ClassTypeError("MaskGeometry.path[" + e + "]", "LatLng", t).error(),
n
}) : (new P.BaseTypeError("MaskGeometry.paths", "Array", i).error(), !1)
}
return new P.BaseTypeError("MaskGeometry", "Object", t).error(),
!1
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(24),
a = i(r),
s = n(148),
l = i(s),
u = n(3),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(5),
_ = i(p),
m = n(4),
g = i(m),
y = n(257),
x = i(y),
b = n(10),
S = n(90),
w = n(220),
E = n(66),
T = n(41),
A = i(T),
P = n(29),
I = n(143),
k = A.
default.isArray,
L = A.
default.isObject,
M = A.
default.isValidLatLng,
C = function(t) {
function e(t) {
return (0, d.
default)(this, e),
t.type = E.RENDER_LAYER_TYPE.mask,
t.level = I.LAYER_LEVEL.UNDERGROUND,
(0, _.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t))
}
return (0, g.
default)(e, t),
(0, v.
default)(e, [{
key: "_initialize",
value: function(t) {
var e = t.geometries,
n = void 0 === e ? [] : e,
i = new l.
default;
this.isMaskReverse = t.isMaskReverse || !1,
this.sourceId = this.id,
this.maskGeoMap = i,
this.add(n)
}
},
{
key: "_addSource",
value: function() {
this.map && !this.map.getSource(this.sourceId) && this.map.addSource(this.sourceId, {
type: S.SOURCE_TYPE.geojson,
data: {
type: w.GEOMETRY_TYPES.MASK,
geometries: [].concat((0, a.
default)(this.maskGeoMap.values()))
}
})
}
},
{
key: "_removeSource",
value: function() {
this.map && this.map.removeSource(this.sourceId)
}
},
{
key: "add",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [];
return k(e) ? (e.forEach(function(e) {
if (o(e)) {
var n = e.id;
t.maskGeoMap.has(n) ? console.warn("MaskLayer.add: 已存在id为" + n + "的MaskGeometry对象。") : t.maskGeoMap.set(n, e)
}
}), this._updateData(), this) : (new P.BaseTypeError("MaskLayer.add()传入参数", "Array", e).error(), this)
}
},
{
key: "get",
value: function(t) {
return this.maskGeoMap.get(t)
}
},
{
key: "getAll",
value: function() {
return [].concat((0, a.
default)(this.maskGeoMap.values()))
}
},
{
key: "remove",
value: function(t) {
if (!k(t)) return new P.BaseTypeError("MaskLayer.remove()传入参数", "Array", t).error(),
this;
var e = this.maskGeoMap;
return t.forEach(function(t) {
e.has(t) ? e.delete(t) : console.warn("MaskLayer.remove: 不存在id为" + t + "的MaskGeometry对象。")
}),
this._updateData(),
this
}
},
{
key: "clear",
value: function() {
return this.maskGeoMap.clear(),
this._updateData(),
this
}
},
{
key: "update",
value: function(t) {
if (!k(t)) return new P.BaseTypeError("MaskLayer.update()传入参数", "Array", t).error(),
this;
var e = this.maskGeoMap;
return t.forEach(function(t) {
o(t) && e.set(t.id, t)
}),
this._updateData(),
this
}
},
{
key: "_updateData",
value: function() {
this.map && this.map.getSource(this.sourceId).setData({
type: w.GEOMETRY_TYPES.MASK,
geometries: [].concat((0, a.
default)(this.maskGeoMap.values()))
})
}
}]),
e
} (x.
default);
e.
default = C
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
var n = Array.isArray(e.features) ? e.features: _.DEFAULT_BASEMAP.vector.features,
i = [];
if (n.includes(p.BASE_LAYER_TYPE.base)) {
var o = new d.
default({
map:
t,
id: _.VECTOR_LAYER_ID.base,
features: [{
type: p.BASE_LAYER_TYPE.base,
filter: p.BASE_LAYER_TYPE.base
},
{
type: p.BASE_LAYER_TYPE.ground,
filter: p.BASE_LAYER_TYPE.ground
}]
});
t.moveLayer(o.id, y.LAYER_LEVEL.BASE),
i.push(o)
}
if (n.includes(p.BASE_LAYER_TYPE.arrow)) {
var r = new d.
default({
map:
t,
id: p.BASE_LAYER_TYPE.arrow,
features: [{
type: p.BASE_LAYER_TYPE.arrow,
filter: p.BASE_LAYER_TYPE.arrow
}]
});
r.setRank((0, y.getRank)(y.LAYER_LEVEL.GROUND) - 1),
i.push(r)
}
var a = n.includes(p.BASE_LAYER_TYPE.building3d) || n.includes("building"),
s = n.includes(p.BASE_LAYER_TYPE.building2d);
if (a || s) {
var l = new d.
default({
map:
t,
id: _.VECTOR_LAYER_ID.building,
zIndex: 1,
features: [a ? {
type: p.BASE_LAYER_TYPE.building3d,
filter: p.BASE_LAYER_TYPE.building3d
}: {
type: p.BASE_LAYER_TYPE.building2d,
filter: p.BASE_LAYER_TYPE.building3d
}]
});
t.moveLayer(l.id, y.LAYER_LEVEL.BUILDING),
i.push(l)
}
var u = n.includes(p.BASE_LAYER_TYPE.point),
c = n.includes(p.BASE_LAYER_TYPE.label);
if (u || c) {
var f = new d.
default({
map:
t,
id: _.VECTOR_LAYER_ID.poi,
features: [u ? {
type: p.BASE_LAYER_TYPE.point,
filter: p.BASE_LAYER_TYPE.point
}: null, c ? {
type: p.BASE_LAYER_TYPE.label,
filter: p.BASE_LAYER_TYPE.label
}: null, {
type: p.BASE_LAYER_TYPE.text,
filter: p.BASE_LAYER_TYPE.text
}].filter(function(t) {
return !! t
})
});
t.moveLayer(f.id, y.LAYER_LEVEL.TEXT),
i.push(f)
}
return i
}
function r(t) {
var e = new v.
default({
map:
t,
id: _.DEFAULT_BASEMAP.handdraw.type,
getTileUrl: function(t, e, n) {
e = Math.pow(2, n) - 1 - e;
var i = g.
default.handdrawSrc;
return i[(t + e) % i.length] + "?z=" + n + "&x=" + t + "&y=" + e + "&version=" + g.
default.dataVersion.scenic
},
maxDataZoom: 20
});
return e.setZIndex(2),
t.moveLayer(e.getId(), y.LAYER_LEVEL.BUILDING),
e
}
function a(t) {
var e = t.map,
n = t.tilesrc,
i = t.encrypt,
o = t.key;
window.onbeforeunload = function() {
var t = e.getSource(_.DEFAULT_BASEMAP.oversea.type),
n = t && t.overseaNum; (0, S.os)(o, n),
t && (t.overseaNum = 0)
};
var r = function() {
return 1 === this.layerResource.getFinalUsedMapStyleId() ? 1 : 0
}.bind(e);
return new v.
default({
map:
e,
id: _.DEFAULT_BASEMAP.oversea.type,
maxDataZoom: 18,
getTileUrl: function(t, e, a) {
var s = ["z=" + a, "x=" + t, "y=" + e, "styleid=" + n.style, "scene=" + r(), "version=" + n.version, "size=256", "ch=zh"],
l = s.join("&"),
u = i(l);
return n.url + "&key=" + o + "&param=" + u
}
})
}
function s(t, e) {
var n = Array.isArray(e.features) ? e.features: _.DEFAULT_BASEMAP.satellite.features,
i = [];
if (n.includes(_.SATELLITE_FEATURE.satellite)) {
var o = new v.
default({
map:
t,
id: _.SATELLITE_LAYER_ID[_.SATELLITE_FEATURE.satellite],
getTileUrl: function(t, e, n) {
e = Math.pow(2, n) - 1 - e;
var i = g.
default.satelliteSrc;
return i[(t + e) % i.length] + "/" + n + "/" + (t >> 4) + "/" + (e >> 4) + "/" + t + "_" + e + ".jpg?version=" + g.
default.dataVersion.sat
},
maxDataZoom: 18
});
t.moveLayer(o.id, y.LAYER_LEVEL.BASE),
i.push(o)
}
if (n.includes(_.SATELLITE_FEATURE.road)) {
var r = new v.
default({
map:
t,
id: _.SATELLITE_LAYER_ID[_.SATELLITE_FEATURE.road],
getTileUrl: function(t, e, n) {
e = Math.pow(2, n) - e - 1;
var i = g.
default.roadSrc;
return i[(t + e) % i.length] + "?z=" + n + "&x=" + t + "&y=" + e + "&styleid=2&scene=0&version=" + g.
default.dataVersion.tile
},
maxDataZoom: 18
});
t.moveLayer(r.id, y.LAYER_LEVEL.BASE),
i.push(r)
}
return i
}
function l(t, e) {
var n = Array.isArray(e.features) ? e.features: _.DEFAULT_BASEMAP.traffic.features,
i = e.opacity,
o = e.flowColor,
r = e.flowSpeed,
a = [],
s = e.filter;
if (e && !e.hasOwnProperty("filter") && (s = (0, c.
default)(_.TRAFFIC_ROAD_TYPE)), n.includes(_.TRAFFIC_FEATURE.base)) {
var l = new b.
default({
map:
t,
id: _.TRAFFIC_LAYER_ID[_.TRAFFIC_FEATURE.base],
type: p.RENDER_LAYER_TYPE.trafficBase,
maxDataZoom: 18,
filter: s,
opacity: i
});
t.moveLayer(l.id, y.LAYER_LEVEL.BASE),
a.push(l)
}
if (n.includes(_.TRAFFIC_FEATURE.flow)) {
var u = new b.
default({
map:
t,
id: _.TRAFFIC_LAYER_ID[_.TRAFFIC_FEATURE.flow],
type: p.RENDER_LAYER_TYPE.trafficFlow,
maxDataZoom: 18,
filter: s,
flowColor: o,
flowSpeed: r
});
t.moveLayer(u.id, y.LAYER_LEVEL.BASE),
a.push(u)
}
return a.forEach(function(e) {
var n = t.getSource(e.sourceId);
e._interval = setInterval(function() {
n.isFrozen || (n.reload(), n.once("tilesloaded",
function() {
if (e.type === p.RENDER_LAYER_TYPE.trafficFlow) {
t.renderEngine.getImageCache(e.id).clear()
} else {
t.renderEngine.painters.trafficBase.clearStore()
}
}))
},
6e4),
e.once("source_removed",
function() {
clearInterval(e._interval),
delete e._interval
})
}),
a
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.createOverseaLayer = e.createHanddrawLayer = e.createTrafficLayer = e.createSatelliteLayer = e.createVectorLayer = void 0;
var u = n(17),
c = i(u),
f = n(383),
d = i(f),
h = n(299),
v = i(h),
p = n(66),
_ = n(281),
m = n(23),
g = i(m),
y = n(143),
x = n(667),
b = i(x),
S = n(43);
e.createVectorLayer = o,
e.createSatelliteLayer = s,
e.createTrafficLayer = l,
e.createHanddrawLayer = r,
e.createOverseaLayer = a
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(221),
r = i(o),
a = n(25),
s = i(a),
l = n(16),
u = i(l),
c = n(3),
f = i(c),
d = n(0),
h = i(d),
v = n(1),
p = i(v),
_ = n(5),
m = i(_),
g = n(4),
y = i(g),
x = n(249),
b = i(x),
S = n(670),
w = i(S),
E = n(28),
T = i(E),
A = n(23),
P = i(A),
I = n(10),
k = n(671),
L = i(k),
M = T.
default.isPC() ? 800 : 200,
C = function(t) {
function e(t, n, i) { (0, h.
default)(this, e);
var o = (0, m.
default)(this, (e.__proto__ || (0, f.
default)(e)).call(this, t, n, i)),
r = n.tileSize,
a = void 0 === r ? P.
default.tileSize:
r,
s = n.minZoom,
l = void 0 === s ? P.
default.minZoom:
s,
c = n.maxZoom,
d = void 0 === c ? P.
default.maxZoom:
c,
v = n.isPixelGeo,
p = void 0 !== v && v,
_ = n.tileManager,
g = n.data;
return (0, u.
default)(o, {
tileSize: a,
minZoom: l,
maxZoom: d,
isPixelGeo: p
}),
o._items = {},
o._data = g,
o.tileManager = _ || new L.
default({
add:
o.addTile.bind(o),
remove: o.removeTile.bind(o),
show: o.showTile.bind(o),
minZoom: l,
maxZoom: d
}),
o
}
return (0, y.
default)(e, t),
(0, p.
default)(e, [{
key: "getDrawItems",
value: function() {
return this._items
}
},
{
key: "onCacheRemove",
value: function(t) {
this.unloadTile(t)
}
},
{
key: "onUpdate",
value: function(t, e, n) {
this.updateCacheSize(t),
this.tileManager.update(t.zoom, t, {
reason: n
})
}
},
{
key: "updateCacheSize",
value: function(t) {
var e = Math.ceil(t.width / this.tileSize) + 1,
n = Math.ceil(t.height / this.tileSize) + 1,
i = e * n,
o = Math.floor(5 * i),
r = Math.max(M, o);
this.cache.setMaxSize(r)
}
},
{
key: "onClear",
value: function() {
this.clearTiles()
}
},
{
key: "clearTiles",
value: function() {
this.tileManager.clear()
}
},
{
key: "onReload",
value: function() {
var t = this; (0, I.forIn)(this._items,
function(e, n) {
t.reloadTile(n)
})
}
},
{
key: "addTile",
value: function(t, e) {
var n = this.cache.get(t.id);
if (n) return n.hide(),
this._items[t.id] = n,
s.
default.resolve();
n = new b.
default(t, this.tileSize),
n.hide(),
this._items[t.id] = n,
n.state = x.TILE_STATE.loading;
var i = this.loadTile(n, e);
return i.then(this._tileLoaded.bind(this, n)),
i
}
},
{
key: "removeTile",
value: function(t) {
var e = t.id,
n = this._items[e];
if (n) if (delete this._items[e], n.isLoading()) n.aborted = !0,
n.state = x.TILE_STATE.unloaded,
this.abortTile(n);
else if (n.hasData()) {
var i = n.coord.id;
this.cache.add(i, n)
}
}
},
{
key: "showTile",
value: function(t) {
var e = this._items[t.id];
e && !e.visible && (e.show(), this._fire("data", {
dataType: "source",
tile: e
}))
}
},
{
key: "reloadTile",
value: function(t) {
var e = this;
t.isLoading() || (t.state = x.TILE_STATE.reloading, this.loadTile(t, {}).then(function(n) {
e._fire("data", {
dataType: "source",
tile: t
}),
e._tileLoaded.call(e, t, n)
}))
}
},
{
key: "loadTile",
value: function() {}
},
{
key: "unloadTile",
value: function(t) {
t.unloadData(),
this.dispatcher.send("removeTile", {
uid: t.uid,
type: this.type
},
null, t.workerID)
}
},
{
key: "abortTile",
value: function(t) {
this.dispatcher.send("abortTile", {
uid: t.uid,
type: this.type
},
null, t.workerID)
}
},
{
key: "_tileLoaded",
value: function(t, e) {
e && (t.state = x.TILE_STATE.loaded, 404 !== e.status && this._fire("loaderror", {
tile: t,
error: e
})),
(0, r.
default)(this._items).every(function(t) {
return t.isLoaded()
}) && this._fire("tilesloaded", {
dataType: "source",
tiles: this._items
})
}
}]),
e
} (w.
default);
e.
default = C
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(106),
p = n(23),
_ = function(t) {
function e(t, n, i) { (0, s.
default)(this, e);
var o = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this));
return o.id = t,
o.dispatcher = i,
o.minZoom = n.minZoom || p.minZoom,
o.maxZoom = n.maxZoom || p.maxZoom,
o.maxDataZoom = n.maxDataZoom || p.maxDataZoom,
o._items = {},
o
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "getDrawItems",
value: function() {
return this._items
}
},
{
key: "clear",
value: function() {}
},
{
key: "freeze",
value: function() {
this.isFrozen = !0
}
},
{
key: "unfreeze",
value: function() {
this.isFrozen = !1
}
},
{
key: "onAdd",
value: function(t) {
this.map = t
}
},
{
key: "onRemove",
value: function() {
this.map = null
}
},
{
key: "update",
value: function(t, e) {
this.transform = t,
this.camera = e
}
}]),
e
} (v);
e.
default = _
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(113),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(249),
m = i(_),
g = n(492),
y = i(g),
x = n(300),
b = i(x),
S = n(10),
w = n(23),
E = function(t) {
function e(t, n, i) { (0, u.
default)(this, e);
var o = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t, n, i));
return o._metaData = null,
o._initialize(),
o.workerOptions = S.extend({
source: o.getUniqueId(),
tileSize: o.tileSize
},
n.workerOptions),
o
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "_initialize",
value: function() {}
},
{
key: "load",
value: function() {
var t = this;
this._loadOriginData(function() {
t._fire("data", {
dataType: "source",
sourceDataType: "metadata"
})
})
}
},
{
key: "onAdd",
value: function(t) {
this.map = t,
this.load()
}
},
{
key: "getMetaData",
value: function() {
return this._metaData
}
},
{
key: "update",
value: function(t) {
this.transform = t;
var e = new b.
default(0, 0, 0, 0);
this.addItem(e)
}
},
{
key: "addItem",
value: function(t) {
this.addTile(t, null, null)
}
},
{
key: "_loadOriginData",
value: function(t) {
var e = this;
this._fire("dataloading", {
dataType: "source"
}),
this._updateWorkerData(function() {
e.reload(),
e.transform && e.update(e.transform),
t && t()
})
}
},
{
key: "_updateWorkerData",
value: function(t) {
var e = this,
n = S.extend({},
this.workerOptions),
i = this._data;
n.data = (0, r.
default)(i),
this._onLoadDataStart(i),
this.workerID = this.dispatcher.send(this.type + ".loadData", n,
function(n, i) {
n ? (e._onLoadDataError(n), t(n)) : (e._loaded = !0, e._metaData = i, e._onLoadDataEnd(), t(null))
},
this.workerID)
}
},
{
key: "_onLoadDataStart",
value: function() {}
},
{
key: "_onLoadDataEnd",
value: function() {}
},
{
key: "_onLoadDataError",
value: function(t) {
this._fire("error", {
error: t
})
}
},
{
key: "addTile",
value: function(t, e, n) {
var i = this._items[t.id];
return i || ((i = this._cache.get(t.id)) ? (this._items[t.id] = i, i) : (i = new m.
default(t, this.tileSize), this._items[t.id] = i, t.z <= w.maxDataZoom && this.loadTile(i, e, n ? n.bind(this) : this._tileLoaded.bind(this, i)), i))
}
},
{
key: "loadTile",
value: function(t, e, n) {
var i = {
type: this.type,
uid: t.uid,
coord: t.coord,
zoom: t.coord.z,
maxZoom: this.maxZoom,
tileSize: this.tileSize,
source: this.getUniqueId()
};
t.workerID = this.dispatcher.send("loadTile", i,
function(e, i) {
if (t.clear(), !t.aborted) return e || !i ? void(t.state = _.TILE_STATE.loaded) : (t.setData(i), n(null))
},
this.workerID)
}
},
{
key: "abortTile",
value: function(t) {
t.aborted = !0
}
},
{
key: "unloadTile",
value: function(t) {
t.clear(),
this.dispatcher.send("removeTile", {
uid: t.uid,
type: this.type,
source: this.getUniqueId()
},
function() {},
t.workerID)
}
},
{
key: "onRemove",
value: function() {
this.dispatcher.broadcast("removeSource", {
type: this.type,
source: this.getUniqueId()
},
function() {}),
this.map = null,
this._metaData = null
}
}]),
e
} (y.
default);
e.
default = E
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(20),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(79),
f = function() {
function t(e, n, i) { (0, s.
default)(this, t),
i && (this.loadGeoJSON = i),
this._geoDataIndexes = {},
this.actor = e
}
return (0, u.
default)(t, [{
key: "loadVectorData",
value: function(t, e) {
var n = t.source;
if (!this._geoDataIndexes[n]) return e(null, null);
var i = this._geoDataIndexes[n];
if (!i) return e(null, null);
e(null, i)
}
},
{
key: "loadData",
value: function(t, e) {
var n = function(n, i) {
var o = this;
return n ? e(n) : "object" !== (void 0 === i ? "undefined": (0, r.
default)(i)) ? e(new Error("Input data is not a valid GeoJSON object.")) : void this._indexData(t, i,
function(n, i) {
if (n) return e(n);
o._geoDataIndexes[t.source] = i,
e(null)
})
}.bind(this);
this.loadGeoJSON(t, n)
}
},
{
key: "loadGeoJSON",
value: function(t, e) {
if (t.url) c.getJSON(t.url, e);
else {
if ("string" != typeof t.data) return e(new Error("Input data is not a valid GeoJSON object."));
try {
return e(null, JSON.parse(t.data))
} catch(t) {
return e(new Error("Input data is not a valid GeoJSON object."))
}
}
}
},
{
key: "removeSource",
value: function(t) {
this._geoDataIndexes[t.source] && delete this._geoDataIndexes[t.source]
}
},
{
key: "_indexData",
value: function() {}
}]),
t
} ();
e.
default = f
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(249),
p = n(384),
_ = i(p),
m = n(489),
g = i(m),
y = n(28),
x = i(y),
b = n(10),
S = function(t) {
function e(t, n, i) { (0, s.
default)(this, e);
var o = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n, i));
return o.tileSize = n.tileSize || 256,
o._isPixelGeo = n.isPixelGeo || !1,
o._data = n.data,
o._cache = new _.
default(0, o.unloadTile.bind(o)),
o._maxTileCacheSize = x.
default.isPC() ? 800 : 200,
o._on("error",
function() {
o._sourceErrored = !0
}),
o
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "getUniqueId",
value: function() {
return this._uniqueId || (this._uniqueId = (this.map && this.map.id || b.uniqueId()) + "_" + this.id),
this._uniqueId
}
},
{
key: "addTile",
value: function() {}
},
{
key: "loadTile",
value: function() {}
},
{
key: "unloadTile",
value: function() {}
},
{
key: "abortTile",
value: function() {}
},
{
key: "reload",
value: function() {
var t = this;
this._cache.reset(),
b.forIn(this._items,
function(e, n) {
t.reloadTile(n)
})
}
},
{
key: "reloadTile",
value: function(t) {
t.state !== v.TILE_STATE.loading && (t.state = v.TILE_STATE.reloading, this.loadTile(t, {},
this._tileLoaded.bind(this, t)))
}
},
{
key: "removeTile",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],
n = this._items[t];
if (n) if (delete this._items[t], n.hasData()) {
var i = n.coord.id; ! e && this._cache.add(i, n)
} else n.aborted = !0,
this.abortTile(n),
this.unloadTile(n)
}
},
{
key: "clear",
value: function() {
this.clearTiles(),
this._cache.reset()
}
},
{
key: "clearTiles",
value: function() {
var t = this;
b.forIn(this._items,
function(e) {
t.removeTile(e)
})
}
},
{
key: "_tileLoaded",
value: function() {}
},
{
key: "getDrawItems",
value: function() {
return this._items
}
},
{
key: "onAdd",
value: function(t) {
this.map = t
}
},
{
key: "onRemove",
value: function() {
this.map = null
}
},
{
key: "updateCacheSize",
value: function(t) {
var e = Math.ceil(t.width / this.tileSize) + 1,
n = Math.ceil(t.height / this.tileSize) + 1,
i = e * n,
o = Math.floor(5 * i);
if (x.
default.isPC()) {
var r = "number" == typeof this._maxTileCacheSize ? Math.max(this._maxTileCacheSize, o) : o;
this._cache.setMaxSize(r)
} else this._cache.setMaxSize(o)
}
},
{
key: "update",
value: function() {}
}]),
e
} (g.
default);
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(490),
p = i(v),
_ = n(90),
m = n(249),
g = function(t) {
function e(t, n, i) { (0, s.
default)(this, e);
var o = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n, i));
return o.on("data",
function() {
o.hasGeoChanged_inLoading = !0
}),
o
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_initialize",
value: function() {
this.type = _.SOURCE_TYPE.geojson
}
},
{
key: "setData",
value: function(t) {
var e = this;
return this._data = t,
this._loadOriginData(function() {
e._fire("data", {
dataType: "source",
sourceDataType: "content"
})
}),
this
}
},
{
key: "reloadTile",
value: function(t) {
var e = this;
t.state !== m.TILE_STATE.loading ? (t.state = m.TILE_STATE.reloading, this.hasGeoChanged_inLoading = !1, this.updateTileCallback ? (this.updateTileCallback(), this.updateTileCallback = null) : this.loadTile(t, {},
this._tileLoaded.bind(this, t))) : (this.hasGeoChanged_inLoading && (this.updateTileCallback = function() {
e.loadTile(t, {},
function() {
e._tileLoaded.bind(e, t),
e._fire("data", {
dataType: "source"
}),
e.hasGeoChanged_inLoading = !1
})
}), t.state = m.TILE_STATE.reloading)
}
},
{
key: "updateIndoorData",
value: function(t, e) {
var n = this;
arguments.length > 2 && void 0 !== arguments[2] && arguments[2] && (t = this.indoorOption);
var i = this._data.geometries,
o = this._data.type,
r = 0;
i.forEach(function(i, a) {
var s = 0;
if ("POLYLINE" === o && (i.paths && i.paths.forEach(function(t) {
s += t.length || 1
}), s = s - 1 > 0 ? s - 1 : 0), !i.floorName || !i.buildingId) return void(r += s);
var l = 1;
l = t ? t.floorName === i.floorName && t.buildingId === i.buildingId ? 1 : 0 : e ? 1 : 0;
var u = n._items["0_0_0"];
if ("POINT" === o) u._data["0_0_0"].instancePixelOffsetList[3 * a + 2] = l,
u._data["0_0_0"].uid = (new Date).getTime();
else if ("POLYLINE" === o) {
for (var c = r; c < r + s; c++) u._data["0_0_0"].instanceColorList[4 * c + 3] = 255 * l,
u._data["0_0_0"].instanceBorderColorList[4 * c + 3] = 255 * l;
r += s,
u._data["0_0_0"].uid = (new Date).getTime()
}
}),
this.indoorOption = t
}
},
{
key: "_tileLoaded",
value: function() {
this.updateIndoorData && this.updateIndoorData(null, !1, !0),
this._fire("data_loaded")
}
},
{
key: "setStyle",
value: function(t) {
var e = this;
return this._data.styles = t,
this._loadOriginData(function() {
e._fire("data", {
dataType: "source",
sourceDataType: "content"
})
}),
this
}
}]),
e
} (p.
default);
e.
default = g
},
function(t, e, n) {
"use strict";
function i(t) {
return 64 === f.indexOf(t.charAt(t.length - 1)) ? t.substring(0, t.length - 1) : t
}
function o(t) {
if (!t) return null;
t = i(t),
t = i(t);
var e = parseInt(t.length / 4 * 3, 10),
n = [];
t = t.replace(/[^A-Za-z0-9\+\/\=]/g, "");
var o = void 0,
r = void 0,
a = void 0,
s = void 0,
l = void 0,
u = void 0,
c = void 0,
d = 0,
h = 0;
for (d = 0; d < e; d += 3) s = f.indexOf(t.charAt(h)),
h += 1,
l = f.indexOf(t.charAt(h)),
h += 1,
u = f.indexOf(t.charAt(h)),
h += 1,
c = f.indexOf(t.charAt(h)),
h += 1,
o = s << 2 | l >> 4,
r = (15 & l) << 4 | u >> 2,
a = (3 & u) << 6 | c,
n.push(o),
64 !== u && n.push(r),
64 !== c && n.push(a);
return n
}
function r(t, e) {
return t >> 8 - e & 255 | t << e & 255
}
function a(t) {
return r(t, 2) ^ r(t, 1) & r(t, 3)
}
function s(t, e) {
return {
x: e,
y: t ^ a(e)
}
}
function l(t) {
for (var e = t.length,
n = [], i = 0; i < e; i += 2) {
var o = t[i],
r = 0;
i + 1 < e && (r = t[i + 1]);
for (var a = 0,
l = 0,
u = 0; u < 3; u++) {
var c = s(o, r);
a = c.x,
o = a,
l = c.y,
r = l
}
n.push(a),
n.push(l)
}
return n
}
function u(t) {
for (var e = "",
n = 0; n < t.length;) {
var i = t[n],
o = 0,
r = 0;
i < 128 ? (e += String.fromCharCode(i), n += 1) : i > 191 && i < 224 ? (o = t[n + 1], e += String.fromCharCode((31 & i) << 6 | 63 & o), n += 2) : (o = t[n + 1], r = t[n + 2], e += String.fromCharCode((15 & i) << 12 | (63 & o) << 6 | 63 & r), n += 3)
}
return e
}
function c(t) {
var e = t.lastIndexOf("}");
return t.substring(0, e + 1)
}
var f = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
e.decode = function(t) {
return c(u(l(o(t))))
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
var n = t[t.length - 1];
return e === O.BASE_LAYER_TYPE.region ? t.cidx + String(1e5 * (n >> 16 & 65535)) : t.cidx + String(1e5 * (n >> 16 & 65535) + (65535 & n))
}
function r(t, e) {
var n = void 0;
return H.forIn(t,
function(t, i) {
i.minScaleVal <= e && i.maxScaleVal >= e && (n = i)
}),
n
}
function a(t, e) {
if (e) {
for (var n = t[1], i = e.transX, o = e.transY, r = e.scale, a = 0; a < n.length; a += 2) n[a] = (n[a] + i) * r,
n[a + 1] = (n[a + 1] + o) * r;
t[0] === J && (t[2] = t[2] * r)
}
}
function s(t, e) {
var n = e.enc,
i = e.imgUploadHook,
o = e.childIdx,
r = void 0 === o ? 0 : o;
if (t instanceof Array) {
var l = -1,
u = [],
c = [],
f = [],
d = [];
return t.forEach(function(t, e) {
var i = s(t, {
enc: n,
childIdx: e
});
0 === i.ret && (l = 0),
u.push(i.img),
c.push(i.ext_img),
f = f.concat(i.features || []),
d = d.concat(i.pois || [])
}),
i && (u.length || c.length) && i(u, c),
{
ret: l,
img: u,
ext_img: c,
features: f,
pois: d
}
}
if (!t.data) return {};
var h = n ? t: Z(Y(t.data));
if (0 !== h.ret) return {};
i && i(h.img, h.ext_img);
var v = j(U(h.features)) || [],
p = j(U(h.pois)) || [];
return v.unshift([$, [0, 0, 256, 0, 256, 256, 0, 256], "", 0]),
v.forEach(function(e) {
e[0] instanceof Array ? e.forEach(function(e) {
a(e, t.tileTransform)
}) : a(e, t.tileTransform),
e.cidx = r,
e.transform = t.tileTransform || {}
}),
p.forEach(function(e) {
e[0] instanceof Array ? e.forEach(function(e) {
a(e, t.tileTransform)
}) : a(e, t.tileTransform),
e.cidx = r,
e.transform = t.tileTransform || {}
}),
h.features = v,
h.pois = p,
h
}
var l = n(82),
u = i(l),
c = n(27),
f = i(c),
d = n(221),
h = i(d),
v = n(32),
p = i(v),
_ = n(113),
m = i(_),
g = n(25),
y = i(g),
x = n(24),
b = i(x),
S = n(17),
w = i(S),
E = n(0),
T = i(E),
A = n(1),
P = i(A),
I = n(652),
k = i(I),
L = n(653),
M = i(L),
C = n(654),
R = i(C),
B = n(381),
N = i(B),
O = n(66),
D = n(301),
z = n(23),
F = i(z),
V = n(240),
Y = n(494).decode,
U = n(693).restores,
j = n(692).merge,
G = n(10),
Z = G.parseJson,
H = n(10),
W = n(497),
X = W.getVectorStyle,
Q = n(10),
q = Q.uniqueId,
K = {
65536 : O.BASE_LAYER_TYPE.point,
131072 : O.BASE_LAYER_TYPE.line,
196608 : O.BASE_LAYER_TYPE.region,
262144 : O.BASE_LAYER_TYPE.label,
327680 : O.BASE_LAYER_TYPE.arrow
},
J = 196619,
$ = 196613,
tt = function() {
function t(e) { (0, T.
default)(this, t),
this.uid = e.uid,
this.coord = e.coord,
this.dataZoom = e.coord.z,
this._needUploadTileImage = !1,
this._billboardFeatures = [];
var n = e.styleId;
this.styleId = n,
this.parse = (0, D.isDefaultStyle)(n) ? this.parseForDefaultStyle.bind(this) : this.parseForCustomStyle.bind(this)
}
return (0, P.
default)(t, [{
key: "parseForCustomStyle",
value: function(t, e, n, i, o, r, a) {
function s(t) {
if (t) {
var e = t;
return t.children && (0, w.
default)(t.children).length > 0 && H.forIn(t.children,
function(t, n) {
e = [].concat((0, b.
default)(e), (0, b.
default)(n))
}),
e
}
}
function l(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],
i = this.getOriginalGroundFeatures(v.features, e, !0),
o = (0, k.
default)(i.ranks, t);
E[e] = i,
n && h[O.BASE_LAYER_TYPE.base][t] ? (!h[O.BASE_LAYER_TYPE.base][t].children && (h[O.BASE_LAYER_TYPE.base][t].children = {}), h[O.BASE_LAYER_TYPE.base][t].children[e] = o) : (h[O.BASE_LAYER_TYPE.base] = {},
h[O.BASE_LAYER_TYPE.base][t] = o)
}
function u(t, e, n) {
var i = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
if (n) {
var o = (0, M.
default)(n.buildings, t),
r = (0, k.
default)(n.ranksSide, t),
a = this.parseInstanceArrow(h.arrow, t);
i ? (!h[O.BASE_LAYER_TYPE.building3d][t].children && (h[O.BASE_LAYER_TYPE.building3d][t].children = {}), h[O.BASE_LAYER_TYPE.building3d][t].children[e] = {
buildings: o,
buildSideShapes: r
},
a && (h[O.BASE_LAYER_TYPE.arrow][t].children[e] = h.arrow[t].slice() || [], h[O.BASE_LAYER_TYPE.arrow][t].children[e].instance = a)) : (h[O.BASE_LAYER_TYPE.building3d] = {},
h[O.BASE_LAYER_TYPE.building3d][t] = {},
h[O.BASE_LAYER_TYPE.building3d][t].buildings = o, h[O.BASE_LAYER_TYPE.building3d][t].buildSideShapes = r, a && (h[O.BASE_LAYER_TYPE.arrow] = h.arrow || {},
h[O.BASE_LAYER_TYPE.arrow][t] = h.arrow[t] || [], h[O.BASE_LAYER_TYPE.arrow][t].instance = a))
}
}
var c = this,
f = this.coord.id,
d = this.parseOriginData(t, e, n, i, null, a),
h = d.layerstiles,
v = d.jsonData;
if (!h || !v) return void r(null, null);
var _ = s(h.point && h.point[f]),
g = s(h.label && h.label[f]),
x = [];
_ && _.forEach(function(t) {
t && t.datas && t.datas[0].textName && t.datas[0].textName.split("").forEach(function(e) {
x.findIndex(function(n) {
return n.text === e && n.font_weight === t.datas[0].font_weight
}) < 0 && x.push({
text: e,
font_weight: t.datas[0].font_weight
})
})
}),
g && g.forEach(function(t) {
t && t.roadName && t.roadName.split("").forEach(function(e) {
x.findIndex(function(n) {
return n.text === e && n.font_weight === t.roads[0].datas[0].font_weight
}) < 0 && x.push({
text: e,
font_weight: t.roads[0].datas[0].font_weight
})
})
});
var S = {},
E = {};
if (l.call(this, f, this.dataZoom), this.dataZoom === F.
default.maxDataZoom) for (var T = F.
default.maxDataZoom + 1; T <= F.
default.maxZoom; T++) l.call(this, f, T, !0);
if (S.base = h.base, delete h.base, S = this.transferData(f, S, "base", this.dataZoom), S.id = f, r(null, S), u.call(this, f, this.dataZoom, E[this.dataZoom]), this.dataZoom === F.
default.maxDataZoom) for (var A = F.
default.maxDataZoom + 1; A <= F.
default.maxZoom; A++) u.call(this, f, A, E[A], !0);
new y.
default(function(t) {
var e = "";
c._needUploadTileImage && v.img && (e = {
tileImage64: v.img,
tileId: f,
billboardData: (0, m.
default)(c._billboardFeatures)
}),
o.send("uploadTileTexture", {
zoom: c.coord.z,
uid: c.uid,
billboard: e,
glyphs: x
},
function(e, n) {
if (e) console.error(e),
t([{},
{}]);
else {
var i = JSON.parse(n.billboardMapping),
o = JSON.parse(n.glyphMapping[0]),
r = JSON.parse(n.glyphMapping[1]);
t([i, o, r])
}
})
}).then(function(t) {
function e(t, e) {
if (arguments.length > 2 && void 0 !== arguments[2] && arguments[2]) {
var i = h.point[t].children && h.point[t].children[e],
o = h.label[t].children && h.label[t].children[e],
r = {
point: {},
label: {}
};
r.point[t] = i,
r.label[t] = o;
var u = this.parseInstancePoint(r, t, n, {
glyphMapping: s,
glyphMappingBold: l,
billboardMapping: a
});
i && (h[O.BASE_LAYER_TYPE.point][t].children[e].instance = u),
o && (h[O.BASE_LAYER_TYPE.label][t].children[e].instance = u)
} else {
var c = this.parseInstancePoint(h, t, n, {
glyphMapping: s,
glyphMappingBold: l,
billboardMapping: a
});
h[O.BASE_LAYER_TYPE.point] = h.point || {},
h[O.BASE_LAYER_TYPE.point][t] = h.point[t] || [],
h[O.BASE_LAYER_TYPE.point][t].instance = c,
h[O.BASE_LAYER_TYPE.label] = h.label || {},
h[O.BASE_LAYER_TYPE.label][t] = h.label[t] || [],
h[O.BASE_LAYER_TYPE.label][t].instance = c
}
}
var o = (0, p.
default)(t, 3),
a = o[0],
s = o[1],
l = o[2];
if (e.call(c, f, c.dataZoom), c.dataZoom === F.
default.maxDataZoom) for (var u = F.
default.maxDataZoom + 1; u <= F.
default.maxZoom; u++) e.call(c, f, u, !0);
h = c.transferData(f, h, "increment"),
h.id = f,
h.styleId = i.styleId,
r(null, h)
})
}
},
{
key: "transferData",
value: function(t, e, n) {
var i = [];
return (0, w.
default)(e).forEach(function(n) {
if (n === O.BASE_LAYER_TYPE.base) {
var o = e[n] && e[n][t];
if (!o) return;
e[n][t] = {
id: t,
children: o.children || null,
indeices: {
arrayBuffer: o.indeices.dataView,
length: o.indeices.length
},
lineCount: o.lineCount,
size: o.size,
vertices: {
arrayBuffer: o.vertices.dataView,
attributes: o.vertices.attributes,
bytesPerElement: o.vertices.bytesPerElement
},
vertiesCount: o.vertiesCount
}
} else if (n === O.BASE_LAYER_TYPE.region) delete e[O.BASE_LAYER_TYPE.region];
else if (n === O.BASE_LAYER_TYPE.line) delete e[O.BASE_LAYER_TYPE.line];
else if (n === O.BASE_LAYER_TYPE.building3d) {
var r = e[n] && e[n][t] && e[n][t].buildings;
if (!r) return;
e[n][t].buildings = {
id: t,
children: r.children || null,
indeices: {
arrayBuffer: r.indeices.dataView,
length: r.indeices.length
},
size: r.size,
vertices: {
arrayBuffer: r.vertices.dataView,
attributes: r.vertices.attributes,
bytesPerElement: r.vertices.bytesPerElement
}
};
var a = e[n] && e[n][t].buildSideShapes;
if (!a) return;
e[n][t].buildSideShapes = {
id: t,
children: a.children || null,
indeices: {
arrayBuffer: a.indeices.dataView,
length: a.indeices.length
},
lineCount: a.lineCount,
size: a.size,
vertices: {
arrayBuffer: a.vertices.dataView,
attributes: a.vertices.attributes,
bytesPerElement: a.vertices.bytesPerElement
},
vertiesCount: a.vertiesCount
}
} else if (n === O.BASE_LAYER_TYPE.arrow) {
var s = e[O.BASE_LAYER_TYPE.arrow] && e[O.BASE_LAYER_TYPE.arrow][t];
if (!s) return;
s.forEach(function(t) {
t.datas && t.datas.forEach(function(t) {
t.coords && (t.coords = new Int16Array(t.coords), i.push(t.coords.buffer)),
t.color_fill && (t.color_fill = new Uint8ClampedArray(t.color_fill), i.push(t.color_fill.buffer))
})
})
} else if (n === O.BASE_LAYER_TYPE.point) {
var l = e[O.BASE_LAYER_TYPE.point] && e[O.BASE_LAYER_TYPE.point][t];
if (!l) return;
l.forEach(function(t) {
t.translate && !i.includes(t.translate.buffer) && i.push(t.translate.buffer),
t.vertices && !i.includes(t.vertices.buffer) && i.push(t.vertices.buffer),
t.datas && t.datas.forEach(function(t) {
t.coords && (t.coords = new Int16Array(t.coords), i.push(t.coords.buffer)),
t.icon_coords && (t.icon_coords = new Int16Array(t.icon_coords), i.push(t.icon_coords.buffer)),
t.text_bounds && (t.text_bounds = new Int16Array(t.text_bounds), i.push(t.text_bounds.buffer)),
t.text && t.text.forEach(function(t) {
t.coords && (t.coords = new Int16Array(t.coords), i.push(t.coords.buffer))
}),
t.font_color && (t.font_color = new Uint8ClampedArray(t.font_color), i.push(t.font_color.buffer)),
t.background_color && (t.background_color = new Uint8ClampedArray(t.background_color), i.push(t.background_color.buffer))
})
});
var u = e[O.BASE_LAYER_TYPE.point][t].instance; (0, w.
default)(u).forEach(function(t) {
"count" !== t && i.push(u[t].buffer)
})
} else if (n === O.BASE_LAYER_TYPE.label) {
var c = e[O.BASE_LAYER_TYPE.label] && e[O.BASE_LAYER_TYPE.label][t];
if (!c) return;
c.forEach(function(t) {
t.roads && t.roads.forEach(function(t) {
t.datas && t.datas.forEach(function(t) {
t.coords && (t.coords = new Int16Array(t.coords), i.push(t.coords.buffer)),
t.text_bounds && (t.text_bounds = new Int16Array(t.text_bounds), i.push(t.text_bounds.buffer)),
t.glyph_text_bounds && (t.glyph_text_bounds = new Int16Array(t.glyph_text_bounds), i.push(t.glyph_text_bounds.buffer)),
t.font_color && (t.font_color = new Uint8ClampedArray(t.font_color), i.push(t.font_color.buffer)),
t.background_color && (t.background_color = new Uint8ClampedArray(t.background_color), i.push(t.background_color.buffer))
})
})
})
}
}),
"base" === n ? (i.push(e[O.BASE_LAYER_TYPE.base][t].vertices.arrayBuffer.buffer), i.push(e[O.BASE_LAYER_TYPE.base][t].indeices.arrayBuffer.buffer), e.baseData = !0) : "increment" === n && (i.push(e[O.BASE_LAYER_TYPE.building3d][t].buildings.vertices.arrayBuffer.buffer), i.push(e[O.BASE_LAYER_TYPE.building3d][t].buildings.indeices.arrayBuffer.buffer), i.push(e[O.BASE_LAYER_TYPE.building3d][t].buildSideShapes.vertices.arrayBuffer.buffer), i.push(e[O.BASE_LAYER_TYPE.building3d][t].buildSideShapes.indeices.arrayBuffer.buffer), e.incrementData = !0),
e.transferableList = i,
e
}
},
{
key: "getOriginalGroundFeatures",
value: function(t, e, n) {
for (var i = e,
a = {},
s = {},
l = [], u = void 0, c = void 0, f = void 0, d = void 0, v = void 0, _ = void 0, m = void 0, g = void 0, y = 0, x = t.length; y < x; y++) {
u = t[y];
var b = u,
S = (0, p.
default)(b, 3);
if (c = S[0], v = S[1], f = S[2], m = this.mapStyle.layerMeta[c], (g = m ? r(m.styles, i) : void 0) && (c === J && f > 0 && l.push({
datas: v,
h: u[2] * (i >= 18 ? 2 : 1),
colorFill: g.color_fill,
colorSide: g.color_side,
transform: u.transform
}), g && g.color_fill[3])) {
var w = r(m.styles, i + 1),
E = r(m.styles, i - 1);
d = m.name,
_ = o(u, m.type);
var T = void 0;
if (m.type !== O.BASE_LAYER_TYPE.region && m.type !== O.BASE_LAYER_TYPE.line) continue;
if (v instanceof Array && v.length && "number" == typeof v[0] && (v = [v]), m.type === O.BASE_LAYER_TYPE.region);
else if (m.type === O.BASE_LAYER_TYPE.line) {
if (0 === g.width) continue;
T = u[u.length - 2]
}
a[_] = a[_] || {};
var A = a[_][d],
P = {};
if (m.type === O.BASE_LAYER_TYPE.line && "number" == typeof u[2] && (P.startDistance = u[2]), A) if (A.datas[0] instanceof Array || (A.datas = [A.datas]), v[0] instanceof Array) for (var I = 0,
k = v.length; I < k; I++) A.datas.push(v[I]);
else A.datas.push(v);
else a[_][d] = {
id: this.coord.id + "_" + d,
layerId: c,
layerName: d,
type: m.type,
datas: v,
style: g,
nextStyle: w,
preStyle: E,
zLevel: T,
transform: u.transform,
options: P
},
A = a[_][d]
}
}
return n && (H.forIn(a,
function(t, e) {
var n = (0, h.
default)(e).sort(function(t, e) {
return t.style.layerseq - e.style.layerseq
});
H.forIn(n,
function(e, i) {
i.layerId === J && (s[t] = {},
s[t][e] = n[e], n.splice(e, 1))
}),
a[t] = n
}), H.forIn(s,
function(t, e) {
var n = (0, h.
default)(e).sort(function(t, e) {
return t.style.layerseq - e.style.layerseq
});
s[t] = n
})),
{
ranks: a,
ranksSide: s,
buildings: l
}
}
},
{
key: "parseOriginData",
value: function(t, e, n, i, r, a) {
var l = this;
this.status = "parsing",
this.data = e,
this.mapStyle = i;
var u = this.coord.id,
c = {},
d = {};
N.
default.setStyleTag(this.mapStyle.styleTag);
var h = s(e, {
enc: a,
imgUploadHook: r
});
if (0 !== h.ret) return {};
for (var v = h.features,
p = 0,
_ = v.length; p < _; p++) {
var m = v[p],
g = m[0] instanceof Array ? m[0][0] : m[0];
if (!g) return void console.warn("featureId is not exist", g);
var y = 983040 & g;
c[K[y]] ? c[K[y]].push(m) : (c[K[y]] = [], d[K[y]] = {},
c[K[y]].push(m))
}
var x = this.mapStyle.style;
return H.forIn(x,
function(t, e) {
function i(e, i) {
for (var l = [], u = {},
c = 0, _ = p.length; c < _; c++) {
var m = p[c],
g = [];
if (m[0] instanceof Array)(g = this.parseRoadName(m, a, s, v, i, e, this.coord.tileSize)) && l.push(g);
else {
var y = m[0],
x = X(a, s, v, y, i);
if (x) {
if (r === O.BASE_LAYER_TYPE.point) {
var b = "" + m[2],
S = this.parsePoi(m, x, this.coord);
if (!S) continue;
u[b] = !0,
g.push(S)
} else if (r === O.BASE_LAYER_TYPE.arrow) {
var w = this.parseArrow(m, x, this.coord);
g.push(w)
} else if (m[1][0] instanceof Array) {
var E = !0,
T = !1,
A = void 0;
try {
for (var P, I = (0, f.
default)(m[1]); ! (E = (P = I.next()).done); E = !0) {
var k = P.value,
L = {
coords: k
};
g.push(L)
}
} catch(t) {
T = !0,
A = t
} finally {
try { ! E && I.
return && I.
return ()
} finally {
if (T) throw A
}
}
} else {
var M = {
coords: m[1]
};
g.push(M)
}
var C = {
type: r,
datas: g,
id: e + "_" + c,
rank: o(m, r)
};
l.push(C)
}
}
}
if (r === O.BASE_LAYER_TYPE.point && h.pois && h.pois.length > 0 && h.ext_img) for (var B = 0,
N = h.pois.length; B < N; B++) {
var D = h.pois[B],
z = [],
V = "" + D[2],
Y = D[0],
U = X(a, s, v, Y, i);
if (U && !u[V]) {
var j = this.parsePoi(D, U, this.coord, {
isExt: !0
});
if (j) {
z.push(j);
var G = {
type: r,
datas: z,
isExt: !0,
id: e + "_ext_" + B,
rank: o(D, r)
};
l.push(G)
}
}
}
var Z = void 0;
switch (r) {
case O.BASE_LAYER_TYPE.point:
Z = (0, R.
default)(l, n);
break;
default:
Z = l
}
i > F.
default.maxDataZoom ? (!d[t][e] && (d[t][e] = {}), !d[t][e].children && (d[t][e].children = {}), d[t][e].children[i] = Z) : d[t][e] = Z
}
if (c[t]) {
var r = e.type,
a = e.style,
s = e.relyStyle,
v = e.relyStyleField,
p = c[t],
_ = l.dataZoom;
if (i.call(l, u, _), _ === F.
default.maxDataZoom) for (var m = F.
default.maxDataZoom + 1; m <= F.
default.maxZoom; m++) i.call(l, "" + l.coord.id, m)
}
}),
{
layerstiles: d,
jsonData: h
}
}
},
{
key: "parseForDefaultStyle",
value: function(t, e, n, i, o, r, a) {
function s(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],
i = this.getOriginalGroundFeatures(p.features, this.dataZoom, !0),
o = (0, k.
default)(i.ranks, t);
m[e] = i,
n && v[O.BASE_LAYER_TYPE.base][t] ? (!v[O.BASE_LAYER_TYPE.base][t].children && (v[O.BASE_LAYER_TYPE.base][t].children = {}), v[O.BASE_LAYER_TYPE.base][t].children[e] = o) : (v[O.BASE_LAYER_TYPE.base] = {},
v[O.BASE_LAYER_TYPE.base][t] = o)
}
function l(t, e, n) {
var i = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
if (n) {
var o = (0, M.
default)(n.buildings, t),
r = (0, k.
default)(n.ranksSide, t),
a = this.parseInstanceArrow(v.arrow, t);
i ? (!v[O.BASE_LAYER_TYPE.building3d][t].children && (v[O.BASE_LAYER_TYPE.building3d][t].children = {}), v[O.BASE_LAYER_TYPE.building3d][t].children[e] = {
buildings: o,
buildSideShapes: r
},
a && (v[O.BASE_LAYER_TYPE.arrow][t].children[e] = v.arrow[t].slice() || [], v[O.BASE_LAYER_TYPE.arrow][t].children[e].instance = a)) : (v[O.BASE_LAYER_TYPE.building3d] = {},
v[O.BASE_LAYER_TYPE.building3d][t] = {},
v[O.BASE_LAYER_TYPE.building3d][t].buildings = o, v[O.BASE_LAYER_TYPE.building3d][t].buildSideShapes = r, a && (v[O.BASE_LAYER_TYPE.arrow] = v.arrow || {},
v[O.BASE_LAYER_TYPE.arrow][t] = v.arrow[t] || [], v[O.BASE_LAYER_TYPE.arrow][t].instance = a))
}
}
function u() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = arguments[1];
if (f && v) {
var i = this.parseInstancePoint(v, d, n, t);
v[O.BASE_LAYER_TYPE.point] = v.point || {},
v[O.BASE_LAYER_TYPE.point][d] = v.point[d] || [],
v[O.BASE_LAYER_TYPE.point][d].instance = i,
v[O.BASE_LAYER_TYPE.label] = v.label || {},
v[O.BASE_LAYER_TYPE.label][d] = v.label[d] || [],
v[O.BASE_LAYER_TYPE.label][d].instance = i,
v = this.transferData(d, v, "increment", e),
v.id = d,
r(null, v)
}
}
var c = this,
f = !1,
d = this.coord.id,
h = this.parseOriginData(t, e, n, i,
function(e, n) {
e ? o.send("uploadTileImage", {
zoom: c.coord.z,
maxDataZoom: t.maxDataZoom,
sourceId: t.sourceId,
uid: c.uid,
tileId: d,
imgBase64: e,
extImgBase64: n
},
function(t, e) {
e && (f = !0, u.call(c, e, c.dataZoom))
}) : f = !0
},
a),
v = h.layerstiles,
p = h.jsonData;
if (!v || !p) return void r(null, null);
var _ = {},
m = {};
if (s.call(this, d, this.dataZoom), this.dataZoom === F.
default.maxDataZoom) for (var g = F.
default.maxDataZoom + 1; g <= F.
default.maxZoom; g++) s.call(this, d, g, !0);
if (_.base = v.base, delete v.base, _ = this.transferData(d, _, "base", this.dataZoom), _.id = d, r(null, _), l.call(this, d, this.dataZoom, m[this.dataZoom]), this.dataZoom === F.
default.maxDataZoom) for (var y = F.
default.maxDataZoom + 1; y <= F.
default.maxZoom; y++) l.call(this, d, y, m[y], !0);
u.call(this)
}
},
{
key: "parseInstanceArrow",
value: function(t, e) {
if (!t || !t[e]) return null;
var n = [],
i = [],
o = [];
t[e].forEach(function(t) {
var e = t.datas[0];
i.push(e.width),
o.push.apply(o, (0, b.
default)(e.color_fill)),
n.push.apply(n, (0, b.
default)(e.coords))
});
var r = new Float32Array(n),
a = new Float32Array(o);
return {
instanceCoordsTypeArray: r,
instanceWidthTypeArray: new Float32Array(i),
instanceColorTypeArray: a,
count: n.length / 4
}
}
},
{
key: "parseInstancePoint",
value: function(t, e, n, i) {
var o = this,
r = 0,
a = i.extOffset,
s = void 0 === a ? 0 : a,
l = i.yOffsetList,
c = void 0 === l ? [] : l,
f = i.glyphMapping,
d = i.billboardMapping,
h = i.glyphMappingBold,
v = [],
_ = [],
m = [],
g = [],
y = [],
x = [],
S = [],
w = [],
E = [],
T = t.point && t.point[e] || [],
A = T.filter(function(t) {
return t && t.datas && t.datas[0] && t.datas[0].icon_coords
}) || [],
P = [];
t.label && t.label[e] && t.label[e].forEach(function(t) {
P = P.concat(t.roads)
}),
A.forEach(function(t) {
var e = n.scale,
i = n.info,
o = t.datas[0];
if (o && o.icon && o.icon_coords) {
var a = i[String(o.icon)];
if (!a) return;
var s = a.width / e / 2,
l = a.height / e / 2,
c = o.icon_coords[0],
d = -o.icon_coords[1];
if (v.push(c, d, 0), m.push(a.left, a.bottom, a.right - a.left, a.top - a.bottom), o.stretching_len) {
for (var p = o.text,
b = 0,
T = 0,
A = 0,
P = p.length; A < P; A++) !
function(t, e) {
var n = p[t],
i = n.text.length,
r = [0],
a = 0; (0, u.
default)(n.text).forEach(function(t) {
var e = "normal" === o.font_weight ? f[t] : h[t],
n = o.font_size / e.fontSize;
r.push(r[r.length - 1] + e.width * n),
a = Math.max(a, e.height * n)
});
var s = r[i],
l = a;
T = T > s ? T: s,
b += l
} (A);
_.push(2 * s, 2 * l, s, l),
o.screenW = o.stretching_len[0] + T,
o.screenH = o.stretching_len[1] + b;
var I = (o.stretching_len[0] + T) / (2 * s),
k = (o.stretching_len[1] + b) / (2 * l);
g.push(I, k)
} else _.push(2 * s, 2 * l, s, l),
g.push(1, 1);
y.push(0, 1, 1, 1),
x.push(1, 1, 1, 1),
w.push(0, 0, 0, 0),
S.push(0, 0, 0, 0),
E.push(0),
t.iconSymbolIndex = r,
r += 1
}
}),
T.forEach(function(t) {
var e = t.datas[0];
if (e.coords.length) for (var i = e.text,
a = e.text_bounds,
l = void 0,
d = e.cidx || 0,
T = 0,
A = i.length; T < A; T++) {
l = 2 === A ? a.slice(4 * (1 - T), 4 * (1 - T) + 4) : a.slice(4 * T, 4 * T + 4);
var P = 0;
if (P = t.isExt ? c[d + s] || 0 : c[d] || 0, l[1] += P, !(l[2] < 10 || l[3] < 10 || 0 === l.length)) {
var I = i[T],
k = (0, p.
default)(I.coords, 2),
L = k[0],
M = k[1],
C = I.centerOffset,
R = l[2] / n.scale,
B = l[3] / n.scale,
N = {
x: R / 2,
y: B / 2
};
C && (N = {
x: R / 2 - C.x,
y: B / 2 - C.y
}),
(0, D.isDefaultStyle)(o.styleId) ? (v.push(L, -M, 0), _.push(R, B, N.x, N.y), m.push.apply(m, (0, b.
default)(l)), y.push(0, 1, 0, 1), I.textSymbolIndexList = [r], r += 1) : "center" === e.text_align &&
function() {
var t = new Uint16Array(I.text.length),
n = I.text.length,
i = [0],
o = 0; (0, u.
default)(I.text).forEach(function(t) {
var n = "normal" === e.font_weight ? f[t] : h[t],
r = e.font_size / n.fontSize;
i.push(i[i.length - 1] + n.width * r),
o = Math.max(o, n.height * r)
});
var a = i[n],
s = o,
l = Math.max(1, a / R, s / B);
R = a,
B = s,
N = {
x: C ? R / 2 - C.x * (e.stretching_len ? 1 : l) : R / 2,
y: C ? B / 2 - C.y * (e.stretching_len ? 1 : l) : B / 2
};
for (var c = 0; c < n; c++) {
var d = "normal" === e.font_weight ? f[I.text[c]] : h[I.text[c]],
p = e.font_size / d.fontSize;
v.push(L, -M, 0),
g.push(1, 1),
_.push(d.width * p, d.height * p, N.x - i[c], N.y),
m.push(d.x, d.y, d.width, d.height),
y.push(0, 1, 0, 1),
x.push.apply(x, (0, b.
default)(e.font_color)),
S.push.apply(S, (0, b.
default)((0, V.encodePickingColor)(e.style_id, !0))),
w.push.apply(w, (0, b.
default)(e.stroke_color)),
E.push(e.stroke_width),
t[c] = r,
r += 1
}
I.textSymbolIndexList = t
} (),
I.instance_trans = [L, -M],
I.instance_coords = [R, B, N.x, N.y]
}
}
}),
P.forEach(function(t) {
var e = t.datas[0];
if (e) {
var i = e.text_bounds;
i[1] += c[e.cidx] || 0;
var a = null;
if (a = e.isBillboard && e.font_size ? {
w: i[2] / 1.5,
h: i[3] / 1.5
}: {
w: e.font_size,
h: e.font_size
},
v.push(e.coords[0], -e.coords[1], 1), g.push(1, 1), (0, D.isDefaultStyle)(o.styleId)) {
var s = i[2] / n.scale,
l = i[3] / n.scale;
_.push(s, l, s / 2, l / 2),
m.push(i[0], i[1], i[2], i[3]),
y.push(0, 1, 0, 1)
} else if (e.isBillboard) {
var u = d && d[e.text];
e.text_bounds = [u.x, u.y, u.width, u.height],
t.datas[1].text_bounds = [u.x, u.y, u.width, u.height],
m.push(u.x, u.y, u.width, u.height),
_.push(a.w, a.h, a.w / 2, a.h / 2),
y.push(0, 1, -1, 1),
x.push(1, 1, 1, 1),
w.push(0, 0, 0, 0),
S.push(0, 0, 0, 0),
E.push(0)
} else {
var p = "normal" === e.font_weight ? f[e.text] : h[e.text],
T = e.font_size / p.fontSize;
e.glyph_text_bounds = [p.x, p.y, p.width, p.height],
t.datas[1].glyph_text_bounds = [p.x, p.y, p.width, p.height],
_.push(p.width * T, p.height * T, p.width * T / 2, p.height * T / 2),
m.push(p.x, p.y, p.width, p.height),
y.push(0, 1, 0, 1),
x.push.apply(x, (0, b.
default)(e.font_color)),
S.push.apply(S, (0, b.
default)((0, V.encodePickingColor)(e.style_id, !0))),
w.push.apply(w, (0, b.
default)(e.stroke_color)),
E.push(e.stroke_width)
}
t.roadSymbolIndex = r,
r += 1
}
});
var I = new Float32Array(v),
k = new Float32Array(_),
L = new Float32Array(m),
M = new Float32Array(g),
C = new Float32Array(y),
R = new Uint8ClampedArray(x),
B = new Uint8ClampedArray(S);
return {
instanceTransTypeArray: I,
instanceCoordsTypeArray: k,
instanceTextBoundsTypeArray: L,
instanceStrentchinglensTypeArray: M,
instanceInfosTypeArray: C,
instanceColorsTypeArray: R,
instanceStrokeColorsTypeArray: new Uint8ClampedArray(w),
instanceStrokeWidthTypeArray: new Float32Array(E),
instancePickingColorsTypeArray: B,
count: y.length / 4
}
}
},
{
key: "parsePoi",
value: function(t, e, n, i) {
var o = n.tileSize,
r = {};
r.cidx = t.cidx,
r.coords = t[1].slice(),
r.text = [],
r.text_mix = t[3] || 0,
r.text_align = "center",
r.text_bounds = t[5],
r.style_id = t[0],
r.font_size = e.font_size,
r.font_color = e.font_color ? [].concat((0, b.
default)(e.font_color.slice(0, 3)), [255 * e.font_color[3]]) : [0, 0, 0, 0],
r.stroke_color = e.background_color ? [].concat((0, b.
default)(e.background_color.slice(0, 3)), [255 * e.background_color[3]]) : [0, 0, 0, 0];
var a = t.transform,
s = a.transX,
l = void 0 === s ? 0 : s,
u = a.transY,
c = void 0 === u ? 0 : u,
f = a.scale,
d = void 0 === f ? 1 : f,
h = (0 + l) * d,
v = (o + l) * d,
_ = (0 + c) * d,
m = (o + c) * d,
g = t[2];
switch (r.textName = g, r.font_weight = 1 === e.font_weight ? "bold": "normal", r.font_family = e.font_family ? e.font_family: "", e.effect) {
case 5:
r.stroke_width = e.effect_size + 1;
break;
case 6:
(0, D.isDefaultStyle)(this.styleId) ? (r.isBillboard = !0, this._needUploadTileImage = !0) : (r.stretching_len = e.stretching_len || [0, 0], r.icon = e.icon_offset, r.icon_coords = [t[1][0], t[1][1]]);
case 1:
case 2:
default:
r.background_color = null,
r.stroke_width = 0
}
if (e.icon_offset && "65535" !== e.icon_offset && "-1" !== e.icon_offset && 6 !== e.effect) {
var y = e.icon_offset;
r.icon = y,
r.icon_coords = [t[1][0], t[1][1]],
r.coords.shift(),
r.coords.shift(),
i && i.isExt && e.font_size > 0 && 0 === r.coords.length && (r.coords.push(r.icon_coords[0]), r.coords.push(r.icon_coords[1] + (8 + e.font_size / 2 + 2) * d), /\//.test(r.textName) && (r.coords.push(r.icon_coords[0]), r.coords.push(r.coords[1] + (e.font_size + 2) * d)))
}
if (r.coords[0] < h || r.coords[0] >= v || r.coords[1] < _ || r.coords[1] >= m) return null;
if (!r.font_size || void 0 === g || "@" === g) return r;
var x = g.toString(),
S = r.isBillboard ? [x] : x.split(/\//),
w = null;
r.icon_coords && !r.stretching_len ? w = {
x: r.icon_coords[0],
y: r.icon_coords[1]
}: 2 === S.length && (w = {
x: (r.coords[0] + r.coords[2]) / 2,
y: (r.coords[1] + r.coords[3]) / 2
},
r.stretching_len && (r.icon_coords = [w.x, w.y]));
for (var E = 0,
T = S.length; E < T; E++) {
var A = r.coords[2 * E],
P = r.coords[2 * E + 1],
I = r.text_bounds,
k = null;
if (r.stretching_len && 4 === r.text_bounds.length) {
var L = (0, p.
default)(r.text_bounds, 4),
M = L[0],
C = L[1],
R = L[2],
B = L[3];
k = 2 === T ? [M, C / 2 - 2, R, B / 2] : [M, C, R, B / 2],
r.text_bounds = [M, C, R, B / 2, M, C / 2 - 2, R, B / 2]
} else k = 2 === T ? I.slice(4 * (1 - E), 4 * (1 - E) + 4) : I.slice(4 * E, 4 * E + 4);
var N = w ? {
x: (A - w.x) / d,
y: (P - w.y) / d
}: null,
O = {
text: S[E],
coords: w ? [w.x, w.y] : [A, P],
centerOffset: N,
rank: t[4]
};
if (! (A && P || 0 === A || 0 === P)) break;
r.text.push(O),
r.isBillboard && this._billboardFeatures.push({
text: S[E],
bounds: k,
cidx: r.cidx
})
}
return r
}
},
{
key: "parseRoadName",
value: function(t, e, n, i, o, r, a) {
var s = a || 256,
l = [],
u = "",
c = t.transform,
f = c.transX,
d = void 0 === f ? 0 : f,
h = c.transY,
v = void 0 === h ? 0 : h,
p = c.scale,
_ = void 0 === p ? 1 : p,
m = (0 + d) * _,
g = (s + d) * _,
y = (0 + v) * _,
x = (s + v) * _,
S = t.length / 2 - .5,
w = void 0;
if (S % 1 == 0) w = t[S][1];
else {
var E = t[Math.floor(S)][1],
T = t[Math.ceil(S)][1];
w = [(E[0] + T[0]) / 2, (E[1] + T[1]) / 2]
}
if (w[0] < m || w[0] > g || w[1] < y || w[1] > x) return null;
for (var A = 0,
P = t.length; A < P; A++) {
var I = t[A],
k = I[0],
L = X(e, n, i, k, o);
if (L) {
var M = [],
C = {};
switch (C.coordScale = _, C.cidx = t.cidx, C.coords = I[1].slice(), C.text = I[2], C.text_mix = I[3] || 0, C.text_bounds = I[5], C.rank = I[4], C.font_size = L.font_size, C.style_id = I[0], C.font_color = L.font_color ? [].concat((0, b.
default)(L.font_color.slice(0, 3)), [255 * L.font_color[3]]) : [0, 0, 0, 0], C.stroke_color = L.background_color ? [].concat((0, b.
default)(L.background_color.slice(0, 3)), [255 * L.background_color[3]]) : [0, 0, 0, 0], L.effect) {
case 5:
C.stroke_width = L.effect_size + 1;
break;
case 6:
C.isBillboard = !0,
this._needUploadTileImage = !0;
case 1:
case 2:
default:
C.background_color = null,
C.stroke_width = 0
}
u += I[2],
C.font_weight = 1 === L.font_weight ? "bold": "normal",
C.font_family = L.font_family ? L.font_family: "",
M.push(C),
M.push(H.clone(C)),
C.isBillboard && this._billboardFeatures.push({
text: C.text,
bounds: C.text_bounds,
cidx: C.cidx
}),
l.push({
datas: M,
font_size: L.font_size,
id: r + "_" + q()
})
}
}
return {
roads: l,
roadName: u
}
}
},
{
key: "parseArrow",
value: function(t, e) {
var n = {};
return n.coords = [t[1][0], -t[1][1], t[1][2], -t[1][3]],
n.color_fill = e.color_fill,
n.width = e.width,
n
}
}]),
t
} ();
t.exports = tt
},
function(t, e, n) {
"use strict";
function i(t, e) {
f[t] = {};
for (var n = 3; n <= 20; n++) {
var i = a(e.regionStyles, null, null, u, n);
i && (f[t][n] = "rgba(" + l(i.color_fill).join(",") + ")")
}
}
function o(t, e) {
return f[t] && f[t][Math.floor(e)] || c
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.setBgColor = i,
e.getBgColor = o;
var r = n(497),
a = r.getVectorStyle,
s = n(10),
l = s.colorToRGBA,
u = "196613",
c = "rgba(0, 0, 0, 0)",
f = {}
},
function(t, e, n) {
"use strict";
function i(t, e) {
if (t && (!t || 0 !== t.length)) {
var n = t.length,
i = void 0;
if (1 === n) e <= t[0].maxScaleVal && e >= t[0].minScaleVal && (i = a.objectClone(t[0]));
else {
var o = !0,
s = !1,
l = void 0;
try {
for (var u, c = (0, r.
default)(t); ! (o = (u = c.next()).done); o = !0) {
var f = u.value;
if (e <= f.maxScaleVal && e >= f.minScaleVal) {
i = a.objectClone(f);
break
}
}
} catch(t) {
s = !0,
l = t
} finally {
try { ! o && c.
return && c.
return ()
} finally {
if (s) throw l
}
}
}
return i
}
}
var o = n(27),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o),
a = n(10);
e.getVectorStyle = function(t, e, n, o, r) {
var s = t[o];
if (s) {
var l = i(s, r);
if (l && e && n && l[n]) {
var u = e[l[n]];
if (u) {
var c = i(u, r);
c && "-1" === c.icon_offset && 6 === c.effect && (c.icon_offset = l.icon_offset || "-1"),
l = a.extend({},
l, c)
}
} else if (e && n) {
var f = s[0] && s[0][n],
d = e[f];
l = i(d, r)
}
return l
}
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
return new f.
default(function(n) {
var i = t || 0,
o = p.
default.QMAPI_poi_icon_json + i,
r = -1,
l = "",
c = null;
m.
default.support() ? m.
default.get(o,
function(t) {
var f = JSON.parse(t);
r = t ? f.version: r,
l = e.replace("{id}", i).replace("{version}", r),
h.
default.getJSON(null, l,
function(t, e, l) {
if (!t && e && e.data) {
if ("{}" !== (0, u.
default)(e.data)) return s({
styleId:
i,
version: r,
time: l
}),
c = e.data,
void m.
default.set(o, (0, u.
default)(e),
function() {
n(c)
});
c = f.data
} else a({
styleId: i,
version: r,
err: t
}),
console.error(t, e),
c = f.data;
n(c)
})
}) : (l = e.replace("{id}", i).replace("{version}", r), h.
default.getJSON(null, l,
function(t, e, o) {
return ! t && e && e.data ? "{}" === (0, u.
default)(e.data) ? (a({
styleId: i,
version: r,
err: null
}), console.error(e), void n(null)) : (s({
styleId: i,
version: r,
time: o
}), c = e.data, void n(c)) : (a({
styleId: i,
version: r,
err: t
}), console.error(t, e), void n(null))
}))
})
}
function r(t) {
var e = t.data,
n = t.styleId,
i = t.iconIndexSrc;
return new f.
default(function(t) {
e ? m.
default.support() ? m.
default.set(y, (0, u.
default)({
data:
e
}),
function() {
t(e)
}) : (console.error("兼容性错误当前浏览器不支持LocalStorage。"), t(null)) : o(n, i).then(function(e) {
m.
default.support() ? m.
default.set(y, (0, u.
default)({
data:
e
}),
function() {
t(e)
}) : (console.error("兼容性错误当前浏览器不支持LocalStorage。"), t(null))
})
})
}
function a(t) {
var e = t.styleId,
n = t.version,
i = t.err; (0, g.qos)("ii", {
styleId: e,
version: n,
error: i && i.status || 0
})
}
function s(t) {
var e = t.styleId,
n = t.version,
i = t.time; (0, g.qos)("ii", {
styleId: e,
version: n,
loadTime: i
})
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.setPoiIconIndex = e.loadPoiIconIndexFile = void 0;
var l = n(113),
u = i(l),
c = n(25),
f = i(c),
d = n(79),
h = i(d),
v = n(137),
p = i(v),
_ = n(89),
m = i(_),
g = n(43),
y = p.
default.QMAPI_poi_icon_json + "config";
e.loadPoiIconIndexFile = o,
e.setPoiIconIndex = r
},
, , , , ,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(24),
r = i(o),
a = n(27),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(4),
m = i(_),
g = n(106),
y = i(g),
x = n(10),
b = i(x),
S = function(t) {
function e() { (0, f.
default)(this, e);
var t = (0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this));
return t._rawGeometries = [],
t._idSet = {},
t.geometries = [],
t
}
return (0, m.
default)(e, t),
(0, h.
default)(e, [{
key: "_checkGeometries",
value: function() {
return arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []
}
},
{
key: "_assignIdToGeometry",
value: function(t) {
var e = [];
return t.forEach(function(t) {
0 === t.id || t.id ? e.includes(t.id) && (t.id = t.id + "-" + b.
default.uniqueId()):
t.id = b.
default.uniqueId(),
e.push(t.id)
}),
t
}
},
{
key: "_updateGeometryIdSet",
value: function(t) {
var e = {};
return t.forEach(function(t, n) {
e[t.id] = n
}),
e
}
},
{
key: "_transferFromGeometry",
value: function(t) {
var e = b.
default.clone(t);
return e.forEach(function(t) {
t.rank = t.rank || 0
}),
e.sort(function(t, e) {
return t.rank - e.rank
}),
e
}
},
{
key: "setGeometries",
value: function(t, e) {
this._checkGeometries(t, e),
this._rawGeometries = this._assignIdToGeometry(t),
this._idSet = this._updateGeometryIdSet(this._rawGeometries),
this.geometries = this._transferFromGeometry(this._rawGeometries),
this.emit("geometry_changed")
}
},
{
key: "getGeometries",
value: function() {
return b.
default.clone(this._rawGeometries)
}
},
{
key: "getGeometryById",
value: function(t) {
var e = !0,
n = !1,
i = void 0;
try {
for (var o, r = (0, s.
default)(this._rawGeometries); ! (e = (o = r.next()).done); e = !0) {
var a = o.value;
if (a.id === t) return a
}
} catch(t) {
n = !0,
i = t
} finally {
try { ! e && r.
return && r.
return ()
} finally {
if (n) throw i
}
}
return null
}
},
{
key: "updateGeometries",
value: function(t, e) {
var n = this;
Array.isArray(t) || (t = [t]),
e || this._checkGeometries(t, this.styles),
[].concat((0, r.
default)(this._assignIdToGeometry(t))).forEach(function(t) {
n._idSet.hasOwnProperty(t.id) ? n._rawGeometries[n._idSet[t.id]] = t: (n._idSet[t.id] = n._rawGeometries.length, n._rawGeometries.push(t))
}),
this._idSet = this._updateGeometryIdSet(this._rawGeometries),
this.geometries = this._transferFromGeometry(this._rawGeometries),
this.emit("geometry_changed")
}
},
{
key: "add",
value: function(t) {
var e = this;
return t ? (Array.isArray(t) || (t = [t]), this._checkGeometries(t, this.styles), this._assignIdToGeometry(t).forEach(function(t) {
e._idSet.hasOwnProperty(t.id) || (e._idSet[t.id] = e._rawGeometries.length, e._rawGeometries.push(t))
}), this.updateGeometries(this._rawGeometries, !0), this) : this
}
},
{
key: "remove",
value: function(t) {
if (!t) return this;
Array.isArray(t) || (t = [t]);
var e = this._rawGeometries.length,
n = this._rawGeometries.filter(function(e) {
return - 1 === t.indexOf(e.id)
});
return n.length === e ? this: (this.setGeometries(n), this)
}
},
{
key: "destroy",
value: function() {
this._rawGeometries = [],
this._idSet = {},
this.geometries = []
}
}]),
e
} (y.
default);
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(41),
u = i(l),
c = n(29),
f = n(558),
d = i(f),
h = n(74),
v = {
map: 0,
screen: 1
},
p = {
center: 0,
top: 1,
bottom: 2,
left: 3,
right: 4
},
_ = {
src: d.
default,
width: 34,
height: 50,
rotate: 0,
opacity: 1,
faceTo: "screen",
color: "rgba(0, 0, 0, 1)",
strokeColor: "rgba(0, 0, 0, 0)",
strokeWidth: 1,
size: 14,
direction: "center",
offset: new h(0, 0)
},
m = function() {
function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, r.
default)(this, t),
this._checkMarkerPartStyle(e),
this._checkLabelPartStyle(e)
}
return (0, s.
default)(t, [{
key: "_checkMarkerPartStyle",
value: function(t) {
var e = t.src,
n = void 0 === e ? _.src: e,
i = t.width,
o = void 0 === i ? _.width: i,
r = t.height,
a = void 0 === r ? _.height: r,
s = t.anchor,
l = t.rotate,
f = void 0 === l ? _.rotate: l,
d = t.opacity,
v = void 0 === d ? _.opacity: d;
u.
default.isNumber(o) ? o <= 0 && (console.error("参数错误MarkerStyle.width 取值要大于0实际传入: " + o + "."), o = _.width) : (new c.BaseTypeError("MarkerStyle.width", "number", o).error(), o = _.width),
u.
default.isNumber(a) ? a <= 0 && (console.error("参数错误MarkerStyle.height 取值要大于0实际传入: " + a + "."), a = _.height) : (new c.BaseTypeError("MarkerStyle.height", "number", a).error(), a = _.height),
u.
default.isString(n) || (new c.BaseTypeError("MarkerStyle.src", "string", n).error(), n = _.src),
s ? u.
default.isValidOffset(s) || (console.error("参数错误MarkerStyle.anchor不合法", s), s = new h(o / 2, a)) : s = new h(o / 2, a),
u.
default.isNumber(f) ? f < 0 && (console.error("参数错误MarkerStyle.rotate 取值要大于等于0实际传入: " + f + "."), f = _.rotate) : (new c.BaseTypeError("MarkerStyle.rotate", "number", f).error(), f = _.rotate),
u.
default.isNumber(v) ? v < 0 && (console.error("参数错误MarkerStyle.opacity 取值要大于等于0实际传入: " + v + "."), v = _.opacity) : (new c.BaseTypeError("MarkerStyle.opacity", "number", v).error(), v = _.opacity);
var p = new Image;
/^data:/.test(n) || (p.crossOrigin = "anonymous"),
p.src = n,
this.src = p.src,
this.width = o,
this.height = a,
this.rotate = f,
this.anchor = s,
this.opacity = v
}
},
{
key: "_checkLabelPartStyle",
value: function(t) {
var e = t.faceTo,
n = void 0 === e ? _.faceTo: e,
i = t.color,
o = void 0 === i ? _.color: i,
r = t.strokeColor,
a = void 0 === r ? _.strokeColor: r,
s = t.strokeWidth,
l = void 0 === s ? _.strokeWidth: s,
f = t.size,
d = void 0 === f ? _.size: f,
h = t.direction,
m = void 0 === h ? _.direction: h,
g = t.offset,
y = void 0 === g ? _.offset: g;
u.
default.isString(n) || (new c.BaseTypeError("MarkerStyle.faceTo", "string", n).error(), n = _.faceTo),
u.
default.isValidColor(o) || (console.error("MarkerStyle.color属性无效", o), o = _.color),
u.
default.isValidColor(a) || (console.error("MarkerStyle.color属性无效", a), a = _.strokeColor),
u.
default.isNumber(l) ? l < 0 && (console.error("参数错误MarkerStyle.strokeWidth 取值要大于等于0实际传入: " + l + "."), l = _.strokeWidth) : (new c.BaseTypeError("MarkerStyle.strokeWidth", "number", l).error(), l = _.strokeWidth),
u.
default.isNumber(d) ? d < 0 && (console.error("参数错误MarkerStyle.size 取值要大于等于0实际传入: " + d + "."), d = _.size) : (new c.BaseTypeError("MarkerStyle.size", "number", d).error(), d = _.size),
u.
default.isString(m) || (new c.BaseTypeError("MarkerStyle.direction", "string", m).error(), m = _.direction),
y && !u.
default.isObject(y) ? (new c.BaseTypeError("MarkerStyle.offset", "object", y).error(), y = _.offset) : u.
default.isValidOffset(y) || (console.error("参数错误MarkerStyle.offset不合法", y), y = _.offset),
this.faceTo = n in v ? v[n] : v.screen,
this.color = o,
this.strokeColor = a,
this.strokeWidth = l,
this.size = d,
this.direction = m in p ? p[m] : p.center,
this.offset = y
}
}]),
t
} ();
t.exports = m
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
if ((0, k.isSimple)(t)) {
for (var e = [], n = 0; n < t.length - 1; n++) {
var i = [t[n], t[n + 1]];
e.push(i)
}
return e
}
return t.map(function(t) {
return o(t)
}).flat()
}
var r = n(140),
a = i(r),
s = n(17),
l = i(s),
u = n(3),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(5),
_ = i(p),
m = n(35),
g = i(m),
y = n(4),
x = i(y),
b = n(339),
S = i(b),
w = n(41),
E = i(w),
T = n(303),
A = i(T),
P = n(220),
I = n(66),
k = n(480),
L = n(29),
M = E.
default.isValidColor,
C = E.
default.isValidLatLng,
R = function(t) {
function e(t) {
return (0, d.
default)(this, e),
(0, _.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t))
}
return (0, x.
default)(e, t),
(0, v.
default)(e, [{
key: "_initialize",
value: function(t) {
this.enableGeodesic = t.enableGeodesic || !1,
this._eraseOpts = {}
}
},
{
key: "_setGeometryType",
value: function() {
this._geometryType = P.GEOMETRY_TYPES.POLYLINE,
this._layerType = I.RENDER_LAYER_TYPE.polyline,
this._className = "MultiPolyline"
}
},
{
key: "_checkGeometries",
value: function() { (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []).forEach(function(t, e) {
t ? t.styleId || (t.styleId = "default") : console.error("MultiPolyline.geometries: 希望传入PolylineGeometry数组实际第" + e + "元素不存在!");
var n = t.paths,
i = t.rainbowPaths;
n || i || console.error("MultiPolyline.geometries: 希望传入PolylineGeometry数组实际第" + e + "元素的未传入路径信息!"),
!n || (0, k.isSimple)(n) || (0, k.isComplexLine)(n) || console.error("MultiPolyline.geometries: 希望传入PolylineGeometry数组实际第" + e + "元素的paths属性无效"),
Array.isArray(i) && i.length > 0 && (i.map(function(t, n) {
return t.color && !M(t.color) && console.error("MultiPolyline.geometries: 第" + e + "元素的rainbowPaths中的第" + n + "个元素的color属性无效"),
t.borderColor && !M(t.borderColor) && console.error("MultiPolyline.geometries: 第" + e + "元素的rainbowPaths中的第" + n + "个元素的borderColor属性无效"),
t.path
}).every(function(t) {
return (0, k.isSimple)(t)
}) ? delete t.paths: console.error("MultiPolyline.geometries: 希望传入PolylineGeometry数组实际第" + e + "元素的rainbowPath属性无效"))
})
}
},
{
key: "_getRenderSourceData",
value: function() {
return {
type: this._geometryType,
styles: this.styles,
enableGeodesic: this.enableGeodesic || !1,
_eraseOpts: this._eraseOpts || null,
geometries: this._getRenderableGeometries()
}
}
},
{
key: "_getDefaultStyle",
value: function() {
return new S.
default
}
},
{
key: "_checkStyles",
value: function(t) {
var n = this; (0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "_checkStyles", this).call(this, t),
(0, l.
default)(t).forEach(function(e) {
var i = t[e];
i && i instanceof S.
default ? i.width && i.width > 0 && i.width % 1 == 0 ? M(i.color) ? "borderWidth" in i && !(i.borderWidth >= 0 && i.borderWidth % 1 == 0) ? console.error("MultiPolyline.styles: 样式id ", e, " 对应的PolylineStyle.borderWidth属性无效", i) : "borderColor" in i && !M(i.borderColor) ? console.error("MultiPolyline.styles: 样式id ", e, " 对应的PolylineStyle.borderColor属性无效", i) : M(i.eraseColor) || (console.error("MultiPolyline.styles: 样式id ", e, " 对应的PolylineStyle.eraseColor属性无效", i), t[e].eraseColor = n._getDefaultStyle().eraseColor) : console.error("MultiPolyline.styles: 样式id ", e, " 对应的PolylineStyle.color属性无效", i) : console.error("MultiPolyline.styles: 样式id ", e, " 对应的PolylineStyle.width属性无效", i) : console.error("MultiPolyline.styles: 样式id ", e, "希望传入PolylineStyle实例实际传入", i)
})
}
},
{
key: "_getAllPoints",
value: function() {
return this.getGeometries().map(function(t) {
return t.paths.flat(1 / 0)
}).flat()
}
},
{
key: "_getAllSegments",
value: function() {
return this.getGeometries().map(function(t) {
return o(t.paths)
}).flat()
}
},
{
key: "eraseTo",
value: function(t, e, n) {
if (this._checkEraseParams(t, e, n)) {
var i = this.getGeometryById(t);
if (!i) return console.error("eraseTo: 不存在id为" + t + "的polyline geometry 对象"),
this;
if (e > i.paths.length - 1 || e <= 0) return console.error("eraseTo: 坐标索引index" + e + " 不在对应path点串区间内"),
this;
this._eraseOpts[t] = {
index: e,
point: n
},
this.map.getSource(this.id).setData(this._getRenderSourceData())
}
return this
}
},
{
key: "_checkEraseParams",
value: function(t, e, n) {
return C(n) ? "number" != typeof e || (0, a.
default)(e) ? (console.error("eraseTo方法中参数index: " + e + "不合法!"), !1) : "string" == typeof t || (new L.ClassTypeError("eraseTo的参数id[" + t + "]", "String", t).error(), !1) : (new L.ClassTypeError("eraseTo方法中的参数point[" + n + "]", "LatLng", n).error(), !1)
}
}]),
e
} (A.
default);
t.exports = R
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.defaultLogoRules = [{
level: [0, 6],
districts: [{
rule: 0,
priority: 0,
frontier: "default",
logo_name: "tencent",
logo: "https://mapapi.qq.com/sdk/overseamap/logo/202107/tencent_color_logo.png",
logo_night: "https://mapapi.qq.com/sdk/overseamap/logo/202107/tencent_color_logo_night.png"
}]
},
{
level: [7, 18],
districts: [{
rule: 0,
priority: 0,
frontier: "taiwan",
logo_name: "taiwan",
logo: "https://mapapi.qq.com/sdk/overseamap/logo/HERE_Logo_black.png",
logo_night: ""
},
{
rule: 0,
priority: 0,
frontier: "default",
logo_name: "tencent",
logo: "https://mapapi.qq.com/sdk/overseamap/logo/202107/tencent_color_logo.png",
logo_night: "https://mapapi.qq.com/sdk/overseamap/logo/202107/tencent_color_logo_night.png"
}]
}],
e.defaultFrontier = {
version: 7,
china: "124.240000,39.863000:127.060000,41.420000:128.320000,41.340000:128.338164,41.966811:129.070015,42.006633:129.392187,42.394602:129.544000,42.337000:129.757733,42.443019:129.915455,42.958121:130.581000,42.411000:130.664000,42.409000:130.660000,42.750000:131.056800,42.832500:131.362267,43.147780:131.359097,44.050378:131.184574,44.758711:131.911825,45.219501:133.163642,44.937724:135.144366,48.211013:135.144366,48.597000:131.071828,48.211013:130.773650,49.035551:128.751969,49.726565:125.969075,53.154351:123.347269,53.704738:120.827269,53.390754:119.713597,52.637780:120.321762,52.210396:118.926328,50.226355:117.662701,49.700280:116.622716,49.956516:115.284508,48.000368:116.104389,47.451176:118.485448,47.755809:119.550866,46.911548:117.463642,46.804509:113.640000,45.105329:111.969090,45.243847:111.267254,44.465714:111.589045,43.737317:109.905388,42.763982:107.448179,42.614694:105.337313,41.946215:100.992746,42.800196:96.838239,42.914056:95.070866,44.957807:91.816477,45.242319:91.161836,46.742245:90.130007,47.948495:88.699097,48.336174:87.883642,49.202090:86.809933,49.172099:85.459963,48.255788:85.328157,47.119427:82.919985,47.328453:82.134523,45.619623:82.396343,45.291415:81.735685,45.446091:79.797183,45.018009:80.618157,43.259401:80.112694,42.868284:80.120896,42.260590:77.976351,41.282314:76.788172,41.096389:76.197254,40.491205:75.361880,40.846808:73.365418,39.794560:73.634523,38.503352:74.669067,38.423003:74.896815,37.310540:74.429528,37.294106:74.454501,36.972073:75.734530,36.578999:75.962701,35.784605:77.852731,35.299899:78.205470,34.574291:78.973568,32.910437:78.263619,32.582183:78.649985,30.992536:81.199112,29.930890:81.625396,30.231654:85.988179,27.769037:88.674612,27.787987:88.840910,27.047339:89.241858,27.247275:89.644552,28.077447:90.426358,28.002589:91.425425,27.605415:92.127284,26.721880:93.834582,26.907073:95.855604,28.198876:97.000074,27.593593:97.491836,27.849236:97.700896,28.296779:98.301769,27.394792:98.605433,27.417494:98.502702,26.026786:97.440895,25.088802:97.485448,23.745403:98.497224,24.030523:98.809985,23.174956:99.324515,22.945024:99.099993,22.084196:100.205485,21.391178:101.003735,21.463004:101.278198,21.122876:101.931836,21.129823:101.785481,22.197373:102.650063,22.558783:103.074619,22.382137:103.979093,22.474798:104.809933,22.767793:105.399978,23.049961:106.469971,22.704082:106.610899,21.787060:107.897261,21.372454:107.490036,19.305984:109.748489,14.674666:110.039063,11.480025:107.666016,6.271618:111.752930,3.281824:112.939454,3.413421:115.018257,6.054474:118.674316,10.790140:119.164223,12.212996:119.707031,18.020528:121.959229,21.677848:122.699226,23.809795:127.303391,24.447079:127.390663,31.568056:124.335754,32.823666",
inland: "124.240000,39.863000:127.060000,41.420000:128.320000,41.340000:128.338164,41.966811:129.070015,42.006633:129.392187,42.394602:129.544000,42.337000:129.757733,42.443019:129.915455,42.958121:130.581000,42.411000:130.664000,42.409000:130.660000,42.750000:131.056800,42.832500:131.362267,43.147780:131.359097,44.050378:131.184574,44.758711:131.911825,45.219501:133.163642,44.937724:135.144366,48.211013:135.144366,48.597000:131.071828,48.211013:130.773650,49.035551:128.751969,49.726565:125.969075,53.154351:123.347269,53.704738:120.827269,53.390754:119.713597,52.637780:120.321762,52.210396:118.926328,50.226355:117.662701,49.700280:116.622716,49.956516:115.284508,48.000368:116.104389,47.451176:118.485448,47.755809:119.550866,46.911548:117.463642,46.804509:113.640000,45.105329:111.969090,45.243847:111.267254,44.465714:111.589045,43.737317:109.905388,42.763982:107.448179,42.614694:105.337313,41.946215:100.992746,42.800196:96.838239,42.914056:95.070866,44.957807:91.816477,45.242319:91.161836,46.742245:90.130007,47.948495:88.699097,48.336174:87.883642,49.202090:86.809933,49.172099:85.459963,48.255788:85.328157,47.119427:82.919985,47.328453:82.134523,45.619623:82.396343,45.291415:81.735685,45.446091:79.797183,45.018009:80.618157,43.259401:80.112694,42.868284:80.120896,42.260590:77.976351,41.282314:76.788172,41.096389:76.197254,40.491205:75.361880,40.846808:73.365418,39.794560:73.634523,38.503352:74.669067,38.423003:74.896815,37.310540:74.429528,37.294106:74.454501,36.972073:75.734530,36.578999:75.962701,35.784605:77.852731,35.299899:78.205470,34.574291:78.973568,32.910437:78.263619,32.582183:78.649985,30.992536:81.199112,29.930890:81.625396,30.231654:85.988179,27.769037:88.674612,27.787987:88.840910,27.047339:89.241858,27.247275:89.644552,28.077447:90.426358,28.002589:91.425425,27.605415:92.127284,26.721880:93.834582,26.907073:95.855604,28.198876:97.000074,27.593593:97.491836,27.849236:97.700896,28.296779:98.301769,27.394792:98.605433,27.417494:98.502702,26.026786:97.440895,25.088802:97.485448,23.745403:98.497224,24.030523:98.809985,23.174956:99.324515,22.945024:99.099993,22.084196:100.205485,21.391178:101.003735,21.463004:101.278198,21.122876:101.931836,21.129823:101.785481,22.197373:102.650063,22.558783:103.074619,22.382137:103.979093,22.474798:104.809933,22.767793:105.399978,23.049961:106.469971,22.704082:106.610899,21.787060:107.897261,21.372454:107.490036,19.305984:109.748489,14.674666:110.039063,11.480025:107.666016,6.271618:111.752930,3.281824:112.939454,3.413421:115.018257,6.054474:118.674316,10.790140:119.164223,12.212996:119.707031,18.020528:121.397269,20.720622:118.487770,21.778166:119.578789,24.089008:120.465831,25.121382:121.207406,25.815692:121.869972,25.849447:122.599226,25.209509:122.699226,23.809795:127.303391,24.447079:127.390663,31.568056:124.335754,32.823666",
japan: "130.058874,35.187485:133.208436,36.728760:135.302372,36.335340:136.056445,37.097326:137.028118,38.068999:138.937959,39.610275:139.004971,42.659319:140.278198,45.741869:141.661984,45.763377:144.566964,44.736690:148.890681,46.139089:149.266393,45.455293:147.984574,43.664498:142.757641,41.453104:142.925171,39.610275:141.098416,34.356762:142.992183,27.280073:141.450908,24.432065:131.432619,25.504256:127.303391,24.447079:127.390663,31.568056:127.210208,33.397935:127.728060,33.848258:128.693979,34.488846:129.402013,35.158401",
taiwan: "121.397269,20.720622:118.487770,21.778166:119.578789,24.089008:120.465831,25.121382:121.207406,25.815692:121.869972,25.849447:122.599226,25.209509:122.699226,23.809795:121.959229,21.677848"
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return new l.
default(function(t) {
var e = c.
default.QMAPI_oversea;
d.
default.support() ? d.
default.get(e,
function(e) {
e || t(null);
try {
g = JSON.parse(e),
t(g)
} catch(e) {
t(null)
}
}) : t(null)
})
}
function r(t) {
var e = c.
default.QMAPI_oversea;
d.
default.support() && d.
default.set(e, t)
}
function a(t) {
var e = t && t.info && t.info.frontier && t.info.frontier.path;
return e ? new l.
default(function(t) {
_(e,
function(e, n) {
e && t(g || p.defaultFrontier);
try {
var i = m.inflate(n.data, {
to: "string"
});
r(i);
var o = JSON.parse(i);
t(o)
} catch(e) {
t(g || p.defaultFrontier)
}
})
}) : new l.
default(function(t) {
o().then(function(e) {
t(e || p.defaultFrontier)
})
})
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(25),
l = i(s);
e.getStorageFrontier = o,
e.getOnlineFrontier = a;
var u = n(137),
c = i(u),
f = n(89),
d = i(f),
h = n(79),
v = i(h),
p = n(507),
_ = v.
default.getArrayBuffer,
m = n(552),
g = null
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.ScheduleTaskQueue = e.ScheduleTaskNode = void 0;
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(28),
u = i(l);
e.ScheduleTaskNode = function() {
function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, r.
default)(this, t),
this.prev = null,
this.next = null,
this.callback = null,
this._expirationTime = e.expirationTime || u.
default.now() + 150
}
return (0, s.
default)(t, [{
key: "isTimeout",
value: function() {
return u.
default.now() >= this._expirationTime
}
},
{
key: "setCallback",
value: function(t) {
this.callback = t
}
},
{
key: "runTask",
value: function() {
var t = null;
try {
this.callback && (t = this.callback())
} catch(t) {
console.error(t)
}
"function" == typeof t ? this.setCallback(t) : this.remove()
}
},
{
key: "remove",
value: function() {
this.prev && (this.prev.next = this.next),
this.next && (this.next.prev = this.prev),
this.queue && this.queue.first === this && (this.queue.first = this.next),
this.queue && this.queue.last === this && (this.queue.last = this.prev),
this.prev = null,
this.next = null,
this.callback = null,
this.queue = null
}
},
{
key: "addToQueue",
value: function(t) {
this.queue = t,
this.queue.last ? (this.queue.last.next = this, this.prev = this.queue.last, this.queue.last = this) : this.queue.last = this,
this.queue.first || (this.queue.first = this)
}
}]),
t
} (),
e.ScheduleTaskQueue = function t() { (0, r.
default)(this, t),
this.first = null,
this.last = null
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(337),
p = i(v),
_ = n(511),
m = i(_),
g = n(10),
y = n(143),
x = n(793),
b = n(41),
S = i(b),
w = n(29),
E = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this)),
i = t.map,
o = t.id,
a = void 0 === o ? (0, g.uniqueId)() : o,
l = t.zIndex,
u = void 0 === l ? 0 : l;
return n.id = a,
n.level = y.LAYER_LEVEL.OVERLAY_AA,
n.zIndex = 0,
n.rank = (0, y.getRank)(n.level, n.zIndex),
n.setZIndex(u),
n.onInit(t),
i && i instanceof p.
default && n.addTo(i),
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "onInit",
value: function() {}
},
{
key: "addTo",
value: function(t) {
if (t !== this.map) return this.remove(),
t.addVisualPlugin(this),
this.map = t,
this.gl = t.renderEngine.gl,
this.onAddToMap({
canvas: t.canvasContainer,
camera: t.renderEngine.camera
}),
this
}
},
{
key: "remove",
value: function() {
return this.map && (this.map.removeVisualPlugin(this.id), this.onRemoveFromMap(), this.map = null, this.gl = null),
this
}
},
{
key: "redraw",
value: function() {
return this.map && this.map._render(),
this
}
},
{
key: "draw",
value: function() {
var t = this,
e = this.gl;
e && (0, x.preserveParameters)(e, {
DEPTH_TEST: !1,
STENCIL_TEST: !1,
BLEND: !0,
CULL_FACE: !1,
CULL_FACE_MODE: e.BACK,
BLEND_SRC_RGB: e.ONE,
BLEND_DST_RGB: e.ONE_MINUS_SRC_ALPHA,
BLEND_SRC_ALPHA: e.ONE,
BLEND_DST_ALPHA: e.ONE_MINUS_SRC_ALPHA,
VIEWPORT: [0, 0, e.canvas.width, e.canvas.height],
UNPACK_FLIP_Y_WEBGL: !1,
UNPACK_PREMULTIPLY_ALPHA_WEBGL: !1
},
function() {
t.onDraw()
})
}
},
{
key: "setZIndex",
value: function(t) {
return S.
default.isNumber(t) ? t < 0 ? (console.error("zIndex希望设置为非负数,实际值为: " + t), this) : (this.zIndex = t, this.rank = (0, y.getRank)(this.level, this.zIndex), this) : (new w.BaseTypeError("zIndex", "Number", t).error(), this)
}
},
{
key: "getZIndex",
value: function() {
return this.zIndex
}
},
{
key: "setLevel",
value: function(t) {
this.level = t,
this.rank = (0, y.getRank)(t, this.zIndex)
}
},
{
key: "getId",
value: function() {
return this.id
}
},
{
key: "onAddToMap",
value: function() {}
},
{
key: "onRemoveFromMap",
value: function() {}
},
{
key: "onDraw",
value: function() {}
}]),
e
} (m.
default);
e.
default = E
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(5),
u = i(l),
c = n(4),
f = i(c),
d = n(106),
h = function(t) {
function e() {
return (0, s.
default)(this, e),
(0, u.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this))
}
return (0, f.
default)(e, t),
e
} (d);
t.exports = h
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
switch (t.type) {
case p.LIGHT_TYPE.POINT:
return new S(t);
case p.LIGHT_TYPE.DIRECTION:
return new b(t);
case p.LIGHT_TYPE.AMBIENT:
default:
return new x(t)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(3),
a = i(r),
s = n(5),
l = i(s),
u = n(4),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h);
e.
default = o;
var p = n(341),
_ = n(10),
m = n(107),
g = n(227),
y = i(g),
x = function() {
function t(e) {
var n = e.id,
i = e.color,
o = void 0 === i ? "#FFFFFF": i,
r = e.intensity,
a = void 0 === r ? 1 : r,
s = e.type; (0, d.
default)(this, t),
this.id = n || (0, _.uniqueId)(),
this.color = o,
this.intensity = a,
this.type = s
}
return (0, v.
default)(t, [{
key: "color",
get: function() {
var t = this;
return this._color.map(function(e) {
return e * t.intensity
})
},
set: function(t) {
this._color = new y.
default(t, {
max: 1
}).toArray().slice(0, 3)
}
}]),
t
} (),
b = function(t) {
function e(t) { (0, d.
default)(this, e);
var n = (0, l.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, t));
return n.direction = t.direction,
n
}
return (0, c.
default)(e, t),
(0, v.
default)(e, [{
key: "direction",
get: function() {
return this._direction.elements
},
set: function(t) {
this._direction = new m.Vector3(t || [0, 0, -1]).normalize().scale( - 1, -1, -1)
}
}]),
e
} (x),
S = function(t) {
function e(t) { (0, d.
default)(this, e);
var n = (0, l.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, t));
return n.position = t.position,
n.height = t.height,
n.attenuation = t.attenuation || [1, .045, .0075],
n
}
return (0, c.
default)(e, t),
e
} (x)
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
for (var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 4, e = new Float32Array(8 * t * t), n = new Uint8Array(6 * t * t), i = 0, o = 0; o < t; o++) for (var r = 0; r < t; r++) {
var a = [r / t, o / t],
s = 1 / t,
l = 8 * i;
e[l] = a[0],
e[l + 1] = a[1],
e[l + 2] = a[0],
e[l + 3] = a[1] + s,
e[l + 4] = a[0] + s,
e[l + 5] = a[1],
e[l + 6] = a[0] + s,
e[l + 7] = a[1] + s;
var u = 6 * i,
c = 4 * i;
n[u + 0] = c + 0,
n[u + 1] = c + 2,
n[u + 2] = c + 1,
n[u + 3] = c + 1,
n[u + 4] = c + 2,
n[u + 5] = c + 3,
i += 1
}
return {
vertices: e,
indices: n
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(24),
a = i(r),
s = n(3),
l = i(s),
u = n(0),
c = i(u),
f = n(1),
d = i(f),
h = n(5),
v = i(h),
p = n(35),
_ = i(p),
m = n(4),
g = i(m),
y = n(305),
x = i(y),
b = n(596),
S = n(139),
w = function(t) {
function e(t) { (0, c.
default)(this, e);
var n = (0, v.
default)(this, (e.__proto__ || (0, l.
default)(e)).call(this, t));
return n.defaultShaderConfig = {
source: b.defaultShader,
params: {
attributes: ["a_position"],
uniforms: ["u_matrix", "u_size", "u_texInfo", "u_opacity", "u_sampler"]
},
geometry: {
vertices: new Float32Array([0, 0, 0, 1, 1, 0, 1, 1]),
indices: new Uint8Array([0, 2, 1, 1, 2, 3])
}
},
n.sphereShaderConfig = {
source: b.sphereShader,
params: {
attributes: ["a_position"],
uniforms: ["u_matrix", "u_size", "u_texInfo", "u_opacity", "u_sampler", "u_mercator", "uZoom", "uCenter", "uMatrix", "u_ratio", "u_wireframe"]
},
geometry: o(4)
},
n.shaderSource = n.defaultShaderConfig.source,
n.shaderParams = n.defaultShaderConfig.params,
n
}
return (0, g.
default)(e, t),
(0, d.
default)(e, [{
key: "preDraw",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
n = t.isSphere,
i = n ? this.sphereShaderConfig: this.defaultShaderConfig,
o = i.source,
r = i.params,
a = i.geometry;
if (this.shaderSource = o, this.shaderParams = r, (0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "preDraw", this).call(this), !i.buffers) {
var s = a.vertices,
u = a.indices;
i.buffers = this.createBuffer(null, s, u)
}
this.buffers = i.buffers,
this.bindBuffer()
}
},
{
key: "bindBuffer",
value: function() {
var t = this.gl;
this.buffers.vertices.bind(),
this.buffers.vertices.pointToAttrib({
location: this.a_position,
size: 2,
type: t.FLOAT
}),
this.buffers.indices.bind()
}
},
{
key: "draw",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
t.isSphere ? this.drawOnSphere(t) : this.drawOnPlane(t)
}
},
{
key: "drawOnPlane",
value: function(t) {
var e = t.matrix,
n = t.size,
i = t.texInfo,
o = t.opacity,
r = this.gl;
r.uniformMatrix4fv(this.u_matrix, !1, e.elements),
r.uniform1i(this.u_sampler, 0),
r.uniform2f(this.u_size, n.width, n.height),
r.uniform4f(this.u_texInfo, i.s, i.t, i.w, i.h),
r.uniform1f(this.u_opacity, o),
r.drawElements(r.TRIANGLES, this.buffers.length, r.UNSIGNED_BYTE, 0)
}
},
{
key: "drawOnSphere",
value: function(t) {
var e = t.mercator,
n = t.zoom,
i = t.center,
o = t.pvMatrix,
r = t.matrix,
s = t.size,
l = t.texInfo,
u = t.opacity,
c = t.viewTransition,
f = void 0 === c ? 1 : c,
d = this.gl,
h = (0, S.splitLatLngNumber)(i.lat),
v = (0, S.splitLatLngNumber)(i.lng);
d.uniformMatrix4fv(this.u_matrix, !1, r.elements),
d.uniform1i(this.u_sampler, 0),
d.uniform2f(this.u_size, s.width, s.height),
d.uniform4f(this.u_texInfo, l.s, l.t, l.w, l.h),
d.uniform1f(this.u_opacity, u),
d.uniform3f.apply(d, [this.u_mercator].concat((0, a.
default)(e))),
d.uniform1f(this.u_ratio, f),
d.uniform1f(this.uZoom, n),
d.uniform4f(this.uCenter, v.high, h.high, v.low, h.low),
d.uniformMatrix4fv(this.uMatrix, !1, o.elements),
d.uniform1f(this.u_wireframe, 0),
d.drawElements(d.TRIANGLES, this.buffers.length, d.UNSIGNED_BYTE, 0)
}
},
{
key: "destroy",
value: function() {
this.buffers && (this.buffers.vertices.delete(), this.buffers.indices.delete()),
this.vertices = null,
this.indices = null,
(0, _.
default)(e.prototype.__proto__ || (0, l.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (x.
default);
e.
default = w
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(211),
y = i(g),
x = n(110),
b = n(139),
S = n(212),
w = i(S),
E = n(219),
T = n(10),
A = i(T),
P = function(t) {
function e(t) { (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t)),
i = t.attribList || [],
o = t.uniformList || [];
return n.shaderParams = {
attributes: i.concat(["positions", "instancePositions", "instancePositions64xyLow", "instanceSizes", "instanceInfos", "instancePickingColors", "instanceFrames", "instancePixelOffset"]),
uniforms: o.concat(["uMatrix", "uCenter", "uZoom", "uPixelsPerMeter", "uResolution", "uProject_uCommonUnitsPerWorldUnit", "uProject_uCommonUnitsPerWorldUnit2", "picking_usePickingColor", "picking_zindex", "u_sizeScale", "u_sizeMinPixels", "u_sizeMaxPixels", "u_textureDim", "u_opacity", "u_sampler", "u_mapScale"])
},
n.modelPositions = new Int16Array([ - 1, -1, 0, -1, 1, 0, 1, 1, 0, 1, -1, 0]),
n.store = new x.Store("buffer", 128, 16, E.deleteInstanceCacllback),
n.symbolManager = null,
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "draw",
value: function(t, e, n, i) {
var o = this.gl;
if (e && this.symbolManager.canvas) {
var r = t.center,
a = t.zoom,
s = t.getDistanceRatio(),
l = i.distanceScales,
u = (0, b.splitLatLngNumber)(r.lat),
c = (0, b.splitLatLngNumber)(r.lng);
o.useProgram(o.program),
o.uniformMatrix4fv(this.uMatrix, !1, e.elements),
o.uniform4f(this.uCenter, c.high, u.high, c.low, u.low),
o.uniform1f(this.uZoom, a),
o.uniform3f(this.uPixelsPerMeter, s, s, s),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit, l.pixelsPerDegree[0], l.pixelsPerDegree[1], l.pixelsPerDegree[2]),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit2, l.pixelsPerDegree2[0], l.pixelsPerDegree2[1], l.pixelsPerDegree2[2]),
o.uniform2f(this.uResolution, t.width, t.height),
o.uniform1f(this.picking_usePickingColor, i.usePicking ? 1 : 0),
o.uniform1f(this.picking_zindex, i.picking_zindex || 0),
o.uniform1f(this.u_sizeScale, 1),
o.uniform1f(this.u_sizeMinPixels, 0),
o.uniform1f(this.u_sizeMaxPixels, 1e3),
o.uniform2f(this.u_textureDim, this.symbolManager.canvas.width, this.symbolManager.canvas.height),
o.uniform1f(this.u_opacity, 1),
o.uniform1f(this.u_mapScale, t.scale),
this._onDraw(),
this.drawTileInstance(n.uid, n)
}
}
},
{
key: "drawTileInstance",
value: function(t, e) {
var n = this.gl,
i = this.store,
o = !1;
if (i) {
if (i.exist(t)) {
var r = i.get(t).instanceBuffers;
this.isBufferChanged(r, e) && (o = !0)
} else i.set(t, this.createBuffer(t, e));
var a = i.get(t);
a.positions.bind(),
a.positions.pointToAttrib({
location: this.positions,
size: 3,
type: n.SHORT
}),
A.
default.forIn(a.instanceBuffers,
function(t, i) {
var r = i.buffer,
a = i.location,
s = i.size,
l = i.type;
r.bind(),
o && (r.bufferData(e[t], {
usage: n.DYNAMIC_DRAW
}), i.data = e[t]),
r.pointToAttrib({
location: a,
size: s,
type: l
}),
n.vertexAttribDivisor(a, 1)
}),
n.drawArraysInstanced(n.TRIANGLE_FAN, 0, 4, e.count),
n.bindBuffer(n.ARRAY_BUFFER, null),
n.vertexAttribDivisor(this.instancePositions, 0),
n.vertexAttribDivisor(this.instancePositions64xyLow, 0),
n.vertexAttribDivisor(this.instanceSizes, 0),
n.vertexAttribDivisor(this.instanceInfos, 0),
n.vertexAttribDivisor(this.instancePickingColors, 0),
n.vertexAttribDivisor(this.instanceFrames, 0),
n.vertexAttribDivisor(this.instancePixelOffset, 0),
this._onDrawInstanceTile()
}
}
},
{
key: "getInstanceConfig",
value: function() {
var t = this.gl;
return {
instancePositionList: {
location: this.instancePositions,
size: 3,
type: t.FLOAT
},
instancePosition64xyLowList: {
location: this.instancePositions64xyLow,
size: 2,
type: t.FLOAT
},
instanceSizeList: {
location: this.instanceSizes,
size: 2,
type: t.UNSIGNED_SHORT
},
instanceInfoList: {
location: this.instanceInfos,
size: 4,
type: t.FLOAT
},
instancePickingColorList: {
location: this.instancePickingColors,
size: 3,
type: t.UNSIGNED_BYTE
},
instanceFrameList: {
location: this.instanceFrames,
size: 4,
type: t.FLOAT
},
instancePixelOffsetList: {
location: this.instancePixelOffset,
size: 3,
type: t.FLOAT
}
}
}
},
{
key: "createBuffer",
value: function(t, e) {
var n = this.gl,
i = {
positions: null,
indices: null,
instanceBuffers: {}
};
if (this.modelPositions && (i.positions = new w.
default(n, {
data: this.modelPositions
})), e) {
var o = this.getInstanceConfig();
A.
default.forIn(o,
function(t, o) {
i.instanceBuffers[t] = (0, r.
default)({
data:
e[t],
buffer: new w.
default(n, {
data: e[t],
usage: n.DYNAMIC_DRAW
})
},
o)
})
}
return i
}
},
{
key: "afterDraw",
value: function() {
this.gl.activeTexture(this.gl.TEXTURE0),
this.gl.bindTexture(this.gl.TEXTURE_2D, null)
}
},
{
key: "loadTexture",
value: function() {
this.symbolManager.canvas && this.symbolManager.uploadToGPU({
textureIndex: 0,
minFilter: this.gl.LINEAR,
magFilter: this.gl.LINEAR,
wrapS: this.gl.CLAMP_TO_EDGE,
wrapT: this.gl.CLAMP_TO_EDGE,
premultiply: !0,
useMipmap: !1,
flipY: !0
})
}
},
{
key: "_onDraw",
value: function() {}
},
{
key: "_onDrawInstanceTile",
value: function() {}
},
{
key: "destroy",
value: function() {
this.modelPositions = null,
this.symbolManager = null,
(0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (y.
default);
e.
default = P
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return {
x:
t && t.width || 1,
y: t && t.height || 1
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(16),
a = i(r),
s = n(17),
l = i(s),
u = n(3),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(5),
_ = i(p),
m = n(35),
g = i(m),
y = n(4),
x = i(y),
b = n(305),
S = i(b),
w = n(605),
E = i(w),
T = n(606),
A = i(T),
P = n(213),
I = i(P),
k = n(110),
L = n(212),
M = i(L),
C = n(10),
R = i(C),
B = n(28),
N = i(B),
O = 1 / 16 / N.
default.devicePixelRatio,
D = function(t) {
function e(t) { (0, d.
default)(this, e);
var n = (0, _.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t));
return n.textCache = t.textCache,
n.glyphManager = t.glyphManager,
n.markerManager = t.markerManager,
n.shaderSource = n.textCache ? A.
default:
E.
default,
n._store = new k.Store("buffer", 100, 16,
function(t) {
t.positions && t.positions.delete(),
t.indices && t.indices.delete(),
t.instanceBuffers && (0, l.
default)(t.instanceBuffers).forEach(function(e) {
var n = t.instanceBuffers[e];
n.data = null,
n.buffer.delete()
})
}),
n.shaderParams = {
attributes: ["a_Positions", "a_InstanceTrans", "a_InstanceCoords", "a_InstanceTextBounds", "a_InstanceStrentchinglens", "a_InstanceInfo", "a_InstanceColors", "a_InstanceStrokeColors", "a_InstancePickingColors", "a_InstanceStrokeWidth"],
uniforms: ["u_matrix", "u_resolution", "u_fadeChange", "u_showPoint", "u_showLabel", "u_mapScale", "u_InstanceTileTextureOffset", "u_iconTextureResolution", "u_billboardTextureResolution", "u_textTextureResolution", "u_glyphTextureResolution", "u_SamplerGlyph", "u_SamplerText", "u_SamplerIcon", "u_SamplerMask", "u_asbackground", "u_gamma", "u_buffer", "u_maskScale", "u_sdfRadius", "picking_useFeaturePickingColor"]
},
n.positions = new Int16Array([ - 1, 1, 1, 1, -1, -1, 1, -1]),
n.indices = new Uint8Array([0, 2, 1, 1, 2, 3]),
n
}
return (0, x.
default)(e, t),
(0, v.
default)(e, [{
key: "setCommonUniforms",
value: function(t, e) {
var n = this.gl;
n.uniform2f(this.u_resolution, t.width, t.height),
n.uniform2f(this.u_billboardTextureResolution, o(this.markerManager.canvas).x, o(this.markerManager.canvas).y),
n.uniform2f(this.u_textTextureResolution, o(this.textCache).x, o(this.textCache).y),
n.uniform2f(this.u_glyphTextureResolution, o(this.glyphManager.canvas).x, o(this.glyphManager.canvas).y),
n.uniform2f(this.u_iconTextureResolution, o(e.iconsLoader.img).x, o(e.iconsLoader.img).y),
n.uniform1f(this.u_asbackground, e.asBackground ? 1 : 0),
n.uniform1f(this.u_fadeChange, e.fadeChange || 0),
n.uniform1f(this.u_maskScale, e.maskScale || 1),
n.uniform1f(this.u_showPoint, !1 === e.showPoint ? 0 : 1),
n.uniform1f(this.u_showLabel, !1 === e.showLabel ? 0 : 1),
n.uniform1f(this.u_mapScale, t.scale),
n.uniform1f(this.picking_useFeaturePickingColor, e.usePicking ? 1 : 0),
n.uniform1i(this.u_SamplerText, 0),
n.uniform1i(this.u_SamplerGlyph, 2),
n.uniform1f(this.u_gamma, O),
n.uniform1f(this.u_buffer, .71),
n.uniform1f(this.u_sdfRadius, this.glyphManager.setting.radius)
}
},
{
key: "draw",
value: function(t, e, n, i) {
var o = this,
r = this.gl;
n && ((0, l.
default)(n.textDataSet).length > 0 || (0, l.
default)(n.poiDataSet).length > 0) && (r.useProgram(r.program), this.setCommonUniforms(t, i), r.uniform1i(this.u_SamplerIcon, 1), r.uniform1i(this.u_SamplerMask, 3), R.
default.forIn(e,
function(e, a) {
var s = e + "_" + Math.round(t.zoom);
if (n.instanceSet[s] && !n.instanceSet[s].isIndoor && (!o.textCache || o.textCache.tiles[e])) {
var l = o.textCache && o.textCache.tiles[e] || {},
u = n.instanceSet[s];
r.uniformMatrix4fv(o.u_matrix, !1, a.elements),
r.uniform2f(o.u_InstanceTileTextureOffset, l.x || 0, l.y || 0),
o.drawTileInstance(s, u, i.updateSubData)
}
}))
}
},
{
key: "drawTileInstance",
value: function(t, e, n) {
var i = arguments.length > 3 && void 0 !== arguments[3] && arguments[3];
if (! (e.count < 1)) {
var o = this.gl,
r = this._store;
r.exist(t) || r.set(t, this.createBuffer(t, e, i));
var a = r.get(t);
a.positions.bind(),
a.positions.pointToAttrib({
location: this.a_Positions,
size: 2,
type: o.SHORT
}),
a.indices.bind(),
R.
default.forIn(a.instanceBuffers,
function(t, i) {
var r = i.buffer,
a = i.location,
s = i.size,
l = i.type;
r.bind(),
n && i.updatable && (r.bufferData(e[t], {
usage: o.DYNAMIC_DRAW
}), i.data = e[t]),
r.pointToAttrib({
location: a,
size: s,
type: l
}),
o.vertexAttribDivisor(a, 1)
}),
o.drawElementsInstanced(o.TRIANGLES, this.indices.length, o.UNSIGNED_BYTE, 0, e.count),
o.bindBuffer(o.ARRAY_BUFFER, null),
o.bindBuffer(o.ELEMENT_ARRAY_BUFFER, null),
o.vertexAttribDivisor(this.a_InstanceTrans, 0),
o.vertexAttribDivisor(this.a_InstanceCoords, 0),
o.vertexAttribDivisor(this.a_InstanceTextBounds, 0),
o.vertexAttribDivisor(this.a_InstanceInfo, 0),
this.textCache || (!i && o.vertexAttribDivisor(this.a_InstanceStrentchinglens, 0), o.vertexAttribDivisor(this.a_InstanceColors, 0), o.vertexAttribDivisor(this.a_InstanceStrokeColors, 0), !i && o.vertexAttribDivisor(this.a_InstancePickingColors, 0), !i && o.vertexAttribDivisor(this.a_InstanceStrokeWidth, 0))
}
}
},
{
key: "createBuffer",
value: function(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],
i = this.gl,
o = {
positions: null,
indices: null,
instanceBuffers: {}
};
if (this.positions && (o.positions = new M.
default(i, {
data: this.positions
})), this.indices && (o.indices = new M.
default(i, {
target: i.ELEMENT_ARRAY_BUFFER,
data: this.indices
})), e) {
var r = {
instanceTransTypeArray: {
location: this.a_InstanceTrans,
size: 3,
type: i.FLOAT,
updatable: !0
},
instanceCoordsTypeArray: {
location: this.a_InstanceCoords,
size: 4,
type: i.FLOAT
},
instanceTextBoundsTypeArray: {
location: this.a_InstanceTextBounds,
size: 4,
type: i.FLOAT,
updatable: !0
},
instanceInfosTypeArray: {
location: this.a_InstanceInfo,
size: 4,
type: i.FLOAT,
updatable: !0
}
};
this.textCache || (!n && (r.instanceStrentchinglensTypeArray = {
location: this.a_InstanceStrentchinglens,
size: 2,
type: i.FLOAT,
updatable: !0
}), r.instanceColorsTypeArray = {
location: this.a_InstanceColors,
size: 4,
type: i.UNSIGNED_BYTE
},
r.instanceStrokeColorsTypeArray = {
location: this.a_InstanceStrokeColors,
size: 4,
type: i.UNSIGNED_BYTE
},
!n && (r.instancePickingColorsTypeArray = {
location: this.a_InstancePickingColors,
size: 4,
type: i.UNSIGNED_BYTE
}), !n && (r.instanceStrokeWidthTypeArray = {
location: this.a_InstanceStrokeWidth,
size: 1,
type: i.FLOAT
})),
R.
default.forIn(r,
function(t, n) {
o.instanceBuffers[t] = (0, a.
default)({
data:
e[t],
buffer: new M.
default(i, {
data: e[t],
usage: i.DYNAMIC_DRAW
})
},
n)
})
}
return o
}
},
{
key: "afterDraw",
value: function() { (0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "afterDraw", this).call(this),
this.gl.activeTexture(this.gl.TEXTURE2),
this.gl.bindTexture(this.gl.TEXTURE_2D, null)
}
},
{
key: "loadTexture",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.textCache ? this.textCache.loadTexture() : this.loadManagerTexture(this.markerManager, 0),
this.loadIconTexture(t),
this.loadManagerTexture(this.glyphManager, 2),
t.maskTexture && t.maskTexture.bind(this.gl, {
textureIndex: 3
})
}
},
{
key: "loadIconTexture",
value: function(t) {
var e = t.iconsLoader;
if (e && e.img) {
var n = this.gl;
if (this.texture) this.texture.bind(null, {
textureIndex: 1
});
else {
n.useProgram(n.program);
var i = new I.
default(n, {
pixels: e.img
});
i.upload({
flipY: !0,
textureIndex: 1
});
var o = n.getUniformLocation(n.program, "u_SamplerIcon");
n.uniform1i(o, 1),
this.texture = i
}
}
}
},
{
key: "loadManagerTexture",
value: function(t, e) {
t && t.canvas && t.uploadToGPU({
textureIndex: e,
minFilter: this.gl.LINEAR,
magFilter: this.gl.LINEAR,
wrapS: this.gl.CLAMP_TO_EDGE,
wrapT: this.gl.CLAMP_TO_EDGE,
premultiply: !0,
useMipmap: !1,
flipY: !0
})
}
},
{
key: "clear",
value: function() {
this._store.clear(),
this.texture && (this.texture.destroy(), this.texture = null)
}
},
{
key: "destroy",
value: function() {
this.textCache = null,
this.glyphManager = null,
this.markerManager = null,
this.positions = null,
this.indices = null,
this._store.clear(),
this._store = null,
this.texture && (this.texture.destroy(), this.texture = null),
(0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (S.
default);
e.
default = D
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(280),
m = i(_),
g = n(213),
y = i(g),
x = n(517),
b = i(x),
S = n(41),
w = i(S),
E = function(t) {
function e(t, n) {
return (0, u.
default)(this, e),
(0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t, n))
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "_onCreate",
value: function() {
return this.gl.createFramebuffer()
}
},
{
key: "_onDelete",
value: function(t) {
t || (this._colorAttach.forEach(function(t) {
return t.delete()
}), this._depthAttach.delete()),
this._colorAttach = null,
this._depthAttach = null,
this.unbind(!0),
this.gl.deleteFramebuffer(this._object)
}
},
{
key: "_initialize",
value: function(t) {
var e = this,
n = t.width,
i = void 0 === n ? 1 : n,
o = t.height,
r = void 0 === o ? 1 : o,
a = t.attachments,
s = void 0 === a ? {}: a,
l = t.drawBuffers;
this.width = i,
this.height = r,
this._colorAttach = [],
this._depthAttach = null;
var u = void 0,
c = void 0;
s && (u = s.color, c = s.depth),
w.
default.isArray(u) ? u.forEach(function(t, n) {
e.attach("color", t, {
colorIndex: n
})
}) : this.attach("color", u),
this.attach("depth", c),
l && this.setDrawBuffers(l)
}
},
{
key: "_createDefaultAttachment",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = this.gl,
i = null;
switch (t) {
case "color":
i = new y.
default(n, (0, r.
default)({
pixels:
null
},
e));
break;
case "depth":
i = new b.
default(n, e)
}
return i
}
},
{
key: "bind",
value: function(t) {
t = t || this.gl,
t.bindFramebuffer(t.FRAMEBUFFER, this._object),
t.frameBuffer = this
}
},
{
key: "unbind",
value: function(t) {
t || (this._colorAttach.forEach(function(t) {
return t.unbind()
}), this._depthAttach.unbind()),
this.gl.bindFramebuffer(this.gl.FRAMEBUFFER, null),
this.gl.frameBuffer = null
}
},
{
key: "attach",
value: function(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
i = n.resizeAttach,
o = void 0 === i || i,
r = n.colorIndex,
a = void 0 === r ? 0 : r,
s = this.gl,
l = this.width,
u = this.height;
switch (this.bind(), e instanceof y.
default || e instanceof b.
default || (e = this._createDefaultAttachment(t, e)), o && e.resize(l, u), t) {
case "color":
s.framebufferTexture2D(s.FRAMEBUFFER, s.COLOR_ATTACHMENT0 + a, s.TEXTURE_2D, e.texture, 0),
this._colorAttach[a] = e;
break;
case "depth":
var c = "DEPTH24_STENCIL8" === e.internalformat ? s.DEPTH_STENCIL_ATTACHMENT: s.DEPTH_ATTACHMENT;
e instanceof b.
default ? s.framebufferRenderbuffer(s.FRAMEBUFFER, c, s.RENDERBUFFER, e.buffer) : e instanceof y.
default && s.framebufferTexture2D(s.FRAMEBUFFER, c, s.TEXTURE_2D, e.texture, 0),
this._depthAttach = e
}
}
},
{
key: "checkStatus",
value: function() {
this.bind();
var t = this.gl.checkFramebufferStatus(this.gl.FRAMEBUFFER);
return t === this.gl.FRAMEBUFFER_COMPLETE || (console.error("Framebuffer object is incomplete: " + t.toString() + "."), !1)
}
},
{
key: "resize",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1,
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1;
this.width = t,
this.height = e,
this._colorAttach.forEach(function(n) {
return n.resize(t, e)
}),
this._depthAttach.resize(t, e, {
minFilter: this.gl.NEAREST,
magFilter: this.gl.NEAREST
})
}
},
{
key: "copy",
value: function(t) {
var e = this.gl,
n = this.width,
i = this.height;
if (e.isWebGL2) {
this.bind();
var o = t ? t._object: null;
e.bindFramebuffer(e.READ_FRAMEBUFFER, o),
e.blitFramebuffer(0, 0, n, i, 0, 0, n, i, e.COLOR_BUFFER_BIT, e.NEAREST)
} else t && t.bind(e),
this.color.copy()
}
},
{
key: "setDrawBuffers",
value: function(t) {
this.bind();
var e = this.gl,
n = t.map(function(t) {
return e[t]
});
e.drawBuffers(n)
}
},
{
key: "getColorAttach",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0;
return this._colorAttach[t]
}
},
{
key: "color",
get: function() {
return this._colorAttach[0]
}
},
{
key: "depth",
get: function() {
return this._depthAttach
}
},
{
key: "texture",
get: function() {
return this._colorAttach[0].texture
}
},
{
key: "buffer",
get: function() {
return this._object
}
}]),
e
} (m.
default);
e.
default = E
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(280),
p = i(v),
_ = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_onCreate",
value: function() {
return this.gl.createRenderbuffer()
}
},
{
key: "_onDelete",
value: function() {
this.unbind(),
this.gl.deleteRenderbuffer(this._object)
}
},
{
key: "_initialize",
value: function(t) {
var e = t.width,
n = void 0 === e ? 1 : e,
i = t.height,
o = void 0 === i ? 1 : i,
r = t.internalformat,
a = void 0 === r ? "DEPTH_COMPONENT16": r;
this.width = n,
this.height = o,
this.internalformat = a
}
},
{
key: "bind",
value: function(t) {
t = t || this.gl,
t.bindRenderbuffer(t.RENDERBUFFER, this._object)
}
},
{
key: "unbind",
value: function() {
this.gl.bindRenderbuffer(this.gl.RENDERBUFFER, null)
}
},
{
key: "resize",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1,
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1;
this.width = t,
this.height = e,
this.bind();
var n = this.internalformat,
i = this.gl;
this.gl.renderbufferStorage(i.RENDERBUFFER, i[n], t, e)
}
},
{
key: "buffer",
get: function() {
return this._object
}
}]),
e
} (p.
default);
e.
default = _
},
function(t, e, n) {
"use strict";
function i(t, e, n, i, o, r) {
this.fontSize = t || 24,
this.buffer = void 0 === e ? 3 : e,
this.cutoff = i || .25,
this.fontFamily = o || "sans-serif",
this.fontWeight = r || "normal",
this.radius = n || 8,
this.size = this.fontSize + 2 * this.buffer;
var a = this.size;
this.canvas = document.createElement("canvas"),
this.canvas.width = a,
this.canvas.height = a,
this.ctx = this.canvas.getContext("2d"),
this.ctx.font = this.fontWeight + " " + this.fontSize + "px " + this.fontFamily,
this.ctx.textBaseline = "middle",
this.ctx.fillStyle = "black",
this.gridOuter = new Float64Array(a * a),
this.gridInner = new Float64Array(a * a),
this.f = new Float64Array(a),
this.d = new Float64Array(a),
this.z = new Float64Array(a + 1),
this.v = new Int16Array(a),
this.middle = Math.round(a / 2 * (navigator.userAgent.indexOf("Gecko/") >= 0 ? 1.2 : 1))
}
function o(t, e, n, i, o, a, s) {
for (var l = 0; l < e; l++) {
for (var u = 0; u < n; u++) i[u] = t[u * e + l];
r(i, o, a, s, n);
for (var c = 0; c < n; c++) t[c * e + l] = o[c]
}
for (var f = 0; f < n; f++) {
for (var d = 0; d < e; d++) i[d] = t[f * e + d];
r(i, o, a, s, e);
for (var h = 0; h < e; h++) t[f * e + h] = Math.sqrt(o[h])
}
}
function r(t, e, n, i, o) {
n[0] = 0,
i[0] = -a,
i[1] = +a;
for (var r = 1,
s = 0; r < o; r++) {
for (var l = (t[r] + r * r - (t[n[s]] + n[s] * n[s])) / (2 * r - 2 * n[s]); l <= i[s];) s -= 1,
l = (t[r] + r * r - (t[n[s]] + n[s] * n[s])) / (2 * r - 2 * n[s]);
s += 1,
n[s] = r,
i[s] = l,
i[s + 1] = +a
}
for (var u = 0,
c = 0; u < o; u++) {
for (; i[c + 1] < u;) c += 1;
e[u] = (u - n[c]) * (u - n[c]) + t[n[c]]
}
}
t.exports = i,
t.exports.
default = i;
var a = 1e20;
i.prototype.draw = function(t) {
this.ctx.clearRect(0, 0, this.size, this.size),
this.ctx.fillText(t, this.buffer, this.middle);
for (var e = this.ctx.getImageData(0, 0, this.size, this.size), n = new Uint8ClampedArray(this.size * this.size), i = 0; i < this.size * this.size; i++) {
var r = e.data[4 * i + 3] / 255;
this.gridOuter[i] = 1 === r ? 0 : 0 === r ? a: Math.pow(Math.max(0, .5 - r), 2),
this.gridInner[i] = 1 === r ? a: 0 === r ? 0 : Math.pow(Math.max(0, r - .5), 2)
}
o(this.gridOuter, this.size, this.size, this.f, this.d, this.v, this.z),
o(this.gridInner, this.size, this.size, this.f, this.d, this.v, this.z);
for (var s = 0; s < this.size * this.size; s++) {
var l = this.gridOuter[s] - this.gridInner[s];
n[s] = Math.max(0, Math.min(255, Math.round(255 - 255 * (l / this.radius + this.cutoff))))
}
return n
}
},
function(t, e, n) {
var i = n(244);
t.exports = function(t, e) {
if ("number" != typeof t && "Number" != i(t)) throw TypeError(e);
return + t
}
},
function(t, e, n) {
"use strict";
var i = n(136),
o = n(269),
r = n(88);
t.exports = [].copyWithin ||
function(t, e) {
var n = i(this),
a = r(n.length),
s = o(t, a),
l = o(e, a),
u = arguments.length > 2 ? arguments[2] : void 0,
c = Math.min((void 0 === u ? a: o(u, a)) - l, a - s),
f = 1;
for (l < s && s < l + c && (f = -1, l += c - 1, s += c - 1); c-->0;) l in n ? n[s] = n[l] : delete n[s],
s += f,
l += f;
return n
}
},
function(t, e, n) {
var i = n(229),
o = n(136),
r = n(321),
a = n(88);
t.exports = function(t, e, n, s, l) {
i(e);
var u = o(t),
c = r(u),
f = a(u.length),
d = l ? f - 1 : 0,
h = l ? -1 : 1;
if (n < 2) for (;;) {
if (d in c) {
s = c[d],
d += h;
break
}
if (d += h, l ? d < 0 : f <= d) throw TypeError("Reduce of empty array with no initial value")
}
for (; l ? d >= 0 : f > d; d += h) d in c && (s = e(s, c[d], d, u));
return s
}
},
function(t, e, n) {
var i = n(825);
t.exports = function(t, e) {
return new(i(t))(e)
}
},
function(t, e, n) {
"use strict";
var i = n(229),
o = n(63),
r = n(527),
a = [].slice,
s = {},
l = function(t, e, n) {
if (! (e in s)) {
for (var i = [], o = 0; o < e; o++) i[o] = "a[" + o + "]";
s[e] = Function("F,a", "return new F(" + i.join(",") + ")")
}
return s[e](t, n)
};
t.exports = Function.bind ||
function(t) {
var e = i(this),
n = a.call(arguments, 1),
s = function() {
var i = n.concat(a.call(arguments));
return this instanceof s ? l(e, i.length, i) : r(e, i, t)
};
return o(e.prototype) && (s.prototype = e.prototype),
s
}
},
function(t, e, n) {
"use strict";
var i = n(104).f,
o = n(264),
r = n(286),
a = n(231),
s = n(284),
l = n(348),
u = n(430),
c = n(531),
f = n(287),
d = n(103),
h = n(253).fastKey,
v = n(271),
p = d ? "_s": "size",
_ = function(t, e) {
var n, i = h(e);
if ("F" !== i) return t._i[i];
for (n = t._f; n; n = n.n) if (n.k == e) return n
};
t.exports = {
getConstructor: function(t, e, n, u) {
var c = t(function(t, i) {
s(t, c, e, "_i"),
t._t = e,
t._i = o(null),
t._f = void 0,
t._l = void 0,
t[p] = 0,
void 0 != i && l(i, n, t[u], t)
});
return r(c.prototype, {
clear: function() {
for (var t = v(this, e), n = t._i, i = t._f; i; i = i.n) i.r = !0,
i.p && (i.p = i.p.n = void 0),
delete n[i.i];
t._f = t._l = void 0,
t[p] = 0
},
delete: function(t) {
var n = v(this, e),
i = _(n, t);
if (i) {
var o = i.n,
r = i.p;
delete n._i[i.i],
i.r = !0,
r && (r.n = o),
o && (o.p = r),
n._f == i && (n._f = o),
n._l == i && (n._l = r),
n[p]--
}
return !! i
},
forEach: function(t) {
v(this, e);
for (var n, i = a(t, arguments.length > 1 ? arguments[1] : void 0, 3); n = n ? n.n: this._f;) for (i(n.v, n.k, this); n && n.r;) n = n.p
},
has: function(t) {
return !! _(v(this, e), t)
}
}),
d && i(c.prototype, "size", {
get: function() {
return v(this, e)[p]
}
}),
c
},
def: function(t, e, n) {
var i, o, r = _(t, e);
return r ? r.v = n: (t._l = r = {
i: o = h(e, !0),
k: e,
v: n,
p: i = t._l,
n: void 0,
r: !1
},
t._f || (t._f = r), i && (i.n = r), t[p]++, "F" !== o && (t._i[o] = r)),
t
},
getEntry: _,
setStrong: function(t, e, n) {
u(t, e,
function(t, n) {
this._t = v(t, e),
this._k = n,
this._l = void 0
},
function() {
for (var t = this,
e = t._k,
n = t._l; n && n.r;) n = n.p;
return t._t && (t._l = n = n ? n.n: t._t._f) ? "keys" == e ? c(0, n.k) : "values" == e ? c(0, n.v) : c(0, [n.k, n.v]) : (t._t = void 0, c(1))
},
n ? "entries": "values", !n, !0),
f(e)
}
}
},
function(t, e, n) {
"use strict";
var i = n(286),
o = n(253).getWeak,
r = n(60),
a = n(63),
s = n(284),
l = n(348),
u = n(230),
c = n(214),
f = n(271),
d = u(5),
h = u(6),
v = 0,
p = function(t) {
return t._l || (t._l = new _)
},
_ = function() {
this.a = []
},
m = function(t, e) {
return d(t.a,
function(t) {
return t[0] === e
})
};
_.prototype = {
get: function(t) {
var e = m(this, t);
if (e) return e[1]
},
has: function(t) {
return !! m(this, t)
},
set: function(t, e) {
var n = m(this, t);
n ? n[1] = e: this.a.push([t, e])
},
delete: function(t) {
var e = h(this.a,
function(e) {
return e[0] === t
});
return~e && this.a.splice(e, 1),
!!~e
}
},
t.exports = {
getConstructor: function(t, e, n, r) {
var u = t(function(t, i) {
s(t, u, e, "_i"),
t._t = e,
t._i = v++,
t._l = void 0,
void 0 != i && l(i, n, t[r], t)
});
return i(u.prototype, {
delete: function(t) {
if (!a(t)) return ! 1;
var n = o(t);
return ! 0 === n ? p(f(this, e)).delete(t) : n && c(n, this._i) && delete n[this._i]
},
has: function(t) {
if (!a(t)) return ! 1;
var n = o(t);
return ! 0 === n ? p(f(this, e)).has(t) : n && c(n, this._i)
}
}),
u
},
def: function(t, e, n) {
var i = o(r(e), !0);
return ! 0 === i ? p(t).set(e, n) : i[t._i] = n,
t
},
ufstore: p
}
},
function(t, e, n) {
t.exports = !n(103) && !n(61)(function() {
return 7 != Object.defineProperty(n(423)("div"), "a", {
get: function() {
return 7
}
}).a
})
},
function(t, e) {
t.exports = function(t, e, n) {
var i = void 0 === n;
switch (e.length) {
case 0:
return i ? t() : t.call(n);
case 1:
return i ? t(e[0]) : t.call(n, e[0]);
case 2:
return i ? t(e[0], e[1]) : t.call(n, e[0], e[1]);
case 3:
return i ? t(e[0], e[1], e[2]) : t.call(n, e[0], e[1], e[2]);
case 4:
return i ? t(e[0], e[1], e[2], e[3]) : t.call(n, e[0], e[1], e[2], e[3])
}
return t.apply(n, e)
}
},
function(t, e, n) {
var i = n(63),
o = Math.floor;
t.exports = function(t) {
return ! i(t) && isFinite(t) && o(t) === t
}
},
function(t, e, n) {
var i = n(60);
t.exports = function(t, e, n, o) {
try {
return o ? e(i(n)[0], n[1]) : e(n)
} catch(e) {
var r = t.
return;
throw void 0 !== r && i(r.call(t)),
e
}
}
},
function(t, e, n) {
"use strict";
var i = n(264),
o = n(268),
r = n(288),
a = {};
n(215)(a, n(78)("iterator"),
function() {
return this
}),
t.exports = function(t, e, n) {
t.prototype = i(a, {
next: o(1, n)
}),
r(t, e + " Iterator")
}
},
function(t, e) {
t.exports = function(t, e) {
return {
value: e,
done: !!t
}
}
},
function(t, e) {
t.exports = Math.log1p ||
function(t) {
return (t = +t) > -1e-8 && t < 1e-8 ? t - t * t / 2 : Math.log(1 + t)
}
},
function(t, e, n) {
"use strict";
function i(t) {
var e, n;
this.promise = new t(function(t, i) {
if (void 0 !== e || void 0 !== n) throw TypeError("Bad Promise constructor");
e = t,
n = i
}),
this.resolve = o(e),
this.reject = o(n)
}
var o = n(229);
t.exports.f = function(t) {
return new i(t)
}
},
function(t, e, n) {
"use strict";
var i = n(103),
o = n(267),
r = n(351),
a = n(322),
s = n(136),
l = n(321),
u = Object.assign;
t.exports = !u || n(61)(function() {
var t = {},
e = {},
n = Symbol(),
i = "abcdefghijklmnopqrst";
return t[n] = 7,
i.split("").forEach(function(t) {
e[t] = t
}),
7 != u({},
t)[n] || Object.keys(u({},
e)).join("") != i
}) ?
function(t, e) {
for (var n = s(t), u = arguments.length, c = 1, f = r.f, d = a.f; u > c;) for (var h, v = l(arguments[c++]), p = f ? o(v).concat(f(v)) : o(v), _ = p.length, m = 0; _ > m;) h = p[m++],
i && !d.call(v, h) || (n[h] = v[h]);
return n
}: u
},
function(t, e, n) {
var i = n(104),
o = n(60),
r = n(267);
t.exports = n(103) ? Object.defineProperties: function(t, e) {
o(t);
for (var n, a = r(e), s = a.length, l = 0; s > l;) i.f(t, n = a[l++], e[n]);
return t
}
},
function(t, e, n) {
var i = n(216),
o = n(265).f,
r = {}.toString,
a = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [],
s = function(t) {
try {
return o(t)
} catch(t) {
return a.slice()
}
};
t.exports.f = function(t) {
return a && "[object Window]" == r.call(t) ? s(t) : o(i(t))
}
},
function(t, e, n) {
var i = n(214),
o = n(216),
r = n(344)(!1),
a = n(435)("IE_PROTO");
t.exports = function(t, e) {
var n, s = o(t),
l = 0,
u = [];
for (n in s) n != a && i(s, n) && u.push(n);
for (; e.length > l;) i(s, n = e[l++]) && (~r(u, n) || u.push(n));
return u
}
},
function(t, e, n) {
var i = n(103),
o = n(267),
r = n(216),
a = n(322).f;
t.exports = function(t) {
return function(e) {
for (var n, s = r(e), l = o(s), u = l.length, c = 0, f = []; u > c;) n = l[c++],
i && !a.call(s, n) || f.push(t ? [n, s[n]] : s[n]);
return f
}
}
},
function(t, e, n) {
var i = n(265),
o = n(351),
r = n(60),
a = n(62).Reflect;
t.exports = a && a.ownKeys ||
function(t) {
var e = i.f(r(t)),
n = o.f;
return n ? e.concat(n(t)) : e
}
},
function(t, e, n) {
var i = n(62).parseFloat,
o = n(289).trim;
t.exports = 1 / i(n(439) + "-0") != -1 / 0 ?
function(t) {
var e = o(String(t), 3),
n = i(e);
return 0 === n && "-" == e.charAt(0) ? -0 : n
}: i
},
function(t, e, n) {
var i = n(62).parseInt,
o = n(289).trim,
r = n(439),
a = /^[-+]?0[xX]/;
t.exports = 8 !== i(r + "08") || 22 !== i(r + "0x16") ?
function(t, e) {
var n = o(String(t), 3);
return i(n, e >>> 0 || (a.test(n) ? 16 : 10))
}: i
},
function(t, e, n) {
var i = n(60),
o = n(63),
r = n(533);
t.exports = function(t, e) {
if (i(t), o(e) && e.constructor === t) return e;
var n = r.f(t);
return (0, n.resolve)(e),
n.promise
}
},
function(t, e) {
t.exports = Object.is ||
function(t, e) {
return t === e ? 0 !== t || 1 / t == 1 / e: t != t && e != e
}
},
function(t, e, n) {
var i = n(88),
o = n(438),
r = n(245);
t.exports = function(t, e, n, a) {
var s = String(r(t)),
l = s.length,
u = void 0 === n ? " ": String(n),
c = i(e);
if (c <= l || "" == u) return s;
var f = c - l,
d = o.call(u, Math.ceil(f / u.length));
return d.length > f && (d = d.slice(0, f)),
a ? d + s: s + d
}
},
function(t, e, n) {
var i = n(234),
o = n(88);
t.exports = function(t) {
if (void 0 === t) return 0;
var e = i(t),
n = o(e);
if (e !== n) throw RangeError("Wrong length!");
return n
}
},
function(t, e, n) {
var i = n(62),
o = n(102),
r = n(263),
a = n(442),
s = n(104).f;
t.exports = function(t) {
var e = o.Symbol || (o.Symbol = r ? {}: i.Symbol || {});
"_" == t.charAt(0) || t in e || s(e, t, {
value: a.f(t)
})
}
},
function(t, e, n) {
"use strict";
var i, o, r, a, s = n(263),
l = n(62),
u = n(231),
c = n(320),
f = n(11),
d = n(63),
h = n(229),
v = n(284),
p = n(348),
_ = n(323),
m = n(440).set,
g = n(832)(),
y = n(533),
x = n(833),
b = n(355),
S = n(542),
w = l.TypeError,
E = l.process,
T = E && E.versions,
A = T && T.v8 || "",
P = l.Promise,
I = "process" == c(E),
k = function() {},
L = o = y.f,
M = !!
function() {
try {
var t = P.resolve(1),
e = (t.constructor = {})[n(78)("species")] = function(t) {
t(k, k)
};
return (I || "function" == typeof PromiseRejectionEvent) && t.then(k) instanceof e && 0 !== A.indexOf("6.6") && -1 === b.indexOf("Chrome/66")
} catch(t) {}
} (),
C = function(t) {
var e;
return ! (!d(t) || "function" != typeof(e = t.then)) && e
},
R = function(t, e) {
if (!t._n) {
t._n = !0;
var n = t._c;
g(function() {
for (var i = t._v,
o = 1 == t._s,
r = 0; n.length > r;) !
function(e) {
var n, r, a, s = o ? e.ok: e.fail,
l = e.resolve,
u = e.reject,
c = e.domain;
try {
s ? (o || (2 == t._h && O(t), t._h = 1), !0 === s ? n = i: (c && c.enter(), n = s(i), c && (c.exit(), a = !0)), n === e.promise ? u(w("Promise-chain cycle")) : (r = C(n)) ? r.call(n, l, u) : l(n)) : u(i)
} catch(t) {
c && !a && c.exit(),
u(t)
}
} (n[r++]);
t._c = [],
t._n = !1,
e && !t._h && B(t)
})
}
},
B = function(t) {
m.call(l,
function() {
var e, n, i, o = t._v,
r = N(t);
if (r && (e = x(function() {
I ? E.emit("unhandledRejection", o, t) : (n = l.onunhandledrejection) ? n({
promise: t,
reason: o
}) : (i = l.console) && i.error && i.error("Unhandled promise rejection", o)
}), t._h = I || N(t) ? 2 : 1), t._a = void 0, r && e.e) throw e.v
})
},
N = function(t) {
return 1 !== t._h && 0 === (t._a || t._c).length
},
O = function(t) {
m.call(l,
function() {
var e;
I ? E.emit("rejectionHandled", t) : (e = l.onrejectionhandled) && e({
promise: t,
reason: t._v
})
})
},
D = function(t) {
var e = this;
e._d || (e._d = !0, e = e._w || e, e._v = t, e._s = 2, e._a || (e._a = e._c.slice()), R(e, !0))
},
z = function(t) {
var e, n = this;
if (!n._d) {
n._d = !0,
n = n._w || n;
try {
if (n === t) throw w("Promise can't be resolved itself"); (e = C(t)) ? g(function() {
var i = {
_w: n,
_d: !1
};
try {
e.call(t, u(z, i, 1), u(D, i, 1))
} catch(t) {
D.call(i, t)
}
}) : (n._v = t, n._s = 1, R(n, !1))
} catch(t) {
D.call({
_w: n,
_d: !1
},
t)
}
}
};
M || (P = function(t) {
v(this, P, "Promise", "_h"),
h(t),
i.call(this);
try {
t(u(z, this, 1), u(D, this, 1))
} catch(t) {
D.call(this, t)
}
},
i = function(t) {
this._c = [],
this._a = void 0,
this._s = 0,
this._d = !1,
this._v = void 0,
this._h = 0,
this._n = !1
},
i.prototype = n(286)(P.prototype, {
then: function(t, e) {
var n = L(_(this, P));
return n.ok = "function" != typeof t || t,
n.fail = "function" == typeof e && e,
n.domain = I ? E.domain: void 0,
this._c.push(n),
this._a && this._a.push(n),
this._s && R(this, !1),
n.promise
},
catch: function(t) {
return this.then(void 0, t)
}
}), r = function() {
var t = new i;
this.promise = t,
this.resolve = u(z, t, 1),
this.reject = u(D, t, 1)
},
y.f = L = function(t) {
return t === P || t === a ? new r(t) : o(t)
}),
f(f.G + f.W + f.F * !M, {
Promise: P
}),
n(288)(P, "Promise"),
n(287)("Promise"),
a = n(102).Promise,
f(f.S + f.F * !M, "Promise", {
reject: function(t) {
var e = L(this);
return (0, e.reject)(t),
e.promise
}
}),
f(f.S + f.F * (s || !M), "Promise", {
resolve: function(t) {
return S(s && this === a ? P: this, t)
}
}),
f(f.S + f.F * !(M && n(350)(function(t) {
P.all(t).
catch(k)
})), "Promise", {
all: function(t) {
var e = this,
n = L(e),
i = n.resolve,
o = n.reject,
r = x(function() {
var n = [],
r = 0,
a = 1;
p(t, !1,
function(t) {
var s = r++,
l = !1;
n.push(void 0),
a++,
e.resolve(t).then(function(t) {
l || (l = !0, n[s] = t, --a || i(n))
},
o)
}),
--a || i(n)
});
return r.e && o(r.v),
n.promise
},
race: function(t) {
var e = this,
n = L(e),
i = n.reject,
o = x(function() {
p(t, !1,
function(t) {
e.resolve(t).then(n.resolve, i)
})
});
return o.e && i(o.v),
n.promise
}
})
},
function(t, e, n) {
"use strict";
var i = n(433);
n(11)({
target: "RegExp",
proto: !0,
forced: i !== /./.exec
},
{
exec: i
})
},
function(t, e, n) {
n(103) && "g" != /./g.flags && n(104).f(RegExp.prototype, "flags", {
configurable: !0,
get: n(347)
})
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) {
return function(e) {
var n = t,
i = n.lib,
o = i.WordArray,
r = i.Hasher,
a = n.algo,
s = [],
l = []; !
function() {
function t(t) {
return 4294967296 * (t - (0 | t)) | 0
}
for (var n = 2,
i = 0; i < 64;)(function(t) {
for (var n = e.sqrt(t), i = 2; i <= n; i++) if (! (t % i)) return ! 1;
return ! 0
})(n) && (i < 8 && (s[i] = t(e.pow(n, .5))), l[i] = t(e.pow(n, 1 / 3)), i++),
n++
} ();
var u = [],
c = a.SHA256 = r.extend({
_doReset: function() {
this._hash = new o.init(s.slice(0))
},
_doProcessBlock: function(t, e) {
for (var n = this._hash.words,
i = n[0], o = n[1], r = n[2], a = n[3], s = n[4], c = n[5], f = n[6], d = n[7], h = 0; h < 64; h++) {
if (h < 16) u[h] = 0 | t[e + h];
else {
var v = u[h - 15],
p = (v << 25 | v >>> 7) ^ (v << 14 | v >>> 18) ^ v >>> 3,
_ = u[h - 2],
m = (_ << 15 | _ >>> 17) ^ (_ << 13 | _ >>> 19) ^ _ >>> 10;
u[h] = p + u[h - 7] + m + u[h - 16]
}
var g = s & c ^ ~s & f,
y = i & o ^ i & r ^ o & r,
x = (i << 30 | i >>> 2) ^ (i << 19 | i >>> 13) ^ (i << 10 | i >>> 22),
b = (s << 26 | s >>> 6) ^ (s << 21 | s >>> 11) ^ (s << 7 | s >>> 25),
S = d + b + g + l[h] + u[h],
w = x + y;
d = f,
f = c,
c = s,
s = a + S | 0,
a = r,
r = o,
o = i,
i = S + w | 0
}
n[0] = n[0] + i | 0,
n[1] = n[1] + o | 0,
n[2] = n[2] + r | 0,
n[3] = n[3] + a | 0,
n[4] = n[4] + s | 0,
n[5] = n[5] + c | 0,
n[6] = n[6] + f | 0,
n[7] = n[7] + d | 0
},
_doFinalize: function() {
var t = this._data,
n = t.words,
i = 8 * this._nDataBytes,
o = 8 * t.sigBytes;
return n[o >>> 5] |= 128 << 24 - o % 32,
n[14 + (o + 64 >>> 9 << 4)] = e.floor(i / 4294967296),
n[15 + (o + 64 >>> 9 << 4)] = i,
t.sigBytes = 4 * n.length,
this._process(),
this._hash
},
clone: function() {
var t = r.clone.call(this);
return t._hash = this._hash.clone(),
t
}
});
n.SHA256 = r._createHelper(c),
n.HmacSHA256 = r._createHmacHelper(c)
} (Math),
t.SHA256
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(356))
} (0,
function(t) {
return function() {
function e() {
return a.create.apply(a, arguments)
}
var n = t,
i = n.lib,
o = i.Hasher,
r = n.x64,
a = r.Word,
s = r.WordArray,
l = n.algo,
u = [e(1116352408, 3609767458), e(1899447441, 602891725), e(3049323471, 3964484399), e(3921009573, 2173295548), e(961987163, 4081628472), e(1508970993, 3053834265), e(2453635748, 2937671579), e(2870763221, 3664609560), e(3624381080, 2734883394), e(310598401, 1164996542), e(607225278, 1323610764), e(1426881987, 3590304994), e(1925078388, 4068182383), e(2162078206, 991336113), e(2614888103, 633803317), e(3248222580, 3479774868), e(3835390401, 2666613458), e(4022224774, 944711139), e(264347078, 2341262773), e(604807628, 2007800933), e(770255983, 1495990901), e(1249150122, 1856431235), e(1555081692, 3175218132), e(1996064986, 2198950837), e(2554220882, 3999719339), e(2821834349, 766784016), e(2952996808, 2566594879), e(3210313671, 3203337956), e(3336571891, 1034457026), e(3584528711, 2466948901), e(113926993, 3758326383), e(338241895, 168717936), e(666307205, 1188179964), e(773529912, 1546045734), e(1294757372, 1522805485), e(1396182291, 2643833823), e(1695183700, 2343527390), e(1986661051, 1014477480), e(2177026350, 1206759142), e(2456956037, 344077627), e(2730485921, 1290863460), e(2820302411, 3158454273), e(3259730800, 3505952657), e(3345764771, 106217008), e(3516065817, 3606008344), e(3600352804, 1432725776), e(4094571909, 1467031594), e(275423344, 851169720), e(430227734, 3100823752), e(506948616, 1363258195), e(659060556, 3750685593), e(883997877, 3785050280), e(958139571, 3318307427), e(1322822218, 3812723403), e(1537002063, 2003034995), e(1747873779, 3602036899), e(1955562222, 1575990012), e(2024104815, 1125592928), e(2227730452, 2716904306), e(2361852424, 442776044), e(2428436474, 593698344), e(2756734187, 3733110249), e(3204031479, 2999351573), e(3329325298, 3815920427), e(3391569614, 3928383900), e(3515267271, 566280711), e(3940187606, 3454069534), e(4118630271, 4000239992), e(116418474, 1914138554), e(174292421, 2731055270), e(289380356, 3203993006), e(460393269, 320620315), e(685471733, 587496836), e(852142971, 1086792851), e(1017036298, 365543100), e(1126000580, 2618297676), e(1288033470, 3409855158), e(1501505948, 4234509866), e(1607167915, 987167468), e(1816402316, 1246189591)],
c = []; !
function() {
for (var t = 0; t < 80; t++) c[t] = e()
} ();
var f = l.SHA512 = o.extend({
_doReset: function() {
this._hash = new s.init([new a.init(1779033703, 4089235720), new a.init(3144134277, 2227873595), new a.init(1013904242, 4271175723), new a.init(2773480762, 1595750129), new a.init(1359893119, 2917565137), new a.init(2600822924, 725511199), new a.init(528734635, 4215389547), new a.init(1541459225, 327033209)])
},
_doProcessBlock: function(t, e) {
for (var n = this._hash.words,
i = n[0], o = n[1], r = n[2], a = n[3], s = n[4], l = n[5], f = n[6], d = n[7], h = i.high, v = i.low, p = o.high, _ = o.low, m = r.high, g = r.low, y = a.high, x = a.low, b = s.high, S = s.low, w = l.high, E = l.low, T = f.high, A = f.low, P = d.high, I = d.low, k = h, L = v, M = p, C = _, R = m, B = g, N = y, O = x, D = b, z = S, F = w, V = E, Y = T, U = A, j = P, G = I, Z = 0; Z < 80; Z++) {
var H = c[Z];
if (Z < 16) var W = H.high = 0 | t[e + 2 * Z],
X = H.low = 0 | t[e + 2 * Z + 1];
else {
var Q = c[Z - 15],
q = Q.high,
K = Q.low,
J = (q >>> 1 | K << 31) ^ (q >>> 8 | K << 24) ^ q >>> 7,
$ = (K >>> 1 | q << 31) ^ (K >>> 8 | q << 24) ^ (K >>> 7 | q << 25),
tt = c[Z - 2],
et = tt.high,
nt = tt.low,
it = (et >>> 19 | nt << 13) ^ (et << 3 | nt >>> 29) ^ et >>> 6,
ot = (nt >>> 19 | et << 13) ^ (nt << 3 | et >>> 29) ^ (nt >>> 6 | et << 26),
rt = c[Z - 7],
at = rt.high,
st = rt.low,
lt = c[Z - 16],
ut = lt.high,
ct = lt.low,
X = $ + st,
W = J + at + (X >>> 0 < $ >>> 0 ? 1 : 0),
X = X + ot,
W = W + it + (X >>> 0 < ot >>> 0 ? 1 : 0),
X = X + ct,
W = W + ut + (X >>> 0 < ct >>> 0 ? 1 : 0);
H.high = W,
H.low = X
}
var ft = D & F ^ ~D & Y,
dt = z & V ^ ~z & U,
ht = k & M ^ k & R ^ M & R,
vt = L & C ^ L & B ^ C & B,
pt = (k >>> 28 | L << 4) ^ (k << 30 | L >>> 2) ^ (k << 25 | L >>> 7),
_t = (L >>> 28 | k << 4) ^ (L << 30 | k >>> 2) ^ (L << 25 | k >>> 7),
mt = (D >>> 14 | z << 18) ^ (D >>> 18 | z << 14) ^ (D << 23 | z >>> 9),
gt = (z >>> 14 | D << 18) ^ (z >>> 18 | D << 14) ^ (z << 23 | D >>> 9),
yt = u[Z],
xt = yt.high,
bt = yt.low,
St = G + gt,
wt = j + mt + (St >>> 0 < G >>> 0 ? 1 : 0),
St = St + dt,
wt = wt + ft + (St >>> 0 < dt >>> 0 ? 1 : 0),
St = St + bt,
wt = wt + xt + (St >>> 0 < bt >>> 0 ? 1 : 0),
St = St + X,
wt = wt + W + (St >>> 0 < X >>> 0 ? 1 : 0),
Et = _t + vt,
Tt = pt + ht + (Et >>> 0 < _t >>> 0 ? 1 : 0);
j = Y,
G = U,
Y = F,
U = V,
F = D,
V = z,
z = O + St | 0,
D = N + wt + (z >>> 0 < O >>> 0 ? 1 : 0) | 0,
N = R,
O = B,
R = M,
B = C,
M = k,
C = L,
L = St + Et | 0,
k = wt + Tt + (L >>> 0 < St >>> 0 ? 1 : 0) | 0
}
v = i.low = v + L,
i.high = h + k + (v >>> 0 < L >>> 0 ? 1 : 0),
_ = o.low = _ + C,
o.high = p + M + (_ >>> 0 < C >>> 0 ? 1 : 0),
g = r.low = g + B,
r.high = m + R + (g >>> 0 < B >>> 0 ? 1 : 0),
x = a.low = x + O,
a.high = y + N + (x >>> 0 < O >>> 0 ? 1 : 0),
S = s.low = S + z,
s.high = b + D + (S >>> 0 < z >>> 0 ? 1 : 0),
E = l.low = E + V,
l.high = w + F + (E >>> 0 < V >>> 0 ? 1 : 0),
A = f.low = A + U,
f.high = T + Y + (A >>> 0 < U >>> 0 ? 1 : 0),
I = d.low = I + G,
d.high = P + j + (I >>> 0 < G >>> 0 ? 1 : 0)
},
_doFinalize: function() {
var t = this._data,
e = t.words,
n = 8 * this._nDataBytes,
i = 8 * t.sigBytes;
return e[i >>> 5] |= 128 << 24 - i % 32,
e[30 + (i + 128 >>> 10 << 5)] = Math.floor(n / 4294967296),
e[31 + (i + 128 >>> 10 << 5)] = n,
t.sigBytes = 4 * e.length,
this._process(),
this._hash.toX32()
},
clone: function() {
var t = o.clone.call(this);
return t._hash = this._hash.clone(),
t
},
blockSize: 32
});
n.SHA512 = o._createHelper(f),
n.HmacSHA512 = o._createHmacHelper(f)
} (),
t.SHA512
})
},
function(t, e, n) {
"use strict";
var i = n(255).assign,
o = n(1015),
r = n(1016),
a = n(555),
s = {};
i(s, o, r, a),
t.exports = s
},
function(t, e, n) {
"use strict";
function i(t, e) {
if (e < 65534 && (t.subarray && a || !t.subarray && r)) return String.fromCharCode.apply(null, o.shrinkBuf(t, e));
for (var n = "",
i = 0; i < e; i++) n += String.fromCharCode(t[i]);
return n
}
var o = n(255),
r = !0,
a = !0;
try {
String.fromCharCode.apply(null, [0])
} catch(t) {
r = !1
}
try {
String.fromCharCode.apply(null, new Uint8Array(1))
} catch(t) {
a = !1
}
for (var s = new o.Buf8(256), l = 0; l < 256; l++) s[l] = l >= 252 ? 6 : l >= 248 ? 5 : l >= 240 ? 4 : l >= 224 ? 3 : l >= 192 ? 2 : 1;
s[254] = s[254] = 1,
e.string2buf = function(t) {
var e, n, i, r, a, s = t.length,
l = 0;
for (r = 0; r < s; r++) n = t.charCodeAt(r),
55296 == (64512 & n) && r + 1 < s && 56320 == (64512 & (i = t.charCodeAt(r + 1))) && (n = 65536 + (n - 55296 << 10) + (i - 56320), r++),
l += n < 128 ? 1 : n < 2048 ? 2 : n < 65536 ? 3 : 4;
for (e = new o.Buf8(l), a = 0, r = 0; a < l; r++) n = t.charCodeAt(r),
55296 == (64512 & n) && r + 1 < s && 56320 == (64512 & (i = t.charCodeAt(r + 1))) && (n = 65536 + (n - 55296 << 10) + (i - 56320), r++),
n < 128 ? e[a++] = n: n < 2048 ? (e[a++] = 192 | n >>> 6, e[a++] = 128 | 63 & n) : n < 65536 ? (e[a++] = 224 | n >>> 12, e[a++] = 128 | n >>> 6 & 63, e[a++] = 128 | 63 & n) : (e[a++] = 240 | n >>> 18, e[a++] = 128 | n >>> 12 & 63, e[a++] = 128 | n >>> 6 & 63, e[a++] = 128 | 63 & n);
return e
},
e.buf2binstring = function(t) {
return i(t, t.length)
},
e.binstring2buf = function(t) {
for (var e = new o.Buf8(t.length), n = 0, i = e.length; n < i; n++) e[n] = t.charCodeAt(n);
return e
},
e.buf2string = function(t, e) {
var n, o, r, a, l = e || t.length,
u = new Array(2 * l);
for (o = 0, n = 0; n < l;) if ((r = t[n++]) < 128) u[o++] = r;
else if ((a = s[r]) > 4) u[o++] = 65533,
n += a - 1;
else {
for (r &= 2 === a ? 31 : 3 === a ? 15 : 7; a > 1 && n < l;) r = r << 6 | 63 & t[n++],
a--;
a > 1 ? u[o++] = 65533 : r < 65536 ? u[o++] = r: (r -= 65536, u[o++] = 55296 | r >> 10 & 1023, u[o++] = 56320 | 1023 & r)
}
return i(u, o)
},
e.utf8border = function(t, e) {
var n;
for (e = e || t.length, e > t.length && (e = t.length), n = e - 1; n >= 0 && 128 == (192 & t[n]);) n--;
return n < 0 ? e: 0 === n ? e: n + s[t[n]] > e ? n: e
}
},
function(t, e, n) {
"use strict";
function i(t, e, n, i) {
for (var o = 65535 & t | 0,
r = t >>> 16 & 65535 | 0,
a = 0; 0 !== n;) {
a = n > 2e3 ? 2e3: n,
n -= a;
do {
o = o + e[i++] | 0, r = r + o | 0
} while (-- a );
o %= 65521,
r %= 65521
}
return o | r << 16 | 0
}
t.exports = i
},
function(t, e, n) {
"use strict";
t.exports = {
Z_NO_FLUSH: 0,
Z_PARTIAL_FLUSH: 1,
Z_SYNC_FLUSH: 2,
Z_FULL_FLUSH: 3,
Z_FINISH: 4,
Z_BLOCK: 5,
Z_TREES: 6,
Z_OK: 0,
Z_STREAM_END: 1,
Z_NEED_DICT: 2,
Z_ERRNO: -1,
Z_STREAM_ERROR: -2,
Z_DATA_ERROR: -3,
Z_BUF_ERROR: -5,
Z_NO_COMPRESSION: 0,
Z_BEST_SPEED: 1,
Z_BEST_COMPRESSION: 9,
Z_DEFAULT_COMPRESSION: -1,
Z_FILTERED: 1,
Z_HUFFMAN_ONLY: 2,
Z_RLE: 3,
Z_FIXED: 4,
Z_DEFAULT_STRATEGY: 0,
Z_BINARY: 0,
Z_TEXT: 1,
Z_UNKNOWN: 2,
Z_DEFLATED: 8
}
},
function(t, e, n) {
"use strict";
function i(t, e, n, i) {
var r = o,
a = i + n;
t ^= -1;
for (var s = i; s < a; s++) t = t >>> 8 ^ r[255 & (t ^ e[s])];
return - 1 ^ t
}
var o = function() {
for (var t, e = [], n = 0; n < 256; n++) {
t = n;
for (var i = 0; i < 8; i++) t = 1 & t ? 3988292384 ^ t >>> 1 : t >>> 1;
e[n] = t
}
return e
} ();
t.exports = i
},
function(t, e, n) {
"use strict";
function i() {
this.input = null,
this.next_in = 0,
this.avail_in = 0,
this.total_in = 0,
this.output = null,
this.next_out = 0,
this.avail_out = 0,
this.total_out = 0,
this.msg = "",
this.state = null,
this.data_type = 2,
this.adler = 0
}
t.exports = i
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEQAAABkCAMAAAAIYWa2AAAC8VBMVEVHcEwAAAAAAAAAAAAAAAAzMzPQRUXlSUnnS0vqS0vrTEzhSEgAAADFRUXmS0vtTk7xTU3yTk7yTk6vPz/oTEzvTk7yTk7MRETrS0vyT0/FQUHFPj7uTU3yTk7sTExVKiroS0vyTk5IJCS4QEDuTU3SRETxTU0AAADhSkreSUkAAADoSkryTk7pSkoAAADoTEzmTEziSUndSEjMRETDQUFtJCTwTU3vTExfHx/mSUkAAADFPz/yTk68PDztTEwAAADMRUXBQUHsTEzqTEyzPj7yTk6lOTnjSUnfSEjuTk7yUVH2iYn6wMD95OT+9vYAAADBPT32hob95ub///+2OTkAAADfSUnyT0/5ra3aR0cAAADqS0vwTU3vTU0AAABmKChbJCTBPT24OjrQQkIAAADXRUXRQ0PVRUUAAADcR0fYRkYAAADXRETQQkLNRETIQkLDQUG9Pj6qNzegNTUhCwvxTk4cCQkAAADrTEwAAAAAAADkSkriSEgAAADLQUFnIiLyTk5gHx/oS0vnSkoAAAAAAADOQ0NLHh7wTk4/FRXaRkbXRUVuJSXxTU1vKCgAAADfSEjZRkYAAADwTU3vTU1XHBzSRETIQEAmDw/rTEzoSkoIBQWhNDSMLS3NQkIAAAAAAAAlDw/oSkrnSkqBKyvwTU3vTU1lISG5PT2qODgAAADURUXKQkIBAQHjSUncRkYAAAAAAAA1FBTkSkoYCgpjISHsS0s/FxcAAABtJSXsTU3pS0tTGhp0JibsTExYHR1bHBzsTExpIyOVMzPuTU19KyujNjbxTk7uTU2MLS2xOTnxTk6bMTHCPj60OTniSEjcR0fuTU07FxefNDTbR0fTRUXpS0uiNDThSEiDKyvXRkZ6JyfhSUmSLi7pS0vIQUFQGBjmSkrGQUGCKSntTEzrTEzdSEjbR0edMzOYMTHZR0eTLy8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6Ei6pAAAA+3RSTlMAAQIDBAUhRVhlcUYFFlSTzvX/EGC6/B6P8h8YmPiZBmvtBxe7MNwGVlcHhf6PCHx8WlwtLw7T1BCDCSz3LrQLNzqwsSX9KICC2///////DjL///81CnP//3UMtOPkERkcPkFcDWdqdg98fhBvcmFjUlY8Phf4GxTRFxKlqBZsJfopwMIaE3ci7iSRky/5MhimnBvy7C2DeiHVzSBIQoceFSLQxTvw6zVnWx2Qgh+3qSEZJsAkMtssHDbh1jE73zQ14jpL6UFU9e9IXfRScma0p+crU56T0k2vOpQ0rULLdCm4cTHY1JeWPD6aQC42PDkwKCsvMjQsKSUnKiijw/sAAAUASURBVHgB1M8DcoRBEIbhNNbutW3EtnP/E2V/rDUzKeUpo9/q7+gfATA/tSAiORARpjQLiMTs8fr8gWAw4A95PWEmO6SRII5EY/GEzCXisWgkzIodu5BMpTOyIZNOJZmsjEIim8vLDvlcIXwgYw3hYqkse5QrRTuz741qrS4H1GsN3lmx3mimRUGrGabtkwAo3O6Ikk67u3USIIV7eVGU7w82JwEgdYcjUTYablasRk60jCdrFQDqHoumk3ll3jgVbWfWokUDw+d50Za/GND8FUC+vBID1zddt2KNGdyKkdu7MLoR7N4/iJGHR3cQIN89iaGnZ+cVoO7LSAyNXicMYD/yJsben7sI1iMfn2Ls82vC0wjffcsf/DyH8ZdUskbLIIyBcJCSag+BQ4+36+7uisv58d+T6pt23ic6sH1wJ5CEKMmKqiqyJJKIoB3vwM6xTgKGaf3LNEjIdnZh99IlXM+3luR7BBaEB7B3FxGub63IJ7BIO4ZjLSZ2sdZEbJSkl3Ce4UkTzfUipojnLXfgssAbSNaGJJwsQ3Aq3JI3i8g4WdVw1+CWsllEwclWgzDALXWziIqTXQ/1wFpknKC+Z13n4bvII+thn1Kon1lf/DJB/cqxhY17myB8v2aL/cdXKWYNHLcWheGlcmt3r32URP2E1FeqQoatDJrRpI0sJTIzyTEzoxIzY9gMYWY0M1fRXWXOsizdvf18c/6Dv3SNNpBspH8DGMlRhgv8df9WwQ0h1HDaFuXfUopiSQNBR8f4sx5jYvkLhn9ChTh/FnV8AkPImy0xyR9IEidvNstpJjkFn5GSypJWeduHCmn4kPQE5rTFYJL1ZGTiMjKzhFD57hgtBC1m40Ju5vAXrCbkTgLZjFw8Rl4+RxFm+RbLoTBiAR6kMIdXDIo9lKJiHEZJqYACsUPkrHBlMRhmqzzBdsEeCKJYST4nXT+korIqVPFsinsMraqu0cuoLRWZ02CHkeNixLp6fYyGxhweeS2jw5XLgpp02b+AZskhBgSx0i09kNstHA1i0FMqJLS0ame0tXfYKwMQ5RPhAiN2lmhldHUn8IH/gBjntHT09Gpj1PT1s6GODxXntAQm5gwMamEMDUtVFOHCgLTIyc0ZGdXAuCMJNPq+8ISg5Iay/SMhxzF671Z6ZQCFquovb1Bn3LtfydEXrJBUD4oVUR6otu7DRy0c450BlNNUlTQ27psxMYkYUFxfFFqQpnzu3OmZFlGdAZTKWV+QuVLRRqow4K/DaYZrmffOeNzewasygIIGIP+JN8bo05zEwP/NJnUGDEDClJe9EPBMgmZXeTAAbP9zT8iLFoEmjmfAXqCETo9ZfNkN06+JYr1g63jlJihgsj/RY/rV0xKY2P/arTItAkyudkFvXFpufKCDgT8D2gUluOT2rcTqEOM4Re9inK5dj0jrEQOnqOO9A5Ldn2j/oNf1UG6ryoBx8gMKRIcYCMWW8BFOpqQnEHgoKwL4yk8djM5AoEB87F9/0vq5KlBnIBAKxX1RIPM5NjiZekMh2asK5CtHybcb63+5nNpvSm2yWMWaYer5jiA/kBojHsT0D8n+RJBfeGqgVRam5RW/yGLVBlqlanFpaRm8GVYoTPvK6tra+ka7TbcagEibW9s7q6u7G3v7lbgQy8Hh/tbe9vbK1tHhgcWA+Yj+w839o62j/cN+ApeBskIyPM8EQlaxQcd32W/E9Jewb6BBFAAAAABJRU5ErkJggg=="
},
function(t, e, n) {
"use strict";
e.Event = n(106),
e.Map = n(337).
default,
e.LatLng = n(47),
e.LatLngBounds = n(209),
e.Point = n(74),
e.GradientColor = n(468),
e.TVectorTileLayer = n(383).
default,
e.VectorTileLayer = n(383).
default,
e.ImageTileLayer = n(299).
default,
e.GrayTileLayer = n(662).
default,
e.CanvasGroundLayer = n(661).
default,
e.ImageGroundLayer = n(664).
default,
e.MaskLayer = n(486).
default,
e.WMTSLayer = n(669).
default,
e.WMSLayer = n(668).
default,
e.GeometryOverlay = n(303).
default,
e.MultiPolygon = n(338),
e.PolygonStyle = n(218).PolygonStyle,
e.ExtrudablePolygonStyle = n(218).ExtrudablePolygonStyle,
e.MultiCircle = n(728),
e.CircleStyle = n(218).CircleStyle,
e.MultiRectangle = n(732),
e.RectangleStyle = n(218).RectangleStyle,
e.MultiEllipse = n(729),
e.EllipseStyle = n(218).EllipseStyle,
e.MultiPolyline = n(506),
e.PolylineStyle = n(339).
default,
e.LabelStyle = n(391).
default,
e.MultiLabel = n(730),
e.MultiMarker = n(731),
e.MarkerStyle = n(505),
e.InfoWindow = n(727).
default,
e.DOMOverlay = n(390).
default,
e.MarkerCluster = n(734).
default,
e.Light = n(512).
default,
e.VisualPlugin = n(749),
e.ModelPlugin = n(510).
default,
e.LayerPlugin = n(510).
default,
e.constants = {
CONTROL_POSITION: n(248).CONTROL_POSITION,
DEFAULT_CONTROL_ID: n(248).DEFAULT_CONTROL_ID,
GEOMETRY_TYPES: n(220).GEOMETRY_TYPES,
LIGHT_TYPE: n(341).LIGHT_TYPE,
IMAGE_DISPLAY: n(137).IMAGE_DISPLAY,
LAYER_LEVEL: n(143).LAYER_LEVEL,
MAP_ZOOM_TYPE: n(304).MAP_ZOOM_TYPE
},
e.AnimatableMixin = n(470).animatableMixin
},
, , , , , , , , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(326);
e.
default = {
v: "\n attribute vec2 a_Positions;\n attribute vec4 a_InstanceCoords;\n attribute vec4 a_InstanceColor;\n attribute float a_InstanceWidth;\n\n uniform mat4 u_matrix;\n uniform sampler2D u_SamplerArrow;\n uniform float u_mapScale;\n uniform vec2 u_resolution;\n\t varying vec2 v_TexCoord;\n\t varying vec4 v_Color;\n " + i.projectScreenPart + "\n\n\n\t void main(){\n\t\n\t vec2 wH = vec2(a_InstanceWidth * (20.0 / 4.0), a_InstanceWidth * (20.0 / 4.0));\n\t vec2 startPt = a_InstanceCoords.xy;\n vec2 endPt = a_InstanceCoords.zw;\n vec2 wh = vec2(abs(endPt.x - startPt.x), abs(endPt.y - startPt.y));\n\t vec2 transCoord = (startPt + endPt) / 2.0;\n \n vec2 start_proj = project(u_matrix * vec4(startPt, 0., 1.));\n vec2 end_proj = project(u_matrix * vec4(endPt, 0., 1.));\n\n\t vec4 center_proj = u_matrix * vec4(transCoord, 0., 1.);\n\t \n vec2 center_screen = project(center_proj);\n vec2 delta = end_proj - start_proj;\n float len = length(delta);\n float angle_sin = delta.x / len;\n float angle_cos = delta.y / len;\n mat2 rotation_matrix = mat2(angle_cos, -1.0 * angle_sin, angle_sin, angle_cos);\n \n vec2 positions = a_Positions * 0.5 + 0.5;\n\n vec2 corner_screen = rotation_matrix * vec2(\n (wH.x * positions.x - wH.x * 0.5) * u_mapScale, \n (wH.y * (positions.y - 1.0) + wH.y * 0.5) * u_mapScale\n ) + center_screen.xy;\n\n vec4 corner_proj = unproject(corner_screen, center_proj.z, center_proj.w);\n gl_Position = corner_proj;\n\n gl_PointSize = 100.0;\n\n\t v_TexCoord = vec2(positions.x, positions.y);\n\t v_Color = vec4(a_InstanceColor.rgb / 255.0, 1.0);\n\t }\n ",
f: "\n precision mediump float;\n varying vec2 v_TexCoord;\n varying vec4 v_Color;\n\n uniform sampler2D u_SamplerArrow;\n void main(void) {\n\t\t\tvec4 color = texture2D(u_SamplerArrow, v_TexCoord);\n gl_FragColor = mix(vec4(0.0, 0.0, 0.0, 0.0), v_Color, step(0.5, color.a));\n\t\t} \n ",
name: "arrow"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(276),
o = n(330),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o),
a = r.
default ? i.LIGHT_UNIFORM + i.LIGHT_VARYING + i.LIGHT_VERTEX: "",
s = r.
default ? i.LIGHT_VARYING + i.LIGHT_FRAG: "";
e.
default = {
v: "\n\t\tprecision highp float;\n\t\tattribute vec2 a_Position;\n\t\tattribute vec4 a_Color;\n\t\tattribute vec2 a_Normal;\n\t\tattribute vec2 a_LineInfo;\n\t\tattribute float a_LineDistance;\n\t\tattribute vec2 a_SideInfo;\n\t\tattribute vec4 a_PickingColor;\n\n\t\tuniform mat4 u_matrix;\n\t\tuniform mat4 u_modelMatrix;\n\t\tuniform float u_SizeScale;\n\t\tuniform float picking_useFeaturePickingColor;\n\n\t\tvarying vec4 v_Color;\n\t\tvarying vec2 v_Normal;\n\t\tvarying vec2 v_LineInfo;\n\t\tvarying vec2 v_Pos;\n\t\tvarying float v_Transform;\n\t\tvarying float v_LineDistance;\n\t\tvarying float v_Width;\n\t\tvarying float v_opaque_part;\n\n\t\t" + a + "\n\n\t\tvoid main(){\n\n\t\t\tfloat isSide = fract(a_SideInfo.x / 2.) * 2.;\n\t\t\tfloat isNoSideLine = floor(a_SideInfo.x / 2.);\n\t\t\tv_opaque_part = mix(1.0, 0.0, smoothstep(0.0, 1.0, isSide * isNoSideLine));\n\n\t\t\tfloat zoom = floor(u_SizeScale / 1000.) / 100.;\n\t\t\tfloat scale = fract(u_SizeScale / 1000.) * 10.;\n\t\t\tfloat preWidth = floor(a_Position.x / 2048.0)/2.0;\n\t\t\tfloat nextWidth = floor(a_Position.y / 2048.0)/2.0;\n\n\t\t\tv_Color = mix(a_Color, a_PickingColor, picking_useFeaturePickingColor);\n\t\t\tv_Normal = a_Normal;\n\t\t\tv_LineInfo = a_LineInfo;\n\t\t\tv_LineDistance = floor(a_LineDistance/10.0);\n\t\t\tvec2 point = (fract(a_Position.xy / 2048.0) * 2048.0 - 1024.0) * 0.5;\n\n\t\t\t\n\t\t\tfloat width = a_LineInfo.x / 2.0;\n\t\t\tfloat nearWidth = mix(nextWidth, preWidth, step(0.5, zoom));\n\t\t\tv_Width = mix(\n\t\t\t\twidth,\n\t\t\t\tmix(\n\t\t\t\t\tmix(width, nextWidth, zoom),\n\t\t\t\t\tmix(preWidth, width, zoom),\n\t\t\t\t\tstep(0.5, zoom)\n\t\t\t\t),\n\t\t\t\tfloat(v_LineDistance > 0. && nearWidth > 0.)\n\t\t\t) / scale;\n\n\t\t\tv_Normal = vec2(a_Normal.x - 128.0, a_Normal.y - 128.0) / 63.;\n\t\t\tv_Pos = point + v_Normal * v_Width;\n\t\t\tv_Transform = a_SideInfo.y;\n\t\t\tgl_Position = u_matrix * vec4(v_Pos, 0.0, 1.0);\n\n\t\t\t\n\t\t\t" + (r.
default ? "lighting_apply_on_vertex(vec3(v_Pos, 0.0), vec3(0.0, 0.0, 1.0), u_modelMatrix, vec2(0.1, 16.0));": "") + "\n\t\t}\n\t",
f: "\n\t\tprecision highp float;\n\t\tvarying vec4 v_Color;\n\t\tvarying vec2 v_Normal;\n\t\tvarying vec2 v_LineInfo;\n\t\tvarying vec2 v_Pos;\n\t\tvarying float v_Transform;\n\t\tvarying float v_LineDistance;\n\t\tvarying float v_Width;\n\t\tvarying float v_opaque_part;\n\n\t\t" + s + "\n\n\t\tvoid main(){\n\t\t\tvec4 f_Color;\n\t\t\tf_Color.r = v_Color.r / 255.0;\n\t\t\tf_Color.g = v_Color.g / 255.0;\n\t\t\tf_Color.b = v_Color.b / 255.0;\n\t\t\tf_Color.a = 1.0;\n\n\t\t\tfloat alpha = 1.0;\n\t\t\tfloat minAlpha = 0.0;\n\t\t\tfloat feather = min(v_Width * 0.3, 2.0);\n\n\t\t\t\n\t\t\tfloat transformByte = floor(v_Transform + 0.5);\n\t\t\tvec2 translate = vec2(fract(transformByte / 4.0) * 4.0, floor(fract(transformByte / 16.0) * 4.0));\n\t\t\tfloat scale = floor(transformByte / 16.0);\n\t\t\tvec2 coord = vec2(v_Pos.x, 0. - v_Pos.y) * scale - translate * 256.0;\n\t\t\tbool isOutSide = coord.x < 0. || coord.x > 256.0 || coord.y < 0. || coord.y > 256.0;\n\n\t\t\tfloat dist = abs(length(v_Normal) * v_Width);\n\t\t\tfloat isTransparent = float(\n\t\t\t\t(dist > v_Width || isOutSide) || \n\t\t\t\t(v_LineInfo.y> 0.0 && mod(v_LineDistance, floor(v_LineInfo.y/10.0) * (2.0-fract(v_LineInfo.y/10.0))) > floor(v_LineInfo.y/10.0))\n\t\t\t);\n\n\t\t\talpha = mix(\n\t\t\t\tmix(alpha, clamp((v_Width - dist) / feather, 0.0, 1.0), float(v_Width>0. && dist>(v_Width - feather))),\n\t\t\t\t0.0,\n\t\t\t\tisTransparent\n\t\t\t);\n\n\t\t\t\n\t\t\t" + (r.
default ? "vec4 colorInLight = lighting_apply_on_color(f_Color);": "vec4 colorInLight = f_Color;") + "\n\t\t\tgl_FragColor = colorInLight * (v_Color.a /255.0) * alpha * v_opaque_part;\n\t\t}\n\t",
name: "base"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.
default = {
v: "\nattribute vec2 a_Position;\nattribute vec4 a_Info;\nuniform mat4 u_matrix;\nuniform mat4 u_modelMatrix;\nuniform mat4 u_lightPVMatrix;\nvarying vec4 v_pos;\nvarying vec4 v_flatNDCCoord;\n\nvoid main(){\n\tv_pos = vec4(a_Position.xy - 2048.0, a_Info.x, 1.0);\n\n\t\n v_flatNDCCoord = u_matrix * vec4(v_pos.xy, 0.0, 1.0);\n \n vec4 posInLightView = u_lightPVMatrix * u_modelMatrix * vec4(v_pos.xyz, 1.0);\n\n\tgl_Position = posInLightView;\n}",
f: "\nprecision mediump float;\n\nuniform float u_maskScale;\nuniform sampler2D u_maskSampler;\n\nvarying vec4 v_pos;\nvarying vec4 v_flatNDCCoord;\n\nvoid main(){ \n\tvec2 v_texCoord = (v_flatNDCCoord.xy / v_flatNDCCoord.w * u_maskScale + 1.0) / 2.0;\n\n\t\n\tvec4 maskColor = texture2D(u_maskSampler, v_texCoord);\n\tfloat isCulledByMask = maskColor.r;\n\tfloat alpha = 1.0;\n\tif(isCulledByMask > 0.99) {\n\t\tdiscard;\n\t}\n\tif(v_pos.x < -.17 || v_pos.y > .17 || v_pos.x > 256.0 || v_pos.y < -256.0){\n\t\tdiscard;\n\t}\n\n gl_FragColor = vec4(1.0);\n}",
name: "building-shadow"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(276),
o = "\nattribute vec2 a_Position;\nattribute vec4 a_Color;\nattribute vec4 a_Info;\nattribute vec4 a_Transform;\nattribute float a_Height;\nuniform mat4 u_matrix;\nuniform mat4 u_modelMatrix;\nuniform float u_use3D;\nvarying vec4 v_coord;\nvarying vec4 v_color;\nvarying vec2 v_Transform;\n" + i.LIGHT_UNIFORM + "\n" + i.LIGHT_VARYING + "\n" + i.LIGHT_VERTEX + "\n\nvoid main(){\n\tvec4 v_pos = vec4(a_Position.xy - 2048.0, mix(0.0, a_Height, u_use3D), 1.0);\n\tvec3 a_normal = normalize(vec3(a_Info.xyz-128.0));\n\n\t\n\tv_color = vec4(float(a_Color.r), float(a_Color.g), float(a_Color.b), float(a_Color.a)) / 255.0;\n\tvec2 objSpec = vec2(0.5, 32.0);\n\tlighting_apply_on_vertex(v_pos.xyz, a_normal, u_modelMatrix, objSpec);\n\n\t\n\tvec4 v_flatNDCCoord = u_matrix * vec4(v_pos.xy, 0.0, 1.0);\n\tv_coord = vec4(v_pos.xy, v_flatNDCCoord.xy / v_flatNDCCoord.w);\n\tv_Transform = a_Transform.xy;\n\n\tgl_Position = u_matrix * v_pos;\n}",
r = "\nprecision mediump float;\n\nuniform float u_maskScale;\nuniform sampler2D u_maskSampler;\n\nvarying vec4 v_coord;\nvarying vec4 v_color;\nvarying vec2 v_Transform;\n\n" + i.LIGHT_VARYING + "\n" + i.LIGHT_FRAG + "\n\nvoid main(){ \n\tvec2 v_texCoord = (v_coord.zw * u_maskScale + 1.0) / 2.0;\n\n\t\n\tvec4 maskColor = texture2D(u_maskSampler, v_texCoord);\n\tfloat isCulledByMask = maskColor.r;\n\t\n\t\n\tif(isCulledByMask > 0.99) {\n\t\tdiscard;\n\t}\n\n\t\n\tvec2 transformRound = floor(v_Transform + 0.5);\n\tvec2 translate = vec2(fract(transformRound.x / 16.0) * 16.0, floor(transformRound.x / 16.0));\n\tfloat scale = transformRound.y;\n\tvec2 coord = vec2(v_coord.x, - v_coord.y) * scale - translate * 256.0;\n\tbool isOutSide = coord.x < -.17 || coord.x > 256.0 || coord.y < -.17 || coord.y > 256.0;\n\t\n\tif(isOutSide){\n\t\t\n\t\tdiscard;\n\t}\n\n\tvec4 color = lighting_apply_on_color(v_color);\n\tgl_FragColor = vec4(color.rgb * color.a, color.a);\n}";
e.
default = {
v: o,
f: r,
name: "building"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.gradientNoise = "\n\nvec2 random(vec2 p) {\n\treturn -1.0 + 2.0 * fract(\n sin(\n vec2(\n dot(p, vec2(127.1, 311.7)),\n dot(p, vec2(269.5, 183.3))\n )\n ) * 43758.5453123\n );\n}\n\n\nfloat noise(vec2 p) {\n\n vec2 i = floor(p);\n vec2 f = fract(p);\n\n\n float a1 = dot(random(i), f);\n float a2 = dot(random(i + vec2(1., 0.)), f + vec2(-1., 0.));\n float a3 = dot(random(i + vec2(1., 1.)), f + vec2(-1., -1.));\n float a4 = dot(random(i + vec2(0., 1.)), f + vec2(0., -1.));\n\n\n vec2 w = smoothstep(0., 1., f);\n return mix(\n mix(a1, a2, w.x),\n mix(a4, a3, w.x),\n w.y\n );\n}\n\nconst int FBM_NUM = 5;\nconst float FREQ = 2.;\nfloat fbm(vec2 p, vec2 cellScale) {\n float f = 0.0;\n float a = 1.0;\n p *= cellScale;\n\n for (int i = 0; i < FBM_NUM; i++) {\n f += a * noise(p);\n p *= FREQ;\n a /= FREQ;\n }\n return f;\n}\n"
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(589),
o = n(330),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o),
a = r.
default ? "\n\nfloat edgeY = (uFogEdge.x + 1.) / 2.;\nfloat x = fract((vPosition.x * uViewInfo.y + uViewInfo.x) / 2. / PI);\nvec2 skyCoord = vec2(\n\tgetCoordByDisplay(x, uSkyInfo.x * uViewInfo.y / PI, uSkyInfo.z),\n\tgetCoordByDisplay((texCoord.y - edgeY) / (1.0 - edgeY), uSkyInfo.y / (1.0 - edgeY), uSkyInfo.w)\n);\nvec4 skyColor = mix(\n\tuSkyColor,\n\ttexture2D(uSkySampler, skyCoord),\n\tstep(0.001, uSkyInfo.x * uSkyInfo.y)\n);\n\n\nvec2 p = vec2(texCoord.x - uViewInfo.w + uViewInfo.x / uViewInfo.y / 2., texCoord.y - edgeY);\nfloat mask = smoothstep(0., 0.5, p.y);\nfloat n = mix(\n\t0.,\n\tmax(0., fbm(p, vec2(2., 4.)) * mask),\n\tuViewInfo.z\n);\nvec4 skyWithCloud = vec4(mix(skyColor.rgb, vec3(1.0), n) * uSkyBrightness, skyColor.a);\n": "vec4 skyWithCloud = uSkyColor;",
s = "\n#define SHADER_NAME FogShader-fragment-shader\nprecision highp float;\n\nconst float PI = 3.141592653589793;\n\n\nuniform vec2 uRange;\n\n\nuniform vec3 uFogEdge;\n\nuniform sampler2D uSampler;\nuniform sampler2D uDepthSampler;\nuniform sampler2D uSkySampler;\nuniform vec4 uSkyInfo;\nuniform vec4 uViewInfo;\nuniform float uSkyBrightness;\nuniform vec4 uFogColor;\nuniform vec4 uSkyColor;\n\nvarying vec2 vPosition;\n\nfloat LinearizeDepth(float depth) {\n float near = 0.1;\n float far = 100.0;\n float z = depth * 2.0 - 1.0;\n return (2.0 * near) / (far + near - z * (far - near));\n}\n\nfloat getDepthFromY(float y) {\n\t\n\treturn min(uFogEdge.z + (uFogEdge.y - uFogEdge.z) * y / uFogEdge.x, 1.);\n}\n\nfloat getCoordByDisplay(float value, float max, float displayType) {\n\t\n\treturn mix(\n\t\tvalue / max,\n\t\tmix(\n\t\t\tvalue,\n\t\t\tfract(value / max),\n\t\t\tstep(2.0, displayType)\n\t\t),\n\t\tstep(1.0, displayType)\n\t);\n}\n\n" + i.gradientNoise + "\n\nvoid main() {\n\tvec2 texCoord = (vPosition + vec2(1.0)) / 2.0;\n\n\t\n\tfloat depth = texture2D(uDepthSampler, texCoord).x;\n\n\t\n\tdepth = min(getDepthFromY(vPosition.y), depth);\n\t\n\n\t\n\tfloat fogFactor = mix(\n\t\tsmoothstep(getDepthFromY(uFogEdge.x - uRange.x), uFogEdge.y, depth),\n\t\t1. - smoothstep(uFogEdge.y, getDepthFromY(uFogEdge.x + uRange.y), depth),\n\t\tstep(uFogEdge.y, depth)\n\t);\n\n\t\n\t\n\tvec4 sceneColor = vec4(0.);\n\n\t" + a + "\n\t\n\t\n\tvec4 bgColor = mix(sceneColor, skyWithCloud, step(uFogEdge.y, depth));\n\n\t\n\t\n\tvec4 blendColor = mix(bgColor, uFogColor, fogFactor);\n\t\n\t\n\t\n\n\tgl_FragColor = mix(\n\t\tblendColor,\n\t\tsceneColor,\n\t\tfloat(vPosition.y < uFogEdge.x - uRange.x)\n\t);\n}\n";
e.
default = {
v: "\n#define SHADER_NAME FogShader-vertex-shader\nattribute vec2 aClipSpacePosition;\nvarying vec2 vPosition;\n\n\nuniform vec2 uRange;\n\nuniform vec3 uFogEdge;\n\nvoid main() {\n\tfloat bottom = uFogEdge.x - uRange.x;\n\tfloat y = mix(\n\t\tbottom,\n\t\taClipSpacePosition.y,\n\t\tstep(0., aClipSpacePosition.y)\n\t);\n\tvPosition = vec2(aClipSpacePosition.x, y);\n\t\n\tgl_Position = vec4(vPosition, 1.0, 1.0);\n}\n",
f: s,
name: "fog"
}
},
function(t, e, n) {
"use strict";
function i(t) {
return {
v: "\n\t#define SHADER_NAME FXAA3Shader-vertex-shader\n\tattribute vec2 aClipSpacePosition;\n\n\tvoid main() {\n\tgl_Position = vec4(aClipSpacePosition, 1.0, 1.0);\n\t}\n\t",
f: "\n\t#define SHADER_NAME FXAA3Shader-fragment-shader\n\tprecision highp float;\n\n\t" + (0, o.getFxaaFunPart)(t) + "\n\n\n\tuniform vec2 uResolution;\n\tuniform sampler2D uSampler;\n\tuniform bool uEnabled;\n\n\tconst float fxaaQualitySubpix = 0.5;\n\tconst float fxaaQualityEdgeThreshold = 0.125;\n\tconst float fxaaQualityEdgeThresholdMin = 0.0833;\n\n\tvoid main()\n\t{\n\t\tvec2 v_textureCoordinates = vec2(gl_FragCoord.xy / uResolution.xy);\n\t\tvec2 fxaaQualityRcpFrame = vec2(1.0) / uResolution.xy;\n\t\tvec4 color = texture2D(uSampler, v_textureCoordinates);\n\n\t\tcolor.rgb = mix(color.rgb,\n\t\tFxaaPixelShader(\n\t\t\tv_textureCoordinates,\n\t\t\tuSampler,\n\t\t\tfxaaQualityRcpFrame,\n\t\t\tfxaaQualitySubpix,\n\t\t\tfxaaQualityEdgeThreshold,\n\t\t\tfxaaQualityEdgeThresholdMin\n\t\t).rgb,\n\t\tfloat(uEnabled)\n\t\t);\n\t\tgl_FragColor = color;\n\t}",
name: "fxaa3"
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = i;
var o = n(592)
},
function(t, e, n) {
"use strict";
/**
* @license
* Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of NVIDIA CORPORATION nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
function i(t) {
return "\n #define FXAA_QUALITY_PRESET " + t + "\n\n #if (FXAA_QUALITY_PRESET == 10)\n #define FXAA_QUALITY_PS 3\n #define FXAA_QUALITY_P0 1.5\n #define FXAA_QUALITY_P1 3.0\n #define FXAA_QUALITY_P2 12.0\n #endif\n #if (FXAA_QUALITY_PRESET == 11)\n #define FXAA_QUALITY_PS 4\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 3.0\n #define FXAA_QUALITY_P3 12.0\n #endif\n #if (FXAA_QUALITY_PRESET == 12)\n #define FXAA_QUALITY_PS 5\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 4.0\n #define FXAA_QUALITY_P4 12.0\n #endif\n #if (FXAA_QUALITY_PRESET == 13)\n #define FXAA_QUALITY_PS 6\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 4.0\n #define FXAA_QUALITY_P5 12.0\n #endif\n #if (FXAA_QUALITY_PRESET == 14)\n #define FXAA_QUALITY_PS 7\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 4.0\n #define FXAA_QUALITY_P6 12.0\n #endif\n #if (FXAA_QUALITY_PRESET == 15)\n #define FXAA_QUALITY_PS 8\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 4.0\n #define FXAA_QUALITY_P7 12.0\n #endif\n #if (FXAA_QUALITY_PRESET == 20)\n #define FXAA_QUALITY_PS 3\n #define FXAA_QUALITY_P0 1.5\n #define FXAA_QUALITY_P1 2.0\n #define FXAA_QUALITY_P2 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 21)\n #define FXAA_QUALITY_PS 4\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 22)\n #define FXAA_QUALITY_PS 5\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 23)\n #define FXAA_QUALITY_PS 6\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 24)\n #define FXAA_QUALITY_PS 7\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 3.0\n #define FXAA_QUALITY_P6 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 25)\n #define FXAA_QUALITY_PS 8\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 4.0\n #define FXAA_QUALITY_P7 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 26)\n #define FXAA_QUALITY_PS 9\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 4.0\n #define FXAA_QUALITY_P8 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 27)\n #define FXAA_QUALITY_PS 10\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 4.0\n #define FXAA_QUALITY_P9 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 28)\n #define FXAA_QUALITY_PS 11\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 4.0\n #define FXAA_QUALITY_P10 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 29)\n #define FXAA_QUALITY_PS 12\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.5\n #define FXAA_QUALITY_P2 2.0\n #define FXAA_QUALITY_P3 2.0\n #define FXAA_QUALITY_P4 2.0\n #define FXAA_QUALITY_P5 2.0\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 2.0\n #define FXAA_QUALITY_P10 4.0\n #define FXAA_QUALITY_P11 8.0\n #endif\n #if (FXAA_QUALITY_PRESET == 39)\n #define FXAA_QUALITY_PS 12\n #define FXAA_QUALITY_P0 1.0\n #define FXAA_QUALITY_P1 1.0\n #define FXAA_QUALITY_P2 1.0\n #define FXAA_QUALITY_P3 1.0\n #define FXAA_QUALITY_P4 1.0\n #define FXAA_QUALITY_P5 1.5\n #define FXAA_QUALITY_P6 2.0\n #define FXAA_QUALITY_P7 2.0\n #define FXAA_QUALITY_P8 2.0\n #define FXAA_QUALITY_P9 2.0\n #define FXAA_QUALITY_P10 4.0\n #define FXAA_QUALITY_P11 8.0\n #endif\n\n #define FxaaBool bool\n #define FxaaFloat float\n #define FxaaFloat2 vec2\n #define FxaaFloat3 vec3\n #define FxaaFloat4 vec4\n #define FxaaHalf float\n #define FxaaHalf2 vec2\n #define FxaaHalf3 vec3\n #define FxaaHalf4 vec4\n #define FxaaInt2 vec2\n #define FxaaTex sampler2D\n\n #define FxaaSat(x) clamp(x, 0.0, 1.0)\n #define FxaaTexTop(t, p) texture2D(t, p)\n #define FxaaTexOff(t, p, o, r) texture2D(t, p + (o * r))\n\n FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.y; }\n\n FxaaFloat4 FxaaPixelShader(\n\n\n\n FxaaFloat2 pos,\n\n\n\n\n\n FxaaTex tex,\n\n\n\n\n\n FxaaFloat2 fxaaQualityRcpFrame,\n\n\n\n\n\n\n\n\n\n\n\n FxaaFloat fxaaQualitySubpix,\n\n\n\n\n\n\n\n\n\n\n FxaaFloat fxaaQualityEdgeThreshold,\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n FxaaFloat fxaaQualityEdgeThresholdMin\n ) {\n /*--------------------------------------------------------------------------*/\n FxaaFloat2 posM;\n posM.x = pos.x;\n posM.y = pos.y;\n FxaaFloat4 rgbyM = FxaaTexTop(tex, posM);\n #define lumaM rgbyM.y\n FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0, 1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 0), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy));\n /*--------------------------------------------------------------------------*/\n FxaaFloat maxSM = max(lumaS, lumaM);\n FxaaFloat minSM = min(lumaS, lumaM);\n FxaaFloat maxESM = max(lumaE, maxSM);\n FxaaFloat minESM = min(lumaE, minSM);\n FxaaFloat maxWN = max(lumaN, lumaW);\n FxaaFloat minWN = min(lumaN, lumaW);\n FxaaFloat rangeMax = max(maxWN, maxESM);\n FxaaFloat rangeMin = min(minWN, minESM);\n FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold;\n FxaaFloat range = rangeMax - rangeMin;\n FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled);\n FxaaBool earlyExit = range < rangeMaxClamped;\n /*--------------------------------------------------------------------------*/\n if(earlyExit)\n return rgbyM;\n /*--------------------------------------------------------------------------*/\n FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1,-1), fxaaQualityRcpFrame.xy));\n FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy));\n /*--------------------------------------------------------------------------*/\n FxaaFloat lumaNS = lumaN + lumaS;\n FxaaFloat lumaWE = lumaW + lumaE;\n FxaaFloat subpixRcpRange = 1.0/range;\n FxaaFloat subpixNSWE = lumaNS + lumaWE;\n FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS;\n FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE;\n /*--------------------------------------------------------------------------*/\n FxaaFloat lumaNESE = lumaNE + lumaSE;\n FxaaFloat lumaNWNE = lumaNW + lumaNE;\n FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE;\n FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE;\n /*--------------------------------------------------------------------------*/\n FxaaFloat lumaNWSW = lumaNW + lumaSW;\n FxaaFloat lumaSWSE = lumaSW + lumaSE;\n FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2);\n FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2);\n FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW;\n FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE;\n FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4;\n FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4;\n /*--------------------------------------------------------------------------*/\n FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE;\n FxaaFloat lengthSign = fxaaQualityRcpFrame.x;\n FxaaBool horzSpan = edgeHorz >= edgeVert;\n FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE;\n /*--------------------------------------------------------------------------*/\n if(!horzSpan) lumaN = lumaW;\n if(!horzSpan) lumaS = lumaE;\n if(horzSpan) lengthSign = fxaaQualityRcpFrame.y;\n FxaaFloat subpixB = (subpixA * (1.0/12.0)) - lumaM;\n /*--------------------------------------------------------------------------*/\n FxaaFloat gradientN = lumaN - lumaM;\n FxaaFloat gradientS = lumaS - lumaM;\n FxaaFloat lumaNN = lumaN + lumaM;\n FxaaFloat lumaSS = lumaS + lumaM;\n FxaaBool pairN = abs(gradientN) >= abs(gradientS);\n FxaaFloat gradient = max(abs(gradientN), abs(gradientS));\n if(pairN) lengthSign = -lengthSign;\n FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange);\n /*--------------------------------------------------------------------------*/\n FxaaFloat2 posB;\n posB.x = posM.x;\n posB.y = posM.y;\n FxaaFloat2 offNP;\n offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x;\n offNP.y = ( horzSpan) ? 0.0 : fxaaQualityRcpFrame.y;\n if(!horzSpan) posB.x += lengthSign * 0.5;\n if( horzSpan) posB.y += lengthSign * 0.5;\n /*--------------------------------------------------------------------------*/\n FxaaFloat2 posN;\n posN.x = posB.x - offNP.x * FXAA_QUALITY_P0;\n posN.y = posB.y - offNP.y * FXAA_QUALITY_P0;\n FxaaFloat2 posP;\n posP.x = posB.x + offNP.x * FXAA_QUALITY_P0;\n posP.y = posB.y + offNP.y * FXAA_QUALITY_P0;\n FxaaFloat subpixD = ((-2.0)*subpixC) + 3.0;\n FxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN));\n FxaaFloat subpixE = subpixC * subpixC;\n FxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP));\n /*--------------------------------------------------------------------------*/\n if(!pairN) lumaNN = lumaSS;\n FxaaFloat gradientScaled = gradient * 1.0/4.0;\n FxaaFloat lumaMM = lumaM - lumaNN * 0.5;\n FxaaFloat subpixF = subpixD * subpixE;\n FxaaBool lumaMLTZero = lumaMM < 0.0;\n /*--------------------------------------------------------------------------*/\n lumaEndN -= lumaNN * 0.5;\n lumaEndP -= lumaNN * 0.5;\n FxaaBool doneN = abs(lumaEndN) >= gradientScaled;\n FxaaBool doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P1;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P1;\n FxaaBool doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P1;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P1;\n /*--------------------------------------------------------------------------*/\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P2;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P2;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P2;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P2;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 3)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P3;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P3;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P3;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P3;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 4)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P4;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P4;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P4;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P4;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 5)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P5;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P5;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P5;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P5;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 6)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P6;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P6;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P6;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P6;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 7)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P7;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P7;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P7;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P7;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 8)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P8;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P8;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P8;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P8;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 9)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P9;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P9;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P9;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P9;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 10)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P10;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P10;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P10;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P10;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 11)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P11;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P11;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P11;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P11;\n /*--------------------------------------------------------------------------*/\n #if (FXAA_QUALITY_PS > 12)\n if(doneNP) {\n if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy));\n if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy));\n if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5;\n if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5;\n doneN = abs(lumaEndN) >= gradientScaled;\n doneP = abs(lumaEndP) >= gradientScaled;\n if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P12;\n if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P12;\n doneNP = (!doneN) || (!doneP);\n if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P12;\n if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P12;\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n #endif\n /*--------------------------------------------------------------------------*/\n }\n /*--------------------------------------------------------------------------*/\n FxaaFloat dstN = posM.x - posN.x;\n FxaaFloat dstP = posP.x - posM.x;\n if(!horzSpan) dstN = posM.y - posN.y;\n if(!horzSpan) dstP = posP.y - posM.y;\n /*--------------------------------------------------------------------------*/\n FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero;\n FxaaFloat spanLength = (dstP + dstN);\n FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero;\n FxaaFloat spanLengthRcp = 1.0/spanLength;\n /*--------------------------------------------------------------------------*/\n FxaaBool directionN = dstN < dstP;\n FxaaFloat dst = min(dstN, dstP);\n FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP;\n FxaaFloat subpixG = subpixF * subpixF;\n FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5;\n FxaaFloat subpixH = subpixG * fxaaQualitySubpix;\n /*--------------------------------------------------------------------------*/\n FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0;\n FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH);\n if(!horzSpan) posM.x += pixelOffsetSubpix * lengthSign;\n if( horzSpan) posM.y += pixelOffsetSubpix * lengthSign;\n return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM);\n\t}"
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.getFxaaFunPart = i
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.
default = {
v: "#version 300 es\n#define SHADER_NAME gaussianblur-vertex-shader\nin vec2 aClipSpacePosition;\nout vec2 vTexCoord;\n\nvoid main() {\n vTexCoord = (aClipSpacePosition + 1.0) / 2.0;\n gl_Position = vec4(aClipSpacePosition, 0., 1.);\n}\n",
f: "#version 300 es\n#define SHADER_NAME gaussianblur-fragment-shader\nprecision highp float;\n\nout vec4 fragColor;\nin vec2 vTexCoord;\n\nuniform sampler2D uSampler;\nuniform bool uHorizontal;\nuniform vec2 uResolution;\n\nconst float offset[3] = float[](0.0, 1.3846153846, 3.2307692308);\nconst float weight[3] = float[](0.2270270270, 0.3162162162, 0.0702702703);\nconst int count = 3;\n\nvoid main()\n{ \n vec2 tex_offset = 1.0 / uResolution;\n vec3 result = texture(uSampler, vTexCoord).rgb * weight[0];\n if(uHorizontal)\n {\n for(int i = 1; i < count; ++i)\n {\n result += texture(uSampler, vTexCoord + vec2(tex_offset.x * offset[i], 0.0)).rgb * weight[i];\n result += texture(uSampler, vTexCoord - vec2(tex_offset.x * offset[i], 0.0)).rgb * weight[i];\n }\n }\n else\n {\n for(int i = 1; i < count; ++i)\n {\n result += texture(uSampler, vTexCoord + vec2(0.0, tex_offset.y * offset[i])).rgb * weight[i];\n result += texture(uSampler, vTexCoord - vec2(0.0, tex_offset.y * offset[i])).rgb * weight[i];\n }\n }\n fragColor = vec4(result, 1.0);\n\n}\n",
name: "gaussianblur"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.grayShader = void 0;
var i = n(465),
o = "\n " + i.imageVertex + "\n";
e.grayShader = {
v: o,
f: "\nprecision mediump float;\n\nuniform float u_opacity;\nuniform sampler2D u_sampler;\nuniform sampler2D u_samplerColorMap;\nuniform float u_hasColorMap;\nvarying vec2 v_texCoord;\nuniform float u_usePicking;\nvoid main() {\n \n vec4 color = texture2D(u_sampler, v_texCoord);\n\n\n\n vec4 finalColor = mix(\n color,\n texture2D(u_samplerColorMap, vec2({RGBA_FORMATTER}, 0.5)),\n step(u_usePicking, 0.5) * step(0.5,u_hasColorMap)\n );\n gl_FragColor = finalColor * u_opacity;\n}\n",
name: "instance_gray"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.
default = {
v: "\n#define SHADER_NAME highlight-vertex-shader\nattribute vec2 aClipSpacePosition;\n\nvoid main() {\n gl_Position = vec4(aClipSpacePosition, 0., 1.);\n}\n",
f: "\n#define SHADER_NAME highlight-fragment-shader\nprecision highp float;\n\nuniform vec4 uColor;\n\nvoid main() {\n gl_FragColor = uColor;\n}\n",
name: "highlight"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.sphereShader = e.defaultShader = void 0;
var i = n(217),
o = n(465),
r = "\n " + o.imageVertex + "\n",
a = (e.defaultShader = {
v: r,
f: "\nprecision mediump float;\n\nuniform float u_opacity;\nuniform sampler2D u_sampler;\n\nvarying vec2 v_texCoord;\n\nvoid main() {\n\tvec4 color = texture2D(u_sampler, v_texCoord);\n\t\n\tgl_FragColor = color * u_opacity;\n}\n",
name: "instance_tex"
},
"\nattribute vec2 a_position;\n\nuniform mat4 u_matrix;\nuniform vec2 u_size;\nuniform vec4 u_texInfo;\nuniform vec3 u_mercator;\nuniform float u_ratio;\n\n" + i.UNIFORM_PART + "\n\nvarying vec2 v_texCoord;\nvarying vec4 v_debug;\n\n" + i.PROJECTION_PART + "\n\nvoid main() {\n\t\n v_texCoord = u_texInfo.xy + a_position * u_texInfo.zw;\n\n\n vec2 position = vec2(a_position.x, 1. - a_position.y) * u_size;\n\n\n vec2 point = (position + u_mercator.xy) / pow(2., u_mercator.z);\n\n\n vec2 latlng = fromPointToLatLng(point);\n\n vec4 posOnPlane= u_matrix * vec4(a_position.x * u_size.x, (a_position.y - 1.) * u_size.y, 0.0, 1.0);\n vec4 posOnSphere = uMatrix * project_view_sphere_position(latlng);\n gl_Position = mix(posOnPlane, posOnSphere, u_ratio);\n\n\n\n\n}\n");
e.sphereShader = {
v: a,
f: "\nprecision mediump float;\n\nuniform float u_opacity;\nuniform sampler2D u_sampler;\nuniform float u_wireframe;\n\nvarying vec2 v_texCoord;\nvarying vec4 v_debug;\n\nvoid main() {\n\tvec4 color = texture2D(u_sampler, v_texCoord) * u_opacity;\n \n gl_FragColor = mix(\n color,\n vec4(1., 0., 0., .6),\n u_wireframe\n );\n \n\n}\n",
name: "instance_tex_sphere"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217),
o = "\n#define SHADER_NAME indoor-mask-vertex-shader\n\nattribute vec3 aPosition;\n\n" + i.UNIFORM_PART + "\nuniform vec4 uRelativeCenter;\n\n" + i.PROJECTION_PART + "\n\nvoid main(void) {\n\tvec3 maskCenterPoint = vec3(project_view_local_position_precision(uRelativeCenter.xy, uRelativeCenter.zw), 0.0);\n\tgl_Position = uMatrix * vec4(maskCenterPoint + project_scale(aPosition), 1.0);\n}\n";
e.
default = {
v: o,
f: "\n#define SHADER_NAME mask-fragment-shader\nprecision mediump float;\n\nuniform vec4 uColor;\n\nvoid main(void) {\n\tgl_FragColor = uColor;\n}\n",
name: "indoor-mask"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217),
o = n(276),
r = "\n#define SHADER_NAME indoor-vertex-shader\n\nattribute vec3 aPosition;\nattribute vec3 aColor;\nattribute vec3 aNormal;\n\n" + i.UNIFORM_PART + "\n" + o.LIGHT_UNIFORM + "\nuniform vec4 uRelativeCenter;\n\nvarying vec3 vColor;\n\n" + o.LIGHT_VARYING + "\n\n" + i.PROJECTION_PART + "\n" + o.LIGHT_VERTEX + "\n\nvoid main(void) {\n\tvec3 relativeCenterPoint = vec3(project_view_local_position_precision(uRelativeCenter.xy, uRelativeCenter.zw), 0.0);\n\tvec3 worldspaceCoord = relativeCenterPoint + project_scale(aPosition);\n\tgl_Position = uMatrix * vec4(worldspaceCoord, 1.0);\n\n\tlighting_apply_on_vertex(worldspaceCoord, aNormal, mat4(1.0));\n\n\tvColor = aColor / 255.;\n}\n",
a = "\n#define SHADER_NAME indoor-fragment-shader\nprecision mediump float;\n\nvarying vec3 vColor;\n\n" + o.LIGHT_VARYING + "\n" + o.LIGHT_FRAG + "\n\nvoid main(void) {\n\tgl_FragColor = lighting_apply_on_color(vec4(vColor, 1.));\n}\n";
e.
default = {
v: r,
f: a,
name: "indoor"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217),
o = n(276),
r = "\n#define SHADER_NAME indoor-vertex-shader\n\nattribute vec3 aPosition;\nattribute vec3 aNormal;\nattribute vec3 aColor;\n\nattribute vec2 aInstanceCoord;\nattribute vec4 aInstanceInfo;\n\n" + i.UNIFORM_PART + "\n" + o.LIGHT_UNIFORM + "\nuniform vec4 uRelativeCenter;\nuniform bool uEnableLighting;\nuniform vec3 uBoxMin;\nuniform vec3 uBoxMax;\n\nvarying vec3 vColor;\n" + o.LIGHT_VARYING + "\n\n" + i.PROJECTION_PART + "\n" + o.LIGHT_VERTEX + "\n\nmat3 rotateZ(float deg){\n float rad = degreeToRadian(deg);\n return mat3(\n vec3(cos(rad), -sin(rad), 0.),\n vec3(sin(rad), cos(rad), 0.),\n vec3(0., 0., 1.)\n );\n}\n\nmat3 rotateX(float deg){\n float rad = degreeToRadian(deg);\n return mat3(\n vec3(1.0, 0.0, 0.0),\n vec3(0.0, cos(rad), -sin(rad)),\n vec3(0.0, sin(rad), cos(rad))\n );\n}\n\nvoid main(void) {\n\n\tmat3 modelMatrix = rotateZ(-aInstanceInfo.w);\n\n\n\tvec3 modelNormal = rotateX(-90.0) * aNormal;\n\tmodelNormal = modelMatrix * modelNormal;\n\n\n vec3 relativeCenterPoint = vec3(project_view_local_position_precision(uRelativeCenter.xy, uRelativeCenter.zw), 0.0);\n vec3 modelCenterPoint = relativeCenterPoint + project_scale(vec3(aInstanceCoord, 0.0));\n\n\n\n float scale = pow(2.0, uZoom - 20.0);\n vec3 modelSize = vec3(aInstanceInfo.xy * scale, aInstanceInfo.z * uPixelsPerMeter.z);\n vec3 localPosition = modelMatrix * (aPosition * modelSize / (uBoxMax - uBoxMin));\n \n\n vec3 worldspaceCoord = modelCenterPoint + localPosition;\n\n gl_Position = uMatrix * vec4(worldspaceCoord, 1.0);\n\n lighting_apply_on_vertex(worldspaceCoord, modelNormal, mat4(1.0));\n \n\n vColor = aColor / 255.;\n}\n",
a = "\n#define SHADER_NAME indoor-fragment-shader\nprecision mediump float;\n\nvarying vec3 vColor;\n" + o.LIGHT_VARYING + "\n" + o.LIGHT_FRAG + "\n\nvoid main(void) {\n\tgl_FragColor = lighting_apply_on_color(vec4(vColor, 1.));\n}\n";
e.
default = {
v: r,
f: a,
name: "instance_escalator"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217),
o = n(292);
e.
default = {
v: "#version 300 es\n\t\t#define SHADER_NAME instance-polyline-vertex-shader\n\t\t\n\t\t\n\t\tin vec2 positions;\n\t\t\n\t\tin vec3 instanceStartPositions;\n\t\tin vec3 instanceEndPositions;\n\t\tin vec3 instanceLeftDeltas;\n\t\tin vec3 instanceRightDeltas;\n\t\tin vec4 instanceStartEndPositions64xyLow;\n\t\tin float instanceWidths;\n\t\tin vec4 instanceColors;\n\t\tin vec4 instanceLineInfo;\n\t\tin vec4 instanceArrowInfo;\n\t\tin float instanceArrowStartPositions;\n\t\t\n\t\t\n\t\tin vec3 instancePickingColors;\n\t\t\n\t\tuniform float u_enableGeodesic;\n\t\t\n\t\tuniform float u_isBorder;\n\t\tuniform float u_widthScale;\n\t\tuniform float u_widthMinPixels;\n\t\tuniform float u_widthMaxPixels;\n\t\tuniform float u_miterLimit;\n uniform vec2 uProject_uDegreePerPixels;\n\n\t\tuniform float u_lineJoin;\n\t\t\n\t\tuniform float u_opacity;\n\t\t\n\t\tconst float EPSILON = 0.001;\n\t\tconst float PIXEL_EPSILON = 0.1;\n\t\t\n\t\t" + i.UNIFORM_PART + "\n\t\t\n\t\t\n\t\tout vec4 vColor;\n\t\t\n\t\tout vec4 vLineInfo;\n\t\tout vec3 vPickingColor;\n\t\t\n\t\t\n\n\t\tout vec4 vClipArray;\n\t\tout vec2 vDashArray;\n\t\tout vec4 vArrowArray;\n\n\t\tout vec4 vLineSegmentInfo;\n\t\tout vec4 vTrimDirection;\n\t\t\n\t\t" + i.PROJECTION_PART + " \n\t\t\n\t\t\n\n\t\t\n\t\tvec2 calculateTangent(vec3 prevPoint, vec3 currPoint, vec3 nextPoint) {\n\t\t\tvec2 deltaA = currPoint.xy - prevPoint.xy;\n\t\t\tvec2 deltaB = nextPoint.xy - currPoint.xy;\n\t\n\t\t\tfloat lenA = length(deltaA);\n\t\t\tfloat lenB = length(deltaB);\n\t\n\t\t\tlenA = mix(0.0, lenA, step(PIXEL_EPSILON, lenA));\n\t\t\tlenB = mix(0.0, lenB, step(PIXEL_EPSILON, lenB));\n\t\n\t\t\t\n\t\t\tvec2 dirA = mix(vec2(0.0), normalize(deltaA), step(PIXEL_EPSILON, lenA));\n\t\t\tvec2 dirB = mix(vec2(0.0), normalize(deltaB), step(PIXEL_EPSILON, lenB));\n\n\t\t\t\n\t\t\tvec2 tangent = vec2(dirA + dirB);\n\t\t\ttangent = mix(vec2(0.0, 0.0), normalize(tangent), step(EPSILON, length(tangent)));\n\n\t\t\treturn tangent;\n\t\t}\n \n\t\tvec3 calculateLinePosition(vec3 prevPoint, vec3 currPoint, vec3 nextPoint) {\n\t\t\tfloat lineCap = instanceLineInfo.x;\n\t\t\tvDashArray = instanceLineInfo.yz;\n\t\t\tvLineSegmentInfo.x = lineCap;\n\n\t\t\tfloat isEnd = positions.x;\n\t\t\tfloat width = clamp(instanceWidths * uPixelsPerMeter[0] * u_widthScale, u_widthMinPixels, u_widthMaxPixels) / 2.0;\n\t\t\tvClipArray.x = width;\n\t\t\tvLineSegmentInfo.w = instanceArrowStartPositions / width;\n\t\n\t\t\tvec2 deltaA = currPoint.xy - prevPoint.xy;\n\t\t\tvec2 deltaB = nextPoint.xy - currPoint.xy;\n\t\n\t\t\tfloat lenA = length(deltaA);\n\t\t\tfloat lenB = length(deltaB);\n\t\n\t\t\tlenA = mix(0.0, lenA, step(PIXEL_EPSILON, lenA));\n\t\t\tlenB = mix(0.0, lenB, step(PIXEL_EPSILON, lenB));\n\t\n\t\t\t\n\t\t\tvec2 dirA = mix(vec2(0.0), normalize(deltaA), step(PIXEL_EPSILON, lenA));\n\t\t\tvec2 dirB = mix(vec2(0.0), normalize(deltaB), step(PIXEL_EPSILON, lenB));\n\t\n\t\t\t\n\t\t\tvec2 perpA = vec2(-dirA.y, dirA.x);\n\t\t\tvec2 perpB = vec2(-dirB.y, dirB.x);\n\t\n\t\t\t\n\t\t\tvec2 tangent = vec2(dirA + dirB);\n\t\t\ttangent = mix(perpA, normalize(tangent), step(EPSILON, length(tangent)));\n\t\n\t\t\t\n\t\t\tvec2 miterVec = vec2(-tangent.y, tangent.x);\n\n\t\t\t\n\t\t\tvec2 perp = mix(perpB, perpA, isEnd);\n\t\t\tfloat L = mix(lenB, lenA, isEnd);\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\n\t\t\t\n\t\t\tvec2 vertical_offset = perp * width * positions.y;\n\t\t\tvLineInfo.x = length(vertical_offset);\n\t\n\t\n\t\t\t\n\t\t\tbool isPathStart = step(0.0, -lenA) > 0.5;\n\t\t\tbool isPathEnd = step(0.0, -lenB) > 0.5;\n\t\t\tvec2 dir = mix(dirB, dirA, isEnd);\n\t\t\tvLineSegmentInfo.y = float(isPathStart);\n\t\t\tvLineSegmentInfo.z = float(isPathEnd);\n\t\t\t\n\t\t\t\n\t\t\tvec2 horizontal_offset = vec2(0.0);\n\n\t\t\t\n\t\t\t\n\t\t\thorizontal_offset = mix(-dir, dir, isEnd) * width;\n\t\t\tvClipArray.y = L / width / 2.0;\n\t\t\tfloat capLength = mix(-1.0 - vClipArray.y, 1.0 + vClipArray.y, isEnd);\n\t\t\tvClipArray.zw = vec2(capLength, positions.y);\n\t\t\tvLineInfo.z = capLength;\n\n\t\n\t\t\t\n\n\t\t\t\n\t\t\tif ((isPathStart && !bool(isEnd)) || (isPathEnd && bool(isEnd))) {\n\t\t\t\tcapLength = mix(mix(-vClipArray.y, vClipArray.y, isEnd), capLength, step(0.1, lineCap));\n\t\t\t\tvClipArray.zw = mix(vec2(capLength, positions.y), vClipArray.zw, step(0.1, lineCap));\n\n\t\t\t\t\n\t\t\t\thorizontal_offset = mix(vec2(0.0), horizontal_offset, step(0.1, lineCap));\n\t\t\t\tvLineInfo.z = mix(mix(-vClipArray.y, vClipArray.y, isEnd), vLineInfo.z, step(0.1, lineCap));\n\t\t\t}\n vLineInfo.y = capLength;\n vLineInfo.w = instanceLineInfo.w;\n\t\t\t\n\t\t\treturn currPoint + vec3(vertical_offset, 0.0) + vec3(horizontal_offset, 0.0);\n\t\t}\n\t\t\n\t\t\n\t\tvec2 getSegmentTangent(float isEnd, vec3 segmentDirection) {\n\t\t\t\n\t\t\tvec2 segmentX = mix(-segmentDirection.xy, segmentDirection.xy, isEnd);\n\t\t\tvec2 segmentY = vec2(-segmentX.y, segmentX.x);\n\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n vec3 localPosition_Start = project_view_local_position_precision( instanceStartPositions, instanceStartEndPositions64xyLow.xy);\n vec3 localPosition_End = project_view_local_position_precision( instanceEndPositions, instanceStartEndPositions64xyLow.zw);\n \n\t\t\tvec3 geodesic_Position_Start;\n vec3 geodesic_Position_End;\n\n geodesic_project_view_local_precision(instanceStartPositions, instanceStartEndPositions64xyLow.xy, instanceEndPositions, instanceStartEndPositions64xyLow.zw, geodesic_Position_Start, geodesic_Position_End, uProject_uDegreePerPixels);\n \n vec3 startLocalPosition = mix(localPosition_Start, geodesic_Position_Start,u_enableGeodesic);\n vec3 endLocalPosition = mix(localPosition_End, geodesic_Position_End,u_enableGeodesic);\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t \n\t\t\tvec3 prevPosition = instanceStartPositions;\n\t\t\tvec2 prevPosition64xyLow = instanceStartEndPositions64xyLow.xy;\n vec3 prevStartLinesPosition_Start;\n vec3 prevStartLinesPosition_Start_Temp;\n vec3 prevStartLinesPosition_End;\n \n vec3 lefDeltaByEnd = mix(instanceLeftDeltas, vec3(0.0), isEnd);\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n geodesic_project_view_local_precision(prevPosition - mix(lefDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), prevPosition64xyLow - mix(vec3(0.0), lefDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy, instanceStartPositions, instanceStartEndPositions64xyLow.xy, prevStartLinesPosition_Start_Temp, prevStartLinesPosition_End, uProject_uDegreePerPixels);\n prevStartLinesPosition_Start = mix( prevStartLinesPosition_Start_Temp,startLocalPosition, isEnd);\n\n\t\t\tprevPosition = mix(project_view_local_position_precision(\n\t\t\t\tprevPosition - mix(lefDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), prevPosition64xyLow - mix(vec3(0.0), lefDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy\n\t\t\t),prevStartLinesPosition_Start,u_enableGeodesic) ;\n\n\t\t\tvec3 currPosition = mix(instanceStartPositions, instanceEndPositions, isEnd);\n\t\t\tvec2 currPositionxy64Low = mix(instanceStartEndPositions64xyLow.xy, instanceStartEndPositions64xyLow.zw, isEnd);\n\t\t\tcurrPosition = mix(startLocalPosition,endLocalPosition,isEnd);\n\n\t\t\tvec3 nextPosition = instanceEndPositions;\n\t\t\tvec2 nextPosition64xyLow = instanceStartEndPositions64xyLow.zw;\n vec3 endNextLinesPosition_start;\n vec3 endNextLinesPosition_End_Temp;\n vec3 endNextLinesPosition_End;\n vec3 rightDeltaByEnd = mix(vec3(0.0), instanceRightDeltas, isEnd);\n\n geodesic_project_view_local_precision(instanceStartPositions, instanceStartEndPositions64xyLow.xy, nextPosition + mix(rightDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), nextPosition64xyLow + mix(vec3(0.0), rightDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy, endNextLinesPosition_start, endNextLinesPosition_End_Temp, uProject_uDegreePerPixels);\n endNextLinesPosition_End = mix(endLocalPosition, endNextLinesPosition_End_Temp, isEnd);\n \n\t\t\tnextPosition = mix(project_view_local_position_precision(\n\t\t\t\tnextPosition + mix(rightDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), nextPosition64xyLow + mix(vec3(0.0), rightDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy\n\t\t\t), endNextLinesPosition_End,u_enableGeodesic);\n\n\n\t\t\tvec2 tangent = calculateTangent(prevPosition, currPosition, nextPosition);\n\n\t\t\t\n\t\t\treturn vec2(dot(tangent, segmentX), dot(tangent, segmentY));\n\t\t}\n\n\t\tvoid main(void) {\n\t\t\tfloat isEnd = positions.x;\n\t\t\t\n\n vec3 localPosition_Start = project_view_local_position_precision( instanceStartPositions, instanceStartEndPositions64xyLow.xy);\n vec3 localPosition_End = project_view_local_position_precision( instanceEndPositions, instanceStartEndPositions64xyLow.zw);\n\n\n vec3 geodesic_Position_Start;\n vec3 geodesic_Position_End;\n\n geodesic_project_view_local_precision(instanceStartPositions, instanceStartEndPositions64xyLow.xy, instanceEndPositions, instanceStartEndPositions64xyLow.zw, geodesic_Position_Start, geodesic_Position_End, uProject_uDegreePerPixels);\n \n vec3 startLocalPosition = mix(localPosition_Start, geodesic_Position_Start,u_enableGeodesic);\n vec3 endLocalPosition = mix(localPosition_End, geodesic_Position_End,u_enableGeodesic);\n\n\t\t\tvec3 segmentDirection = normalize(mix(startLocalPosition - endLocalPosition, endLocalPosition - startLocalPosition, isEnd));\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n float maxDiff = length(startLocalPosition - endLocalPosition);\n segmentDirection *= 0.00001 * maxDiff;\n\t \n\t\t\tvec3 prevPosition = instanceStartPositions;\n\t\t\tvec2 prevPosition64xyLow = instanceStartEndPositions64xyLow.xy;\n vec3 prevStartLinesPosition_Start;\n vec3 prevStartLinesPosition_Start_Temp;\n vec3 prevStartLinesPosition_End;\n vec3 lefDeltaByEnd = mix(instanceLeftDeltas, vec3(0.0), isEnd);\n\n geodesic_project_view_local_precision(prevPosition - mix(lefDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), prevPosition64xyLow - mix(vec3(0.0), lefDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy, instanceStartPositions, instanceStartEndPositions64xyLow.xy, prevStartLinesPosition_Start_Temp, prevStartLinesPosition_End, uProject_uDegreePerPixels);\n prevStartLinesPosition_Start = mix( prevStartLinesPosition_Start_Temp,startLocalPosition, isEnd);\n\n\t\t\n\t\t\tprevPosition = mix(project_view_local_position_precision(\n\t\t\t\tprevPosition - mix(lefDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), prevPosition64xyLow - mix(vec3(0.0), lefDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy\n\t\t\t), prevStartLinesPosition_Start,u_enableGeodesic) + segmentDirection;\n\n\t\t\tvec3 currPosition = mix(instanceStartPositions, instanceEndPositions, isEnd);\n\t\t\tvec2 currPositionxy64Low = mix(instanceStartEndPositions64xyLow.xy, instanceStartEndPositions64xyLow.zw, isEnd);\n\t\t\tcurrPosition = mix(startLocalPosition,endLocalPosition,isEnd);\n\n\t\t\tvec3 nextPosition = instanceEndPositions;\n\t\t\tvec2 nextPosition64xyLow = instanceStartEndPositions64xyLow.zw;\n vec3 endNextLinesPosition_start;\n vec3 endNextLinesPosition_End_Temp;\n vec3 endNextLinesPosition_End;\n vec3 rightDeltaByEnd = mix(vec3(0.0), instanceRightDeltas, isEnd);\n\n geodesic_project_view_local_precision(instanceStartPositions, instanceStartEndPositions64xyLow.xy, nextPosition +mix(rightDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), nextPosition64xyLow + mix(vec3(0.0), rightDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy, endNextLinesPosition_start, endNextLinesPosition_End_Temp, uProject_uDegreePerPixels);\n endNextLinesPosition_End = mix(endLocalPosition, endNextLinesPosition_End_Temp, isEnd);\n \n\t\t\t\n\t\t\tnextPosition = mix(project_view_local_position_precision(\n\t\t\t\tnextPosition + mix(rightDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), nextPosition64xyLow + mix(vec3(0.0), rightDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy\n\t\t\t), endNextLinesPosition_End,u_enableGeodesic) + segmentDirection;\n\n\t\t\tvec3 pos = calculateLinePosition(prevPosition, currPosition, nextPosition);\n\n\t\t\t\n\t\t\tvTrimDirection.xy = -getSegmentTangent(0.0, normalize(startLocalPosition - endLocalPosition));\n\t\t\tvTrimDirection.zw = getSegmentTangent(1.0, normalize(endLocalPosition - startLocalPosition));\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\n\t\t\tgl_Position = uMatrix * vec4(pos, 1.0);\n\t\n\t\t\tvec4 vertexColor = instanceColors.rgba / 255.0 * u_opacity;\n\t\t\tvPickingColor = instancePickingColors;\n\t\t\tvColor = vertexColor;\n\t\t\tvArrowArray = instanceArrowInfo; \n\t\t}\n \n ",
f: "#version 300 es\n\t\t#define SHADER_NAME instance-polyline-fragment-shader\n\t\t\n\t\tprecision highp float;\n\t\tuniform float u_isBorder;\n\t\tuniform float u_miterLimit;\n " + o.PICK_UNIFORM + "\n " + o.PICK_FUNCTION + "\n\t\tuniform float u_lineJoin;\n\t\tuniform sampler2D u_arrowSampler;\n \n\t\tin vec4 vColor;\n\t\tin vec4 vLineInfo;\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n in vec4 vClipArray;\n\t\tin vec2 vDashArray;\n\t\tin vec4 vArrowArray;\n \n in vec3 vPickingColor;\n\t\tin vec4 vLineSegmentInfo;\n\t\t\n\t\t\n\t\t\n\t\t\n\t\tin vec4 vTrimDirection;\n \n layout(location = 0) out vec4 fragColor;\n layout(location = 1) out vec4 emissiveColor;\n\n\t\tvoid main(void) {\n\t\t\tvec4 fColor = vColor;\n\t\t\tvec4 opacity = vec4(0.0, 0.0, 0.0, 0.0);\n\t\t\tvec4 red = vec4(1.0, 0.0, 0.0, 1);\n\n\t\t\tfColor = mix(\n\t\t\t\tfColor,\n\t\t\t\topacity,\n\t\t\t\tfloat(u_lineJoin == 1.0 &&\n\t\t\t\t\tlength(vec2(abs(vClipArray.z) - vClipArray.y, vClipArray.w)) > 1.0 &&\n\t\t\t\t\t(abs(vLineInfo.y) - vClipArray.y) >= 0.0 && \n\t\t\t\t\t((vLineSegmentInfo.y < 0.5 && vLineSegmentInfo.z < 0.5) || vLineSegmentInfo.x > 1.1)\n\t\t\t\t)\n\t\t\t);\n\n\n\n\n fColor = mix(fColor, opacity, float(\n dot(vClipArray.zw - vec2(-vClipArray.y, 0.0), vTrimDirection.xy) > 0.0 &&\n step(0.1, abs(vTrimDirection.x)) > 0.5 &&\n vLineSegmentInfo.y < 0.5\n ));\n\n\n fColor = mix(fColor, opacity, float(\n dot(vClipArray.zw - vec2(vClipArray.y, 0.0), vTrimDirection.zw) > 0.0 &&\n step(0.1, abs(vTrimDirection.x)) > 0.5 &&\n vLineSegmentInfo.z < 0.5\n ));\n\t\t\t\n\n\t\t\t\n\t\t\tfloat segmentLength = vLineInfo.z + vClipArray.y;\n\t\t\t\n\t\t\t\n\t\t\tvec2 normalDashArray = vDashArray / vClipArray.x;\n\t\t\tfloat useDash = step(0.1, vDashArray.y) * step(-vClipArray.y, -abs(vLineInfo.z));\n\t\t\tfloat isInGap = step(normalDashArray.x, mod(segmentLength, normalDashArray.x + normalDashArray.y));\n\n\t\t\t\n\t\t\tvec3 normalArrowArray = vArrowArray.xyz / vClipArray.x;\n\t\t\t\n\t\t\tfloat useArrow = (1.0 - u_isBorder) * step(0.1, vArrowArray.x) * step(0.1, vArrowArray.y) * step(-vClipArray.y, -abs(vLineInfo.z)) * step(-0.001, vLineSegmentInfo.w);\n\t\t\t\n\t\t\t\n\t\t\tfloat offsetX = mix(\n\t\t\t\tmix(\n\t\t\t\t\t0.5,\n\t\t\t\t\t1.0 / normalArrowArray.x,\n\t\t\t\t\tstep(0.1, vArrowArray.w)\n\t\t\t\t),\n\t\t\t\t1.0 - 1.0 / normalArrowArray.x,\n\t\t\t\tstep(1.1, vArrowArray.w)\n\t\t\t);\n\t\t\tfloat yMod = mod(segmentLength - vLineSegmentInfo.w, normalArrowArray.y + normalArrowArray.z);\n\t\t\tfloat texCoordY = yMod / normalArrowArray.y;\n\t\t\tfloat texCoordX = offsetX + vClipArray.w / normalArrowArray.x;\n\t\t\t\n\t\t\t\n\t\t\tfloat isComplete = step(0.0, vClipArray.y * 2.0 - (segmentLength + normalArrowArray.y - yMod));\n\t\t\tfloat isFilled = (1.0 - step(1.0, texCoordY)) * step(0.0, texCoordX) * (1.0 - step(1.0, texCoordX));\n\t\t\tvec4 arrowColor = texture(u_arrowSampler, vec2(texCoordX, texCoordY));\n\n\t\t\tfColor = mix(\n\t\t\t\tfColor,\n\t\t\t\tmix(fColor, opacity, isInGap),\n\t\t\t\tuseDash\n\t\t\t);\n\t\t\tfColor = mix(\n\t\t\t\tfColor,\n\t\t\t\tvec4(mix(\n\t\t\t\t\tfColor.rgb,\n\t\t\t\t\tarrowColor.rgb,\n\t\t\t\t\tarrowColor.a\n\t\t\t\t), fColor.a),\n\t\t\t\tuseArrow * isFilled * isComplete\n\t\t\t);\n \n fragColor = picking_getFinalColor(fColor, vPickingColor);\n emissiveColor = mix(vec4(0.0), fColor, vLineInfo.w);\n\t\t\t\n\t\t\t\n\t\t}\n\t",
name: "instance_polyline_glsl3"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217),
o = n(292);
e.
default = {
v: "\n\t\t#define SHADER_NAME instance-polyline-vertex-shader\n\t\t\n\t\t\n\t\tattribute vec2 positions;\n\t\t\n\t\tattribute vec3 instanceStartPositions;\n\t\tattribute vec3 instanceEndPositions;\n\t\tattribute vec3 instanceLeftDeltas;\n\t\tattribute vec3 instanceRightDeltas;\n\t\tattribute vec4 instanceStartEndPositions64xyLow;\n\t\tattribute float instanceWidths;\n\t\tattribute vec4 instanceColors;\n\t\tattribute vec4 instanceLineInfo;\n\t\tattribute vec4 instanceArrowInfo;\n\t\tattribute float instanceArrowStartPositions;\n\t\t\n\t\t\n\t\tattribute vec3 instancePickingColors;\n\t\t\n\t\tuniform float u_enableGeodesic;\n\t\t\n\t\tuniform float u_isBorder;\n\t\tuniform float u_widthScale;\n\t\tuniform float u_widthMinPixels;\n\t\tuniform float u_widthMaxPixels;\n\t\tuniform float u_miterLimit;\n uniform vec2 uProject_uDegreePerPixels;\n\n\t\tuniform float u_lineJoin;\n\t\t\n\t\tuniform float u_opacity;\n\t\t\n\t\tconst float EPSILON = 0.001;\n\t\tconst float PIXEL_EPSILON = 0.1;\n\t\t\n\t\t" + i.UNIFORM_PART + "\n\t\t\n \n\t\tvarying vec4 vColor;\n\t\t\n\t\tvarying vec3 vLineInfo;\n varying vec3 vPickingColor;\n\n\t\t\n\t\t\n\n\t\tvarying vec4 vClipArray;\n\n\t\tvarying vec2 vDashArray;\n\t\tvarying vec4 vArrowArray;\n\n\t\tvarying vec4 vLineSegmentInfo;\n\t\tvarying vec4 vTrimDirection;\n\t\t\n\t\t" + i.PROJECTION_PART + "\n\t\t\n\n\t\t\n\t\tvec2 calculateTangent(vec3 prevPoint, vec3 currPoint, vec3 nextPoint) {\n\t\t\tvec2 deltaA = currPoint.xy - prevPoint.xy;\n\t\t\tvec2 deltaB = nextPoint.xy - currPoint.xy;\n\t\n\t\t\tfloat lenA = length(deltaA);\n\t\t\tfloat lenB = length(deltaB);\n\t\n\t\t\tlenA = mix(0.0, lenA, step(PIXEL_EPSILON, lenA));\n\t\t\tlenB = mix(0.0, lenB, step(PIXEL_EPSILON, lenB));\n\t\n\t\t\t\n\t\t\tvec2 dirA = mix(vec2(0.0), normalize(deltaA), step(PIXEL_EPSILON, lenA));\n\t\t\tvec2 dirB = mix(vec2(0.0), normalize(deltaB), step(PIXEL_EPSILON, lenB));\n\n\t\t\t\n\t\t\tvec2 tangent = vec2(dirA + dirB);\n\t\t\ttangent = mix(vec2(0.0, 0.0), normalize(tangent), step(EPSILON, length(tangent)));\n\n\t\t\treturn tangent;\n\t\t}\n \n\t\tvec3 calculateLinePosition(vec3 prevPoint, vec3 currPoint, vec3 nextPoint) {\n\t\t\tfloat lineCap = instanceLineInfo.x;\n\t\t\tvDashArray = instanceLineInfo.yz;\n\t\t\tvLineSegmentInfo.x = lineCap;\n\n\t\t\tfloat isEnd = positions.x;\n\t\t\tfloat width = clamp(instanceWidths * uPixelsPerMeter[0] * u_widthScale, u_widthMinPixels, u_widthMaxPixels) / 2.0;\n\t\t\tvClipArray.x = width;\n\t\t\tvLineSegmentInfo.w = instanceArrowStartPositions / width;\n\t\n\t\t\tvec2 deltaA = currPoint.xy - prevPoint.xy;\n\t\t\tvec2 deltaB = nextPoint.xy - currPoint.xy;\n\t\n\t\t\tfloat lenA = length(deltaA);\n\t\t\tfloat lenB = length(deltaB);\n\t\n\t\t\tlenA = mix(0.0, lenA, step(PIXEL_EPSILON, lenA));\n\t\t\tlenB = mix(0.0, lenB, step(PIXEL_EPSILON, lenB));\n\t\n\t\t\t\n\t\t\tvec2 dirA = mix(vec2(0.0), normalize(deltaA), step(PIXEL_EPSILON, lenA));\n\t\t\tvec2 dirB = mix(vec2(0.0), normalize(deltaB), step(PIXEL_EPSILON, lenB));\n\t\n\t\t\t\n\t\t\tvec2 perpA = vec2(-dirA.y, dirA.x);\n\t\t\tvec2 perpB = vec2(-dirB.y, dirB.x);\n\t\n\t\t\t\n\t\t\tvec2 tangent = vec2(dirA + dirB);\n\t\t\ttangent = mix(perpA, normalize(tangent), step(EPSILON, length(tangent)));\n\t\n\t\t\t\n\t\t\tvec2 miterVec = vec2(-tangent.y, tangent.x);\n\n\t\t\t\n\t\t\tvec2 perp = mix(perpB, perpA, isEnd);\n\t\t\tfloat L = mix(lenB, lenA, isEnd);\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\n\t\t\t\n\t\t\tvec2 vertical_offset = perp * width * positions.y;\n\t\t\tvLineInfo.x = length(vertical_offset);\n\t\n\t\n\t\t\t\n\t\t\tbool isPathStart = step(0.0, -lenA) > 0.5;\n\t\t\tbool isPathEnd = step(0.0, -lenB) > 0.5;\n\t\t\tvec2 dir = mix(dirB, dirA, isEnd);\n\t\t\tvLineSegmentInfo.y = float(isPathStart);\n\t\t\tvLineSegmentInfo.z = float(isPathEnd);\n\t\t\t\n\t\t\t\n\t\t\tvec2 horizontal_offset = vec2(0.0);\n\n\t\t\t\n\t\t\t\n\t\t\thorizontal_offset = mix(-dir, dir, isEnd) * width;\n\t\t\tvClipArray.y = L / width / 2.0;\n\t\t\tfloat capLength = mix(-1.0 - vClipArray.y, 1.0 + vClipArray.y, isEnd);\n\t\t\tvClipArray.zw = vec2(capLength, positions.y);\n\t\t\tvLineInfo.z = capLength;\n\n\t\n\t\t\t\n\n\t\t\t\n\t\t\tif ((isPathStart && !bool(isEnd)) || (isPathEnd && bool(isEnd))) {\n\t\t\t\tcapLength = mix(mix(-vClipArray.y, vClipArray.y, isEnd), capLength, step(0.1, lineCap));\n\t\t\t\tvClipArray.zw = mix(vec2(capLength, positions.y), vClipArray.zw, step(0.1, lineCap));\n\n\t\t\t\t\n\t\t\t\thorizontal_offset = mix(vec2(0.0), horizontal_offset, step(0.1, lineCap));\n\t\t\t\tvLineInfo.z = mix(mix(-vClipArray.y, vClipArray.y, isEnd), vLineInfo.z, step(0.1, lineCap));\n\t\t\t}\n\t\t\tvLineInfo.y = capLength;\n\t\t\t\n\t\t\treturn currPoint + vec3(vertical_offset, 0.0) + vec3(horizontal_offset, 0.0);\n\t\t}\n\t\t\n\t\t\n\t\tvec2 getSegmentTangent(float isEnd, vec3 segmentDirection) {\n\t\t\t\n\t\t\tvec2 segmentX = mix(-segmentDirection.xy, segmentDirection.xy, isEnd);\n\t\t\tvec2 segmentY = vec2(-segmentX.y, segmentX.x);\n\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n vec3 localPosition_Start = project_view_local_position_precision( instanceStartPositions, instanceStartEndPositions64xyLow.xy);\n vec3 localPosition_End = project_view_local_position_precision( instanceEndPositions, instanceStartEndPositions64xyLow.zw);\n \n\t\t\tvec3 geodesic_Position_Start;\n vec3 geodesic_Position_End;\n\n geodesic_project_view_local_precision(instanceStartPositions, instanceStartEndPositions64xyLow.xy, instanceEndPositions, instanceStartEndPositions64xyLow.zw, geodesic_Position_Start, geodesic_Position_End, uProject_uDegreePerPixels);\n \n vec3 startLocalPosition = mix(localPosition_Start, geodesic_Position_Start,u_enableGeodesic);\n vec3 endLocalPosition = mix(localPosition_End, geodesic_Position_End,u_enableGeodesic);\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t \n\t\t\tvec3 prevPosition = instanceStartPositions;\n\t\t\tvec2 prevPosition64xyLow = instanceStartEndPositions64xyLow.xy;\n vec3 prevStartLinesPosition_Start;\n vec3 prevStartLinesPosition_Start_Temp;\n vec3 prevStartLinesPosition_End;\n \n vec3 lefDeltaByEnd = mix(instanceLeftDeltas, vec3(0.0), isEnd);\t\t\n geodesic_project_view_local_precision(prevPosition - mix(lefDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), prevPosition64xyLow - mix(vec3(0.0), lefDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy, instanceStartPositions, instanceStartEndPositions64xyLow.xy, prevStartLinesPosition_Start_Temp, prevStartLinesPosition_End, uProject_uDegreePerPixels);\n prevStartLinesPosition_Start = mix( prevStartLinesPosition_Start_Temp,startLocalPosition, isEnd);\n\n\t\t\tprevPosition = mix(project_view_local_position_precision(\n\t\t\t\tprevPosition - mix(lefDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), prevPosition64xyLow - mix(vec3(0.0), lefDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy\n\t\t\t),prevStartLinesPosition_Start,u_enableGeodesic) ;\n\n\t\t\tvec3 currPosition = mix(instanceStartPositions, instanceEndPositions, isEnd);\n\t\t\tvec2 currPositionxy64Low = mix(instanceStartEndPositions64xyLow.xy, instanceStartEndPositions64xyLow.zw, isEnd);\n\t\t\tcurrPosition = mix(startLocalPosition,endLocalPosition,isEnd);\n\n\t\t\tvec3 nextPosition = instanceEndPositions;\n\t\t\tvec2 nextPosition64xyLow = instanceStartEndPositions64xyLow.zw;\n vec3 endNextLinesPosition_start;\n vec3 endNextLinesPosition_End_Temp;\n vec3 endNextLinesPosition_End;\n vec3 rightDeltaByEnd = mix(vec3(0.0), instanceRightDeltas, isEnd);\n\n geodesic_project_view_local_precision(instanceStartPositions, instanceStartEndPositions64xyLow.xy, nextPosition + mix(rightDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), nextPosition64xyLow + mix(vec3(0.0), rightDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy, endNextLinesPosition_start, endNextLinesPosition_End_Temp, uProject_uDegreePerPixels);\n endNextLinesPosition_End = mix(endLocalPosition, endNextLinesPosition_End_Temp, isEnd);\n \n\t\t\tnextPosition = mix(project_view_local_position_precision(\n\t\t\t\tnextPosition + mix(rightDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), nextPosition64xyLow + mix(vec3(0.0), rightDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy\n\t\t\t), endNextLinesPosition_End,u_enableGeodesic);\n\n\n\t\t\tvec2 tangent = calculateTangent(prevPosition, currPosition, nextPosition);\n\n\t\t\t\n\t\t\treturn vec2(dot(tangent, segmentX), dot(tangent, segmentY));\n\t\t}\n\n\t\tvoid main(void) {\n\t\t\tfloat isEnd = positions.x;\n\t\t\t\n\n vec3 localPosition_Start = project_view_local_position_precision( instanceStartPositions, instanceStartEndPositions64xyLow.xy);\n vec3 localPosition_End = project_view_local_position_precision( instanceEndPositions, instanceStartEndPositions64xyLow.zw);\n\n\n vec3 geodesic_Position_Start;\n vec3 geodesic_Position_End;\n\n geodesic_project_view_local_precision(instanceStartPositions, instanceStartEndPositions64xyLow.xy, instanceEndPositions, instanceStartEndPositions64xyLow.zw, geodesic_Position_Start, geodesic_Position_End, uProject_uDegreePerPixels);\n \n vec3 startLocalPosition = mix(localPosition_Start, geodesic_Position_Start,u_enableGeodesic);\n vec3 endLocalPosition = mix(localPosition_End, geodesic_Position_End,u_enableGeodesic);\n\n\t\t\tvec3 segmentDirection = normalize(mix(startLocalPosition - endLocalPosition, endLocalPosition - startLocalPosition, isEnd));\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n float maxDiff = length(startLocalPosition - endLocalPosition);\n segmentDirection *= 0.00001 * maxDiff;\n\t \n\t\t\tvec3 prevPosition = instanceStartPositions;\n\t\t\tvec2 prevPosition64xyLow = instanceStartEndPositions64xyLow.xy;\n vec3 prevStartLinesPosition_Start;\n vec3 prevStartLinesPosition_Start_Temp;\n vec3 prevStartLinesPosition_End;\n vec3 lefDeltaByEnd = mix(instanceLeftDeltas, vec3(0.0), isEnd);\n\n geodesic_project_view_local_precision(prevPosition - mix(lefDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), prevPosition64xyLow - mix(vec3(0.0), lefDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy, instanceStartPositions, instanceStartEndPositions64xyLow.xy, prevStartLinesPosition_Start_Temp, prevStartLinesPosition_End, uProject_uDegreePerPixels);\n prevStartLinesPosition_Start = mix( prevStartLinesPosition_Start_Temp,startLocalPosition, isEnd);\n\n\t\t\n\t\t\tprevPosition = mix(project_view_local_position_precision(\n\t\t\t\tprevPosition - mix(lefDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), prevPosition64xyLow - mix(vec3(0.0), lefDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy\n\t\t\t), prevStartLinesPosition_Start,u_enableGeodesic) + segmentDirection;\n\n\t\t\tvec3 currPosition = mix(instanceStartPositions, instanceEndPositions, isEnd);\n\t\t\tvec2 currPositionxy64Low = mix(instanceStartEndPositions64xyLow.xy, instanceStartEndPositions64xyLow.zw, isEnd);\n\t\t\tcurrPosition = mix(startLocalPosition,endLocalPosition,isEnd);\n\n\t\t\tvec3 nextPosition = instanceEndPositions;\n\t\t\tvec2 nextPosition64xyLow = instanceStartEndPositions64xyLow.zw;\n vec3 endNextLinesPosition_start;\n vec3 endNextLinesPosition_End_Temp;\n vec3 endNextLinesPosition_End;\n vec3 rightDeltaByEnd = mix(vec3(0.0), instanceRightDeltas, isEnd);\n\n geodesic_project_view_local_precision(instanceStartPositions, instanceStartEndPositions64xyLow.xy, nextPosition +mix(rightDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), nextPosition64xyLow + mix(vec3(0.0), rightDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy, endNextLinesPosition_start, endNextLinesPosition_End_Temp, uProject_uDegreePerPixels);\n endNextLinesPosition_End = mix(endLocalPosition, endNextLinesPosition_End_Temp, isEnd);\n \n\t\t\t\n\t\t\tnextPosition = mix(project_view_local_position_precision(\n\t\t\t\tnextPosition + mix(rightDeltaByEnd, vec3(0.0), step(THRESHOLD_ZOOM, uZoom)), nextPosition64xyLow + mix(vec3(0.0), rightDeltaByEnd, step(THRESHOLD_ZOOM, uZoom)).xy\n\t\t\t), endNextLinesPosition_End,u_enableGeodesic) + segmentDirection;\n\n\t\t\tvec3 pos = calculateLinePosition(prevPosition, currPosition, nextPosition);\n\n\t\t\t\n\t\t\tvTrimDirection.xy = -getSegmentTangent(0.0, normalize(startLocalPosition - endLocalPosition));\n\t\t\tvTrimDirection.zw = getSegmentTangent(1.0, normalize(endLocalPosition - startLocalPosition));\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\n\t\t\tgl_Position = uMatrix * vec4(pos, 1.0);\n\t\n\t\t\tvec4 vertexColor = instanceColors.rgba / 255.0 * u_opacity;\n\t\t\tvPickingColor = instancePickingColors;\n\t\t\tvColor = vertexColor;\n\t\t\tvArrowArray = instanceArrowInfo; \n\t\t}\n \n ",
f: "\n\t\t#define SHADER_NAME instance-polyline-fragment-shader\n\t\t\n\t\tprecision highp float;\n\t\tuniform float u_isBorder;\n\t\tuniform float u_miterLimit;\n " + o.PICK_UNIFORM + "\n " + o.PICK_FUNCTION + "\n\t\tuniform float u_lineJoin;\n\t\tuniform sampler2D u_arrowSampler;\n \n\t\tvarying vec4 vColor;\n\t\tvarying vec3 vLineInfo;\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\n varying vec4 vClipArray;\n\n\t\tvarying vec2 vDashArray;\n\t\tvarying vec4 vArrowArray;\n\t\t\n varying vec3 vPickingColor;\n\t\tvarying vec4 vLineSegmentInfo;\n\t\t\n\t\t\n\t\t\n\t\t\n\t\tvarying vec4 vTrimDirection;\n \n\t\tvoid main(void) {\n\t\t\tvec4 fColor = vColor;\n\t\t\tvec4 opacity = vec4(0.0, 0.0, 0.0, 0.0);\n\t\t\tvec4 red = vec4(1.0, 0.0, 0.0, 1);\n\n\t\t\tfColor = mix(\n\t\t\t\tfColor,\n\t\t\t\topacity,\n\t\t\t\tfloat(u_lineJoin == 1.0 &&\n\t\t\t\t\tlength(vec2(abs(vClipArray.z) - vClipArray.y, vClipArray.w)) > 1.0 &&\n\t\t\t\t\t(abs(vLineInfo.y) - vClipArray.y) >= 0.0 && \n\t\t\t\t\t((vLineSegmentInfo.y < 0.5 && vLineSegmentInfo.z < 0.5) || vLineSegmentInfo.x > 1.1)\n\t\t\t\t)\n\t\t\t);\n\n\n\n\n fColor = mix(fColor, opacity, float(\n dot(vClipArray.zw - vec2(-vClipArray.y, 0.0), vTrimDirection.xy) > 0.0 &&\n step(0.1, abs(vTrimDirection.x)) > 0.5 &&\n vLineSegmentInfo.y < 0.5\n ));\n\n\n fColor = mix(fColor, opacity, float(\n dot(vClipArray.zw - vec2(vClipArray.y, 0.0), vTrimDirection.zw) > 0.0 &&\n step(0.1, abs(vTrimDirection.x)) > 0.5 &&\n vLineSegmentInfo.z < 0.5\n ));\n\t\t\t\n\n\t\t\t\n\t\t\tfloat segmentLength = vLineInfo.z + vClipArray.y;\n\t\t\t\n\t\t\t\n\t\t\tvec2 normalDashArray = vDashArray / vClipArray.x;\n\t\t\tfloat useDash = step(0.1, vDashArray.y) * step(-vClipArray.y, -abs(vLineInfo.z));\n\t\t\tfloat isInGap = step(normalDashArray.x, mod(segmentLength, normalDashArray.x + normalDashArray.y));\n\n\t\t\t\n\t\t\tvec3 normalArrowArray = vArrowArray.xyz / vClipArray.x;\n\t\t\t\n\t\t\tfloat useArrow = (1.0 - u_isBorder) * step(0.1, vArrowArray.x) * step(0.1, vArrowArray.y) * step(-vClipArray.y, -abs(vLineInfo.z)) * step(-0.001, vLineSegmentInfo.w);\n\t\t\t\n\t\t\t\n\t\t\tfloat offsetX = mix(\n\t\t\t\tmix(\n\t\t\t\t\t0.5,\n\t\t\t\t\t1.0 / normalArrowArray.x,\n\t\t\t\t\tstep(0.1, vArrowArray.w)\n\t\t\t\t),\n\t\t\t\t1.0 - 1.0 / normalArrowArray.x,\n\t\t\t\tstep(1.1, vArrowArray.w)\n\t\t\t);\n\t\t\tfloat yMod = mod(segmentLength - vLineSegmentInfo.w, normalArrowArray.y + normalArrowArray.z);\n\t\t\tfloat texCoordY = yMod / normalArrowArray.y;\n\t\t\tfloat texCoordX = offsetX + vClipArray.w / normalArrowArray.x;\n\t\t\t\n\t\t\t\n\t\t\tfloat isComplete = step(0.0, vClipArray.y * 2.0 - (segmentLength + normalArrowArray.y - yMod));\n\t\t\tfloat isFilled = (1.0 - step(1.0, texCoordY)) * step(0.0, texCoordX) * (1.0 - step(1.0, texCoordX));\n\t\t\tvec4 arrowColor = texture2D(u_arrowSampler, vec2(texCoordX, texCoordY));\n\n\t\t\tfColor = mix(\n\t\t\t\tfColor,\n\t\t\t\tmix(fColor, opacity, isInGap),\n\t\t\t\tuseDash\n\t\t\t);\n\t\t\tfColor = mix(\n\t\t\t\tfColor,\n\t\t\t\tvec4(mix(\n\t\t\t\t\tfColor.rgb,\n\t\t\t\t\tarrowColor.rgb,\n\t\t\t\t\tarrowColor.a\n\t\t\t\t), fColor.a),\n\t\t\t\tuseArrow * isFilled * isComplete\n\t\t\t);\n\t\t\t\n gl_FragColor = picking_getFinalColor(fColor, vPickingColor);\n\t\t\t\n\t\t\t\n\t\t}\n\t",
name: "instance_polyline"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217);
e.
default = {
v: "\n #define SHADER_NAME mask-vertex-shader\n\n attribute vec3 positions;\n attribute vec2 positions64xyLow;\n\n " + i.UNIFORM_PART + "\n\n " + i.PROJECTION_PART + "\n \n void main(void) {\n vec3 local_position = project_view_local_position_precision(positions.xyz, positions64xyLow.xy);\n\n gl_Position = uMatrix * vec4(local_position, 1.0);\n }\n ",
f: "\n #define SHADER_NAME mask-fragment-shader\n\n precision highp float;\n \n uniform vec4 uColor;\n \n void main(void) {\n gl_FragColor = uColor;\n }\n ",
name: "mask"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217),
o = n(292),
r = n(466);
e.
default = {
v: "\n #define SHADER_NAME instance-glyph-vertex-shader\n\n " + r.INSTANCE_PARTS + "\n attribute vec4 instanceColors;\n attribute vec4 instanceStrokeColors;\n attribute float instanceType;\n attribute float instanceShow;\n \n " + i.UNIFORM_PART + "\n \n " + o.PICK_UNIFORM + "\n\n " + r.UNIFORM_PARTS + "\n uniform float u_gamma;\n \n varying vec4 vColor;\n varying vec4 vStrokeColor;\n varying vec2 vTextureCoords;\n varying float vGamma;\n varying vec2 vPositions;\n varying float vOpacity;\n\n\n\n varying vec2 vRadiusRate;\n\n\n varying vec4 vBorderProperty;\n varying vec3 vBgImageInfo;\n " + i.PROJECTION_PART + "\n \n " + o.PICK_FUNCTION + "\n \n void main(void) {\n " + (0, r.generateMainPart)("\n\n vec2 backgroundScale = vec2(1.0) * u_sizeScale;\n vec2 labelScale = mix(sizePixels / imageSize.y, vec2(0.0), float(imageSize.y == 0.0));\n vec2 instanceScale = mix(labelScale, backgroundScale, instanceType);\n\n\n vec2 pixelOffset = positions / 2.0 * imageSize + mix(instanceInfos.xy, vec2(0.0), instanceType);\n\n pixelOffset = mix(rotate_by_angle_onScreen(pixelOffset, instanceInfos.z) * instanceScale,\n rotate_by_angle_onScreen(pixelOffset, instanceInfos.z) * backgroundScale,\n instanceType);\n pixelOffset += instancePixelOffset.xy;\n pixelOffset.y *= -1.0;\n ", "\n vColor = vec4(instanceColors.rgb, instanceColors.a * u_opacity) / 255.;\n vStrokeColor = vec4(instanceStrokeColors.rgb, instanceStrokeColors.a * u_opacity) / 255.;\n ") + "\n\n vGamma = u_gamma / (u_sizeScale * instanceSizes.x / imageSize.y);\n vBorderProperty.w = instanceFrames.x;\n vBorderProperty.xy = vec2((imageSize.x - vBorderProperty.w * 2.0) / imageSize.x, (imageSize.y - vBorderProperty.w * 2.0) / imageSize.y);\n vOpacity = instanceShow * vOpacity;\n vPositions = positions;\n vBgImageInfo.x = instanceType;\n vBorderProperty.z = clamp(instanceInfos.x, 0.0, min(imageSize.x / 2.0, imageSize.y / 2.0));\n vRadiusRate = vec2(1.0 - vBorderProperty.z * 2.0 / imageSize.x, 1.0 - vBorderProperty.z * 2.0 / imageSize.y);\n vBgImageInfo.yz = imageSize;\n }\n ",
f: "\n #define SHADER_NAME instance-marker-fragment-shader\n\n precision highp float;\n \n uniform sampler2D u_sampler;\n uniform float u_buffer;\n uniform vec2 u_resolution;\n\n " + o.PICK_UNIFORM + "\n \n varying vec4 vColor;\n varying vec4 vStrokeColor;\n varying vec2 vTextureCoords;\n varying float vGamma;\n varying vec2 vPositions;\n\n varying float vOpacity;\n\n\n varying vec2 vRadiusRate;\n\n\n varying vec4 vBorderProperty;\n varying vec3 vBgImageInfo;\n \n const float MIN_ALPHA = 0.05;\n const bool useSdf = true;\n \n void main(void) {\n float usedBuff = 0.548;\n\n " + i.SDF_PART + "\n\n float isBorder = float(abs(vPositions.x) > vBorderProperty.x || abs(vPositions.y) > vBorderProperty.y);\n vec4 backgroundColor = vColor;\n float isCorner = float(abs(vPositions.x) > vRadiusRate.x && abs(vPositions.y) > vRadiusRate.y);\n\n float borderLen = length(vec2((abs(vPositions.x) - vRadiusRate.x) * vBgImageInfo.y / 2.0, (abs(vPositions.y) - vRadiusRate.y) * vBgImageInfo.z / 2.0));\n isBorder = mix(isBorder, 1.0, step(vBorderProperty.z - vBorderProperty.w, borderLen) * isCorner);\n backgroundColor = mix(vColor, vStrokeColor, isBorder) * vOpacity;\n backgroundColor.w = backgroundColor.w * (1.0 - step(vBorderProperty.z, borderLen) * isCorner);\n \n gl_FragColor = mix(mix(color * vOpacity, backgroundColor, vBgImageInfo.x), vColor * vOpacity, picking_usePickingColor);\n }\n ",
name: "instance_glyph"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(217),
o = n(292),
r = n(466);
e.
default = {
v: "\n #define SHADER_NAME instance-marker-vertex-shader\n\n " + r.INSTANCE_PARTS + "\n attribute vec4 instanceColors;\n attribute vec4 instanceStrokeColors;\n attribute float instanceStrokeWidth;\n attribute float instanceShow;\n attribute float instanceType;\n\n " + i.UNIFORM_PART + "\n \n " + o.PICK_UNIFORM + "\n\n " + r.UNIFORM_PARTS + "\n uniform float u_gamma;\n\n varying vec4 vColor;\n varying vec4 vStrokeColor;\n varying float vStrokeWidth;\n varying vec2 vTextureCoords;\n varying float vOpacity;\n varying float vGamma;\n varying float vInstanceType;\n varying vec2 vInstanceScale;\n \n " + i.PROJECTION_PART + "\n \n " + o.PICK_FUNCTION + "\n \n void main(void) {\n " + (0, r.generateMainPart)("\n\n vec2 markerScale = mix(sizePixels / imageSize, vec2(0.0), float(imageSize.y == 0.0));\n vec2 labelScale = mix(sizePixels / imageSize.y, vec2(0.0), float(imageSize.y == 0.0));\n vec2 instanceScale = mix(markerScale, labelScale, instanceType);\n vec2 pixelOffset = mix(positions / 2.0 * imageSize, positions / 2.0 * imageSize + instanceInfos.xy, instanceType);\n pixelOffset = mix(rotate_by_angle_onScreen((pixelOffset * instanceScale + instanceInfos.xy), instanceInfos.z),\n pixelOffset * instanceScale,\n instanceType);\n pixelOffset += instancePixelOffset.xy;\n pixelOffset.y *= -1.0;\n ", "\n vColor = mix(vec4(0.0, 0.0, 0.0, 0.0), vec4(instanceColors.rgb, instanceColors.a * u_opacity) / 255., instanceType);\n vStrokeColor = vec4(instanceStrokeColors.rgb, instanceStrokeColors.a * u_opacity) / 255.;\n vStrokeWidth = instanceStrokeWidth;\n ") + "\n vGamma = u_gamma / (u_sizeScale * instanceSizes.x / imageSize.y);\n vOpacity = instanceShow * vOpacity;\n vInstanceType = instanceType;\n vInstanceScale = instanceScale;\n }\n ",
f: "\n #define SHADER_NAME instance-marker-fragment-shader\n\n precision highp float;\n \n\t\tuniform sampler2D u_sampler;\n uniform float u_buffer;\n uniform float u_sdfRadius;\n\n " + o.PICK_UNIFORM + "\n \n varying vec4 vColor;\n varying vec4 vStrokeColor;\n varying float vStrokeWidth;\n varying vec2 vTextureCoords;\n varying float vOpacity;\n varying float vGamma;\n varying float vInstanceType;\n varying vec2 vInstanceScale;\n \n const float MIN_ALPHA = 0.05;\n\n \n void main(void) {\n\n float usedBuff = u_buffer * (1.0 - vStrokeWidth / u_sdfRadius / vInstanceScale.y);\n\n " + i.SDF_PART + "\n\n vec4 texColor = texture2D(u_sampler, vTextureCoords);\n gl_FragColor = mix(mix(texColor * vOpacity, color * vOpacity, vInstanceType), vColor, picking_usePickingColor);\n }\n ",
name: "instance_marker"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(326);
e.
default = {
v: [i.attributePart, "attribute vec4 a_InstanceColors;", "attribute vec4 a_InstancePickingColors;", "attribute vec4 a_InstanceStrokeColors;", "attribute float a_InstanceStrokeWidth;", "attribute vec2 a_InstanceStrentchinglens;", i.uniformPart, "uniform vec2 u_glyphTextureResolution;", "uniform vec2 u_billboardTextureResolution;", "uniform float u_gamma;", "uniform float picking_useFeaturePickingColor;", i.varyingPart, "varying float v_gamma;", "varying vec4 v_color;", "varying vec4 v_strokeColor;", "varying vec2 v_fontArguments;", "varying float v_useFeaturePicking;", i.projectScreenPart, i.filterPart, "void main(){", "\tvec2 transCoord = a_InstanceTrans.xy;", i.glPositionCusPart, " vec2 texCoords = a_Positions.xy * 0.5 + 0.5;", "vec4 textureBounds = vec4(a_InstanceTextBounds.x, u_billboardTextureResolution.y - a_InstanceTextBounds.y - a_InstanceTextBounds.w, a_InstanceTextBounds.zw);", "\tvec2 billboradTextureCoords = mix(\n\t\t\t\ttextureBounds.xy,\n\t\t\t\ttextureBounds.xy + textureBounds.zw,\n\t\t\t\t\ttexCoords\n\t\t\t\t) / u_billboardTextureResolution;\n\t\t\t\n\t\t", " float xRoad = (a_InstanceTextBounds.x) / u_glyphTextureResolution.x;", " float yRoad = (u_glyphTextureResolution.y - (a_InstanceTextBounds.y)) / u_glyphTextureResolution.y;", " float wRoad = a_InstanceTextBounds.z / u_glyphTextureResolution.x;", " float hRoad = a_InstanceTextBounds.w / u_glyphTextureResolution.y;", " v_TexCoord = mix(\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tbillboradTextureCoords,\n\t\t\t\t\t\t\t\tmix(\n\t\t\t\t\t\t\t\t\tvec2(xRoad + texCoords.x * wRoad, yRoad + (texCoords.y - 1.0) * hRoad),\n\t\t\t\t\t\t\t\t\tvec2(a_InstanceTextBounds.x + a_InstanceTextBounds.z * texCoords.x, a_InstanceTextBounds.y + a_InstanceTextBounds.w * texCoords.y),\n\t\t\t\t\t\t\t\t\ta_InstanceInfo.z\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tstep(0.0, a_InstanceInfo.z)\n\t\t\t\t\t\t\t);", " v_isShow = a_InstanceInfo.y;", " v_isIcon = a_InstanceInfo.z;", " v_opacity = max(0.0, min(1.0, a_InstanceInfo.w + mix(-u_fadeChange, u_fadeChange, v_isShow)));", "\t v_opacity = getFilterOpacity(v_opacity, a_InstanceTrans.z);", "\t v_color = mix(a_InstanceColors, a_InstancePickingColors, picking_useFeaturePickingColor) / 255.0;", " v_useFeaturePicking = picking_useFeaturePickingColor;", "\t v_strokeColor = a_InstanceStrokeColors / 255.0;", "\t v_fontArguments.x = a_InstanceStrokeWidth;", "\t v_gamma = u_gamma / (a_InstanceCoords.y / a_InstanceTextBounds.w);", "\t v_fontArguments.y = a_InstanceCoords.y / a_InstanceTextBounds.w;", "}"].join("\n"),
f: ["#define SDF_PX 8.0", "#define EDGE_GAMMA 0.105 / 2.0", "precision highp float;", i.fragPart, "uniform sampler2D u_SamplerGlyph;", "uniform float u_buffer;", "uniform float u_sdfRadius;", i.uniformPart, i.varyingPart, "varying float v_gamma;", "varying vec4 v_color;", "varying vec4 v_strokeColor;", "varying vec2 v_fontArguments;", "varying float v_useFeaturePicking;", "void main() {", i.maskPart, "\t vec4 vColor = v_color * v_color.a;", "\tvec4 color = mix(\n\t\t\t\ttexture2D(u_SamplerGlyph, v_TexCoord),\n\t\t\t\tmix(\n\t\t\t\t\ttexture2D(u_SamplerText, v_TexCoord),\n\t\t\t\t\ttexture2D(u_SamplerIcon, v_TexCoord),\n\t\t\t\t\tstep(0.0, v_isIcon)\n\t\t\t\t),\n\t\t\t\tabs(v_isIcon)\n\t\t\t);\n\t\t", "\n\t\t\tfloat alpha = color.a;\n\t\t\tfloat distance = alpha;\n\n\t\t\tfloat usedBuff = u_buffer - v_fontArguments.x / u_sdfRadius / v_fontArguments.y * u_buffer;\n\t\t\tfloat usedGamma = v_gamma;\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\tfloat outlineFactor = smoothstep(u_buffer - usedGamma, u_buffer + usedGamma, distance);\n\n\t\t\tfloat finallAlpha = smoothstep(usedBuff - usedGamma, usedBuff + usedGamma, distance);\n\t\t\t\n\t\t\tcolor = mix(\n\t\t\t\tmix(v_strokeColor * v_strokeColor.a, vColor, clamp(outlineFactor + v_useFeaturePicking, 0.0, 1.0)),\n\t\t\t\tcolor,\n\t\t\t\tstep(0.5, abs(v_isIcon))\n\t\t\t) * finallAlpha;\n\t\t\t\n\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t", " gl_FragColor = color * mix(0.0, v_opacity, isCulledByMask);", "}"].join("\n"),
name: "instance_symbol_custom_style"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(326);
e.
default = {
v: [i.attributePart, i.uniformPart, i.varyingPart, i.projectScreenPart, i.filterPart, "void main(){", "\tvec2 transCoord = a_InstanceTrans.xy;", i.glPositionPart, " vec2 texCoords = a_Positions.xy * 0.5 + 0.5;", " if (a_InstanceInfo.z != 1.0) {", " float x = (u_InstanceTileTextureOffset.x + a_InstanceTextBounds.x) / u_textTextureResolution.x;", " float y = (u_textTextureResolution.y - (u_InstanceTileTextureOffset.y + a_InstanceTextBounds.y)) / u_textTextureResolution.y;", " float w = a_InstanceTextBounds.z / u_textTextureResolution.x;", " float h = a_InstanceTextBounds.w / u_textTextureResolution.y;", " v_TexCoord = vec2(x + texCoords.x * w, y + (texCoords.y - 1.0) * h);", " } else {", " v_TexCoord = vec2(a_InstanceTextBounds.x + a_InstanceTextBounds.z * texCoords.x, a_InstanceTextBounds.y + a_InstanceTextBounds.w * texCoords.y);", " }", " v_isShow = a_InstanceInfo.y;", " v_isIcon = a_InstanceInfo.z;", " v_opacity = max(0.0, min(1.0, a_InstanceInfo.w + mix(-u_fadeChange, u_fadeChange, v_isShow)));", "\t v_opacity = getFilterOpacity(v_opacity, a_InstanceTrans.z);", "}"].join("\n"),
f: ["precision mediump float;", i.fragPart, i.varyingPart, "void main() {", i.maskPart, " vec4 color = mix(texture2D(u_SamplerText, v_TexCoord), texture2D(u_SamplerIcon, v_TexCoord), v_isIcon);", " gl_FragColor = mix(color, vec4(1.0, 1.0, 1.0, color.a), u_asbackground) * color.a * mix(0.0, v_opacity, isCulledByMask);", "}"].join("\n"),
name: "instance_symbol_default_style"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(326),
o = n(217),
r = "\n\t" + o.PROJECTION_PART + "\n\n\tvec2 getWorldspaceCoord(vec4 relativeCenter, vec2 localPosition) {\n\t\tvec2 relativeCenterPoint = project_view_local_position_precision(relativeCenter.xy, relativeCenter.zw);\n\t\tvec2 worldspaceCoord = relativeCenterPoint + project_scale(vec3(localPosition, 0.0)).xy;\n\t\treturn worldspaceCoord;\n\t}\n";
e.
default = {
v: [i.attributePart, "attribute vec4 a_InstanceColors;", "attribute vec4 a_InstanceStrokeColors;", i.uniformPart, "uniform vec2 u_glyphTextureResolution;", "uniform vec2 u_billboardTextureResolution;", "uniform float u_gamma;", "\n\tuniform vec4 uCenter;\n\tuniform float uZoom;\n\tuniform vec3 uPixelsPerMeter;\n\tuniform vec2 uResolution;\n\tuniform vec3 uProject_uCommonUnitsPerWorldUnit;\n\tuniform vec3 uProject_uCommonUnitsPerWorldUnit2;\n\tuniform vec4 uRelativeCenter;\n", i.varyingPart, "varying float v_gamma;", "varying vec4 v_color;", "varying vec4 v_strokeColor;", "varying float v_fontScale;", "varying float v_gammaScale;", i.projectScreenPart, r, i.filterPart, "void main(){", "\tvec2 transCoord = getWorldspaceCoord(uRelativeCenter, a_InstanceTrans.xy);", i.glPositionPart, "\n\t\t\tvec2 texCoords = a_Positions.xy * 0.5 + 0.5;\n\t\t\t\n\t\t\t\n\t\t\tvec2 resolution = mix(\n\t\t\t\tu_glyphTextureResolution,\n\t\t\t\tu_billboardTextureResolution,\n\t\t\t\tabs(a_InstanceInfo.z)\n\t\t\t);\n\t\t\tvec4 textureBounds = vec4(a_InstanceTextBounds.x, resolution.y - a_InstanceTextBounds.y - a_InstanceTextBounds.w, a_InstanceTextBounds.zw);\n\t\t\tv_TexCoord = mix(\n\t\t\t\ttextureBounds.xy,\n\t\t\t\ttextureBounds.xy + textureBounds.zw,\n\t\t\t\ttexCoords\n\t\t\t) / resolution;\n\n\t\t\tv_isShow = a_InstanceInfo.y;\n\t\t\tv_isIcon = a_InstanceInfo.z;\n\t\t\tv_opacity = max(0.0, min(1.0, a_InstanceInfo.w + mix(-u_fadeChange, u_fadeChange, v_isShow)));\n\t\t\tv_color = a_InstanceColors / 255.0;\n\t\t\tv_strokeColor = a_InstanceStrokeColors / 255.0;\n\n\t\t\tv_gamma = u_gamma / (a_InstanceCoords.y / a_InstanceTextBounds.w);\n\n\t\t\tv_fontScale = a_InstanceCoords.y / a_InstanceTextBounds.w;\n\t\t\tv_gammaScale = 1.0;\n\t\t}"].join("\n"),
f: ["#define SDF_PX 8.0", "#define EDGE_GAMMA 0.105 / 2.0", "precision highp float;", "uniform sampler2D u_SamplerText;", "uniform sampler2D u_SamplerGlyph;", "uniform float u_buffer;", "uniform float u_asbackground;", i.varyingPart, "varying float v_gamma;", "varying vec4 v_color;", "varying vec4 v_strokeColor;", "varying float v_fontScale;", "varying float v_gammaScale;", "void main() {", "\t vec4 vColor = v_color * v_color.a;", "\n\t\t\tvec4 color = mix(\n\t\t\t\ttexture2D(u_SamplerGlyph, v_TexCoord),\n\t\t\t\ttexture2D(u_SamplerText, v_TexCoord),\n\t\t\t\tabs(v_isIcon)\n\t\t\t);\n\t\t", "\n\t\t\tfloat alpha = color.a;\n\t\t\tfloat distance = alpha;\n\n\t\t\tfloat usedBuff = u_buffer;\n\t\t\tfloat usedGamma = v_gamma;\n\t\t\tfloat outlineFactor = smoothstep(usedBuff - usedGamma, usedBuff + usedGamma, distance);\n\t\t\tfloat finalAlpha = smoothstep(0.5 - usedGamma, 0.5 + usedGamma, distance);\n\n\t\t\tcolor = mix(\n\t\t\t\tmix(v_strokeColor * v_strokeColor.a, vColor, outlineFactor),\n\t\t\t\tcolor,\n\t\t\t\tstep(0.5, abs(v_isIcon))\n\t\t\t) * finalAlpha;\n\t\t\t\n\t\t\tgl_FragColor = color * v_opacity;\n\t\t}"].join("\n"),
name: "instance_symbol_indoor"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(276),
o = n(330),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o),
a = r.
default ? i.LIGHT_UNIFORM + i.LIGHT_VARYING + i.LIGHT_VERTEX: "",
s = r.
default ? i.LIGHT_VARYING + i.LIGHT_FRAG: "";
e.
default = {
v: "\n\t\tprecision highp float;\n\t\tattribute vec2 a_Position;\n\t\tattribute vec4 a_Color;\n\t\tattribute vec2 a_Normal;\n\t\tattribute vec2 a_LineInfo;\n\t\tattribute float a_LineDistance;\n\t\tattribute vec2 a_SideInfo;\n\t\tattribute vec4 a_PickingColor;\n\n\t\tuniform mat4 u_matrix;\n\t\tuniform mat4 u_modelMatrix;\n\t\tuniform float u_SizeScale;\n\t\tuniform float picking_useFeaturePickingColor;\n\n\t\tvarying vec4 v_Color;\n\t\tvarying vec2 v_Normal;\n\t\tvarying vec2 v_LineInfo;\n\t\tvarying vec2 v_Pos;\n\t\tvarying float v_Transform;\n\t\tvarying float v_LineDistance;\n\t\tvarying float v_Width;\n\t\tvarying float v_opaque_part;\n\n\t\t" + a + "\n\n\t\tvoid main(){\n\n\t\t\tfloat isSide = fract(a_SideInfo.x / 2.) * 2.;\n\t\t\tfloat isNoSideLine = floor(a_SideInfo.x / 2.);\n\t\t\tv_opaque_part = mix(1.0, 0.0, smoothstep(0.0, 1.0, isSide * isNoSideLine));\n\n\t\t\tfloat zoom = floor(u_SizeScale / 1000.) / 100.;\n\t\t\tfloat scale = fract(u_SizeScale / 1000.) * 10.;\n\t\t\tfloat preWidth = floor(a_Position.x / 2048.0)/2.0;\n\t\t\tfloat nextWidth = floor(a_Position.y / 2048.0)/2.0;\n\n\t\t\tv_Color = mix(a_Color, a_PickingColor, picking_useFeaturePickingColor);\n\t\t\tv_Normal = a_Normal;\n\t\t\tv_LineInfo = a_LineInfo;\n\t\t\tv_LineDistance = floor(a_LineDistance/10.0);\n\t\t\tvec2 point = (fract(a_Position.xy / 2048.0) * 2048.0 - 1024.0) * 0.5;\n\n\t\t\t\n\t\t\tfloat width = a_LineInfo.x / 2.0;\n\t\t\tfloat nearWidth = mix(nextWidth, preWidth, step(0.5, zoom));\n\t\t\tv_Width = mix(\n\t\t\t\twidth,\n\t\t\t\tmix(\n\t\t\t\t\tmix(width, nextWidth, zoom),\n\t\t\t\t\tmix(preWidth, width, zoom),\n\t\t\t\t\tstep(0.5, zoom)\n\t\t\t\t),\n\t\t\t\tfloat(v_LineDistance > 0. && nearWidth > 0.)\n\t\t\t) / scale;\n\n\t\t\tv_Normal = vec2(a_Normal.x - 128.0, a_Normal.y - 128.0) / 63.;\n\t\t\tv_Pos = point + v_Normal * v_Width;\n\t\t\tv_Transform = a_SideInfo.y;\n\t\t\tgl_Position = u_matrix * vec4(v_Pos, 0.0, 1.0);\n\n\t\t\t\n\t\t\t" + (r.
default ? "lighting_apply_on_vertex(vec3(v_Pos, 0.0), vec3(0.0, 0.0, 1.0), u_modelMatrix, vec2(0.1, 16.0));": "") + "\n\t\t}\n\t",
f: "\n\t\tprecision highp float;\n\t\tuniform float u_opacity;\n\t\tvarying vec4 v_Color;\n\t\tvarying vec2 v_Normal;\n\t\tvarying vec2 v_LineInfo;\n\t\tvarying vec2 v_Pos;\n\t\tvarying float v_Transform;\n\t\tvarying float v_LineDistance;\n\t\tvarying float v_Width;\n\t\tvarying float v_opaque_part;\n\n\t\t" + s + "\n\n\t\tvoid main(){\n\t\t\tvec4 f_Color;\n\t\t\tf_Color.r = v_Color.r / 255.0;\n\t\t\tf_Color.g = v_Color.g / 255.0;\n\t\t\tf_Color.b = v_Color.b / 255.0;\n\t\t\tf_Color.a = 1.0;\n\n\t\t\tfloat alpha = u_opacity;\n\t\t\tfloat feather = min(v_Width * 0.3, 2.0);\n\n\t\t\t\n\t\t\tfloat transformByte = floor(v_Transform + 0.5);\n\t\t\tvec2 translate = vec2(fract(transformByte / 4.0) * 4.0, floor(fract(transformByte / 16.0) * 4.0));\n\t\t\tfloat scale = floor(transformByte / 16.0);\n\t\t\tvec2 coord = vec2(v_Pos.x, 0. - v_Pos.y) * scale - translate * 256.0;\n\t\t\tbool isOutSide = coord.x < 0. || coord.x > 256.0 || coord.y < 0. || coord.y > 256.0;\n\n\t\t\tfloat dist = abs(length(v_Normal) * v_Width);\n\t\t\tfloat isTransparent = float(\n\t\t\t\t(dist > v_Width || isOutSide) || \n\t\t\t\t(v_LineInfo.y> 0.0 && mod(v_LineDistance, floor(v_LineInfo.y/10.0) * (2.0-fract(v_LineInfo.y/10.0))) > floor(v_LineInfo.y/10.0))\n\t\t\t);\n\n\t\t\talpha = mix(\n\t\t\t\tu_opacity,\n\t\t\t\t0.0,\n\t\t\t\tisTransparent\n\t\t\t);\n\n\t\t\t\n\t\t\t" + (r.
default ? "vec4 colorInLight = lighting_apply_on_color(f_Color);": "vec4 colorInLight = f_Color;") + "\n\t\t\tgl_FragColor = colorInLight * (v_Color.a /255.0) * alpha * v_opaque_part;\n\t\t}\n\t",
name: "trafficBase"
}
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.defaultShader = {
name: "instance_traffic_flow",
v: "\nattribute vec2 instanceLinks;\nattribute vec4 instanceColors;\nattribute float instanceParticles;\n\nuniform mat4 uMatrix;\nuniform sampler2D uSampler;\nuniform vec2 uTexInfo;\nuniform vec4 uSubTexInfo;\nuniform float uTick;\n\nvarying vec4 vColor;\n\nvoid main() {\n\n float stepByTime = floor(uTick / uTexInfo.y) + 0.4 + instanceParticles;\n float linkLength = instanceLinks.y;\n float offset = stepByTime - linkLength * floor(stepByTime / linkLength);\n\n float index = floor(instanceLinks.x + offset);\n\n\n\n float texSize = uTexInfo.x;\n vec2 uvInUnit = vec2(\n index - texSize * floor(index / texSize),\n floor(index / texSize)\n\n ) / (texSize - 1.);\n\n\n vec2 uvInSampler = uSubTexInfo.xy + uvInUnit * uSubTexInfo.zw;\n\n vec4 pointRGBA = texture2D(uSampler, uvInSampler);\n vec2 point = vec2(\n (pointRGBA.x + pointRGBA.y) * 256. - 128.,\n (pointRGBA.z + pointRGBA.w) * 256. - 128.\n );\n\n gl_Position = uMatrix * vec4(point.x, -point.y, 0., 1.);\n gl_PointSize = 5.;\n\n vColor = instanceColors / 255.;\n}\n",
f: "\nprecision mediump float;\n\nvarying vec4 vColor;\n\nvoid main() {\n float alpha = 1.0 - step(0.5, distance(gl_PointCoord, vec2(0.5)));\n gl_FragColor = vColor * alpha;\n}\n"
}
},
, , , , , , , , , , , ,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(10),
u = n(469),
c = function() {
function t(e, n, i) { (0, r.
default)(this, t),
this.workerPool = e,
this.actors = [],
this.currentActor = 0,
this.id = l.uniqueId();
for (var o = this.workerPool.acquire(this.id, i), a = 0; a < o.length; a++) {
var s = o[a],
c = new u(s, n, this.id);
c.name = "Worker " + a,
this.actors.push(c)
}
}
return (0, s.
default)(t, [{
key: "send",
value: function(t, e, n, i) {
return ("number" != typeof i || isNaN(i)) && (this.currentActor = (this.currentActor + 1) % this.actors.length, i = this.currentActor),
this.actors[i].send(t, e, n),
i
}
},
{
key: "remove",
value: function() {
this.actors.forEach(function(t) {
t.remove()
}),
this.actors = [],
this.workerPool.release(this.id)
}
},
{
key: "broadcast",
value: function(t, e, n) {
n = n ||
function() {},
l.asyncAll(this.actors,
function(n, i) {
n.send(t, e, i)
},
n)
}
},
{
key: "destroy",
value: function() {
this.remove()
}
}]),
t
} ();
e.
default = c
},
function(t, e, n) {
"use strict";
var i = n(624),
o = i(625);
t.exports = function() {
var t = new window.Worker(o);
return t.objectURL = o,
t
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
function e(i) {
if (n[i]) return n[i].exports;
var o = n[i] = {
i: i,
l: !1,
exports: {}
};
return t[i].call(o.exports, o, o.exports, e),
o.l = !0,
o.exports
}
var n = {};
e.m = t,
e.c = n,
e.i = function(t) {
return t
},
e.d = function(t, n, i) {
e.o(t, n) || (0, p.
default)(t, n, {
configurable: !1,
enumerable: !0,
get: i
})
},
e.r = function(t) {
Object.defineProperty(t, "__esModule", {
value: !0
})
},
e.n = function(t) {
var n = t && t.__esModule ?
function() {
return t.
default
}:
function() {
return t
};
return e.d(n, "a", n),
n
},
e.o = function(t, e) {
return Object.prototype.hasOwnProperty.call(t, e)
},
e.p = "/",
e.oe = function(t) {
throw console.error(t),
t
};
var i = e(e.s = ENTRY_MODULE);
return i.
default || i
}
function r(t) {
return ("" + t).replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&")
}
function a(t) {
return ! isNaN(1 * t)
}
function s(t, e, i) {
var o = {};
o[i] = [];
var s = e.toString(),
l = s.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);
if (!l) return o;
for (var u = l[1], c = new RegExp("(\\\\n|\\W)" + r(u) + m, "g"), f = void 0; f = c.exec(s);)"dll-reference" !== f[3] && o[i].push(f[3]);
for (c = new RegExp("\\(" + r(u) + '\\("(dll-reference\\s(' + _ + '))"\\)\\)' + m, "g"); f = c.exec(s);) t[f[2]] || (o[i].push(f[1]), t[f[2]] = n(f[1]).m),
o[f[2]] = o[f[2]] || [],
o[f[2]].push(f[4]);
for (var d = (0, h.
default)(o), v = 0; v < d.length; v++) for (var p = 0; p < o[d[v]].length; p++) a(o[d[v]][p]) && (o[d[v]][p] = 1 * o[d[v]][p]);
return o
}
function l(t) {
return (0, h.
default)(t).reduce(function(e, n) {
return e || t[n].length > 0
},
!1)
}
function u(t, e) {
for (var n = {
main: [e]
},
i = {
main: []
},
o = {
main: {}
}; l(n);) for (var r = (0, h.
default)(n), a = 0; a < r.length; a++) {
var u = r[a],
c = n[u],
f = c.pop();
if (o[u] = o[u] || {},
!o[u][f] && t[u][f]) {
o[u][f] = !0,
i[u] = i[u] || [],
i[u].push(f);
for (var d = s(t, t[u][f], u), v = (0, h.
default)(d), p = 0; p < v.length; p++) n[v[p]] = n[v[p]] || [],
n[v[p]] = n[v[p]].concat(d[v[p]])
}
}
return i
}
var c = n(113),
f = i(c),
d = n(17),
h = i(d),
v = n(75),
p = i(v),
_ = "[\\.|\\-|\\+|\\w|/|@]+",
m = "\\(\\s*(/\\*.*?\\*/)?\\s*.*?(" + _ + ").*?\\)";
t.exports = function(t, e) {
e = e || {};
var i = {
main: n.m
},
r = e.all ? {
main: (0, h.
default)(i.main)
}:
u(i, t),
a = ""; (0, h.
default)(r).filter(function(t) {
return "main" !== t
}).forEach(function(t) {
for (var e = 0; r[t][e];) e += 1;
r[t].push(e),
i[t][e] = "(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })",
a = a + "var " + t + " = (" + o.toString().replace("ENTRY_MODULE", (0, f.
default)(e)) + ")({" + r[t].map(function(e) {
return (0, f.
default)(e) + ": " + i[t][e].toString()
}).join(",") + "});\n"
}),
a = a + "new ((" + o.toString().replace("ENTRY_MODULE", (0, f.
default)(t)) + ")({" + r.main.map(function(t) {
return (0, f.
default)(t) + ": " + i.main[t].toString()
}).join(",") + "}))(self);";
var s = new window.Blob([a], {
type: "text/javascript"
});
return e.bare ? s: (window.URL || window.webkitURL || window.mozURL || window.msURL).createObjectURL(s)
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(222),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l);
n(464);
var c = n(672),
f = i(c),
d = n(675),
h = i(d),
v = n(678),
p = i(v),
_ = n(682),
m = i(_),
g = n(680),
y = i(g),
x = n(685),
b = i(x),
S = n(90),
w = n(469),
E = n(695),
T = function() {
function t(e) {
var n, i = this; (0, s.
default)(this, t),
this.self = e,
this.actor = new w(e, this),
this.layerIndexes = {},
this.workerSourceTypes = (n = {},
(0, r.
default)(n, S.SOURCE_TYPE.vector, E), (0, r.
default)(n, S.SOURCE_TYPE.geojson, f.
default), (0, r.
default)(n, S.SOURCE_TYPE.geoTask, h.
default), (0, r.
default)(n, S.SOURCE_TYPE.imageTile, p.
default), (0, r.
default)(n, S.SOURCE_TYPE.indoor, m.
default), (0, r.
default)(n, S.SOURCE_TYPE.indoorIndex, y.
default), (0, r.
default)(n, S.SOURCE_TYPE.traffic, b.
default), n),
this.workerSources = {},
this.self.registerWorkerSource = function(t, e) {
if (i.workerSourceTypes[t]) throw new Error('Worker source with name "' + t + '" already registered.');
i.workerSourceTypes[t] = e
}
}
return (0, u.
default)(t, [{
key: "loadTile",
value: function(t, e, n) {
this.getWorkerSource(t, e.type).loadTile(e, n)
}
},
{
key: "reloadTile",
value: function(t, e, n) {
this.getWorkerSource(t, e.type).reloadTile(e, n)
}
},
{
key: "abortTile",
value: function(t, e) {
this.getWorkerSource(t, e.type).abortTile(e)
}
},
{
key: "removeTile",
value: function(t, e) {
this.getWorkerSource(t, e.type).removeTile(e)
}
},
{
key: "removeSource",
value: function(t, e) {
var n = this.getWorkerSource(t, e.type);
void 0 !== n.removeSource && n.removeSource(e)
}
},
{
key: "getWorkerSource",
value: function(t, e) {
var n = this;
if (this.workerSources[t] || (this.workerSources[t] = {}), !this.workerSources[t][e]) {
var i = {
send: function(e, i, o) {
n.actor.send(e, i, o, t)
}
};
this.workerSources[t][e] = new this.workerSourceTypes[e](i, t)
}
return this.workerSources[t][e]
}
},
{
key: "tileOffset",
value: function(t, e, n) {
this.getWorkerSource(t, e.type).tileOffset(e, n)
}
}]),
t
} ();
t.exports = function(t) {
return new T(t)
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(17),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(28),
f = i(c),
d = n(623),
h = function() {
function t() { (0, s.
default)(this, t),
this.activeSet = {}
}
return (0, u.
default)(t, [{
key: "acquire",
value: function(t, e) {
return this._createWorker(e),
this.activeSet[t] = !0,
this.workers.slice()
}
},
{
key: "_createWorker",
value: function(t) {
if (!this.workers) {
this.workers = [];
for (var e = t || this._getWorkerCount(); this.workers.length < e;) this.workers.push(new d)
}
}
},
{
key: "_getWorkerCount",
value: function() {
if (f.
default.isLowMobileDevice()) return 2;
var t = f.
default.isPC() ? 4 : 2;
return 1 === f.
default.hardwareConcurrency ? 1 : Math.min(Math.floor(f.
default.hardwareConcurrency / 2), t)
}
},
{
key: "release",
value: function(t) {
delete this.activeSet[t],
(0, r.
default)(this.activeSet).length > 0 || this.reset()
}
},
{
key: "reset",
value: function() {
this.activeSet = {},
this.workers.forEach(function(t) {
t.terminate()
}),
this.workers = null
}
}]),
t
} (),
v = new h;
e.
default = v
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(221),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(106),
m = i(_),
g = n(256),
y = i(g),
x = n(29),
b = n(472),
S = i(b),
w = n(474),
E = i(w),
T = n(473),
A = i(T),
P = n(248),
I = ["left:0;", "top:0;", "overflow:visible;", "z-index:102;"],
k = function(t) {
function e(t) { (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this));
return n.map = t,
n.controls = {},
n.createControlContainer(t),
n
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "createControlContainer",
value: function(t) {
var e = t._overlayer.root;
this.controlContainer = document.createElement("div");
var n = this.controlContainer;
n.style.cssText = I.join(""),
e.appendChild(n),
t._overlayer.childs.controlLayer = n
}
},
{
key: "addControl",
value: function(t) {
if (t instanceof y.
default) {
var e = t.id;
this.controls[e] ? console.warn("addControl失败id重复。") : (this.controls[e] = t, t.addTo(this.map, this.controlContainer), this._fire("control_added", {},
!0))
} else new x.BaseTypeError("control", "Control", t).error();
return this
}
},
{
key: "removeControl",
value: function(t) {
if (this.controls[t]) {
this.controls[t].remove(),
delete this.controls[t],
this._fire("control_removed", {},
!0)
}
return this
}
},
{
key: "setViewMode",
value: function(t) { (0, r.
default)(this.controls).forEach(function(e) {
e && e.setViewMode && e.setViewMode(t)
})
}
},
{
key: "getControl",
value: function(t) {
if (this.controls[t]) return this.controls[t];
switch (t) {
case P.DEFAULT_CONTROL_ID.SCALE:
return new S.
default({
id:
P.DEFAULT_CONTROL_ID.SCALE,
position: P.CONTROL_POSITION.BOTTOM_LEFT,
center: this.map.getCenter(),
zoom: this.map.getZoom()
});
case P.DEFAULT_CONTROL_ID.ZOOM:
return new E.
default({
id:
P.DEFAULT_CONTROL_ID.ZOOM,
position: P.CONTROL_POSITION.TOP_RIGHT
});
case P.DEFAULT_CONTROL_ID.ROTATION:
return new A.
default({
id:
P.DEFAULT_CONTROL_ID.ROTATION,
position: P.CONTROL_POSITION.TOP_RIGHT
});
default:
return this.controls[t]
}
}
},
{
key: "destroy",
value: function() { (0, r.
default)(this.controls).forEach(function(t) {
t && t.destroy && t.destroy()
}),
this.controls = {},
this.map = null
}
}]),
e
} (m.
default);
e.
default = k
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = {
TOP_LEFT: 0,
TOP_CENTER: 1,
TOP_RIGHT: 2,
CENTER_LEFT: 3,
CENTER: 4,
CENTER_RIGHT: 5,
BOTTOM_LEFT: 6,
BOTTOM_CENTER: 7,
BOTTOM_RIGHT: 8
};
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(256),
p = i(v),
_ = n(1038),
m = i(_),
g = function(t) {
function e(t) {
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "createDOM",
value: function() {
var t = document.createElement("div"),
e = "margin-bottom: 30px; width: 230px; height:34px; background: rgba(255,255,255,0.90); z-index:200;";
e += "border: 1px solid #DEDEDE; border-radius: 3px; padding:0 15px 0 40px; box-sizing:border-box; line-height: 32px;",
e += "font-family: PingFangSC-Medium;font-size: 13px;color: #EF4D4D;letter-spacing: 0;",
t.style.cssText = e,
t.innerHTML = "鉴权失败请传入正确的key";
var n = document.createElement("img");
return n.style.cssText = "width:20px; height:20px; position:absolute; top:6px; left:15px",
n.src = m.
default,
t.appendChild(n),
t
}
}]),
e
} (p.
default);
e.
default = g
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = window.innerHeight,
n = window.innerWidth,
i = e > n ? n: e,
o = "",
r = "",
a = 3.5 * i / 100;
a > 71 ? (r = 3.9 / 3.5 * 71 + "px", o = "28.4px") : a < 34 ? (r = 3.9 / 3.5 * 34 + "px", o = "13.6px") : (r = "3.9vmin", o = "1.4vmin"),
t.style.cssText = "margin-left:" + o + ";bottom:0;line-height:" + r + ";font-size:" + o + ";color:#333;font-family:Arial,sans-serif;white-space:nowrap;z-index:0;transform:rotateX(0deg)"
}
var r = n(3),
a = i(r),
s = n(0),
l = i(s),
u = n(1),
c = i(u),
f = n(5),
d = i(f),
h = n(4),
v = i(h),
p = n(256),
_ = i(p),
m = n(1039),
g = i(m),
y = n(248),
x = y.LOGO_URL.DEFAULT_LOGO,
b = y.LOGO_URL.GRAY_LOGO,
S = (new Date).getFullYear(),
w = function(t) {
function e(t) {
return (0, l.
default)(this, e),
(0, d.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, t))
}
return (0, v.
default)(e, t),
(0, c.
default)(e, [{
key: "onInit",
value: function(t) {
this.hasSatellite = t.hasSatellite
}
},
{
key: "updateMapAppNum",
value: function(t) {
this.hasSatellite !== t && (this.hasSatellite = t, this.text.innerText = this.getTextValue())
}
},
{
key: "getMapAppNum",
value: function() {
return this.hasSatellite ? y.MAP_APPROVAL_NUMBER.satellite: y.MAP_APPROVAL_NUMBER.vector
}
},
{
key: "getTextValue",
value: function() {
return "©" + S + " Tencent - " + this.getMapAppNum() + "号 - Data© NavInfo"
}
},
{
key: "createDOM",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.style,
n = void 0 === e ? "default": e;
return this._createPlatformDom(n)
}
},
{
key: "_createPlatformDom",
value: function(t) {
var e = document.createElement("div");
e.style.cssText = "margin:1px;display:flex;align-items:center";
var n = document.createElement("a");
n.style.cssText = "z-index:1;",
n.href = "http://map.qq.com?ref=jsapi_v3",
n.target = "_blank",
n.style.cssText = "max-height:22px;max-width:150px;transform:rotateX(0deg)",
e.appendChild(n);
var i = document.createElement("div");
return i.className = "logo-text",
i.style.cssText = "padding-left:5px;font-size:10px;color:#333;font-family:Arial,sans-serif;white-space:nowrap;z-index:0;transform:rotateX(0deg)",
i.innerText = this.getTextValue(),
e.appendChild(i),
this.text = i,
this.logoImg = new Image,
this.logoImg.src = "gray" === t ? b: x,
this.logoImg.style.cssText = "max-height:22px;max-width:150px;",
n.appendChild(this.logoImg),
e
}
},
{
key: "_createVisDom",
value: function() {
var t = document.createElement("div");
t.style.cssText = "overflow:visible;margin:1px;margin-top:1vmin;display:flex;";
var e = document.createElement("a");
e.style.cssText = "z-index:1;",
e.target = "_blank",
e.style.cssText = "transform:rotateX(0deg);",
t.appendChild(e);
var n = document.createElement("div");
n.className = "logo-text",
n.style.cssText = "display:none;",
n.innerText = this.getTextValue(),
t.appendChild(n),
this.text = n;
var i = new Image;
return i.src = g.
default,
i.style.marginBottom = "-500px",
e.appendChild(i),
i.onload = function() {
i.style.height = "3.5vmin",
i.style.maxHeight = "71px",
i.style.minHeight = "34px",
i.style.width = "10.5vmin",
i.style.maxWidth = "210px",
i.style.minWidth = "100px",
i.style.imageRendering = "-webkit-optimize-contrast",
i.style.marginBottom = "0px",
window.addEventListener("resize",
function() {
return o(n)
}),
o(n)
},
t
}
},
{
key: "changeLogoUrl",
value: function(t) {
t && this.logoImg && this.logoImg.src !== t && (this.logoImg.src = t)
}
}]),
e
} (_.
default);
t.exports = w
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(32),
r = i(o),
a = n(27),
s = i(a),
l = n(148),
u = i(l),
c = n(3),
f = i(c),
d = n(0),
h = i(d),
v = n(1),
p = i(v),
_ = n(5),
m = i(_),
g = n(4),
y = i(g),
x = n(256),
b = i(x),
S = n(297),
w = n(633),
E = n(632),
T = n(28),
A = n(210),
P = n(1026),
I = n(1037),
k = n(1036);
n(1030);
var L = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
if ((0, h.
default)(this, e), !t.floorList || !t.buildingId) return console.error("楼层参数不合法!", t),
(0, m.
default)(n);
var n = (0, m.
default)(this, (e.__proto__ || (0, f.
default)(e)).call(this, t));
return n._construct(),
n
}
return (0, y.
default)(e, t),
(0, p.
default)(e, [{
key: "onInit",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
n = e.buildingId,
i = e.selectedFloor,
o = e.floorList;
this.buildingId = n,
this.floorMap = new u.
default,
this.floors = [],
o.map(function(e, n) {
t.floorMap.set(e.name, String(n)),
t.floors.push(e.name)
}),
this.list = null,
this.selectedFloorIdx = this.floorMap.get(i),
this._floorIndex = this._getFloorIndex(this.selectedFloorIdx)
}
},
{
key: "createDOM",
value: function() {
var t = (0, S.Template)(P, {
floors: this.floors
}),
e = (0, A.toDom)(t),
n = document.createElement("div");
return n.appendChild(e.querySelector(".floor-control")),
n
}
},
{
key: "_construct",
value: function() {
var t = this;
this.wrapperNode = this.dom.querySelector(".floor-control-wrapper"),
this.list = this.dom.querySelector(".floor-control-list"),
this.arrTopImg = this.dom.querySelector(".arr-top"),
this.arrBottomImg = this.dom.querySelector(".arr-bottom"),
this.arrTopImg.src = I,
this.arrBottomImg.src = k,
(0, w.Transform)(this.list),
this.floorListScroll = new E.Scroll({
touch: this.wrapperNode,
vertical: !0,
target: this.list,
property: "translateY",
bindSelf: !0,
maxSpeed: 2,
outFactor: .2,
min: -40 * Math.max(this.floors.length - 4, 0),
max: 0,
lockDirection: !1,
maxRegion: 10,
springMaxRegion: 1,
touchStart: function() {
t.floorListScroll.min = -40 * Math.max(t.floors.length - 4, 0)
}
}),
this._bindEvents(),
"number" == typeof this._floorIndex && this._floorIndex > -1 && this._updateSelectedFloor(this._floorIndex, !0)
}
},
{
key: "setFreezing",
value: function(t) {
t ? (0, A.addClass)(this.wrapperNode, "freezing") : (0, A.removeClass)(this.wrapperNode, "freezing")
}
},
{
key: "selectFloor",
value: function(t, e) {
var n = this.floorMap.get(t),
i = this._getFloorIndex(n);
i > -1 ? this._updateSelectedFloor(i, !1, e) : console.error("楼层不存在!", n)
}
},
{
key: "_bindEvents",
value: function() {
var t = this,
e = this._bindClick();
if ((0, T.isPC)()) {
e.remove();
var n = {},
i = {}; (0, T.on)(this.list, "mousedown",
function(t) {
n = (0, A.getPointerXY)(t)
}),
(0, T.on)(this.list, "mouseup",
function(e) {
if (i = (0, A.getPointerXY)(e), Math.abs(i.y - n.y) <= 2 && Math.abs(i.x - n.x) <= 2) {
if ((0, A.hasClass)(t.wrapperNode, "freezing")) return ! 0;
var o = e.target.getAttribute("data-floor");
t.selectFloor(o)
}
})
}
}
},
{
key: "_bindClick",
value: function() {
var t = this;
return (0, T.on)(this.list, ".floor-control-item:click",
function(e) {
if ((0, A.hasClass)(t.wrapperNode, "freezing")) return ! 0;
var n = e.selectorTarget.getAttribute("data-floor");
t.selectFloor(n)
})
}
},
{
key: "getFloorName",
value: function(t) {
var e = t.toString(),
n = !0,
i = !1,
o = void 0;
try {
for (var a, l = (0, s.
default)(this.floorMap.entries()); ! (n = (a = l.next()).done); n = !0) {
var u = (0, r.
default)(a.value, 2),
c = u[0];
if (u[1] === e) return c
}
} catch(t) {
i = !0,
o = t
} finally {
try { ! n && l.
return && l.
return ()
} finally {
if (i) throw o
}
}
}
},
{
key: "_getFloorIndex",
value: function(t) {
var e = this.getFloorName(t);
return this.floors.indexOf(e)
}
},
{
key: "_getFloorItem",
value: function(t) {
return this.dom.querySelector('.floor-control-item[data-index="' + t + '"]')
}
},
{
key: "_addSelected",
value: function(t) { (0, A.addClass)(t, "selected-item"),
3 === t.innerHTML.length ? t.style.fontSize = "13px": 4 === t.innerHTML.length ? t.style.fontSize = "10px": t.innerHTML.length > 4 && (t.style.fontSize = "8px")
}
},
{
key: "_removeSelected",
value: function(t) { (0, A.removeClass)(t, "selected-item"),
t.style.fontSize = ""
}
},
{
key: "_updateSelectedFloor",
value: function(t, e, n) {
var i = this,
o = this._getFloorItem(this._floorIndex),
r = this._getFloorItem(t);
if (this._removeSelected(o), this._addSelected(r), this.floorListScroll) {
var a = this.floorListScroll.getComputedPosition(),
s = Math.floor((this.floorListScroll.max - a) / 40); [0, 1, 2, 3].map(function(t) {
return t + s
}).includes(t) || this.floorListScroll.to(Math.min(this.floorListScroll.max, Math.max( - 40 * (t - 2), this.floorListScroll.min)), 200)
}
if (e || t !== this._floorIndex) {
this._floorIndex = t;
var l = parseInt(this.floorMap.get(this.floors[t]), 10),
u = l > this.selectedFloorIdx;
this.selectedFloorIdx = l,
n || setTimeout(function() {
i.emit("floor-change", {
floorIdx: i.selectedFloorIdx,
floorName: i.floors[i.selectedFloorIdx],
upper: u
})
},
0)
}
}
},
{
key: "show",
value: function() {
this.dom.style.display = "block"
}
},
{
key: "hide",
value: function() {
this.dom.style.display = "none"
}
},
{
key: "changeBottom",
value: function(t) {
if (isNaN(t)) return void console.error("top需要传数字");
this.dom.style.bottom = t + "px"
}
}]),
e
} (b.
default);
e.
default = L
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return 1 - Math.sqrt(1 - t * t)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Scroll = void 0;
var r = n(0),
a = i(r),
s = n(1),
l = i(s),
u = n(28),
c = n(210),
f = "cubic-bezier(0.1, 0.57, 0.1, 1)";
e.Scroll = function() {
function t(e) { (0, a.
default)(this, t),
this.element = "string" == typeof e.touch ? document.querySelector(e.touch) : e.touch,
this.scroller = this._getValue(e.target, this.element),
this.vertical = this._getValue(e.vertical, !0),
this.property = e.property,
this.sensitivity = this._getValue(e.sensitivity, 1),
this.lockDirection = this._getValue(e.lockDirection, !0),
this.tickID = 0,
this.handlers = [],
this.initialValue = this._getValue(e.initialValue, this.scroller[this.property]),
this.scroller[this.property] = this.initialValue,
this.moveFactor = this._getValue(e.moveFactor, 1),
this.factor = this._getValue(e.factor, 1),
this.outFactor = this._getValue(e.outFactor, .3),
this.min = e.min,
this.max = e.max,
this.maxRegion = this._getValue(e.maxRegion, 600),
this.deceleration = 6e-4,
this.springMaxRegion = this._getValue(e.springMaxRegion, 60),
this.fixed = this._getValue(e.fixed, !1);
var n = function() {};
if (this.change = e.change || n, this.touchEnd = e.touchEnd || n, this.touchStart = e.touchStart || n, this.touchMove = e.touchMove || n, this.touchCancel = e.touchCancel || n, this.animationEnd = e.animationEnd || n, this.hasMin = !(void 0 === this.min), this.hasMax = !(void 0 === this.max), this.isTouchStart = !1, this.step = e.step, this.inertia = this._getValue(e.inertia, !0), this.maxSpeed = e.maxSpeed, this.hasMaxSpeed = !(void 0 === this.maxSpeed), this.hasMax && this.hasMin) {
if (this.min > this.max) throw "min value can't be greater than max value";
this.currentPage = Math.round((this.max - this.scroller[this.property]) / this.step)
}
this.preventDefault = this._getValue(e.preventDefault, !0),
this.eventTarget = self,
e.bindSelf && (this.eventTarget = this.element),
this.bindEvents(),
this._endCallbackTag = !0,
this._endTimeout = null
}
return (0, l.
default)(t, [{
key: "bindEvents",
value: function() {
var t = this; (0, u.isPC)() ? (this.handlers.push((0, u.on)(this.eventTarget, "mousedown",
function(e) {
t._start(e)
})), this.handlers.push((0, u.on)(this.eventTarget, "mouseup",
function(e) {
t._end(e)
})), this.handlers.push((0, u.on)(this.eventTarget, "mouseleave",
function(e) {
t._end(e)
})), this.handlers.push((0, u.on)(this.eventTarget, "mousemove",
function(e) {
t._move(e)
})), this.handlers.push((0, u.on)(this.eventTarget, "click",
function(t) {
t.stopPropagation()
}))) : (this.handlers.push((0, u.on)(this.eventTarget, "touchstart",
function(e) {
t._start(e)
})), this.handlers.push((0, u.on)(this.eventTarget, "touchend",
function(e) {
t._end(e)
})), this.handlers.push((0, u.on)(this.eventTarget, "touchcancel",
function(e) {
t._cancel(e)
})), this.handlers.push((0, u.on)(this.eventTarget, "touchmove",
function(e) {
t._move(e)
}))),
this.handlers.push((0, u.on)(this.scroller, c.TRANSITIONEND,
function(e) {
t._transitionEnd(e)
}))
}
},
{
key: "_getValue",
value: function(t, e) {
return void 0 === t ? e: t
}
},
{
key: "_transitionEnd",
value: function() {
var t = this;
if (this._triggerTransitionEnd) {
var e = this.scroller[this.property];
return e < this.min ? void this.to(this.min, 600, f) : e > this.max ? void this.to(this.max, 600, f) : void(this.step ? (this._correction(), this._endCallbackTag && (this._endCallbackTag = setTimeout(function() {
t.animationEnd(e),
(0, u.cancelFrame)(t.tickID)
},
400), this._endCallbackTag = !1)) : (this.animationEnd(e), (0, u.cancelFrame)(this.tickID)))
}
}
},
{
key: "_cancelAnimation",
value: function() {
this.scroller.style[c.TRANSITIONDURATION] = "0ms",
this.scroller[this.property] = this.getComputedPosition()
}
},
{
key: "getComputedPosition",
value: function() {
var t = self.getComputedStyle(this.scroller, null);
return t = t[c.TRANSFORM].split(")")[0].split(", "),
this.vertical ? +(t[13] || t[5]) : +(t[12] || t[4])
}
},
{
key: "_tick",
value: function() {
this.change(this.getComputedPosition()),
this.tickID = (0, u.frame)(this._tick.bind(this))
}
},
{
key: "_start",
value: function(t) { (0, u.cancelFrame)(this.tickID),
this._endCallbackTag = !0,
this.isTouchStart = !0,
this._firstTouchMove = !0,
this._preventMove = !1,
this.touchStart(t, this.scroller[this.property]),
this._cancelAnimation(),
clearTimeout(this._endTimeout),
this.hasMax && this.hasMin && (this.currentPage = Math.round((this.max - this.scroller[this.property]) / this.step)),
this.startTime = (new Date).getTime();
var e = (0, c.getPointerXY)(t);
this.preX = e.x,
this._startX = this.preX,
this.preY = e.y,
this._startY = this.preY,
this.start = this.vertical ? this.preY: this.preX,
t.stopPropagation()
}
},
{
key: "_move",
value: function(t) {
console.log(56446)
if (this.isTouchStart) {
var e = (0, c.getPointerXY)(t),
n = Math.abs(e.x - this._startX),
i = Math.abs(e.y - this._startY);
if (this._firstTouchMove && this.lockDirection) {
var o = n - i;
o > 0 && this.vertical ? this._preventMove = !0 : o < 0 && !this.vertical && (this._preventMove = !0),
this._firstTouchMove = !1
}
if (n < 10 && i < 10) return;
if (!this._preventMove) {
var r = this.moveFactor,
a = (this.vertical ? e.y - this.preY: e.x - this.preX) * this.sensitivity;
this.hasMax && this.scroller[this.property] > this.max && a > 0 ? r = this.outFactor: this.hasMin && this.scroller[this.property] < this.min && a < 0 && (r = this.outFactor),
a *= r,
this.preX = e.x,
this.preY = e.y,
this.scroller[this.property] += a;
var s = (new Date).getTime();
s - this.startTime > 300 && (this.startTime = s, this.start = this.vertical ? this.preY: this.preX),
this.touchMove(t, this.scroller[this.property])
}
this.preventDefault && t.cancelable && t.preventDefault(),
t.stopPropagation()
}
}
},
{
key: "_end",
value: function(t) {
console.log(56446)
if (this.isTouchStart) {
var e = this.scroller[this.property],
n = (0, c.getPointerXY)(t);
if ((n.x - this._startX >= 2 || n.y - this._startY >= 2) && (0, u.isPC)(), !1 === this.touchEnd(t, e)) return void(this._triggerTransitionEnd = !1);
if (this._triggerTransitionEnd = !0, this.hasMax && e > this.max) this.to(this.max, 600, f);
else if (this.hasMin && e < this.min) this.to(this.min, 600, f);
else if (this.inertia && !this._preventMove) {
var i = (new Date).getTime() - this.startTime;
if (i < 300) {
var r = ((this.vertical ? n.y: n.x) - this.start) * this.sensitivity,
a = Math.abs(r) / i,
s = this.factor * a;
this.hasMaxSpeed && s > this.maxSpeed && (s = this.maxSpeed);
var l = e + s * s / (2 * this.deceleration) * (r < 0 ? -1 : 1),
d = 1;
l < this.min ? l < this.min - this.maxRegion ? (d = o((e - this.min + this.springMaxRegion) / (e - l)), l = this.min - this.springMaxRegion) : (d = o((e - this.min + this.springMaxRegion * (this.min - l) / this.maxRegion) / (e - l)), l = this.min - this.springMaxRegion * (this.min - l) / this.maxRegion) : l > this.max && (l > this.max + this.maxRegion ? (d = o((this.max + this.springMaxRegion - e) / (l - e)), l = this.max + this.springMaxRegion) : (d = o((this.max + this.springMaxRegion * (l - this.max) / this.maxRegion - e) / (l - e)), l = this.max + this.springMaxRegion * (l - this.max) / this.maxRegion));
var h = Math.round(a / this.deceleration) * d;
this.to(Math.round(l), h, f)
} else this.step && this._correction()
} else this.step && this._correction();
this.isTouchStart = !1,
t.stopPropagation()
}
}
},
{
key: "_cancel",
value: function(t) { (0, u.cancelFrame)(this.tickID),
this.step && this._correction(),
this.touchCancel(t)
}
},
{
key: "goMin",
value: function(t) {
var e = this.scroller[this.property]; (t || this.hasMin && e < this.min) && this.to(this.min, 200, f)
}
},
{
key: "goMax",
value: function(t) {
var e = this.scroller[this.property]; (t || this.hasMax && e > this.max) && this.to(this.max, 200, f)
}
},
{
key: "to",
value: function(t, e, n) {
var i = this.scroller,
o = this.property;
i.style[c.TRANSITIONDURATION] = this._getValue(e, 600) + "ms",
i.style[c.TRANSITIONTIMINGFUNCTION] = n || f,
i[o] = t
}
},
{
key: "_correction",
value: function() {
var t = self.getComputedStyle(this.scroller)[c.TRANSFORM],
e = this.vertical ? parseInt(t.split(",")[13]) : parseInt(t.split(",")[12]),
n = Math.floor(Math.abs(e / this.step)),
i = e % this.step,
o = void 0;
Math.abs(i) > this.step / 2 ? (o = (e < 0 ? -1 : 1) * (n + 1) * this.step, o > this.max && (o = this.max), o < this.min && (o = this.min), this.to(o, 400, f)) : (o = (e < 0 ? -1 : 1) * n * this.step, o > this.max && (o = this.max), o < this.min && (o = this.min), this.to(o, 400, f))
}
},
{
key: "destroy",
value: function() {
this.handlers.forEach(function(t) {
t && t.remove && t.remove()
})
}
}]),
t
} ()
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
for (var i = 0,
o = e.length; i < o; i++) {
r(t, e[i], n)
}
}
function r(t, e, n) { (0, f.
default)(t, e, {
get: function() {
return this["_" + e]
},
set: function(t) {
this["_" + e] = t,
n()
}
})
}
function a(t) {
return "object" === ("undefined" == typeof HTMLElement ? "undefined": (0, u.
default)(HTMLElement)) ? t instanceof HTMLElement: t && "object" === (void 0 === t ? "undefined": (0, u.
default)(t)) && null !== t && 1 === t.nodeType && "string" == typeof t.nodeName
}
function s(t, e) {
if (!t.hasOwnProperty("translateX")) {
var n = ["translateX", "translateY", "translateZ", "scaleX", "scaleY", "scaleZ", "rotateX", "rotateY", "rotateZ", "skewX", "skewY", "originX", "originY", "originZ"],
i = a(t);
e || n.push("perspective"),
o(t, n,
function() {
var n = t.matrix3d.identity().appendTransform(t.translateX, t.translateY, t.translateZ, t.scaleX, t.scaleY, t.scaleZ, t.rotateX, t.rotateY, t.rotateZ, t.skewX, t.skewY, t.originX, t.originY, t.originZ),
o = (e ? "": "perspective(" + t.perspective + "px) ") + "matrix3d(" + Array.prototype.slice.call(n.elements).join(",") + ")";
i ? (t.style.transform = o, t.style.msTransform = o, t.style.OTransform = o, t.style.MozTransform = o, t.style.webkitTransform = o) : t.transform = o
}),
t.matrix3d = new h,
e || (t.perspective = 500),
t.scaleX = 1,
t.scaleY = 1,
t.scaleZ = 1,
t.translateX = 0,
t.translateY = 0,
t.translateZ = 0,
t.rotateX = 0,
t.rotateY = 0,
t.rotateZ = 0,
t.skewX = 0,
t.skewY = 0,
t.originX = 0,
t.originY = 0,
t.originZ = 0
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Transform = void 0;
var l = n(20),
u = i(l),
c = n(75),
f = i(c),
d = .017453292519943295,
h = function(t, e, n, i, o, r, a, s, l, u, c, f, d, h, v, p) {
this.elements = window.Float32Array ? new Float32Array(16) : [];
var _ = this.elements;
_[0] = void 0 !== t ? t: 1,
_[4] = e || 0,
_[8] = n || 0,
_[12] = i || 0,
_[1] = o || 0,
_[5] = void 0 !== r ? r: 1,
_[9] = a || 0,
_[13] = s || 0,
_[2] = l || 0,
_[6] = u || 0,
_[10] = void 0 !== c ? c: 1,
_[14] = f || 0,
_[3] = d || 0,
_[7] = h || 0,
_[11] = v || 0,
_[15] = void 0 !== p ? p: 1
};
h.prototype = {
set: function(t, e, n, i, o, r, a, s, l, u, c, f, d, h, v, p) {
var _ = this.elements;
return _[0] = t,
_[4] = e,
_[8] = n,
_[12] = i,
_[1] = o,
_[5] = r,
_[9] = a,
_[13] = s,
_[2] = l,
_[6] = u,
_[10] = c,
_[14] = f,
_[3] = d,
_[7] = h,
_[11] = v,
_[15] = p,
this
},
identity: function() {
return this.set(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1),
this
},
multiplyMatrices: function(t, e) {
var n = t.elements,
i = this.elements,
o = n[0],
r = n[4],
a = n[8],
s = n[12],
l = n[1],
u = n[5],
c = n[9],
f = n[13],
d = n[2],
h = n[6],
v = n[10],
p = n[14],
_ = n[3],
m = n[7],
g = n[11],
y = n[15],
x = e[0],
b = e[1],
S = e[2],
w = e[3],
E = e[4],
T = e[5],
A = e[6],
P = e[7],
I = e[8],
k = e[9],
L = e[10],
M = e[11],
C = e[12],
R = e[13],
B = e[14],
N = e[15];
return i[0] = o * x + r * E + a * I + s * C,
i[4] = o * b + r * T + a * k + s * R,
i[8] = o * S + r * A + a * L + s * B,
i[12] = o * w + r * P + a * M + s * N,
i[1] = l * x + u * E + c * I + f * C,
i[5] = l * b + u * T + c * k + f * R,
i[9] = l * S + u * A + c * L + f * B,
i[13] = l * w + u * P + c * M + f * N,
i[2] = d * x + h * E + v * I + p * C,
i[6] = d * b + h * T + v * k + p * R,
i[10] = d * S + h * A + v * L + p * B,
i[14] = d * w + h * P + v * M + p * N,
i[3] = _ * x + m * E + g * I + y * C,
i[7] = _ * b + m * T + g * k + y * R,
i[11] = _ * S + m * A + g * L + y * B,
i[15] = _ * w + m * P + g * M + y * N,
this
},
_rounded: function(t, e) {
return e = Math.pow(10, e || 15),
Math.round(t * e) / e
},
_arrayWrap: function(t) {
return self.Float32Array ? new Float32Array(t) : t
},
appendTransform: function(t, e, n, i, o, r, a, s, l, u, c, f, h, v) {
var p = a * d,
_ = this._rounded(Math.cos(p)),
m = this._rounded(Math.sin(p)),
g = s * d,
y = this._rounded(Math.cos(g)),
x = this._rounded(Math.sin(g)),
b = l * d,
S = this._rounded(Math.cos( - 1 * b)),
w = this._rounded(Math.sin( - 1 * b));
return this.multiplyMatrices(this, this._arrayWrap([1, 0, 0, t, 0, _, m, e, 0, -m, _, n, 0, 0, 0, 1])),
this.multiplyMatrices(this, this._arrayWrap([y, 0, x, 0, 0, 1, 0, 0, -x, 0, y, 0, 0, 0, 0, 1])),
this.multiplyMatrices(this, this._arrayWrap([S * i, w * o, 0, 0, -w * i, S * o, 0, 0, 0, 0, 1 * r, 0, 0, 0, 0, 1])),
(u || c) && this.multiplyMatrices(this, this._arrayWrap([this._rounded(Math.cos(u * d)), this._rounded(Math.sin(u * d)), 0, 0, -1 * this._rounded(Math.sin(c * d)), this._rounded(Math.cos(c * d)), 0, 0, 0, 0, 1, 0, 0, 0, 0, 1])),
(f || h || v) && (this.elements[12] -= f * this.elements[0] + h * this.elements[4] + v * this.elements[8], this.elements[13] -= f * this.elements[1] + h * this.elements[5] + v * this.elements[9], this.elements[14] -= f * this.elements[2] + h * this.elements[6] + v * this.elements[10]),
this
}
};
var v = function(t, e, n, i, o, r) {
return this.a = null === t ? 1 : t,
this.b = e || 0,
this.c = n || 0,
this.d = null === i ? 1 : i,
this.tx = o || 0,
this.ty = r || 0,
this
};
v.prototype = {
identity: function() {
return this.a = 1,
this.d = 1,
this.b = 0,
this.c = 0,
this.tx = 0,
this.ty = 0,
this
},
appendTransform: function(t, e, n, i, o, r, a, s, l) {
var u = void 0,
c = void 0;
if (o % 360) {
var f = o * d;
u = Math.cos(f),
c = Math.sin(f)
} else u = 1,
c = 0;
return r || a ? (r *= d, a *= d, this.append(Math.cos(a), Math.sin(a), -Math.sin(r), Math.cos(r), t, e), this.append(u * n, c * n, -c * i, u * i, 0, 0)) : this.append(u * n, c * n, -c * i, u * i, t, e),
(s || l) && (this.tx -= s * this.a + l * this.c, this.ty -= s * this.b + l * this.d),
this
},
append: function(t, e, n, i, o, r) {
var a = this.a,
s = this.b,
l = this.c,
u = this.d;
return this.a = t * a + e * l,
this.b = t * s + e * u,
this.c = n * a + i * l,
this.d = n * s + i * u,
this.tx = o * a + r * l + this.tx,
this.ty = o * s + r * u + this.ty,
this
},
initialize: function(t, e, n, i, o, r) {
return this.a = t,
this.b = e,
this.c = n,
this.d = i,
this.tx = o,
this.ty = r,
this
},
setValues: function(t, e, n, i, o, r) {
return this.a = null === t ? 1 : t,
this.b = e || 0,
this.c = n || 0,
this.d = null === i ? 1 : i,
this.tx = o || 0,
this.ty = r || 0,
this
},
copy: function(t) {
return this.setValues(t.a, t.b, t.c, t.d, t.tx, t.ty)
}
},
s.getMatrix3D = function(t) {
var e = {
translateX: 0,
translateY: 0,
translateZ: 0,
rotateX: 0,
rotateY: 0,
rotateZ: 0,
skewX: 0,
skewY: 0,
originX: 0,
originY: 0,
originZ: 0,
scaleX: 1,
scaleY: 1,
scaleZ: 1
};
for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]);
return (new h).identity().appendTransform(e.translateX, e.translateY, e.translateZ, e.scaleX, e.scaleY, e.scaleZ, e.rotateX, e.rotateY, e.rotateZ, e.skewX, e.skewY, e.originX, e.originY, e.originZ).elements
},
s.getMatrix2D = function(t) {
var e = {
translateX: 0,
translateY: 0,
rotation: 0,
skewX: 0,
skewY: 0,
originX: 0,
originY: 0,
scaleX: 1,
scaleY: 1
};
for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]);
return (new v).identity().appendTransform(e.translateX, e.translateY, e.scaleX, e.scaleY, e.rotation, e.skewX, e.skewY, e.originX, e.originY)
};
var p = s;
e.Transform = p
},
function(t, e, n) {
"use strict";
function i(t, e, n, i, o) {
var r = (e[1] - t[1]) * (n[2] - t[2]) - (e[2] - t[2]) * (n[1] - t[1]),
a = (e[2] - t[2]) * (n[0] - t[0]) - (e[0] - t[0]) * (n[2] - t[2]),
s = (e[0] - t[0]) * (n[1] - t[1]) - (e[1] - t[1]) * (n[0] - t[0]),
l = Math.max(Math.abs(r), Math.abs(a), Math.abs(s));
if (i > 0 && l > 0) {
var u = i / l;
r *= u,
a *= u,
s *= u
}
return o = o || 0,
r += o,
a += o,
s += o,
[~~r, ~~a, ~~s]
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = i
},
function(t, e, n) {
"use strict";
n(464);
var i = n(105),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i),
r = n(43),
a = n(56),
s = window[a] || (window[a] = {}),
l = n(559),
u = n(463),
c = o.
default.key,
f = o.
default.version,
d = o.
default.loadScriptTime;
for (var h in l) l.hasOwnProperty(h) && (s[h] = l[h]);
s.Handler = u;
var v = +new Date; (0, r.pv)({
key: c,
version: f,
loadDeltaTime: v - d
}),
location.protocol.indexOf("file") > -1 && console.error("腾讯地图 JavaScript API 不支持在file协议使用请在http或https协议下使用"),
t.exports = s
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(25),
r = i(o),
a = n(16),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(4),
m = i(_),
g = n(106),
y = i(g),
x = n(47),
b = i(x),
S = n(209),
w = i(S),
E = n(665),
T = i(E),
A = n(66),
P = n(90),
I = function(t) {
function e(t, n) { (0, f.
default)(this, e);
var i = (0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this));
return i._buildingId = t,
i._cityId = t.substring(0, 6),
i._map = n.map,
i._id = "indoor_bulding_" + i._buildingId,
i._manager = n.manager,
i._buildingInfo = null,
i._buildingBounds = null,
i._isActiveStatus = !1,
i._destroyed = !1,
i._createLayer(n),
i
}
return (0, m.
default)(e, t),
(0, h.
default)(e, [{
key: "isActive",
value: function() {
return this._isActiveStatus
}
},
{
key: "_setActiveStatus",
value: function(t) {
this._isActiveStatus = t
}
},
{
key: "_createLayer",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this._sourceId = this._id,
this._map.addSource(this._sourceId, {
type: P.SOURCE_TYPE.indoor,
data: {
buildingId: this._buildingId,
cityId: this._cityId,
indoorStyleId: e.indoorStyleId
}
}),
this._regionLayer = new T.
default((0, s.
default)(e, {
map: this._map,
id: this._id + "_region",
sourceId: this._sourceId,
type: A.RENDER_LAYER_TYPE.indoorRegion
})),
this._poiLayer = new T.
default((0, s.
default)(e, {
map: this._map,
id: this._id + "_poi",
sourceId: this._sourceId,
type: A.RENDER_LAYER_TYPE.indoorPoi
})),
this._escalatorLayer = new T.
default((0, s.
default)(e, {
map: this._map,
id: this._id + "_escalator",
sourceId: this._sourceId,
type: A.RENDER_LAYER_TYPE.indoorEscalator
})),
this._map.getSource(this._sourceId).on("loaded",
function() {
t._destroyed || t.getManager().emit("building_source_loaded")
})
}
},
{
key: "_setVisible",
value: function(t) {
if (t !== this._visible) {
this._regionLayer.setVisible(t),
this._poiLayer.setVisible(t),
this._escalatorLayer.setVisible(t),
this._visible = t;
var e = t ? "show": "hide";
this.emit(e)
}
}
},
{
key: "getVisible",
value: function() {
return this._visible
}
},
{
key: "setSelectedFloor",
value: function(t) {
if (this.isActive()) {
var e = this.getSelectedFloor();
if (this._map && e !== t) {
this._map.getSource(this._sourceId).setSelectedFloor(t) < 0 ? console.warn("该室内建筑物无对应楼层: ", t) : this.emit("floor_changed")
}
} else console.warn("该室内建筑物处于非激活状态,该方法无效!");
return this
}
},
{
key: "getMap",
value: function() {
return this._map
}
},
{
key: "getManager",
value: function() {
return this._manager
}
},
{
key: "getSelectedFloor",
value: function() {
if (this._map) return this._map.getSource(this._sourceId).getSelectedFloor()
}
},
{
key: "getBuildingInfo",
value: function() {
if (this._buildingInfo) return this._buildingInfo;
var t = this._map && this._map.getSource(this._sourceId),
e = t && t.getMetaData();
return e && (this._buildingInfo = this._formatBuildingInfo(e)),
this._buildingInfo
}
},
{
key: "getBuildingInfoAsync",
value: function() {
var t = this;
return new r.
default(function(e) {
t._buildingInfo && e(t._buildingInfo);
var n = t._map && t._map.getSource(t._sourceId),
i = n && n.getMetaData();
i ? (t._buildingInfo = t._formatBuildingInfo(i), e(t._buildingInfo)) : n.once("loaded",
function() {
t._destroyed || (t._buildingInfo = t._formatBuildingInfo(n.getMetaData()), e(t._buildingInfo))
})
})
}
},
{
key: "_formatBuildingInfo",
value: function(t) {
var e = t.floorInfo.bounds[0],
n = t.floorInfo.bounds[1],
i = new b.
default(e.lat, e.lng),
o = new b.
default(n.lat, n.lng),
r = new w.
default(i, o);
return this._buildingBounds = r,
{
cityId: this._cityId,
buildingId: this._buildingId,
buildingName: t.buildingName,
defaultFloor: t.floorInfo.floorStrArr[t.floorInfo.defaultNum],
center: new b.
default(t.center.lat, t.center.lng),
floorList: t.floorInfo.floorStrArr.map(function(t) {
return {
name: t,
bounds: r
}
}),
bounds: r
}
}
},
{
key: "destroy",
value: function() {
this._regionLayer = null,
this._poiLayer = null,
this._escalatorLayer = null,
this._buildingId = null,
this._cityId = null,
this._map = null,
this._id = null,
this._manager = null,
this._buildingInfo = null,
this._buildingBounds = null,
this._isActiveStatus = !1,
this._destroyed = !0
}
},
{
key: "buildingId",
get: function() {
return this._buildingId
}
}]),
e
} (y.
default);
e.
default = I
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
var n = t.getActiveIndoorBuilding();
if (e !== n) {
if (n && (n._setActiveStatus(!1), n.off("floor_changed", t._onActiveIndoorBuildingFloorChange)), e && (e._setActiveStatus(!0), e.on("floor_changed", t._onActiveIndoorBuildingFloorChange)), e) {
var i = e.getSelectedFloor(),
o = e.buildingId;
t._map.indoorStateChange({
floorName: i,
buildingId: o
},
null)
} else t._map.indoorStateChange(null, !!e);
t._activeIndoorBuilding = e,
t._updateFloorControl().then(function() {
t.emit("active_changed", t._activeIndoorBuilding)
})
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(25),
a = i(r),
s = n(16),
l = i(s),
u = n(3),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(5),
_ = i(p),
m = n(4),
g = i(m),
y = n(23),
x = i(y),
b = n(106),
S = i(b),
w = n(294),
E = n(28),
T = i(E),
A = n(10),
P = n(636),
I = i(P),
k = n(631),
L = i(k),
M = n(628),
C = i(M),
R = n(385),
B = n(332),
N = n(248),
O = n(638),
D = i(O),
z = n(90),
F = {
map: null,
visible: !0,
minZoom: x.
default.minShowIndoorZoom,
maxZoom: x.
default.maxZoom
},
V = 0,
Y = 100,
U = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, d.
default)(this, e);
var n = (0, _.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this)),
i = (0, l.
default)({},
F, t);
return n._options = i,
n._map = i.map,
n._visible = i.visible,
n._minZoom = i.minZoom,
n._maxZoom = i.maxZoom,
n._indexSource = null,
n._indoorBuildingList = [],
n._indoorBuildingIds = [],
n._userBuildingIdList = null,
n._autoActive = !0,
n._activeIndoorBuilding = null,
n._floorControl = null,
n._initialized = !1,
n._isFloorControlVisible = !0,
n._indoorStyleId = V,
n._onActiveIndoorBuildingFloorChange = n._onActiveIndoorBuildingFloorChange.bind(n),
n._initializePromise = null,
n.checkInitialize(i),
n
}
return (0, g.
default)(e, t),
(0, v.
default)(e, [{
key: "checkInitialize",
value: function(t) {
var e = this;
if ((0, A.isInRange)(this._map.getZoom(), this._minZoom, this._maxZoom)) return void(this._initializePromise = this._init(t));
this.changeInitListener = T.
default.throttle(function() { (0, A.isInRange)(e._map.getZoom(), e._minZoom, e._maxZoom) && !e._initializePromise && (e._initializePromise = e._init(t))
},
50),
this._map.on("zoom_changed", this.changeInitListener)
}
},
{
key: "_init",
value: function(t) {
var e = this,
n = B.IndoorStyleMap.getInstance(),
i = this._indoorStyleId,
o = 0;
return this.changeInitListener && this._map.off("zoom_changed", this.changeInitListener),
(0, w.checkKey)(this._map.id).then(function(t) {
var r = t && t.indoor_map;
o = r && r.type;
var a = r && r.enable,
s = r && r.building_list;
return 1 === a && Array.isArray(s) ? (e._userBuildingIdList = s, n.has(i) ? s: (0, R.loadIndoorStyleFile)(i).then(function(t) {
return t && n.set(e._indoorStyleId, t),
s
})) : null
}).then(function(n) {
if (n) {
var i = n.length;
Y = i > 0 ? i: Y;
var r = 1 === o ? 1 : 0;
return e._map.on("moveend", T.
default.debounce(e._createBuildingInView.bind(e, t, r), 50)),
e._map.on("zoom_changed", T.
default.throttle(e._onMapZoomChanged.bind(e), 50)),
e._map.on("center_changed", T.
default.throttle(e._onMapCenterChanged.bind(e), 50)),
e.on("building_source_loaded", e._onBuildingSourceLoaded.bind(e)),
e._createBuildingInView(t, r)
}
}).then(function() {
e._initialized = !0
})
}
},
{
key: "_createBuildingInView",
value: function(t, e) {
var n = this,
i = this._getCityList();
this._indexSource || (this._indexSource = this._map.layerResource && this._map.layerResource.addIndoorIndexSource(z.SOURCE_TYPE.indoorIndex));
var o = this._getViewBounds();
return new a.
default(function(r) {
n._indexSource && n._indexSource.loadIndexData(i, o, e,
function(e) {
var i = e;
Array.isArray(n._userBuildingIdList) && n._userBuildingIdList.length > 0 && (i = e.filter(function(t) {
return n._userBuildingIdList.includes(t)
})),
n._createIndoorBuildingList(i, t),
n._visibleCheck(),
r()
})
})
}
},
{
key: "_getCityList",
value: function() {
var t = this._map.getZoom(),
e = [];
if ((0, A.isInRange)(t, this._minZoom, this._maxZoom)) {
var n = this._map.getCenter();
e = D.
default.filter(function(t) {
var e = t.leftBottom,
i = t.rightTop,
o = n.getLat(),
r = n.getLng();
return (0, A.isInRange)(o, e.lat, i.lat) && (0, A.isInRange)(r, e.lng, i.lng)
}).map(function(t) {
return t.cityId
})
}
return e
}
},
{
key: "_getViewBounds",
value: function() {
var t = this._map.getBounds();
if (this._map.transform) {
var e = this._map.transform.latLngToCoord(t.getNorthEast(), 20),
n = e.x,
i = e.y,
o = this._map.transform.latLngToCoord(t.getSouthWest(), 20);
return {
left: o.x,
right: n,
top: i,
bottom: o.y
}
}
}
},
{
key: "_createIndoorBuildingList",
value: function(t) {
var e = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
0 !== t.length && (0 === this._userBuildingIdList && this._buildingNumLimitCheck(t), t.forEach(function(t) {
if (!e._indoorBuildingIds.includes(t)) {
var i = new I.
default(t, (0, l.
default)(n, {
map: e._map,
manager: e,
indoorStyleId: e._indoorStyleId
}));
e._indoorBuildingList.push(i),
e._indoorBuildingIds.push(t)
}
}))
}
},
{
key: "_buildingNumLimitCheck",
value: function(t) {
var e = this,
n = this._indoorBuildingIds.length,
i = t.filter(function(t) {
return e._indoorBuildingIds.includes(t)
}),
o = i.length,
r = t.length - o;
if (n + r > Y) {
for (var a = n + r - Y,
s = [], l = 0; l < n && (i.includes(this._indoorBuildingIds[l]) || s.push(l), s.length !== a); l++);
for (var u = 0; u < a; u++) {
this._indoorBuildingIds.splice(s[u], 1);
var c = this._indoorBuildingList.splice(s[u], 1)[0];
c && c.destroy(),
c = null
}
}
}
},
{
key: "_onBuildingSourceLoaded",
value: function() {
this.getActiveIndoorBuilding() || this._autoActiveCheck()
}
},
{
key: "_onMapCenterChanged",
value: function() {
this._initialized && this._autoActiveCheck()
}
},
{
key: "_onMapZoomChanged",
value: function() {
this._visibleCheck()
}
},
{
key: "_visibleCheck",
value: function() {
var t = this._map.getZoom(); (0, A.isInRange)(t, this._minZoom, this._maxZoom) ? this._visible && this._indoorBuildingList.forEach(function(t) {
t._setVisible(!0)
}) : this._indoorBuildingList.forEach(function(t) {
t._setVisible(!1)
})
}
},
{
key: "_autoActiveCheck",
value: function() {
var t = this;
if (this._autoActive) {
var e = this._map.getCenter(),
n = this._map.getZoom();
n >= this._minZoom && n <= this._maxZoom && this._indoorBuildingList.length > 0 && this._indoorBuildingList.some(function(n) {
var i = n.getBuildingInfo(),
r = i && i.bounds && i.bounds.contains(e);
return r && o(t, n),
r
}) || o(this, null)
}
}
},
{
key: "_updateFloorControl",
value: function() {
var t = this,
e = this.getActiveIndoorBuilding();
return e ? e.getBuildingInfoAsync().then(function(n) {
t._floorControl && t._floorControl.buildingId === n.buildingId || (t._floorControl && (t._map.removeControl(N.DEFAULT_CONTROL_ID.FLOOR), t._floorControl.destroy(), t._floorControl = null), t._floorControl = new L.
default({
id:
N.DEFAULT_CONTROL_ID.FLOOR,
position: C.
default.BOTTOM_RIGHT,
buildingId: n.buildingId,
selectedFloor: e.getSelectedFloor() || n.defaultFloor,
floorList: n.floorList
}), t._map.addControl(t._floorControl), t._floorControl.on("floor-change",
function(e) {
var n = e.floorName;
t.getActiveIndoorBuilding() && t.getActiveIndoorBuilding().setSelectedFloor(n)
})),
t._isFloorControlVisible && t._floorControl.show()
}) : (this._floorControl && this._floorControl.hide(), a.
default.resolve())
}
},
{
key: "_onActiveIndoorBuildingFloorChange",
value: function() {
var t = this.getActiveIndoorBuilding();
if (this._floorControl && this._initialized && t) {
var e = t.getSelectedFloor();
this._map.indoorStateChange({
floorName: e,
buildingId: t.buildingId
},
null),
this._floorControl.selectFloor(e)
}
}
},
{
key: "initialize",
value: function() {
return this._initializePromise || (this._initializePromise = this._init()),
this._initializePromise
}
},
{
key: "setAutoActive",
value: function(t) {
return this._autoActive = !!t,
this._autoActiveCheck(),
this
}
},
{
key: "setActiveIndoorBuilding",
value: function(t) {
if (this._initialized || console.warn("室内地图管理器尚未初始化完毕,该方法无效!"), this._autoActive) return console.warn("自动激活模式下,该方法无效!"),
this;
if (!t) return o(this, null),
this;
var e = this.getIndoorBuilding(t);
return e && o(this, e),
this
}
},
{
key: "setVisible",
value: function(t) {
t = !!t,
this._visible = t;
var e = this._map.getZoom();
return t && !(0, A.isInRange)(e, this._minZoom, this._maxZoom) ? this: (this._indoorBuildingList.forEach(function(e) {
e._setVisible(t)
}), this)
}
},
{
key: "showFloorControl",
value: function() {
this.getActiveIndoorBuilding() && (this._isFloorControlVisible = !0, this._floorControl && this._floorControl.show())
}
},
{
key: "hideFloorControl",
value: function() {
this._isFloorControlVisible = !1,
this._floorControl && this._floorControl.hide()
}
},
{
key: "getMap",
value: function() {
return this._map
}
},
{
key: "getAutoActive",
value: function() {
return this._autoActive
}
},
{
key: "getActiveIndoorBuilding",
value: function() {
return this._initialized || console.warn("室内地图管理器尚未初始化完毕,该方法无效!"),
this._activeIndoorBuilding
}
},
{
key: "getVisible",
value: function() {
return this._visible
}
},
{
key: "getIndoorBuilding",
value: function(t) {
return this._initialized || console.warn("室内地图管理器尚未初始化完毕,该方法无效!"),
"string" != typeof t ? (console.error("室内地图管理器请传入正确的buildingId"), null) : (this._userBuildingIdList && !this._indoorBuildingIds.includes(t) && (0 === this._userBuildingIdList.length || this._userBuildingIdList.includes(t)) && this._createIndoorBuildingList([t], this._options), this._indoorBuildingList.filter(function(e) {
return e.buildingId === t
})[0] || null)
}
},
{
key: "getIndoorBuildingList",
value: function() {
var t = this;
if (!this._userBuildingIdList) return [];
if (Array.isArray(this._userBuildingIdList) && 0 === this._userBuildingIdList.length) return [];
var e = this._userBuildingIdList.filter(function(e) {
return ! t._indoorBuildingIds.includes(e)
});
return e.length > 0 && this._createIndoorBuildingList(e, this._options),
this._indoorBuildingList
}
},
{
key: "destroy",
value: function() {
this.removeAllListeners(),
this._floorControl && this._floorControl.destroy(),
this._indexSource = null,
this._indoorBuildingList && this._indoorBuildingList.length > 0 && this._indoorBuildingList.forEach(function(t) {
t.destroy()
}),
this._indoorBuildingList = null,
this._indoorBuildingIds = null,
this._userBuildingIdList = null
}
}], [{
key: "getInstance",
value: function(t) {
return this(t)
}
}]),
e
} (S.
default);
e.
default = U
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = [{
cityId: 1,
cityName: "阿坝藏族羌族自治州",
leftBottom: {
lng: 100.527191,
lat: 30.5941792
},
rightTop: {
lng: 104.437462,
lat: 34.3129807
}
},
{
cityId: 2,
cityName: "阿克苏地区",
leftBottom: {
lng: 78.0278625,
lat: 39.46632
},
rightTop: {
lng: 84.0897293,
lat: 42.6467705
}
},
{
cityId: 3,
cityName: "阿拉尔市",
leftBottom: {
lng: 80.5910263,
lat: 40.3629417
},
rightTop: {
lng: 81.9546509,
lat: 40.9459915
}
},
{
cityId: 4,
cityName: "阿拉善盟",
leftBottom: {
lng: 97.1728973,
lat: 37.4060097
},
rightTop: {
lng: 106.870407,
lat: 42.7955093
}
},
{
cityId: 5,
cityName: "阿勒泰地区",
leftBottom: {
lng: 85.5280609,
lat: 45.0013466
},
rightTop: {
lng: 91.0756912,
lat: 49.1796417
}
},
{
cityId: 6,
cityName: "阿里地区",
leftBottom: {
lng: 78.3958511,
lat: 29.6754494
},
rightTop: {
lng: 86.3286438,
lat: 35.8606606
}
},
{
cityId: 7,
cityName: "安康市",
leftBottom: {
lng: 108.025841,
lat: 31.7050705
},
rightTop: {
lng: 110.206619,
lat: 33.8416901
}
},
{
cityId: 8,
cityName: "安庆市",
leftBottom: {
lng: 115.762444,
lat: 29.7817001
},
rightTop: {
lng: 117.742203,
lat: 31.2683601
}
},
{
cityId: 9,
cityName: "鞍山市",
leftBottom: {
lng: 122.187637,
lat: 40.0004501
},
rightTop: {
lng: 123.76844,
lat: 41.5684013
}
},
{
cityId: 10,
cityName: "安顺市",
leftBottom: {
lng: 105.248627,
lat: 25.3531303
},
rightTop: {
lng: 106.571159,
lat: 26.6234398
}
},
{
cityId: 11,
cityName: "安阳市",
leftBottom: {
lng: 113.633263,
lat: 35.2048492
},
rightTop: {
lng: 114.989021,
lat: 36.3664703
}
},
{
cityId: 12,
cityName: "澳門特別行政區",
leftBottom: {
lng: 113.532799,
lat: 22.1022892
},
rightTop: {
lng: 113.610321,
lat: 22.2143898
}
},
{
cityId: 13,
cityName: "白城市",
leftBottom: {
lng: 121.641777,
lat: 44.2273903
},
rightTop: {
lng: 124.369949,
lat: 46.3047295
}
},
{
cityId: 14,
cityName: "百色市",
leftBottom: {
lng: 104.45018,
lat: 22.8547001
},
rightTop: {
lng: 107.88459,
lat: 25.0993195
}
},
{
cityId: 15,
cityName: "白沙黎族自治县",
leftBottom: {
lng: 109.038727,
lat: 18.9357204
},
rightTop: {
lng: 109.701729,
lat: 19.4867706
}
},
{
cityId: 16,
cityName: "白山市",
leftBottom: {
lng: 126.12088,
lat: 41.3637886
},
rightTop: {
lng: 128.31842,
lat: 42.8214684
}
},
{
cityId: 17,
cityName: "白银市",
leftBottom: {
lng: 103.555313,
lat: 35.4118881
},
rightTop: {
lng: 105.524643,
lat: 37.6380882
}
},
{
cityId: 18,
cityName: "保定市",
leftBottom: {
lng: 113.767166,
lat: 38.2375298
},
rightTop: {
lng: 116.335167,
lat: 39.95224
}
},
{
cityId: 19,
cityName: "宝鸡市",
leftBottom: {
lng: 106.310501,
lat: 33.579361
},
rightTop: {
lng: 108.05732,
lat: 35.1055908
}
},
{
cityId: 20,
cityName: "保山市",
leftBottom: {
lng: 98.0895004,
lat: 24.1221294
},
rightTop: {
lng: 100.047417,
lat: 25.8563404
}
},
{
cityId: 21,
cityName: "保亭黎族苗族自治县",
leftBottom: {
lng: 109.405197,
lat: 18.3876495
},
rightTop: {
lng: 109.852119,
lat: 18.83354
}
},
{
cityId: 22,
cityName: "包头市",
leftBottom: {
lng: 109.254807,
lat: 40.2477493
},
rightTop: {
lng: 111.445999,
lat: 42.7367783
}
},
{
cityId: 23,
cityName: "巴彦淖尔市",
leftBottom: {
lng: 105.19912,
lat: 40.1707306
},
rightTop: {
lng: 109.904839,
lat: 42.4640388
}
},
{
cityId: 24,
cityName: "巴音郭楞蒙古自治州",
leftBottom: {
lng: 82.4704132,
lat: 35.639389
},
rightTop: {
lng: 93.8679123,
lat: 43.5614319
}
},
{
cityId: 25,
cityName: "巴中市",
leftBottom: {
lng: 106.36805,
lat: 31.25173
},
rightTop: {
lng: 107.761841,
lat: 32.7391319
}
},
{
cityId: 26,
cityName: "北海市",
leftBottom: {
lng: 108.848152,
lat: 20.8681602
},
rightTop: {
lng: 109.792152,
lat: 21.9190407
}
},
{
cityId: 27,
cityName: "北京市",
leftBottom: {
lng: 115.423866,
lat: 39.4396019
},
rightTop: {
lng: 117.506706,
lat: 41.0608292
}
},
{
cityId: 28,
cityName: "蚌埠市",
leftBottom: {
lng: 116.73571,
lat: 32.7119484
},
rightTop: {
lng: 118.075287,
lat: 33.5029106
}
},
{
cityId: 29,
cityName: "本溪市",
leftBottom: {
lng: 123.589394,
lat: 40.816349
},
rightTop: {
lng: 125.791267,
lat: 41.5696411
}
},
{
cityId: 30,
cityName: "毕节市",
leftBottom: {
lng: 103.602074,
lat: 26.3577995
},
rightTop: {
lng: 106.726822,
lat: 27.7762299
}
},
{
cityId: 31,
cityName: "滨州市",
leftBottom: {
lng: 117.264549,
lat: 36.6877708
},
rightTop: {
lng: 118.380569,
lat: 38.3085785
}
},
{
cityId: 32,
cityName: "博尔塔拉蒙古自治州",
leftBottom: {
lng: 79.8846817,
lat: 44.004612
},
rightTop: {
lng: 83.8048172,
lat: 45.3883896
}
},
{
cityId: 33,
cityName: "亳州市",
leftBottom: {
lng: 115.545723,
lat: 32.8593216
},
rightTop: {
lng: 116.832817,
lat: 34.0696716
}
},
{
cityId: 34,
cityName: "沧州市",
leftBottom: {
lng: 115.702438,
lat: 37.4709206
},
rightTop: {
lng: 117.953407,
lat: 38.9453011
}
},
{
cityId: 35,
cityName: "长春市",
leftBottom: {
lng: 124.543671,
lat: 43.2640915
},
rightTop: {
lng: 127.09449,
lat: 45.2520523
}
},
{
cityId: 36,
cityName: "常德市",
leftBottom: {
lng: 110.491577,
lat: 28.4049091
},
rightTop: {
lng: 112.305939,
lat: 30.1263695
}
},
{
cityId: 37,
cityName: "昌都市",
leftBottom: {
lng: 93.5946198,
lat: 28.4352398
},
rightTop: {
lng: 99.110817,
lat: 32.5928612
}
},
{
cityId: 38,
cityName: "昌江黎族自治县",
leftBottom: {
lng: 108.600777,
lat: 18.8782406
},
rightTop: {
lng: 109.29821,
lat: 19.5490608
}
},
{
cityId: 39,
cityName: "昌吉回族自治州",
leftBottom: {
lng: 85.5804825,
lat: 43.1013985
},
rightTop: {
lng: 91.5870132,
lat: 45.4880676
}
},
{
cityId: 40,
cityName: "长沙市",
leftBottom: {
lng: 111.896248,
lat: 27.8480892
},
rightTop: {
lng: 114.261261,
lat: 28.6616306
}
},
{
cityId: 41,
cityName: "长治市",
leftBottom: {
lng: 111.981598,
lat: 35.8231201
},
rightTop: {
lng: 113.739258,
lat: 37.1247711
}
},
{
cityId: 42,
cityName: "常州市",
leftBottom: {
lng: 119.140572,
lat: 31.1525402
},
rightTop: {
lng: 120.201859,
lat: 32.0591393
}
},
{
cityId: 43,
cityName: "朝阳市",
leftBottom: {
lng: 118.84597,
lat: 40.6007118
},
rightTop: {
lng: 121.300911,
lat: 42.3829689
}
},
{
cityId: 44,
cityName: "潮州市",
leftBottom: {
lng: 116.36805,
lat: 23.4261494
},
rightTop: {
lng: 117.206261,
lat: 24.23279
}
},
{
cityId: 45,
cityName: "承德市",
leftBottom: {
lng: 115.908173,
lat: 40.1918907
},
rightTop: {
lng: 119.25309,
lat: 42.6180382
}
},
{
cityId: 46,
cityName: "成都市",
leftBottom: {
lng: 103.023376,
lat: 30.0939312
},
rightTop: {
lng: 104.892853,
lat: 31.4346695
}
},
{
cityId: 47,
cityName: "澄迈县",
leftBottom: {
lng: 109.725159,
lat: 19.372879
},
rightTop: {
lng: 110.261864,
lat: 20.0893803
}
},
{
cityId: 48,
cityName: "郴州市",
leftBottom: {
lng: 112.229713,
lat: 24.8905201
},
rightTop: {
lng: 114.237503,
lat: 26.8396797
}
},
{
cityId: 49,
cityName: "赤峰市",
leftBottom: {
lng: 116.367401,
lat: 41.285511
},
rightTop: {
lng: 120.987038,
lat: 45.2432518
}
},
{
cityId: 50,
cityName: "池州市",
leftBottom: {
lng: 116.648598,
lat: 29.5614605
},
rightTop: {
lng: 118.131439,
lat: 30.8452892
}
},
{
cityId: 51,
cityName: "重庆市",
leftBottom: {
lng: 105.289787,
lat: 28.1602497
},
rightTop: {
lng: 110.200401,
lat: 32.2011986
}
},
{
cityId: 52,
cityName: "崇左市",
leftBottom: {
lng: 106.56028,
lat: 21.594059
},
rightTop: {
lng: 108.112556,
lat: 23.3547306
}
},
{
cityId: 53,
cityName: "楚雄彝族自治州",
leftBottom: {
lng: 100.721611,
lat: 24.2197895
},
rightTop: {
lng: 102.482277,
lat: 26.4988899
}
},
{
cityId: 54,
cityName: "滁州市",
leftBottom: {
lng: 117.16095,
lat: 31.8509197
},
rightTop: {
lng: 119.22979,
lat: 33.216671
}
},
{
cityId: 55,
cityName: "大连市",
leftBottom: {
lng: 120.920418,
lat: 38.250061
},
rightTop: {
lng: 123.534721,
lat: 40.2038498
}
},
{
cityId: 56,
cityName: "大理白族自治州",
leftBottom: {
lng: 98.8642807,
lat: 24.6606007
},
rightTop: {
lng: 101.04641,
lat: 26.696579
}
},
{
cityId: 57,
cityName: "丹东市",
leftBottom: {
lng: 117.608596,
lat: 36.843903
},
rightTop: {
lng: 137.14943,
lat: 43.72608
}
},
{
cityId: 58,
cityName: "儋州市",
leftBottom: {
lng: 108.891983,
lat: 19.1788597
},
rightTop: {
lng: 109.766167,
lat: 19.9512997
}
},
{
cityId: 59,
cityName: "大庆市",
leftBottom: {
lng: 123.755363,
lat: 45.3827896
},
rightTop: {
lng: 125.79126,
lat: 47.47612
}
},
{
cityId: 60,
cityName: "大同市",
leftBottom: {
lng: 112.579514,
lat: 39.0481491
},
rightTop: {
lng: 114.562531,
lat: 40.7433701
}
},
{
cityId: 61,
cityName: "大兴安岭地区",
leftBottom: {
lng: 121.182663,
lat: 50.9030266
},
rightTop: {
lng: 127.029572,
lat: 53.5634804
}
},
{
cityId: 62,
cityName: "达州市",
leftBottom: {
lng: 106.6661,
lat: 30.3247604
},
rightTop: {
lng: 108.54673,
lat: 32.3382301
}
},
{
cityId: 63,
cityName: "德宏傣族景颇族自治州",
leftBottom: {
lng: 97.5288391,
lat: 23.8391094
},
rightTop: {
lng: 98.7270432,
lat: 25.33605
}
},
{
cityId: 64,
cityName: "德阳市",
leftBottom: {
lng: 103.795441,
lat: 30.5235405
},
rightTop: {
lng: 105.17466,
lat: 31.6984806
}
},
{
cityId: 65,
cityName: "德州市",
leftBottom: {
lng: 115.75869,
lat: 36.4085388
},
rightTop: {
lng: 117.6073,
lat: 38.0099792
}
},
{
cityId: 66,
cityName: "定安县",
leftBottom: {
lng: 110.123848,
lat: 19.2112808
},
rightTop: {
lng: 110.552711,
lat: 19.7281208
}
},
{
cityId: 67,
cityName: "定西市",
leftBottom: {
lng: 103.467056,
lat: 34.1242905
},
rightTop: {
lng: 105.64782,
lat: 36.0434189
}
},
{
cityId: 68,
cityName: "迪庆藏族自治州",
leftBottom: {
lng: 98.5940475,
lat: 26.8659992
},
rightTop: {
lng: 100.309219,
lat: 29.2484894
}
},
{
cityId: 69,
cityName: "东方市",
leftBottom: {
lng: 108.572449,
lat: 18.7147293
},
rightTop: {
lng: 109.126282,
lat: 19.3674297
}
},
{
cityId: 70,
cityName: "东莞市",
leftBottom: {
lng: 113.521858,
lat: 22.65555
},
rightTop: {
lng: 114.260269,
lat: 23.1431999
}
},
{
cityId: 71,
cityName: "东营市",
leftBottom: {
lng: 118.105743,
lat: 36.9369011
},
rightTop: {
lng: 119.342072,
lat: 38.1630707
}
},
{
cityId: 72,
cityName: "鄂尔多斯市",
leftBottom: {
lng: 106.475952,
lat: 37.6173286
},
rightTop: {
lng: 111.463211,
lat: 40.8837891
}
},
{
cityId: 73,
cityName: "恩施土家族苗族自治州",
leftBottom: {
lng: 108.36776,
lat: 29.1143303
},
rightTop: {
lng: 110.642776,
lat: 31.3971806
}
},
{
cityId: 74,
cityName: "鄂州市",
leftBottom: {
lng: 114.506058,
lat: 30.0165501
},
rightTop: {
lng: 115.091293,
lat: 30.6148701
}
},
{
cityId: 75,
cityName: "防城港市",
leftBottom: {
lng: 107.48481,
lat: 21.4794598
},
rightTop: {
lng: 108.607368,
lat: 22.3736801
}
},
{
cityId: 76,
cityName: "佛山市",
leftBottom: {
lng: 112.390572,
lat: 22.6437092
},
rightTop: {
lng: 113.391747,
lat: 23.5727692
}
},
{
cityId: 77,
cityName: "福州市",
leftBottom: {
lng: 118.384598,
lat: 25.2075596
},
rightTop: {
lng: 120.532837,
lat: 26.6392307
}
},
{
cityId: 78,
cityName: "抚州市",
leftBottom: {
lng: 115.591858,
lat: 26.4950104
},
rightTop: {
lng: 117.303299,
lat: 28.4933796
}
},
{
cityId: 79,
cityName: "抚顺市",
leftBottom: {
lng: 123.669518,
lat: 41.2389412
},
rightTop: {
lng: 125.489891,
lat: 42.4778481
}
},
{
cityId: 80,
cityName: "阜新市",
leftBottom: {
lng: 121.019867,
lat: 41.6928291
},
rightTop: {
lng: 122.976601,
lat: 42.8437309
}
},
{
cityId: 81,
cityName: "阜阳市",
leftBottom: {
lng: 114.8825,
lat: 32.4035416
},
rightTop: {
lng: 116.635048,
lat: 33.5840912
}
},
{
cityId: 82,
cityName: "甘南藏族自治州",
leftBottom: {
lng: 100.764427,
lat: 33.1030006
},
rightTop: {
lng: 104.76194,
lat: 35.5940895
}
},
{
cityId: 83,
cityName: "赣州市",
leftBottom: {
lng: 113.913612,
lat: 24.4862404
},
rightTop: {
lng: 116.64431,
lat: 27.1436405
}
},
{
cityId: 84,
cityName: "甘孜藏族自治州",
leftBottom: {
lng: 97.3528519,
lat: 27.9609203
},
rightTop: {
lng: 102.494583,
lat: 34.1957703
}
},
{
cityId: 85,
cityName: "广安市",
leftBottom: {
lng: 105.947571,
lat: 30.0171814
},
rightTop: {
lng: 107.314011,
lat: 30.852869
}
},
{
cityId: 86,
cityName: "广元市",
leftBottom: {
lng: 104.61628,
lat: 31.5252304
},
rightTop: {
lng: 106.766747,
lat: 32.9328995
}
},
{
cityId: 87,
cityName: "广州市",
leftBottom: {
lng: 112.96196,
lat: 22.5145607
},
rightTop: {
lng: 114.059258,
lat: 23.9292698
}
},
{
cityId: 88,
cityName: "贵港市",
leftBottom: {
lng: 109.20845,
lat: 22.6535206
},
rightTop: {
lng: 110.662659,
lat: 24.0421696
}
},
{
cityId: 89,
cityName: "桂林市",
leftBottom: {
lng: 109.618279,
lat: 24.2535
},
rightTop: {
lng: 111.492561,
lat: 26.3854103
}
},
{
cityId: 90,
cityName: "贵阳市",
leftBottom: {
lng: 106.124077,
lat: 26.1840305
},
rightTop: {
lng: 107.2798,
lat: 27.3553791
}
},
{
cityId: 91,
cityName: "果洛藏族自治州",
leftBottom: {
lng: 96.9792175,
lat: 32.5127792
},
rightTop: {
lng: 101.778862,
lat: 35.5824699
}
},
{
cityId: 92,
cityName: "固原市",
leftBottom: {
lng: 105.32505,
lat: 35.2382889
},
rightTop: {
lng: 106.958679,
lat: 36.5176315
}
},
{
cityId: 93,
cityName: "哈尔滨市",
leftBottom: {
lng: 125.688599,
lat: 44.0616989
},
rightTop: {
lng: 130.240707,
lat: 46.6744576
}
},
{
cityId: 94,
cityName: "海北藏族自治州",
leftBottom: {
lng: 98.0933533,
lat: 36.7344704
},
rightTop: {
lng: 102.642166,
lat: 39.090271
}
},
{
cityId: 95,
cityName: "海东市",
leftBottom: {
lng: 101.666412,
lat: 35.4483185
},
rightTop: {
lng: 103.072693,
lat: 37.1489296
}
},
{
cityId: 96,
cityName: "海口市",
leftBottom: {
lng: 110.069496,
lat: 19.5237503
},
rightTop: {
lng: 110.709084,
lat: 20.1800804
}
},
{
cityId: 97,
cityName: "海南藏族自治州",
leftBottom: {
lng: 98.9322205,
lat: 34.6409912
},
rightTop: {
lng: 101.799133,
lat: 37.2373505
}
},
{
cityId: 98,
cityName: "海西蒙古族藏族自治州",
leftBottom: {
lng: 89.6401367,
lat: 32.7208214
},
rightTop: {
lng: 99.78508,
lat: 39.2215195
}
},
{
cityId: 99,
cityName: "哈密地区",
leftBottom: {
lng: 91.1776886,
lat: 40.7524414
},
rightTop: {
lng: 96.3890991,
lat: 45.0900536
}
},
{
cityId: 100,
cityName: "邯郸市",
leftBottom: {
lng: 113.46228,
lat: 36.048851
},
rightTop: {
lng: 115.4841,
lat: 37.022171
}
},
{
cityId: 101,
cityName: "杭州市",
leftBottom: {
lng: 118.344948,
lat: 29.1887302
},
rightTop: {
lng: 120.721947,
lat: 30.5664806
}
},
{
cityId: 102,
cityName: "汉中市",
leftBottom: {
lng: 105.491577,
lat: 32.146019
},
rightTop: {
lng: 108.284073,
lat: 33.8785019
}
},
{
cityId: 103,
cityName: "鹤壁市",
leftBottom: {
lng: 113.996048,
lat: 35.4426689
},
rightTop: {
lng: 114.758102,
lat: 36.0485992
}
},
{
cityId: 104,
cityName: "河池市",
leftBottom: {
lng: 106.571083,
lat: 23.5531693
},
rightTop: {
lng: 109.161217,
lat: 25.6107407
}
},
{
cityId: 105,
cityName: "合肥市",
leftBottom: {
lng: 116.687492,
lat: 30.9508095
},
rightTop: {
lng: 117.965851,
lat: 32.5360794
}
},
{
cityId: 106,
cityName: "鹤岗市",
leftBottom: {
lng: 129.673492,
lat: 47.0608521
},
rightTop: {
lng: 132.524826,
lat: 48.3533325
}
},
{
cityId: 107,
cityName: "黑河市",
leftBottom: {
lng: 124.74855,
lat: 47.5869026
},
rightTop: {
lng: 129.537567,
lat: 51.0035477
}
},
{
cityId: 108,
cityName: "衡水市",
leftBottom: {
lng: 115.19146,
lat: 37.0597992
},
rightTop: {
lng: 116.56501,
lat: 38.3703995
}
},
{
cityId: 109,
cityName: "衡阳市",
leftBottom: {
lng: 111.54361,
lat: 26.1142292
},
rightTop: {
lng: 113.283943,
lat: 27.4670391
}
},
{
cityId: 110,
cityName: "和田地区",
leftBottom: {
lng: 77.4038315,
lat: 34.3325081
},
rightTop: {
lng: 84.9199219,
lat: 39.6336403
}
},
{
cityId: 111,
cityName: "河源市",
leftBottom: {
lng: 114.241814,
lat: 23.1641808
},
rightTop: {
lng: 115.59301,
lat: 24.7810192
}
},
{
cityId: 112,
cityName: "菏泽市",
leftBottom: {
lng: 114.823349,
lat: 34.5508614
},
rightTop: {
lng: 116.414032,
lat: 35.8635483
}
},
{
cityId: 113,
cityName: "贺州市",
leftBottom: {
lng: 110.57074,
lat: 23.6517391
},
rightTop: {
lng: 112.061867,
lat: 25.1515808
}
},
{
cityId: 114,
cityName: "红河哈尼族彝族自治州",
leftBottom: {
lng: 101.80204,
lat: 22.4412899
},
rightTop: {
lng: 104.282463,
lat: 24.7642708
}
},
{
cityId: 115,
cityName: "淮安市",
leftBottom: {
lng: 118.21949,
lat: 32.7160492
},
rightTop: {
lng: 119.645187,
lat: 34.0930214
}
},
{
cityId: 116,
cityName: "淮北市",
leftBottom: {
lng: 116.3937,
lat: 33.2784386
},
rightTop: {
lng: 117.058311,
lat: 34.2487183
}
},
{
cityId: 117,
cityName: "怀化市",
leftBottom: {
lng: 108.790848,
lat: 25.8655605
},
rightTop: {
lng: 111.113068,
lat: 29.0210991
}
},
{
cityId: 118,
cityName: "淮南市",
leftBottom: {
lng: 116.364891,
lat: 32.3860397
},
rightTop: {
lng: 117.215286,
lat: 33.003521
}
},
{
cityId: 119,
cityName: "黄冈市",
leftBottom: {
lng: 114.402023,
lat: 29.7205601
},
rightTop: {
lng: 116.136841,
lat: 31.6047497
}
},
{
cityId: 120,
cityName: "黄南藏族自治州",
leftBottom: {
lng: 100.68679,
lat: 34.0640984
},
rightTop: {
lng: 102.456642,
lat: 36.1696205
}
},
{
cityId: 121,
cityName: "黄山市",
leftBottom: {
lng: 117.202583,
lat: 29.3929996
},
rightTop: {
lng: 118.902573,
lat: 30.5166492
}
},
{
cityId: 122,
cityName: "黄石市",
leftBottom: {
lng: 114.531693,
lat: 29.5069904
},
rightTop: {
lng: 115.510941,
lat: 30.33041
}
},
{
cityId: 123,
cityName: "呼和浩特市",
leftBottom: {
lng: 110.5187,
lat: 39.5889397
},
rightTop: {
lng: 112.30896,
lat: 41.3858604
}
},
{
cityId: 124,
cityName: "惠州市",
leftBottom: {
lng: 113.812828,
lat: 22.3743896
},
rightTop: {
lng: 115.41877,
lat: 23.9594307
}
},
{
cityId: 125,
cityName: "葫芦岛市",
leftBottom: {
lng: 119.216583,
lat: 39.954071
},
rightTop: {
lng: 121.101257,
lat: 41.2059708
}
},
{
cityId: 126,
cityName: "呼伦贝尔市",
leftBottom: {
lng: 115.528923,
lat: 47.0968704
},
rightTop: {
lng: 126.07608,
lat: 53.3356628
}
},
{
cityId: 127,
cityName: "湖州市",
leftBottom: {
lng: 119.236954,
lat: 30.3732891
},
rightTop: {
lng: 120.490501,
lat: 31.1787891
}
},
{
cityId: 128,
cityName: "佳木斯市",
leftBottom: {
lng: 129.507706,
lat: 45.9452362
},
rightTop: {
lng: 135.09726,
lat: 48.4652023
}
},
{
cityId: 129,
cityName: "江门市",
leftBottom: {
lng: 112.003487,
lat: 21.4434299
},
rightTop: {
lng: 113.263329,
lat: 22.8528194
}
},
{
cityId: 130,
cityName: "吉安市",
leftBottom: {
lng: 113.834587,
lat: 25.9722195
},
rightTop: {
lng: 115.935379,
lat: 27.9613094
}
},
{
cityId: 131,
cityName: "焦作市",
leftBottom: {
lng: 112.568733,
lat: 34.8115196
},
rightTop: {
lng: 113.646973,
lat: 35.4944992
}
},
{
cityId: 132,
cityName: "嘉兴市",
leftBottom: {
lng: 120.295967,
lat: 30.2451706
},
rightTop: {
lng: 121.541481,
lat: 31.0303497
}
},
{
cityId: 133,
cityName: "嘉峪关市",
leftBottom: {
lng: 97.8316422,
lat: 39.6320496
},
rightTop: {
lng: 98.5236893,
lat: 39.9784012
}
},
{
cityId: 134,
cityName: "揭阳市",
leftBottom: {
lng: 115.61335,
lat: 22.8476601
},
rightTop: {
lng: 116.636101,
lat: 23.7733994
}
},
{
cityId: 135,
cityName: "吉林市",
leftBottom: {
lng: 125.650551,
lat: 42.5628281
},
rightTop: {
lng: 128.017487,
lat: 44.6469116
}
},
{
cityId: 136,
cityName: "济南市",
leftBottom: {
lng: 116.223824,
lat: 36.0293388
},
rightTop: {
lng: 117.747437,
lat: 37.5390282
}
},
{
cityId: 137,
cityName: "金昌市",
leftBottom: {
lng: 101.41864,
lat: 38.0237007
},
rightTop: {
lng: 102.734329,
lat: 38.9994812
}
},
{
cityId: 138,
cityName: "晋城市",
leftBottom: {
lng: 111.939537,
lat: 35.2033615
},
rightTop: {
lng: 113.625061,
lat: 36.0641708
}
},
{
cityId: 139,
cityName: "景德镇市",
leftBottom: {
lng: 116.962708,
lat: 28.7178898
},
rightTop: {
lng: 117.71064,
lat: 29.9314899
}
},
{
cityId: 140,
cityName: "荆门市",
leftBottom: {
lng: 111.860252,
lat: 30.3902397
},
rightTop: {
lng: 113.490494,
lat: 31.6106396
}
},
{
cityId: 141,
cityName: "荆州市",
leftBottom: {
lng: 111.243797,
lat: 29.4276199
},
rightTop: {
lng: 114.091049,
lat: 30.6581097
}
},
{
cityId: 142,
cityName: "金华市",
leftBottom: {
lng: 119.228706,
lat: 28.5226898
},
rightTop: {
lng: 120.783852,
lat: 29.6822205
}
},
{
cityId: 143,
cityName: "济宁市",
leftBottom: {
lng: 115.866364,
lat: 34.4502602
},
rightTop: {
lng: 117.597542,
lat: 35.9813309
}
},
{
cityId: 144,
cityName: "晋中市",
leftBottom: {
lng: 111.408463,
lat: 36.6441498
},
rightTop: {
lng: 114.139923,
lat: 38.0931816
}
},
{
cityId: 145,
cityName: "锦州市",
leftBottom: {
lng: 120.717194,
lat: 40.7294807
},
rightTop: {
lng: 122.600273,
lat: 42.1297379
}
},
{
cityId: 146,
cityName: "九江市",
leftBottom: {
lng: 113.942047,
lat: 28.6851692
},
rightTop: {
lng: 116.904037,
lat: 30.0746002
}
},
{
cityId: 147,
cityName: "酒泉市",
leftBottom: {
lng: 92.3222809,
lat: 38.1041794
},
rightTop: {
lng: 100.20182,
lat: 42.7955093
}
},
{
cityId: 148,
cityName: "鸡西市",
leftBottom: {
lng: 130.399857,
lat: 44.53383
},
rightTop: {
lng: 133.949524,
lat: 46.6113396
}
},
{
cityId: 149,
cityName: "济源市",
leftBottom: {
lng: 112.036949,
lat: 34.8956909
},
rightTop: {
lng: 112.767319,
lat: 35.2798004
}
},
{
cityId: 150,
cityName: "开封市",
leftBottom: {
lng: 113.877296,
lat: 34.1970482
},
rightTop: {
lng: 115.26548,
lat: 35.0226517
}
},
{
cityId: 151,
cityName: "喀什地区",
leftBottom: {
lng: 74.4605026,
lat: 35.4513206
},
rightTop: {
lng: 79.8657608,
lat: 40.2581711
}
},
{
cityId: 152,
cityName: "克拉玛依市",
leftBottom: {
lng: 84.5517731,
lat: 44.1077805
},
rightTop: {
lng: 86.036171,
lat: 46.2131767
}
},
{
cityId: 153,
cityName: "克孜勒苏柯尔克孜自治州",
leftBottom: {
lng: 73.4909286,
lat: 37.6508789
},
rightTop: {
lng: 78.8792191,
lat: 41.3994408
}
},
{
cityId: 154,
cityName: "昆明市",
leftBottom: {
lng: 102.168663,
lat: 24.38521
},
rightTop: {
lng: 103.673592,
lat: 26.5426903
}
},
{
cityId: 155,
cityName: "来宾市",
leftBottom: {
lng: 108.418243,
lat: 23.2688408
},
rightTop: {
lng: 110.458473,
lat: 24.4675598
}
},
{
cityId: 156,
cityName: "莱芜市",
leftBottom: {
lng: 117.331367,
lat: 35.9906311
},
rightTop: {
lng: 117.974678,
lat: 36.552948
}
},
{
cityId: 157,
cityName: "廊坊市",
leftBottom: {
lng: 116.116913,
lat: 38.4735794
},
rightTop: {
lng: 117.260078,
lat: 40.0967293
}
},
{
cityId: 158,
cityName: "兰州市",
leftBottom: {
lng: 102.600906,
lat: 35.5711288
},
rightTop: {
lng: 104.576378,
lat: 37.0364189
}
},
{
cityId: 159,
cityName: "拉萨市",
leftBottom: {
lng: 89.7535477,
lat: 29.2380791
},
rightTop: {
lng: 92.6215668,
lat: 31.0558205
}
},
{
cityId: 160,
cityName: "乐东黎族自治县",
leftBottom: {
lng: 108.64994,
lat: 18.2978306
},
rightTop: {
lng: 109.407997,
lat: 18.9620495
}
},
{
cityId: 161,
cityName: "乐山市",
leftBottom: {
lng: 102.911041,
lat: 28.4202309
},
rightTop: {
lng: 104.252129,
lat: 29.9285908
}
},
{
cityId: 162,
cityName: "凉山彝族自治州",
leftBottom: {
lng: 100.061317,
lat: 26.0457802
},
rightTop: {
lng: 103.877457,
lat: 29.3026409
}
},
{
cityId: 163,
cityName: "连云港市",
leftBottom: {
lng: 118.408463,
lat: 33.979599
},
rightTop: {
lng: 119.850807,
lat: 35.1229095
}
},
{
cityId: 164,
cityName: "聊城市",
leftBottom: {
lng: 115.282509,
lat: 35.7792015
},
rightTop: {
lng: 116.545616,
lat: 37.0232506
}
},
{
cityId: 165,
cityName: "辽阳市",
leftBottom: {
lng: 122.590973,
lat: 40.7083397
},
rightTop: {
lng: 123.688843,
lat: 41.6118279
}
},
{
cityId: 166,
cityName: "辽源市",
leftBottom: {
lng: 124.840012,
lat: 42.2995682
},
rightTop: {
lng: 125.843849,
lat: 43.2328987
}
},
{
cityId: 167,
cityName: "丽江市",
leftBottom: {
lng: 99.3820267,
lat: 25.9848804
},
rightTop: {
lng: 101.51403,
lat: 27.9242191
}
},
{
cityId: 168,
cityName: "临沧市",
leftBottom: {
lng: 98.6727905,
lat: 23.0779896
},
rightTop: {
lng: 100.547028,
lat: 25.0324001
}
},
{
cityId: 169,
cityName: "临汾市",
leftBottom: {
lng: 110.374191,
lat: 35.3865089
},
rightTop: {
lng: 112.57444,
lat: 36.9346809
}
},
{
cityId: 170,
cityName: "临高县",
leftBottom: {
lng: 109.49408,
lat: 19.5733795
},
rightTop: {
lng: 109.897087,
lat: 20.0396595
}
},
{
cityId: 171,
cityName: "陵水黎族自治县",
leftBottom: {
lng: 109.755768,
lat: 18.2743607
},
rightTop: {
lng: 110.229263,
lat: 18.8091908
}
},
{
cityId: 172,
cityName: "临夏回族自治州",
leftBottom: {
lng: 102.685997,
lat: 34.9414787
},
rightTop: {
lng: 103.858818,
lat: 36.2103004
}
},
{
cityId: 173,
cityName: "临沂市",
leftBottom: {
lng: 117.418716,
lat: 34.3773499
},
rightTop: {
lng: 119.203239,
lat: 36.2068405
}
},
{
cityId: 174,
cityName: "林芝市",
leftBottom: {
lng: 92.1635284,
lat: 27.5596104
},
rightTop: {
lng: 98.7536392,
lat: 30.6712303
}
},
{
cityId: 175,
cityName: "丽水市",
leftBottom: {
lng: 118.699173,
lat: 27.4168701
},
rightTop: {
lng: 120.438812,
lat: 28.9501591
}
},
{
cityId: 176,
cityName: "六盘水市",
leftBottom: {
lng: 104.308571,
lat: 25.3223705
},
rightTop: {
lng: 105.721603,
lat: 26.9198208
}
},
{
cityId: 177,
cityName: "柳州市",
leftBottom: {
lng: 108.5877,
lat: 23.9060192
},
rightTop: {
lng: 110.177963,
lat: 26.0515099
}
},
{
cityId: 178,
cityName: "陇南市",
leftBottom: {
lng: 104.023758,
lat: 32.5941086
},
rightTop: {
lng: 106.583961,
lat: 34.5327415
}
},
{
cityId: 179,
cityName: "龙岩市",
leftBottom: {
lng: 115.853439,
lat: 24.3703594
},
rightTop: {
lng: 117.753151,
lat: 26.0330791
}
},
{
cityId: 180,
cityName: "娄底市",
leftBottom: {
lng: 110.772034,
lat: 27.2053204
},
rightTop: {
lng: 112.524193,
lat: 28.2342796
}
},
{
cityId: 181,
cityName: "六安市",
leftBottom: {
lng: 115.371033,
lat: 31.008419
},
rightTop: {
lng: 117.25489,
lat: 32.6611099
}
},
{
cityId: 182,
cityName: "漯河市",
leftBottom: {
lng: 113.461662,
lat: 33.4047318
},
rightTop: {
lng: 114.29541,
lat: 33.9852104
}
},
{
cityId: 183,
cityName: "洛阳市",
leftBottom: {
lng: 111.138443,
lat: 33.5629883
},
rightTop: {
lng: 112.984749,
lat: 35.0709305
}
},
{
cityId: 184,
cityName: "泸州市",
leftBottom: {
lng: 105.145111,
lat: 27.6595192
},
rightTop: {
lng: 106.380608,
lat: 29.3267193
}
},
{
cityId: 185,
cityName: "吕梁市",
leftBottom: {
lng: 110.375908,
lat: 36.7321091
},
rightTop: {
lng: 112.329323,
lat: 38.7314987
}
},
{
cityId: 186,
cityName: "马鞍山市",
leftBottom: {
lng: 117.896248,
lat: 31.2918797
},
rightTop: {
lng: 118.888832,
lat: 32.0581093
}
},
{
cityId: 187,
cityName: "茂名市",
leftBottom: {
lng: 110.325279,
lat: 21.3386803
},
rightTop: {
lng: 111.68351,
lat: 22.7048607
}
},
{
cityId: 188,
cityName: "眉山市",
leftBottom: {
lng: 102.8526,
lat: 29.4004898
},
rightTop: {
lng: 104.503937,
lat: 30.3617306
}
},
{
cityId: 189,
cityName: "梅州市",
leftBottom: {
lng: 115.315277,
lat: 23.3734493
},
rightTop: {
lng: 116.941513,
lat: 24.9373608
}
},
{
cityId: 190,
cityName: "绵阳市",
leftBottom: {
lng: 103.748787,
lat: 30.7056789
},
rightTop: {
lng: 105.726219,
lat: 33.0419884
}
},
{
cityId: 191,
cityName: "牡丹江市",
leftBottom: {
lng: 128.230911,
lat: 43.4264488
},
rightTop: {
lng: 131.322891,
lat: 45.9873085
}
},
{
cityId: 192,
cityName: "南昌市",
leftBottom: {
lng: 115.438721,
lat: 28.1574993
},
rightTop: {
lng: 116.565491,
lat: 29.1733303
}
},
{
cityId: 193,
cityName: "南充市",
leftBottom: {
lng: 105.444649,
lat: 30.4580097
},
rightTop: {
lng: 106.968391,
lat: 31.8483696
}
},
{
cityId: 194,
cityName: "南京市",
leftBottom: {
lng: 118.362877,
lat: 31.2292004
},
rightTop: {
lng: 119.240486,
lat: 32.6129684
}
},
{
cityId: 195,
cityName: "南宁市",
leftBottom: {
lng: 107.329353,
lat: 22.2025299
},
rightTop: {
lng: 109.620338,
lat: 24.0322609
}
},
{
cityId: 196,
cityName: "南平市",
leftBottom: {
lng: 117.003418,
lat: 26.2546902
},
rightTop: {
lng: 119.275322,
lat: 28.3129005
}
},
{
cityId: 197,
cityName: "南通市",
leftBottom: {
lng: 120.202339,
lat: 31.6141701
},
rightTop: {
lng: 121.999161,
lat: 32.7111397
}
},
{
cityId: 198,
cityName: "南阳市",
leftBottom: {
lng: 110.982887,
lat: 32.26894
},
rightTop: {
lng: 113.814667,
lat: 33.80159
}
},
{
cityId: 199,
cityName: "那曲地区",
leftBottom: {
lng: 85.0527191,
lat: 29.9365005
},
rightTop: {
lng: 95.0232468,
lat: 36.4849815
}
},
{
cityId: 200,
cityName: "内江市",
leftBottom: {
lng: 104.269539,
lat: 29.1844292
},
rightTop: {
lng: 105.446068,
lat: 30.0394707
}
},
{
cityId: 201,
cityName: "宁波市",
leftBottom: {
lng: 120.877373,
lat: 28.8407707
},
rightTop: {
lng: 122.309402,
lat: 30.4506607
}
},
{
cityId: 202,
cityName: "宁德市",
leftBottom: {
lng: 118.548332,
lat: 26.2919006
},
rightTop: {
lng: 120.749741,
lat: 27.67519
}
},
{
cityId: 203,
cityName: "怒江傈僳族自治州",
leftBottom: {
lng: 98.1321182,
lat: 25.5491695
},
rightTop: {
lng: 99.6433868,
lat: 28.3944302
}
},
{
cityId: 204,
cityName: "盘锦市",
leftBottom: {
lng: 121.476044,
lat: 40.6391411
},
rightTop: {
lng: 122.42057,
lat: 41.4518394
}
},
{
cityId: 205,
cityName: "攀枝花市",
leftBottom: {
lng: 101.138229,
lat: 26.0817795
},
rightTop: {
lng: 102.24749,
lat: 27.3427906
}
},
{
cityId: 206,
cityName: "平顶山市",
leftBottom: {
lng: 112.249092,
lat: 33.1282196
},
rightTop: {
lng: 113.688469,
lat: 34.3456802
}
},
{
cityId: 207,
cityName: "平凉市",
leftBottom: {
lng: 105.345482,
lat: 34.8834305
},
rightTop: {
lng: 107.86409,
lat: 35.7500687
}
},
{
cityId: 208,
cityName: "萍乡市",
leftBottom: {
lng: 113.576149,
lat: 26.9584789
},
rightTop: {
lng: 114.275276,
lat: 28.0050907
}
},
{
cityId: 209,
cityName: "普洱市",
leftBottom: {
lng: 99.1557236,
lat: 22.0240002
},
rightTop: {
lng: 102.323448,
lat: 24.8268108
}
},
{
cityId: 210,
cityName: "莆田市",
leftBottom: {
lng: 118.452957,
lat: 24.9391499
},
rightTop: {
lng: 119.720039,
lat: 25.7518406
}
},
{
cityId: 211,
cityName: "濮阳市",
leftBottom: {
lng: 114.874611,
lat: 35.3308716
},
rightTop: {
lng: 116.110443,
lat: 36.2104416
}
},
{
cityId: 212,
cityName: "黔东南苗族侗族自治州",
leftBottom: {
lng: 107.298981,
lat: 25.3063107
},
rightTop: {
lng: 109.595367,
lat: 27.527689
}
},
{
cityId: 213,
cityName: "潜江市",
leftBottom: {
lng: 112.502739,
lat: 30.0774097
},
rightTop: {
lng: 113.033577,
lat: 30.6462498
}
},
{
cityId: 214,
cityName: "黔南布依族苗族自治州",
leftBottom: {
lng: 106.211052,
lat: 25.0581398
},
rightTop: {
lng: 108.30368,
lat: 27.4843292
}
},
{
cityId: 215,
cityName: "黔西南布依族苗族自治州",
leftBottom: {
lng: 104.529549,
lat: 24.6183891
},
rightTop: {
lng: 106.531639,
lat: 26.1756592
}
},
{
cityId: 216,
cityName: "青岛市",
leftBottom: {
lng: 119.513107,
lat: 35.5273285
},
rightTop: {
lng: 121.406502,
lat: 37.1468506
}
},
{
cityId: 217,
cityName: "庆阳市",
leftBottom: {
lng: 106.362221,
lat: 35.2414398
},
rightTop: {
lng: 108.715538,
lat: 37.1590881
}
},
{
cityId: 218,
cityName: "清远市",
leftBottom: {
lng: 111.927452,
lat: 23.4543591
},
rightTop: {
lng: 113.916321,
lat: 25.2019005
}
},
{
cityId: 219,
cityName: "秦皇岛市",
leftBottom: {
lng: 118.568459,
lat: 39.4296112
},
rightTop: {
lng: 119.863167,
lat: 40.6130486
}
},
{
cityId: 220,
cityName: "钦州市",
leftBottom: {
lng: 108.183693,
lat: 21.5037308
},
rightTop: {
lng: 109.870689,
lat: 22.6821098
}
},
{
cityId: 221,
cityName: "琼海市",
leftBottom: {
lng: 110.120117,
lat: 18.9760704
},
rightTop: {
lng: 110.721657,
lat: 19.4722805
}
},
{
cityId: 222,
cityName: "琼中黎族苗族自治县",
leftBottom: {
lng: 109.523941,
lat: 18.7276707
},
rightTop: {
lng: 110.158569,
lat: 19.4198208
}
},
{
cityId: 223,
cityName: "齐齐哈尔市",
leftBottom: {
lng: 122.400597,
lat: 46.2237282
},
rightTop: {
lng: 126.675209,
lat: 48.9354706
}
},
{
cityId: 224,
cityName: "七台河市",
leftBottom: {
lng: 130.104813,
lat: 45.5882797
},
rightTop: {
lng: 131.935455,
lat: 46.3353882
}
},
{
cityId: 225,
cityName: "泉州市",
leftBottom: {
lng: 117.578499,
lat: 24.3017101
},
rightTop: {
lng: 119.06678,
lat: 25.9316406
}
},
{
cityId: 226,
cityName: "曲靖市",
leftBottom: {
lng: 103.052559,
lat: 24.3475895
},
rightTop: {
lng: 104.828751,
lat: 27.0522289
}
},
{
cityId: 227,
cityName: "衢州市",
leftBottom: {
lng: 118.028282,
lat: 28.23909
},
rightTop: {
lng: 119.346153,
lat: 29.4968891
}
},
{
cityId: 228,
cityName: "日喀则市",
leftBottom: {
lng: 82.141983,
lat: 27.2101307
},
rightTop: {
lng: 90.3494492,
lat: 31.8070793
}
},
{
cityId: 229,
cityName: "日照市",
leftBottom: {
lng: 118.601082,
lat: 34.9581299
},
rightTop: {
lng: 119.952026,
lat: 36.0414581
}
},
{
cityId: 230,
cityName: "三门峡市",
leftBottom: {
lng: 110.359917,
lat: 33.5501289
},
rightTop: {
lng: 112.031097,
lat: 35.0837898
}
},
{
cityId: 231,
cityName: "三明市",
leftBottom: {
lng: 116.383308,
lat: 25.4776897
},
rightTop: {
lng: 118.672607,
lat: 27.1298294
}
},
{
cityId: 232,
cityName: "三沙市",
leftBottom: {
lng: 105.590164,
lat: 2
},
rightTop: {
lng: 125.76929,
lat: 28.130243
}
},
{
cityId: 233,
cityName: "三亚市",
leftBottom: {
lng: 108.931976,
lat: 18.1160793
},
rightTop: {
lng: 109.810959,
lat: 18.6233902
}
},
{
cityId: 234,
cityName: "上海市",
leftBottom: {
lng: 120.855919,
lat: 30.6703892
},
rightTop: {
lng: 121.999474,
lat: 31.8675308
}
},
{
cityId: 235,
cityName: "商洛市",
leftBottom: {
lng: 108.575882,
lat: 33.0947304
},
rightTop: {
lng: 111.036926,
lat: 34.4323502
}
},
{
cityId: 236,
cityName: "商丘市",
leftBottom: {
lng: 114.826897,
lat: 33.7067184
},
rightTop: {
lng: 116.65036,
lat: 34.8606682
}
},
{
cityId: 237,
cityName: "上饶市",
leftBottom: {
lng: 116.235687,
lat: 27.8003101
},
rightTop: {
lng: 118.487686,
lat: 29.6993198
}
},
{
cityId: 238,
cityName: "山南地区",
leftBottom: {
lng: 90.0673676,
lat: 26.8494492
},
rightTop: {
lng: 94.3594894,
lat: 29.8240604
}
},
{
cityId: 239,
cityName: "汕头市",
leftBottom: {
lng: 116.25029,
lat: 23.0408096
},
rightTop: {
lng: 117.359306,
lat: 23.6460304
}
},
{
cityId: 240,
cityName: "汕尾市",
leftBottom: {
lng: 114.918297,
lat: 22.6116199
},
rightTop: {
lng: 116.227768,
lat: 23.4721298
}
},
{
cityId: 241,
cityName: "韶关市",
leftBottom: {
lng: 112.852386,
lat: 23.8879204
},
rightTop: {
lng: 114.745323,
lat: 25.5167599
}
},
{
cityId: 242,
cityName: "绍兴市",
leftBottom: {
lng: 119.888496,
lat: 29.2250595
},
rightTop: {
lng: 121.231552,
lat: 30.2862892
}
},
{
cityId: 243,
cityName: "邵阳市",
leftBottom: {
lng: 109.822113,
lat: 25.962019
},
rightTop: {
lng: 112.091141,
lat: 27.6624203
}
},
{
cityId: 244,
cityName: "神农架林区",
leftBottom: {
lng: 109.939919,
lat: 31.2963295
},
rightTop: {
lng: 110.982727,
lat: 31.8611107
}
},
{
cityId: 245,
cityName: "沈阳市",
leftBottom: {
lng: 122.425743,
lat: 41.1994896
},
rightTop: {
lng: 123.813599,
lat: 43.0429192
}
},
{
cityId: 246,
cityName: "深圳市",
leftBottom: {
lng: 113.676979,
lat: 22.2339993
},
rightTop: {
lng: 114.652138,
lat: 22.8514996
}
},
{
cityId: 247,
cityName: "石河子市",
leftBottom: {
lng: 85.9007874,
lat: 44.1234818
},
rightTop: {
lng: 86.170639,
lat: 44.4628601
}
},
{
cityId: 248,
cityName: "石家庄市",
leftBottom: {
lng: 113.522743,
lat: 37.4392509
},
rightTop: {
lng: 115.483467,
lat: 38.7645683
}
},
{
cityId: 249,
cityName: "十堰市",
leftBottom: {
lng: 109.43557,
lat: 31.5059605
},
rightTop: {
lng: 111.585602,
lat: 33.271431
}
},
{
cityId: 250,
cityName: "石嘴山市",
leftBottom: {
lng: 105.986122,
lat: 38.616909
},
rightTop: {
lng: 106.988083,
lat: 39.3917503
}
},
{
cityId: 251,
cityName: "双鸭山市",
leftBottom: {
lng: 130.666473,
lat: 45.7880974
},
rightTop: {
lng: 134.347366,
lat: 47.5725212
}
},
{
cityId: 252,
cityName: "朔州市",
leftBottom: {
lng: 111.898064,
lat: 39.0895805
},
rightTop: {
lng: 113.572723,
lat: 40.2991905
}
},
{
cityId: 253,
cityName: "四平市",
leftBottom: {
lng: 123.305931,
lat: 42.8219604
},
rightTop: {
lng: 125.784317,
lat: 44.1563187
}
},
{
cityId: 254,
cityName: "松原市",
leftBottom: {
lng: 123.109871,
lat: 43.9916496
},
rightTop: {
lng: 126.194168,
lat: 45.5417976
}
},
{
cityId: 255,
cityName: "苏州市",
leftBottom: {
lng: 119.918633,
lat: 30.7580795
},
rightTop: {
lng: 121.386993,
lat: 32.0347214
}
},
{
cityId: 256,
cityName: "宿州市",
leftBottom: {
lng: 116.159286,
lat: 33.2740517
},
rightTop: {
lng: 118.187599,
lat: 34.6508217
}
},
{
cityId: 257,
cityName: "绥化市",
leftBottom: {
lng: 124.873772,
lat: 45.5043678
},
rightTop: {
lng: 128.555862,
lat: 48.0974007
}
},
{
cityId: 258,
cityName: "遂宁市",
leftBottom: {
lng: 105.059341,
lat: 30.1749001
},
rightTop: {
lng: 106.001053,
lat: 31.1609001
}
},
{
cityId: 259,
cityName: "随州市",
leftBottom: {
lng: 112.727821,
lat: 31.32621
},
rightTop: {
lng: 114.13459,
lat: 32.4321213
}
},
{
cityId: 260,
cityName: "宿迁市",
leftBottom: {
lng: 117.940071,
lat: 33.13694
},
rightTop: {
lng: 119.1763,
lat: 34.4222298
}
},
{
cityId: 261,
cityName: "塔城地区",
leftBottom: {
lng: 82.2501907,
lat: 43.4809608
},
rightTop: {
lng: 87.3363266,
lat: 47.2344589
}
},
{
cityId: 262,
cityName: "台州市",
leftBottom: {
lng: 120.289917,
lat: 28.0003605
},
rightTop: {
lng: 121.979637,
lat: 29.3401108
}
},
{
cityId: 263,
cityName: "泰州市",
leftBottom: {
lng: 119.646523,
lat: 31.9272804
},
rightTop: {
lng: 120.559113,
lat: 33.2190819
}
},
{
cityId: 264,
cityName: "泰安市",
leftBottom: {
lng: 116.048439,
lat: 35.6303978
},
rightTop: {
lng: 118.002647,
lat: 36.4768715
}
},
{
cityId: 265,
cityName: "太原市",
leftBottom: {
lng: 111.51593,
lat: 37.4562302
},
rightTop: {
lng: 113.156342,
lat: 38.4213486
}
},
{
cityId: 266,
cityName: "唐山市",
leftBottom: {
lng: 117.512032,
lat: 38.900631
},
rightTop: {
lng: 119.448532,
lat: 40.4650192
}
},
{
cityId: 267,
cityName: "天津市",
leftBottom: {
lng: 116.707947,
lat: 38.555481
},
rightTop: {
lng: 118.06942,
lat: 40.2532692
}
},
{
cityId: 268,
cityName: "天门市",
leftBottom: {
lng: 112.592613,
lat: 30.3778706
},
rightTop: {
lng: 113.467369,
lat: 30.9039803
}
},
{
cityId: 269,
cityName: "天水市",
leftBottom: {
lng: 104.577477,
lat: 34.0765991
},
rightTop: {
lng: 106.714996,
lat: 35.1779099
}
},
{
cityId: 270,
cityName: "铁岭市",
leftBottom: {
lng: 123.452957,
lat: 41.9868889
},
rightTop: {
lng: 125.109543,
lat: 43.4924316
}
},
{
cityId: 271,
cityName: "铜川市",
leftBottom: {
lng: 108.583549,
lat: 34.8046417
},
rightTop: {
lng: 109.496582,
lat: 35.5810814
}
},
{
cityId: 272,
cityName: "通化市",
leftBottom: {
lng: 125.264076,
lat: 40.8618813
},
rightTop: {
lng: 126.754272,
lat: 43.0220795
}
},
{
cityId: 273,
cityName: "通辽市",
leftBottom: {
lng: 119.238251,
lat: 42.2457581
},
rightTop: {
lng: 123.720779,
lat: 45.6865997
}
},
{
cityId: 274,
cityName: "铜陵市",
leftBottom: {
lng: 117.249451,
lat: 30.4141502
},
rightTop: {
lng: 118.165527,
lat: 31.1289902
}
},
{
cityId: 275,
cityName: "铜仁市",
leftBottom: {
lng: 107.753067,
lat: 27.1212196
},
rightTop: {
lng: 109.474548,
lat: 29.0864506
}
},
{
cityId: 276,
cityName: "吐鲁番市",
leftBottom: {
lng: 87.2599487,
lat: 41.1891403
},
rightTop: {
lng: 91.9163666,
lat: 43.6343918
}
},
{
cityId: 277,
cityName: "图木舒克市",
leftBottom: {
lng: 78.6532364,
lat: 39.6160011
},
rightTop: {
lng: 79.6058426,
lat: 40.1293716
}
},
{
cityId: 278,
cityName: "屯昌县",
leftBottom: {
lng: 109.821892,
lat: 19.1306705
},
rightTop: {
lng: 110.252731,
lat: 19.5927391
}
},
{
cityId: 279,
cityName: "万宁市",
leftBottom: {
lng: 110.012733,
lat: 18.5727806
},
rightTop: {
lng: 110.614479,
lat: 19.1047993
}
},
{
cityId: 280,
cityName: "潍坊市",
leftBottom: {
lng: 118.175079,
lat: 35.7119408
},
rightTop: {
lng: 120.011307,
lat: 37.3332787
}
},
{
cityId: 281,
cityName: "威海市",
leftBottom: {
lng: 121.176933,
lat: 36.6739082
},
rightTop: {
lng: 122.726158,
lat: 38.2525711
}
},
{
cityId: 282,
cityName: "渭南市",
leftBottom: {
lng: 108.9645,
lat: 34.20961
},
rightTop: {
lng: 110.606941,
lat: 35.8539581
}
},
{
cityId: 283,
cityName: "文昌市",
leftBottom: {
lng: 110.462769,
lat: 19.3158607
},
rightTop: {
lng: 111.31723,
lat: 20.2484207
}
},
{
cityId: 284,
cityName: "文山壮族苗族自治州",
leftBottom: {
lng: 103.574097,
lat: 22.6856899
},
rightTop: {
lng: 106.200073,
lat: 24.4594593
}
},
{
cityId: 285,
cityName: "温州市",
leftBottom: {
lng: 119.625343,
lat: 27.0132389
},
rightTop: {
lng: 121.372627,
lat: 28.6110497
}
},
{
cityId: 286,
cityName: "乌海市",
leftBottom: {
lng: 106.59095,
lat: 39.0368309
},
rightTop: {
lng: 107.181061,
lat: 39.9054604
}
},
{
cityId: 287,
cityName: "武汉市",
leftBottom: {
lng: 113.700409,
lat: 29.9666405
},
rightTop: {
lng: 115.080811,
lat: 31.3612499
}
},
{
cityId: 288,
cityName: "芜湖市",
leftBottom: {
lng: 117.48262,
lat: 30.6380501
},
rightTop: {
lng: 118.73336,
lat: 31.5359898
}
},
{
cityId: 289,
cityName: "五家渠市",
leftBottom: {
lng: 87.3679199,
lat: 44.0043602
},
rightTop: {
lng: 87.7174988,
lat: 44.5968704
}
},
{
cityId: 290,
cityName: "乌兰察布市",
leftBottom: {
lng: 110.337868,
lat: 40.1639404
},
rightTop: {
lng: 114.81105,
lat: 43.379879
}
},
{
cityId: 291,
cityName: "乌鲁木齐市",
leftBottom: {
lng: 86.7889175,
lat: 42.9170418
},
rightTop: {
lng: 88.9795074,
lat: 45.0016747
}
},
{
cityId: 292,
cityName: "武威市",
leftBottom: {
lng: 101.830902,
lat: 36.7551613
},
rightTop: {
lng: 104.207367,
lat: 39.4612999
}
},
{
cityId: 293,
cityName: "无锡市",
leftBottom: {
lng: 119.519676,
lat: 31.1206703
},
rightTop: {
lng: 120.604446,
lat: 31.9852009
}
},
{
cityId: 294,
cityName: "五指山市",
leftBottom: {
lng: 109.323799,
lat: 18.6266804
},
rightTop: {
lng: 109.732292,
lat: 19.0324993
}
},
{
cityId: 295,
cityName: "吴忠市",
leftBottom: {
lng: 105.571373,
lat: 36.572319
},
rightTop: {
lng: 107.657066,
lat: 38.2624283
}
},
{
cityId: 296,
cityName: "梧州市",
leftBottom: {
lng: 110.325142,
lat: 22.6071396
},
rightTop: {
lng: 111.667213,
lat: 24.4049206
}
},
{
cityId: 297,
cityName: "厦门市",
leftBottom: {
lng: 117.886009,
lat: 24.3841305
},
rightTop: {
lng: 118.453987,
lat: 24.9073391
}
},
{
cityId: 298,
cityName: "香港特別行政區",
leftBottom: {
lng: 113.616013,
lat: 22.0750065
},
rightTop: {
lng: 114.50898,
lat: 22.5916195
}
},
{
cityId: 299,
cityName: "湘潭市",
leftBottom: {
lng: 111.99971,
lat: 27.3380604
},
rightTop: {
lng: 113.091919,
lat: 28.0735798
}
},
{
cityId: 300,
cityName: "湘西土家族苗族自治州",
leftBottom: {
lng: 109.186653,
lat: 27.7199993
},
rightTop: {
lng: 110.391006,
lat: 29.6338406
}
},
{
cityId: 301,
cityName: "襄阳市",
leftBottom: {
lng: 110.764,
lat: 31.2297993
},
rightTop: {
lng: 113.118736,
lat: 32.6276398
}
},
{
cityId: 302,
cityName: "咸宁市",
leftBottom: {
lng: 113.537819,
lat: 29.0294895
},
rightTop: {
lng: 114.973717,
lat: 30.2978191
}
},
{
cityId: 303,
cityName: "西安市",
leftBottom: {
lng: 107.62751,
lat: 33.693882
},
rightTop: {
lng: 109.822456,
lat: 34.74366
}
},
{
cityId: 304,
cityName: "仙桃市",
leftBottom: {
lng: 112.940979,
lat: 30.0696602
},
rightTop: {
lng: 113.824944,
lat: 30.5324593
}
},
{
cityId: 305,
cityName: "咸阳市",
leftBottom: {
lng: 107.651894,
lat: 34.1955299
},
rightTop: {
lng: 109.178223,
lat: 35.544239
}
},
{
cityId: 306,
cityName: "孝感市",
leftBottom: {
lng: 113.316689,
lat: 30.3799992
},
rightTop: {
lng: 114.591988,
lat: 31.853899
}
},
{
cityId: 307,
cityName: "锡林郭勒盟",
leftBottom: {
lng: 111.154129,
lat: 41.575779
},
rightTop: {
lng: 120.123337,
lat: 46.77705
}
},
{
cityId: 308,
cityName: "兴安盟",
leftBottom: {
lng: 119.482262,
lat: 44.2563591
},
rightTop: {
lng: 123.643593,
lat: 47.6574402
}
},
{
cityId: 309,
cityName: "邢台市",
leftBottom: {
lng: 113.760094,
lat: 36.7540207
},
rightTop: {
lng: 115.852943,
lat: 37.8066902
}
},
{
cityId: 310,
cityName: "西宁市",
leftBottom: {
lng: 100.90403,
lat: 36.2311096
},
rightTop: {
lng: 101.91449,
lat: 37.4052696
}
},
{
cityId: 311,
cityName: "新乡市",
leftBottom: {
lng: 113.382111,
lat: 34.8777008
},
rightTop: {
lng: 115.018753,
lat: 35.839138
}
},
{
cityId: 312,
cityName: "信阳市",
leftBottom: {
lng: 113.710114,
lat: 31.3823605
},
rightTop: {
lng: 115.943787,
lat: 32.6597099
}
},
{
cityId: 313,
cityName: "新余市",
leftBottom: {
lng: 114.485558,
lat: 27.53022
},
rightTop: {
lng: 115.406487,
lat: 28.1076393
}
},
{
cityId: 314,
cityName: "忻州市",
leftBottom: {
lng: 110.944801,
lat: 38.1324005
},
rightTop: {
lng: 113.967003,
lat: 39.6637001
}
},
{
cityId: 315,
cityName: "西双版纳傣族自治州",
leftBottom: {
lng: 99.9450912,
lat: 21.1399498
},
rightTop: {
lng: 101.844193,
lat: 22.5901508
}
},
{
cityId: 316,
cityName: "宣城市",
leftBottom: {
lng: 117.970444,
lat: 29.9435902
},
rightTop: {
lng: 119.649498,
lat: 31.3047504
}
},
{
cityId: 317,
cityName: "许昌市",
leftBottom: {
lng: 113.065529,
lat: 33.6887512
},
rightTop: {
lng: 114.324966,
lat: 34.4069214
}
},
{
cityId: 318,
cityName: "徐州市",
leftBottom: {
lng: 116.361816,
lat: 33.7185211
},
rightTop: {
lng: 118.674423,
lat: 34.9399414
}
},
{
cityId: 319,
cityName: "雅安市",
leftBottom: {
lng: 101.936493,
lat: 28.8487797
},
rightTop: {
lng: 103.395248,
lat: 30.9384594
}
},
{
cityId: 320,
cityName: "延安市",
leftBottom: {
lng: 107.659721,
lat: 35.3443909
},
rightTop: {
lng: 110.552528,
lat: 37.5010109
}
},
{
cityId: 321,
cityName: "延边朝鲜族自治州",
leftBottom: {
lng: 127.46888,
lat: 41.9987984
},
rightTop: {
lng: 131.319122,
lat: 44.5139198
}
},
{
cityId: 322,
cityName: "盐城市",
leftBottom: {
lng: 119.459297,
lat: 32.5754509
},
rightTop: {
lng: 120.994926,
lat: 34.5445213
}
},
{
cityId: 323,
cityName: "阳江市",
leftBottom: {
lng: 111.282082,
lat: 21.4660397
},
rightTop: {
lng: 112.369362,
lat: 22.6784
}
},
{
cityId: 324,
cityName: "阳泉市",
leftBottom: {
lng: 112.919868,
lat: 37.6619492
},
rightTop: {
lng: 114.044571,
lat: 38.5243607
}
},
{
cityId: 325,
cityName: "扬州市",
leftBottom: {
lng: 119.016487,
lat: 32.2179298
},
rightTop: {
lng: 119.911797,
lat: 33.4158211
}
},
{
cityId: 326,
cityName: "烟台市",
leftBottom: {
lng: 119.553398,
lat: 36.559639
},
rightTop: {
lng: 122.03804,
lat: 38.6573601
}
},
{
cityId: 327,
cityName: "宜春市",
leftBottom: {
lng: 113.889679,
lat: 27.5454998
},
rightTop: {
lng: 116.149887,
lat: 29.0996895
}
},
{
cityId: 328,
cityName: "伊春市",
leftBottom: {
lng: 127.631432,
lat: 46.4828873
},
rightTop: {
lng: 130.777573,
lat: 49.441349
}
},
{
cityId: 329,
cityName: "宜宾市",
leftBottom: {
lng: 103.611809,
lat: 27.8405991
},
rightTop: {
lng: 105.355797,
lat: 29.2660408
}
},
{
cityId: 330,
cityName: "宜昌市",
leftBottom: {
lng: 110.255661,
lat: 29.9457092
},
rightTop: {
lng: 112.084328,
lat: 31.5735302
}
},
{
cityId: 331,
cityName: "伊犁哈萨克自治州",
leftBottom: {
lng: 80.1640167,
lat: 42.258461
},
rightTop: {
lng: 85.2510071,
lat: 44.8430405
}
},
{
cityId: 332,
cityName: "银川市",
leftBottom: {
lng: 105.838699,
lat: 37.6021194
},
rightTop: {
lng: 106.87043,
lat: 38.8690491
}
},
{
cityId: 333,
cityName: "营口市",
leftBottom: {
lng: 121.859306,
lat: 39.9198418
},
rightTop: {
lng: 123.007309,
lat: 40.9410782
}
},
{
cityId: 334,
cityName: "鹰潭市",
leftBottom: {
lng: 116.692207,
lat: 27.84659
},
rightTop: {
lng: 117.472794,
lat: 28.6279202
}
},
{
cityId: 335,
cityName: "益阳市",
leftBottom: {
lng: 110.721138,
lat: 27.9746494
},
rightTop: {
lng: 112.950127,
lat: 29.5243607
}
},
{
cityId: 336,
cityName: "永州市",
leftBottom: {
lng: 110.9515,
lat: 24.6363602
},
rightTop: {
lng: 112.457367,
lat: 26.8679295
}
},
{
cityId: 337,
cityName: "榆林市",
leftBottom: {
lng: 107.263802,
lat: 36.8189201
},
rightTop: {
lng: 111.246147,
lat: 39.5869904
}
},
{
cityId: 338,
cityName: "玉林市",
leftBottom: {
lng: 109.541069,
lat: 21.6341991
},
rightTop: {
lng: 110.898888,
lat: 23.1247902
}
},
{
cityId: 339,
cityName: "岳阳市",
leftBottom: {
lng: 112.315292,
lat: 28.4218502
},
rightTop: {
lng: 114.15712,
lat: 29.8472996
}
},
{
cityId: 340,
cityName: "运城市",
leftBottom: {
lng: 110.219887,
lat: 34.5842896
},
rightTop: {
lng: 112.081917,
lat: 35.8212814
}
},
{
cityId: 341,
cityName: "云浮市",
leftBottom: {
lng: 111.056427,
lat: 22.3756905
},
rightTop: {
lng: 112.521652,
lat: 23.3238392
}
},
{
cityId: 342,
cityName: "玉树藏族自治州",
leftBottom: {
lng: 89.4090881,
lat: 31.6002407
},
rightTop: {
lng: 97.776123,
lat: 36.2771111
}
},
{
cityId: 343,
cityName: "玉溪市",
leftBottom: {
lng: 101.276817,
lat: 23.3137798
},
rightTop: {
lng: 103.153099,
lat: 24.9523697
}
},
{
cityId: 344,
cityName: "枣庄市",
leftBottom: {
lng: 116.811401,
lat: 34.4612503
},
rightTop: {
lng: 117.832039,
lat: 35.3204498
}
},
{
cityId: 345,
cityName: "张家界市",
leftBottom: {
lng: 109.693748,
lat: 28.8672409
},
rightTop: {
lng: 111.337532,
lat: 29.7908993
}
},
{
cityId: 346,
cityName: "张家口市",
leftBottom: {
lng: 113.825562,
lat: 39.5560112
},
rightTop: {
lng: 116.465561,
lat: 42.1491394
}
},
{
cityId: 347,
cityName: "张掖市",
leftBottom: {
lng: 97.3878403,
lat: 37.6070404
},
rightTop: {
lng: 102.215363,
lat: 39.8840218
}
},
{
cityId: 348,
cityName: "漳州市",
leftBottom: {
lng: 116.899567,
lat: 23.5487995
},
rightTop: {
lng: 118.24514,
lat: 25.1944695
}
},
{
cityId: 349,
cityName: "湛江市",
leftBottom: {
lng: 109.628792,
lat: 20.0595989
},
rightTop: {
lng: 111.081047,
lat: 21.9182796
}
},
{
cityId: 350,
cityName: "肇庆市",
leftBottom: {
lng: 111.361977,
lat: 22.7697697
},
rightTop: {
lng: 112.88179,
lat: 24.3998203
}
},
{
cityId: 351,
cityName: "昭通市",
leftBottom: {
lng: 102.87149,
lat: 26.5343094
},
rightTop: {
lng: 105.316383,
lat: 28.6684303
}
},
{
cityId: 352,
cityName: "郑州市",
leftBottom: {
lng: 112.721176,
lat: 34.2621002
},
rightTop: {
lng: 114.22319,
lat: 34.9885406
}
},
{
cityId: 353,
cityName: "镇江市",
leftBottom: {
lng: 118.969482,
lat: 31.6252193
},
rightTop: {
lng: 119.981506,
lat: 32.3162003
}
},
{
cityId: 354,
cityName: "中山市",
leftBottom: {
lng: 113.158546,
lat: 22.2039089
},
rightTop: {
lng: 113.693253,
lat: 22.7772007
}
},
{
cityId: 355,
cityName: "中卫市",
leftBottom: {
lng: 104.293633,
lat: 36.1216583
},
rightTop: {
lng: 106.459618,
lat: 37.7277107
}
},
{
cityId: 356,
cityName: "周口市",
leftBottom: {
lng: 114.091621,
lat: 33.0526619
},
rightTop: {
lng: 115.653214,
lat: 34.3372002
}
},
{
cityId: 357,
cityName: "舟山市",
leftBottom: {
lng: 121.521332,
lat: 29.545639
},
rightTop: {
lng: 122.992256,
lat: 30.9029293
}
},
{
cityId: 358,
cityName: "珠海市",
leftBottom: {
lng: 113.059349,
lat: 21.7801895
},
rightTop: {
lng: 114.411263,
lat: 22.4543991
}
},
{
cityId: 359,
cityName: "驻马店市",
leftBottom: {
lng: 113.097687,
lat: 32.2771912
},
rightTop: {
lng: 115.219704,
lat: 33.5306091
}
},
{
cityId: 360,
cityName: "株洲市",
leftBottom: {
lng: 112.966667,
lat: 26.0451908
},
rightTop: {
lng: 114.106934,
lat: 28.0290203
}
},
{
cityId: 361,
cityName: "淄博市",
leftBottom: {
lng: 117.545601,
lat: 35.9234695
},
rightTop: {
lng: 118.520798,
lat: 37.2891502
}
},
{
cityId: 362,
cityName: "自贡市",
leftBottom: {
lng: 104.052917,
lat: 28.9241199
},
rightTop: {
lng: 105.270042,
lat: 29.6372604
}
},
{
cityId: 363,
cityName: "资阳市",
leftBottom: {
lng: 104.192131,
lat: 29.6740208
},
rightTop: {
lng: 105.753868,
lat: 30.6436806
}
},
{
cityId: 364,
cityName: "遵义市",
leftBottom: {
lng: 105.608841,
lat: 27.1325493
},
rightTop: {
lng: 108.21476,
lat: 29.2213001
}
},
{
cityId: 365,
cityName: "taiwan",
leftBottom: {
lng: 119.198798,
lat: 21.835159
},
rightTop: {
lng: 122.331982,
lat: 25.72666
}
}];
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
var i = function(e) {
var n = t.styles[e.styleId];
return n ? (0, S.
default)({},
{
text: e.content || C.text,
color: n.color || C.color,
backgroundColor: n.backgroundColor || C.backgroundColor,
borderColor: n.borderColor || C.borderColor,
borderWidth: f(n.borderWidth || C.borderWidth, "number", 0),
strokeColor: n.strokeColor || C.strokeColor,
borderRadius: f(n.borderRadius || C.borderRadius, "number", 0),
size: n.size || C.size,
width: f(n.width || C.width, "number", 0),
height: f(n.height || C.height, "number", 0),
padding: f(n.padding || C.padding, "string", ""),
scale: n.scale || C.scale,
offset: n.offset || C.offset,
angle: n.angle || C.angle,
alignment: L[n.alignment] || L[C.alignment],
verticalAlignment: M[n.verticalAlignment] || M[C.verticalAlignment]
}) : (0, S.
default)({},
C, {
color: "rgba(0, 0, 0, 0)"
})
},
o = {};
t.geometries.forEach(function(t) {
var e = i(t),
n = e.text;
n && (0, x.
default)(n).forEach(function(t) {
o[t] = 1
})
});
var s = (0, g.
default)(o);
e.send("addGlyphs", {
glyphs: s
},
function(e, o) {
var s = JSON.parse(o.mapping),
l = r(t.geometries, s, i),
u = a(l, s, i);
n && n(u)
})
}
function r(t, e, n) {
var i = [];
return t.forEach(function(t, o) {
if (t.position) {
var r = n(t),
a = r.text;
if (a) {
var s = (0, x.
default)(a),
l = [0],
u = 0;
i.push({
geometry: t,
geometryIndex: o
}),
s.forEach(function(n, r) {
var s = {
letter: n,
index: r,
offsets: l,
len: a.length,
geometry: t,
geometryIndex: o
},
c = e[n];
u += c ? c.width: k,
l.push(u),
i.push(s)
})
}
}
}),
i
}
function a(t, e, n) {
var i = t.length,
o = new Float32Array(3 * i),
r = new Float32Array(2 * i),
a = new Uint16Array(2 * i),
f = new Float32Array(4 * i),
d = new Float32Array(4 * i),
h = new Uint8ClampedArray(4 * i),
v = new Uint8ClampedArray(4 * i),
p = new Uint8ClampedArray(i),
_ = new Uint8ClampedArray(3 * i),
m = new Float32Array(3 * i),
g = new Uint8ClampedArray(i),
y = 0,
x = 0,
b = 0,
S = 0,
T = 0,
P = 0,
I = 0,
k = 0,
L = 0,
M = 0,
C = 0,
R = [];
return t.forEach(function(t) {
var i = n(t.geometry),
B = e[t.letter],
N = 0;
B || (N = 1),
g[L] = N,
L += 1;
var O = new A.
default(i.color).toUpArray(),
D = new A.
default(i.strokeColor).toUpArray(),
z = new A.
default(i.backgroundColor, {
defaultColor: "rgba(0, 0, 0, 0)"
}).toUpArray(),
F = new A.
default(i.borderColor, {
defaultColor: "rgba(0, 0, 0, 0)"
}).toUpArray(),
V = t.geometry.position,
Y = "lat" in V && "lng" in V,
U = (0, w.splitLatLngNumber)(V.lng || 0),
j = (0, w.splitLatLngNumber)(V.lat || 0),
G = V.height;
o[y] = U.high,
y += 1,
o[y] = j.high,
y += 1,
o[y] = G,
y += 1,
r[x] = U.low,
x += 1,
r[x] = j.low,
x += 1,
a[b] = i.size,
b += 1,
a[b] = i.size,
b += 1,
s({
type: N,
info: t,
style: i,
instanceInfos: f,
infoIndex: S,
letterRect: B
}),
S += 4;
var Z = t.geometry.content;
l({
style: i,
type: N,
instanceFrames: d,
letterRect: B,
letterCount: Z.length,
frameIndex: T
}),
T += 4,
u({
styleColor: O,
bgColor: z,
type: N,
isValidPosition: Y,
instanceColors: h,
colorIndex: P
}),
P += 4,
u({
styleColor: D,
bgColor: F,
type: N,
isValidPosition: Y,
instanceColors: v,
colorIndex: I
}),
I += 4,
p[k] = 1,
k += 1;
var H = (0, E.encodePickingColor)(t.geometryIndex);
Y ? (_[M] = H[0], M += 1, _[M] = H[1], M += 1, _[M] = H[2], M += 1) : (_[M] = 0, M += 1, _[M] = 0, M += 1, _[M] = 0, M += 1),
m[C] = i.offset.x,
C += 1,
m[C] = i.offset.y,
C += 1,
m[C] = 1,
C += 1;
var W = t.geometryIndex,
X = t.len,
Q = t.index;
if (R[W]) R[W].lettersCount += 1,
R[W].widthSum += B.width,
R[W].fontSize = R[W].fontSize || B && B.fontSize;
else {
var q = t.geometry;
R[W] = {
geometryIndex: W,
geometry: q,
style: i,
lettersCount: 1,
fontSize: B && B.fontSize,
widthSum: B && B.width || 0
}
}
if (Q === X - 1 && B) {
R[W].heightSum = R[W].heightSum || B.height;
var K = c(i, X),
J = K.styleWidth,
$ = K.styleHeight,
tt = J * B.fontSize / i.size,
et = $ * B.fontSize / i.size;
R[W].widthSum = Math.max(R[W].widthSum, tt),
R[W].heightSum = Math.max(R[W].heightSum, et)
}
}),
{
count: i,
instancePositionList: o,
instancePosition64xyLowList: r,
instanceSizeList: a,
instanceInfoList: f,
instanceFrameList: d,
instanceColorList: h,
instanceStrokeColorList: v,
instanceShowList: p,
instanceTypeList: g,
instancePickingColorList: _,
instancePixelOffsetList: m,
labelInfoList: R
}
}
function s(t) {
var e = t.type,
n = t.info,
i = t.style,
o = t.instanceInfos,
r = t.letterRect,
a = t.infoIndex;
if (e) return o[a] = i.borderRadius,
a += 1,
o[a] = 0,
a += 1,
o[a] = i.angle,
a += 1,
o[a] = 1,
void(a += 1);
var s = n.offsets[n.offsets.length - 1],
l = n.offsets[n.index];
o[a] = (i.alignment - 1) * s / 2 + r.width / 2 + l || 0,
a += 1,
o[a] = r.height / 2 * i.verticalAlignment || 0,
a += 1,
o[a] = i.angle,
a += 1,
o[a] = 1,
a += 1
}
function l(t) {
var e = t.instanceFrames,
n = t.type,
i = t.style,
o = t.letterRect,
r = t.letterCount,
a = t.frameIndex;
if (n) {
var s = c(i, r),
l = s.styleWidth,
u = s.styleHeight;
return l && u ? (e[a] = i.borderWidth, a += 1, e[a] = i.borderWidth, a += 1, e[a] = l + 2 * i.borderWidth || 0, a += 1, e[a] = u + 2 * i.borderWidth || 0, void(a += 1)) : (e[a] = 0, a += 1, e[a] = 0, a += 1, e[a] = 0, a += 1, e[a] = 0, void(a += 1))
}
e[a] = o.x || 0,
a += 1,
e[a] = o.y || 0,
a += 1,
e[a] = o.width || 0,
a += 1,
e[a] = o.height || 0,
a += 1
}
function u(t) {
var e = t.type,
n = t.styleColor,
i = t.isValidPosition,
o = t.instanceColors,
r = t.bgColor,
a = t.colorIndex;
if (e) return o[a] = i ? r[0] : 0,
a += 1,
o[a] = i ? r[1] : 0,
a += 1,
o[a] = i ? r[2] : 0,
a += 1,
o[a] = i ? r[3] : 0,
void(a += 1);
o[a] = i ? n[0] : 0,
a += 1,
o[a] = i ? n[1] : 0,
a += 1,
o[a] = i ? n[2] : 0,
a += 1,
o[a] = i ? n[3] : 0,
a += 1
}
function c(t, e) {
var n = t.height,
i = t.width;
if ((!n || !i) && t.padding) {
var o = d(t.padding, "padding"),
r = o.widthPadding,
a = o.heightPadding;
n = t.size + 2 * a,
i = t.size * (e - 1) + 2 * r
}
return {
styleHeight: n,
styleWidth: i
}
}
function f(t, e, n) {
return (void 0 === t ? "undefined": (0, _.
default)(t)) !== e ? n: t
}
function d(t, e) {
function n(t) {
var e = t.match(/\d+\px/);
return (0, v.
default)(e, 1)[0].slice(0, -2)
}
try {
var i = t.split(" ");
return {
heightPadding: n(i[0]),
widthPadding: n(i[1] || i[0])
}
} catch(t) {
return console.error(e + "样式设置无法解析"),
{
wiheightPadding: 0,
widthPadding: 0
}
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var h = n(32),
v = i(h),
p = n(20),
_ = i(p),
m = n(17),
g = i(m),
y = n(82),
x = i(y),
b = n(16),
S = i(b),
w = n(139),
E = n(240),
T = n(227),
A = i(T),
P = n(391),
I = i(P),
k = 32,
L = {
left: 1,
center: 0,
right: -1
},
M = {
top: 1,
middle: 0,
bottom: -1
},
C = new I.
default;
C.text = "",
e.
default = o
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
var i = function(e) {
var n = t.styles[e.styleId];
return n.text = e.content || w,
n
},
o = []; (0, p.
default)(t.styles).forEach(function(e) {
t.styles[e].src && o.push(t.styles[e].src)
});
var a = {};
t.geometries.forEach(function(t) {
var e = i(t),
n = e.text;
n && (0, h.
default)(n).forEach(function(t) {
a[t] = 1
})
});
var s = (0, p.
default)(a);
e.send("addMarkers", {
markerSrcs: o,
glyphs: s
},
function(e, o) {
var a = JSON.parse(o.mapping),
s = r(t.geometries, a, i);
n && n(s)
})
}
function r(t, e, n) {
var i = s(t, e, n),
o = i.length,
r = new Float32Array(3 * o),
u = new Float32Array(2 * o),
c = new Uint16Array(2 * o),
d = new Float32Array(4 * o),
h = new Float32Array(4 * o),
v = new Uint8ClampedArray(3 * o),
p = new Float32Array(3 * o),
g = new Uint8ClampedArray(4 * o),
x = new Uint8ClampedArray(4 * o),
b = new Uint16Array(o),
S = new Uint8ClampedArray(o),
w = new Uint8ClampedArray(o),
E = 0,
T = 0,
A = 0,
P = 0,
I = 0,
k = 0,
L = 0,
M = 0,
C = 0,
R = 0,
B = 0,
N = 0,
O = [];
return i.forEach(function(t) {
var i = n(t.geometry),
o = t.geometry.position,
s = (0, _.splitLatLngNumber)(o.lng),
D = (0, _.splitLatLngNumber)(o.lat),
z = o.height;
r[E] = s.high,
E += 1,
r[E] = D.high,
E += 1,
r[E] = z,
E += 1,
u[T] = s.low,
T += 1,
u[T] = D.low,
T += 1;
var F = null;
if (t.src) F = e[t.src],
c[A] = parseInt(i.width, 10),
A += 1,
c[A] = parseInt(i.height, 10),
A += 1,
d[P] = i.width / 2 - i.anchor.x,
P += 1,
d[P] = i.height / 2 - i.anchor.y,
P += 1,
d[P] = t.geometry.properties && "$angle" in t.geometry.properties ? t.geometry.properties.$angle: i.rotate,
P += 1,
d[P] = i.faceTo,
P += 1,
p[L] = 0,
L += 1,
p[L] = 0,
L += 1,
p[L] = i.opacity,
L += 1,
w[N] = 0,
N += 1;
else {
F = e[t.letter],
c[A] = i.size,
A += 1,
c[A] = i.size,
A += 1;
var V = t.offsets[t.offsets.length - 1],
Y = t.offsets[t.index];
d[P] = F.width / 2 + Y - V / 2,
P += 1,
d[P] = 0,
P += 1,
d[P] = 0,
P += 1,
d[P] = 1,
P += 1;
var U = l(t, F, i);
p[L] = U.x + i.offset.x,
L += 1,
p[L] = U.y + i.offset.y,
L += 1,
p[L] = 1,
L += 1,
t.offsetToMarkerCenter = {
x: U.x + i.offset.x,
y: U.y + i.offset.y
},
w[N] = 1,
N += 1
}
h[I] = F.x,
I += 1,
h[I] = F.y,
I += 1,
h[I] = F.width,
I += 1,
h[I] = F.height,
I += 1;
var j = new y.
default(i.color).toUpArray(),
G = new y.
default(i.strokeColor).toUpArray(),
Z = (0, f.
default)(j, 4);
g[M] = Z[0],
g[M + 1] = Z[1],
g[M + 2] = Z[2],
g[M + 3] = Z[3],
M += 4;
var H = (0, f.
default)(G, 4);
x[C] = H[0],
x[C + 1] = H[1],
x[C + 2] = H[2],
x[C + 3] = H[3],
C += 4,
b[R] = i.strokeWidth,
R += 1,
S[B] = 1,
B += 1;
var W = (0, m.encodePickingColor)(t.geometryIndex),
X = (0, f.
default)(W, 3);
v[k] = X[0],
v[k + 1] = X[1],
v[k + 2] = X[2],
k += 3,
a(t, i, F, O)
}),
{
count: o,
instancePositionList: r,
instancePosition64xyLowList: u,
instanceSizeList: c,
instanceInfoList: d,
instanceFrameList: h,
instancePickingColorList: v,
instancePixelOffsetList: p,
instanceColorList: g,
instanceStrokeColorList: x,
instanceStrokeWidthList: b,
instanceShowList: S,
instanceTypeList: w,
labelInfoList: O
}
}
function a(t, e, n, i) {
var o = t.geometryIndex;
if (i[o]) i[o].lettersCount += 1;
else {
var r = t.geometry;
i[o] = {
geometryIndex: o,
geometry: r,
style: e,
markerWidth: 0,
markerHeight: 0,
fontSize: S,
labelWidthSum: 0,
lettersCount: 1,
offsetToMarkerCenter: {
x: 0,
y: 0
}
}
}
t.src ? (i[o].markerWidth = n.width, i[o].markerHeight = n.height) : (i[o].fontSize = n.fontSize, i[o].labelWidthSum += n.width, i[o].offsetToMarkerCenter = t.offsetToMarkerCenter)
}
function s(t, e, n) {
var i = [];
return t.forEach(function(t, o) {
if (t.position) {
var r = n(t);
i.push({
src: r.src,
geometry: t,
geometryIndex: o
});
var a = r.text;
if (a) {
var s = (0, h.
default)(a),
l = [0],
u = 0;
s.forEach(function(n, r) {
var s = {
letter: n,
index: r,
offsets: l,
len: a.length,
geometry: t,
geometryIndex: o
},
c = e[n];
u += c ? c.width: b,
l.push(u),
i.push(s)
})
}
}
}),
i
}
function l(t, e, n) {
var i = u({
x: 0 - n.anchor.x,
y: 0 - n.anchor.y
},
n.rotate),
o = u({
x: n.width - n.anchor.x,
y: 0 - n.anchor.y
},
n.rotate),
r = u({
x: 0 - n.anchor.x,
y: n.height - n.anchor.y
},
n.rotate),
a = u({
x: n.width - n.anchor.x,
y: n.height - n.anchor.y
},
n.rotate),
s = Math.min(i.x, o.x, r.x, a.x),
l = Math.max(i.x, o.x, r.x, a.x),
c = Math.min(i.y, o.y, r.y, a.y),
f = Math.max(i.y, o.y, r.y, a.y),
d = n.size / e.height,
h = t.offsets[t.offsets.length - 1],
v = h / 2 * d,
p = e.height / 2 * d,
_ = (s + l) / 2,
m = (c + f) / 2;
switch (n.direction) {
case 0:
break;
case 1:
m = c - p;
break;
case 2:
m = f + p;
break;
case 3:
_ = s - v;
break;
case 4:
_ = l + v
}
return {
x: _,
y: m
}
}
function u(t, e) {
var n = new x.Vector4(t.x, t.y, 0, 1),
i = (new x.Matrix4).setRotate( - e, 0, 0, 1),
o = i.multiplyVector4(n);
return {
x: o.elements[0],
y: o.elements[1]
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var c = n(32),
f = i(c),
d = n(82),
h = i(d),
v = n(17),
p = i(v),
_ = n(139),
m = n(240),
g = n(227),
y = i(g),
x = n(107),
b = 32,
S = 24,
w = "";
e.
default = o
},
function(t, e, n) {
"use strict";
function i(t) {
var e = t.geometries.map(function(t) {
return t.paths || []
}),
n = new o.PolygonParseHelper({
complexPolygons: e,
IndexType: Uint32Array
});
n.updatePositions({
fp64: !0
});
var i = n.getPositions();
return {
indices: n.getIndices(),
positions: i,
positions64xyLow: n.getPositions64xyLow()
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(333);
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return new _.
default(t).toUpArray()
}
function r(t, e) {
var n = function(e) {
var n = t.styles[e] || x,
i = o(n.color),
r = o(n.borderColor),
a = o(n.eraseColor);
return {
color: i.slice(0, 3),
borderColor: r.slice(0, 3),
width: n.width,
borderWidth: n.borderWidth ? 2 * n.borderWidth + n.width: 0,
opacity: i[3],
borderOpacity: r[3],
lineCap: n.lineCap || 0,
dashArray: n.dashArray,
arrowInfo: n.arrowInfo,
eraseColor: a.slice(0, 3),
eraseOpacity: a[3],
enableBloom: n.enableBloom
}
};
t.geometries.forEach(function(n) {
var i = n.rainbowPaths;
if (i && i.length > 0) {
var o = [],
r = [],
s = !0,
l = !1,
u = void 0;
try {
for (var f, h = (0, d.
default)(i.entries()); ! (s = (f = h.next()).done); s = !0) {
var v = (0, c.
default)(f.value, 2),
p = v[0],
_ = v[1];
if (p > 0) {
var g = i[p - 1].path,
y = g[g.length - 1],
x = _.path[0];
if (y.lat === x.lat && y.lng === x.lng) {
var b = (0, m.deduplicatePoint)(_.path.slice(1));
o[o.length - 1] = o[o.length - 1].concat(b);
var S = r[r.length - 1],
w = S[S.length - 1].end;
S.push({
color: _.color,
borderColor: _.borderColor,
start: w,
end: o[o.length - 1].length - 1
})
} else o.push((0, m.deduplicatePoint)(_.path)),
r.push([{
color: _.color,
borderColor: _.borderColor,
start: 0,
end: _.path.length - 1
}])
} else o.push((0, m.deduplicatePoint)(_.path)),
r.push([{
color: _.color,
borderColor: _.borderColor,
start: 0,
end: _.path.length - 1
}])
}
} catch(t) {
l = !0,
u = t
} finally {
try { ! s && h.
return && h.
return ()
} finally {
if (l) throw u
}
}
n.paths = o,
n.styleIdList = r
} else {
if ((0, m.isSimple)(n.paths) && t._eraseOpts[n.id]) {
var E = t._eraseOpts[n.id],
p = E.index,
T = E.point,
A = n.paths.slice(p - 1, p + 1);
if (A.length) {
var P = a(A[0], A[1], T, p),
I = P.ptArr,
k = P.crossIndex,
L = P.type;
t._eraseOpts[n.id].crossOpts = {
ptArr: I,
crossIndex: k,
type: L
},
"start" === L || "end" === L || n.paths.splice(k, 0, {
lat: I[0],
lng: I[1],
height: 0
})
}
}
n.paths = (0, m.normalize)(n.paths),
e && (n.paths = n.paths.map(function(t) {
return (0, m.cross180)(t)
}))
}
});
var i = t.geometries.reduce(function(t, e) {
return t + e.paths.reduce(function(t, e) {
return t + e.length - 1
},
0)
},
0),
r = new Float32Array(3 * i),
s = new Float32Array(3 * i),
l = new Float32Array(3 * i),
u = new Float32Array(3 * i),
f = new Float32Array(4 * i),
p = new Uint8ClampedArray(4 * i),
_ = new Uint8ClampedArray(4 * i),
g = new Uint8ClampedArray(3 * i),
y = new Float32Array(1 * i),
b = new Float32Array(1 * i),
S = new Uint8ClampedArray(4 * i),
w = new Uint8ClampedArray(4 * i),
E = 0,
T = 0,
A = 0,
P = 0,
I = 0,
k = 0,
L = 0,
M = 0,
C = 0,
R = 0;
return t.geometries.forEach(function(e, i) {
var a = n(e.styleId),
c = t._eraseOpts[e.id] || null,
d = a.color,
m = a.opacity,
x = a.borderColor,
B = a.borderOpacity;
e.paths.forEach(function(t, n) {
for (var N = t[0], O = 0; O < t.length; O++) !
function(O) {
if (e.rainbowPaths) {
var D = e.styleIdList[n].find(function(t) {
return O >= t.start && O <= t.end
});
if (D.color) {
var z = o(D.color);
a.color = z.slice(0, 3),
a.opacity = z[3]
} else a.color = d,
a.opacity = m;
if (D.borderColor) {
var F = o(D.borderColor);
a.borderColor = F.slice(0, 3),
a.borderOpacity = F[3]
} else a.borderColor = x,
a.borderOpacity = B
}
var V = t[O],
Y = (0, h.splitLatLngNumber)(V.lat),
U = (0, h.splitLatLngNumber)(V.lng);
if (O < t.length - 1) {
r[E] = U.high,
E += 1,
r[E] = Y.high,
E += 1,
r[E] = V.height,
E += 1,
l[A] = V.lng - N.lng,
A += 1,
l[A] = V.lat - N.lat,
A += 1,
l[A] = 0,
A += 1,
N = V;
var j = t[O + 1],
G = (0, h.splitLatLngNumber)(j.lat),
Z = (0, h.splitLatLngNumber)(j.lng);
f[I] = U.low,
I += 1,
f[I] = Y.low,
I += 1,
f[I] = Z.low,
I += 1,
f[I] = G.low,
I += 1
}
if (O > 0) {
var H = t[O + 1];
H || (H = V),
s[T] = U.high,
T += 1,
s[T] = Y.high,
T += 1,
s[T] = V.height,
T += 1,
u[P] = H.lng - V.lng,
P += 1,
u[P] = H.lat - V.lat,
P += 1,
u[P] = 0,
P += 1
}
if (O > 0) {
1 === e.paths.length && c && c.crossOpts.crossIndex >= O ? (p[k] = a.eraseColor[0], _[k] = a.eraseColor[0], k += 1, p[k] = a.eraseColor[1], _[k] = a.eraseColor[1], k += 1, p[k] = a.eraseColor[2], _[k] = a.eraseColor[2], k += 1, p[k] = a.eraseOpacity, _[k] = a.eraseOpacity, k += 1) : (p[k] = a.color[0], _[k] = a.borderColor[0], k += 1, p[k] = a.color[1], _[k] = a.borderColor[1], k += 1, p[k] = a.color[2], _[k] = a.borderColor[2], k += 1, p[k] = a.opacity, _[k] = a.borderOpacity, k += 1);
var W = (0, v.encodePickingColor)(i);
g[3 * L + 0] = W[0],
g[3 * L + 1] = W[1],
g[3 * L + 2] = W[2],
L += 1,
S[C] = a.lineCap,
C += 1,
S[C] = a.dashArray[0],
C += 1,
S[C] = a.dashArray[1],
C += 1,
S[C] = a.enableBloom,
C += 1,
y[M] = a.width,
b[M] = a.borderWidth,
M += 1,
w[R] = a.arrowInfo[0],
R += 1,
w[R] = a.arrowInfo[1],
R += 1,
w[R] = a.arrowInfo[2],
R += 1,
w[R] = a.arrowInfo[3],
R += 1
}
} (O)
})
}),
{
instanceStartPositionList: r,
instanceEndPositionList: s,
instanceLeftDeltaList: l,
instanceRightDeltaList: u,
instanceStartEndPostions64xyLowList: f,
instanceColorList: p,
instanceBorderColorList: _,
instancePickingColorList: g,
instanceWidthList: y,
instanceBorderWidthList: b,
instanceLineInfoList: S,
instanceArrowInfoList: w,
enableGeodesic: e,
count: i
}
}
function a(t, e, n, i) {
var o = l(t),
r = l(e),
a = l(n),
u = [r[0] - o[0], r[1] - o[1]],
c = [a[0] - o[0], a[1] - o[1]],
f = s(c, u);
if (f <= 0) return {
ptArr: t,
crossIndex: i - 1,
type: "start"
};
var d = s(u, u);
if (d <= f) return {
ptArr: e,
crossIndex: i,
type: "end"
};
if (! (Math.abs(u[0] * c[1] - c[0] * u[1]) <= .3)) return {
ptArr: e,
crossIndex: i,
type: "end"
};
var h = f / d,
v = [o[0] + h * u[0], o[1] + h * u[1]];
return {
ptArr: [v[1], v[0]],
crossIndex: i,
type: "middle"
}
}
function s(t, e) {
return t[0] * e[0] + t[1] * e[1]
}
function l(t) {
return [t.lng, t.lat]
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var u = n(32),
c = i(u),
f = n(27),
d = i(f),
h = n(139),
v = n(240),
p = n(227),
_ = i(p),
m = n(480),
g = n(339),
y = i(g),
x = new y.
default;
e.
default = r
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
if (t.getLng() < e.getLng()) {
n.getLng() >= 0 ? t.lng = 180 : e.lng = -179.9999
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(0),
a = i(r),
s = n(1),
l = i(s),
u = n(47),
c = i(u),
f = n(209),
d = i(f),
h = n(397),
v = i(h),
p = n(478),
_ = i(p),
m = function() {
function t(e, n) { (0, a.
default)(this, t),
this.geometries = e.map(function(t) {
return t.position = c.
default.convert(t.position),
t
}),
this.clusters = [],
this.minimumClusterSize = n.minimumClusterSize,
this.gridSize = n.gridSize,
this.averageCenter = n.averageCenter,
this.projection = new v.
default
}
return (0, l.
default)(t, [{
key: "createClusters",
value: function(t) {
var e = this,
n = t.zoom > t.maxZoom; (t.resetCluster || n) && this._resetClusters();
var i = t.pixelsPerDegree,
o = new d.
default(c.
default.convert(t.mapBounds.sw), c.
default.convert(t.mapBounds.ne)),
r = this._getExtendedBounds(o, t.zoom);
return this.geometries.filter(function(t) {
return r.contains(t.position) && !t.hasCluster
}).forEach(function(o) {
n ? (e._createNewCluster(o, t.zoom), o.hasCluster = !0) : e._addToClosestCluster(o, i, t.zoom)
}),
this.clusters.forEach(function(t) {
t.getGeometries().length < e.minimumClusterSize && e._breakUpCluster(t)
}),
this.clusters = this.clusters.filter(function(t) {
return t.getGeometries().length
}),
this.clusters.map(function(t) {
return t.getClusterInfo()
})
}
},
{
key: "_resetClusters",
value: function() {
this.clusters.forEach(function(t) {
return t.remove()
}),
this.clusters = [],
this.geometries.forEach(function(t) {
return delete t.hasCluster
})
}
},
{
key: "_addToClosestCluster",
value: function(t, e, n) {
var i = null,
o = 4e3;
this.clusters.filter(function(e) {
return e.isInBounds(t)
}).forEach(function(n) {
var r = n.getCenter();
if (r) {
var a = (r.lng - t.position.lng) * e[0],
s = (r.lat - t.position.lat) * e[1],
l = Math.sqrt(a * a + s * s);
l < o && (o = l, i = n)
}
}),
i && i.isInBounds(t) ? i.add(t) : this._createNewCluster(t, n),
t.hasCluster = !0
}
},
{
key: "_createNewCluster",
value: function(t, e) {
var n = new _.
default(this, e);
n.add(t),
this.clusters.push(n)
}
},
{
key: "_getExtendedBounds",
value: function(t, e) {
var n = t.getNorthEast(),
i = t.getSouthWest(),
r = this.projection.latLngToCoord(n, e),
a = this.projection.latLngToCoord(i, e);
r.x += this.gridSize,
r.y -= this.gridSize,
a.x -= this.gridSize,
a.y += this.gridSize;
var s = this.projection.coordToLatLng(r, e),
l = this.projection.coordToLatLng(a, e);
return o(s, l, t.getCenter()),
new d.
default(l, s)
}
},
{
key: "_breakUpCluster",
value: function(t) {
var e = this;
t.getGeometries().length < 2 || (t.getGeometries().forEach(function(n) {
e._createNewCluster(n, t.zoom)
}), t.remove())
}
}]),
t
} ();
e.
default = m
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(648),
p = i(v),
_ = n(479),
m = i(_),
g = function(t) {
function e() { (0, s.
default)(this, e);
var t = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this));
return t.materials = {
escalator2: [.34999999403954, .34999999403954, .34999999403954],
escalator3: [1, 1, 1]
},
t
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "parse",
value: function(t) {
var e = this,
n = (0, m.
default)(t),
i = n.meshes;
i.forEach(function(t) {
var n = t.materials[0] && t.materials[0].name;
if (n) {
for (var i = new Float32Array(t.attributes.POSITION.value.length), o = 0; o < i.length; o += 3) i[o] = e.materials[n][0],
i[o + 1] = e.materials[n][1],
i[o + 2] = e.materials[n][2];
t.attributes.COLOR_0 = {
size: 3,
value: i
}
}
});
var o = i.reduce(function(t, e) {
return t + e.header.vertexCount
},
0);
return {
mode: 4,
vertexCount: o,
attributes: this.mergeAttributes(i, o)
}
}
}]),
e
} (p.
default);
e.
default = g
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
var n = (0, E.latLng2Mercator)(t.x || t.lng, t.y || t.lat),
i = new A.
default;
return i.x = n.x - e.x,
i.y = n.y - e.y,
i
}
function r(t, e) {
return o((0, E.pixels2LongLat)(t.x, t.y), e)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(27),
s = i(a),
l = n(82),
u = i(l),
c = n(241),
f = i(c),
d = n(17),
h = i(d),
v = n(16),
p = i(v),
_ = n(24),
m = i(_),
g = n(32),
y = i(g),
x = n(0),
b = i(x),
S = n(1),
w = i(S),
E = n(380),
T = n(74),
A = i(T),
P = n(47),
I = i(P),
k = n(10),
L = i(k),
M = n(795),
C = i(M),
R = n(397),
B = i(R),
N = n(332),
O = n(379),
D = n(278),
z = function() {
function t(e, n) { (0, b.
default)(this, t),
this.buildingId = e,
this.dataView = n.buffer,
this.zoom = 20,
this.areaCenter = (0, E.latLng2Mercator)(n.areaCenter.lng, n.areaCenter.lat),
this.floorInfo = n.floorInfo,
this.selectedFloorNum = n.selectedFloorNum,
this.indoorStyle = n.indoorStyle,
this.projection = new B.
default,
this._initialize()
}
return (0, w.
default)(t, [{
key: "_initialize",
value: function() {
var t = this,
e = (0, y.
default)(this.floorInfo.bounds, 2),
n = e[0],
i = e[1],
r = [new I.
default(i.lat, n.lng), n, new I.
default(n.lat, i.lng), i],
a = r.map(function(e) {
return o(e, t.areaCenter)
}),
s = {
displayType: 2,
gateNum: 0,
gates: [],
height: 0,
point: a,
regionId: "",
brickness: 1
},
l = this._translateLatLngForSingleRegion(s, 0, !0, null, 0);
l.isWall = !1,
this._boundsRegion = l
}
},
{
key: "parseBuilding",
value: function() {
var t = this.buildingId,
e = new DataView(this.dataView.buffer),
n = 0,
i = {};
i.Attribute_size = e.getInt32(n, !0),
n += 4,
i.Data_size = e.getInt32(n, !0),
n += 4,
i.Topology_size = e.getInt32(n, !0),
n += 4,
i.Name_CN_size = e.getUint8(n, !0),
n += 1,
i.Name_CN = String.fromCharCode.apply(String, (0, m.
default)(new Uint16Array(e.buffer.slice(n, n + i.Name_CN_size)))),
n += i.Name_CN_size,
i.DefaultFloor = e.getUint8(n, !0),
n += 1,
i.Floor_num = e.getUint8(n, !0),
n += 1,
i.Floor_str_size = e.getUint8(n, !0),
n += 1;
for (var o = [], r = 0; r < i.Floor_str_size; r++) {
var a = e.getUint8(n, !0);
o.push(a),
n += 1
}
i.floorStr = String.fromCharCode.apply(null, o);
for (var s = [], l = 0; l < 4; l++) {
var u = e.getInt32(n, !0);
s.push(u),
n += 4
}
i.Floor_num = e.getInt32(n, !0),
n += 4;
for (var c = [], f = 0; f < i.Floor_num; f++) {
var d = e.getInt32(n, !0);
c.push(d),
n += 4
}
for (var h = [], v = [], p = [], _ = [], g = [], y = [], x = [], b = [], S = [], w = [], E = [], T = 0; T < i.Floor_num; T++) if (T === this.selectedFloorNum + 1) {
var A = T,
P = [],
I = [],
k = [],
L = [],
M = [],
C = [],
R = [],
B = [],
N = [],
O = [],
D = A,
z = e.getInt32(n, !0);
n += 4;
for (var F = [], V = 0; V < z; V++) {
var Y = {},
U = e.getInt32(n, !0);
n += 4;
var j = e.getInt32(n, !0);
Y.type = U,
Y.size = j,
F.push(Y),
n += 4
}
for (var G = 0; G < z; G++) {
var Z = F[G].type,
H = F[G].size,
W = G;
if (9 === Z) {
var X = this._parseFloorPointLayer(e, n, D, {
nowFloorPoints22: L,
nowFloorPoints21: M,
nowFloorPoints20: C,
nowFloorPoints19: R,
nowFloorPoints18: B,
nowFloorPoints17: N,
nowFloorPoints16: O
});
n += H,
L = X.nowFloorPoints22,
M = X.nowFloorPoints21,
C = X.nowFloorPoints20,
R = X.nowFloorPoints19,
B = X.nowFloorPoints18,
N = X.nowFloorPoints17,
O = X.nowFloorPoints16
} else if (4 === Z) {
var Q = this._parseFloorRegionLayer(e, n, G);
n += H;
var q = Q.nowLayerRegions,
K = Q.nowLayerEscalatorRegions;
0 === I.length && P.push({
styleId: q.styleId,
points: [this._boundsRegion],
layerId: W
}),
K.length > 0 && k.push.apply(k, (0, m.
default)(K)),
I.push(q)
} else if (11 === Z) {
n += H;
continue
}
}
for (var J = [], $ = 0; $ < 4; $++) {
var tt = e.getUint8(n, !0);
J.push(tt),
n += 1
}
p[A] = P,
h[A] = I,
v[A] = k,
x[A] = this._refactorFloorPoints(C, t, A),
b[A] = this._refactorFloorPoints(R, t, A),
S[A] = this._refactorFloorPoints(B, t, A),
w[A] = this._refactorFloorPoints(N, t, A),
E[A] = this._refactorFloorPoints(O, t, A);
var et = {};
et.zoom22 = g,
et.zoom21 = y,
et.zoom20 = x,
et.zoom19 = b,
et.zoom18 = S,
et.zoom17 = w,
et.zoom16 = E
} else n += c[T];
return i.floorBoundsData = p,
i.buildingData = h,
i.buildingEscalator = v,
i.buildingPoint = et,
i.buildingLine = _,
i
}
},
{
key: "_parseFloorPointLayer",
value: function(t, e, n, i) {
var o = i.nowFloorPoints22,
r = i.nowFloorPoints21,
a = i.nowFloorPoints20,
s = i.nowFloorPoints19,
l = i.nowFloorPoints18,
u = i.nowFloorPoints17,
c = i.nowFloorPoints16;
e += 2,
e += 2;
var f = t.getInt32(e, !0);
e += 4;
for (var d = [], h = [], v = 0; v < f; v++) {
var p = {},
_ = (0, E.readUint24)(new Uint8Array(t.buffer.slice(e, e + 3))),
g = 4095 & _;
g ^= 65536,
p.classCode = g;
var y = _ >> 12 & 15,
x = _ >> 16 & 255;
e += 3;
var b = t.getUint16(e, !0);
e += 2,
p.hPoi_count = b;
var S = t.getInt32(e, !0);
e += 4,
p.poiPriority = S;
var w = t.getUint8(e, !0);
e += 1,
p.Strace = w;
var T = {};
T.strace16 = 1 & w,
T.strace17 = 2 & w,
T.strace18 = 4 & w,
T.strace19 = 8 & w,
T.strace20 = 16 & w,
T.strace21 = 32 & w,
T.strace22 = 64 & w,
p.zoomStrace = T;
var A = t.getUint32(e, !0);
e += 4,
p.direct = A;
var P = String.fromCharCode.apply(String, (0, m.
default)(new Uint16Array(t.buffer.slice(e, e + 2 * y))));
e += 2 * y,
p.Name_str1 = P;
var I = x - y,
k = String.fromCharCode.apply(String, (0, m.
default)(new Uint16Array(t.buffer.slice(e, e + 2 * I))));
h.push(k),
e += 2 * I,
p.Name_str2 = k,
d.push(p)
}
for (var M = [], C = 0; C < d.length; C++) for (var R = d[C].hPoi_count, B = 0; B < R; B++) {
var N = t.getInt32(e, !0);
e += 4;
var O = t.getInt32(e, !0);
e += 4;
var D = (0, E.pixels2LongLat)(N, O);
M.push(D)
}
var z = new Uint8Array(t.buffer.slice(e, e + 4));
z = String.fromCharCode.apply(null, z),
z = z.toUpperCase(),
e += 4;
var F = [];
if ("EXPH" === z) for (var V = 0; V < f; V++) {
var Y = t.getUint16(e, !0);
e += 2,
F.push(Y)
}
z = new Uint8Array(t.buffer.slice(e, e + 4)),
z = String.fromCharCode.apply(null, z),
z = z.toUpperCase(),
e += 4;
var U = [];
if ("EXNR" === z) {
for (var j = [], G = 0; G < f; G++) {
var Z = t.getUint16(e, !0);
e += 2;
for (var H = 15 & Z,
W = [], X = 0; X < H; X++) W.push(t.getUint8(e, !0)),
e += 1;
j.push(W)
}
for (var Q = 0; Q < j.length; Q++) {
for (var q = [], K = j[Q], J = 0; J < K.length; J++) {
var $ = new Uint16Array(t.buffer.slice(e, e + 2 * K[J])),
tt = String.fromCharCode.apply(null, $);
q.push(tt),
e += 2 * K[J]
}
U.push(q)
}
}
for (var et = 0; et < M.length; et++) {
for (var nt = {},
it = [], ot = d[et].hPoi_count, rt = 0; rt < ot; rt++);
var at = "";
d[et].Name_str2 && (at = "\\" + d[et].Name_str2),
it.push(M[et]),
nt.points = it,
nt.styleId = d[et].classCode,
nt.rank = d[et].poiPriority,
nt.uuid = L.
default.uniqueId(),
nt.text = d[et].Name_str1 + at,
nt.buildingId = this.buildingId;
var st = d[et].zoomStrace;
if (0 !== st.strace20) {
var lt = d[et].direct;
lt = lt >> 16 & 15;
var ut = (0, E.extendCopy)(nt);
ut.direct = lt;
var ct = F[et],
ft = this._translateLatLngPointForSinglePoint(ut, ct, n, a.length);
a.push(ft)
}
if (0 !== st.strace19) {
var dt = d[et].direct;
dt = dt >> 12 & 15;
var ht = (0, E.extendCopy)(nt);
ht.direct = dt;
var vt = F[et],
pt = this._translateLatLngPointForSinglePoint(ht, vt, n, s.length);
s.push(pt)
}
if (0 !== st.strace18) {
var _t = d[et].direct;
_t = _t >> 8 & 15;
var mt = (0, E.extendCopy)(nt);
mt.direct = _t;
var gt = F[et],
yt = this._translateLatLngPointForSinglePoint(mt, gt, n, l.length);
l.push(yt)
}
if (0 !== st.strace17) {
var xt = d[et].direct;
xt = xt >> 4 & 15;
var bt = (0, E.extendCopy)(nt);
bt.direct = xt;
var St = F[et],
wt = this._translateLatLngPointForSinglePoint(bt, St, n, u.length);
u.push(wt)
}
if (0 !== st.strace16) {
var Et = d[et].direct;
Et &= 15;
var Tt = (0, E.extendCopy)(nt);
Tt.direct = Et;
var At = F[et],
Pt = this._translateLatLngPointForSinglePoint(Tt, At, n, c.length);
c.push(Pt)
}
}
return {
offset: e,
nowFloorPoints22: o,
nowFloorPoints21: r,
nowFloorPoints20: a,
nowFloorPoints19: s,
nowFloorPoints18: l,
nowFloorPoints17: u,
nowFloorPoints16: c
}
}
},
{
key: "_parseFloorRegionLayer",
value: function(t, e, n) {
var i = this,
o = {};
e += 2;
var a = t.getUint16(e, !0);
e += 2,
e += 4;
var s = t.getInt32(e, !0);
e += 4;
for (var l = [], u = 0; u < s; u++) {
var c = t.getInt32(e, !0);
l.push(c),
e += 4
}
for (var f = [], d = {},
h = 0, v = 0; v < s; v++) {
d[v] = {},
d[v].start = h;
var _ = t.getUint16(e, !0);
f.push(_),
h += _,
d[v].end = h,
e += 2
}
for (var g = [], y = 0; y < h; y++) {
var x = t.getUint32(e, !0);
e += 4;
var b = t.getUint32(e, !0);
e += 4;
var S = {
x: x,
y: b
};
g.push(S)
}
var w = new Uint8Array(t.buffer.slice(e, e + 4));
w = String.fromCharCode.apply(null, w),
w = w.toUpperCase(),
e += 4;
var E = [];
if ("EXPI" === w) {
for (var T = [], A = 0; A < s; A++) {
var P = t.getUint8(e, !0);
T.push(P),
e += 1
}
for (var I = 0; I < T.length; I++) {
var k = T[I],
L = String.fromCharCode.apply(String, (0, m.
default)(new Uint8Array(t.buffer.slice(e, e + k))));
E.push(L),
e += T[I]
}
}
if (w = new Uint8Array(t.buffer.slice(e, e + 4)), w = String.fromCharCode.apply(null, w), w = w.toUpperCase(), e += 4, "EXMP" === w) for (var M = 0; M < g.length; M++) {
var C = t.getUint8(e, !0);
e += 1;
var R = t.getUint8(e, !0);
e += 1,
g[M].x += C / 100,
g[M].y += R / 100
}
for (var B = [], N = 0, O = 0; O < f.length; O++) {
var D = void 0;
D = 0 === O ? g.slice(O, f[O]) : g.slice(N, N + f[O]),
N += f[O],
B.push(D)
}
for (var z = [], F = 0; F < B.length; F++) {
var V = B[F].map(function(t) {
return r(t, i.areaCenter)
}),
Y = E[F],
U = {
point: V,
height: l[F],
regionId: Y
};
z.push(U)
}
if (w = new Uint8Array(t.buffer.slice(e, e + 4)), w = String.fromCharCode.apply(null, w), w = w.toUpperCase(), e += 4, "EX3D" === w) for (var j = 0; j < z.length; j++) {
var G = t.getInt8(e, !0);
e += 1;
var Z = t.getUint8(e, !0);
e += 1;
var H = t.getUint8(e, !0);
e += 1;
var W = t.getInt16(e, !0);
e += 2;
var X = t.getUint16(e, !0);
e += 2;
var Q = t.getUint16(e, !0);
e += 2;
var q = t.getUint32(e, !0);
e += 4;
var K = t.getUint32(e, !0);
e += 4,
z[j].height = G / 10,
z[j].displayType = Z,
z[j].brickness = H,
z[j].angle = W,
z[j].rectWidth = X,
z[j].rectHeight = Q,
z[j].centerX = q,
z[j].centerY = K
}
if (w = new Uint8Array(t.buffer.slice(e, e + 4)), w = String.fromCharCode.apply(null, w), w = w.toUpperCase(), e += 4, "EXGT" === w) for (var J = 0; J < z.length; J++) {
var $ = z[J],
tt = t.getUint16(e, !0);
if (e += 2, $.gateNum = tt, $.gates = [], tt > 0) {
for (var et = 0; et < tt; et++) {
var nt = {};
nt.hasCelling = !!t.getUint8(e, !0),
e += 1,
$.gates.push(nt)
}
for (var it = 0; it < tt; it++) {
var ot = $.gates[it];
ot.pt = [{},
{}];
for (var rt = 0; rt < 2; rt++) ot.pt[rt].x = t.getUint32(e, !0),
e += 4,
ot.pt[rt].y = t.getUint32(e, !0),
e += 4,
ot.pt[rt].x += t.getUint8(e, !0) / 100,
e += 1,
ot.pt[rt].y += t.getUint8(e, !0) / 100,
e += 1
}
}
}
for (var at = [], st = [], lt = 0; lt < z.length; lt++) {
var ut = z[lt],
ct = null;
if (1 === ut.displayType) ct = this._translateLatLngForSingleRegion(ut, n, !1);
else {
if (4 === ut.displayType) {
st.push(ut);
continue
}
var ft = this._extrudePolygon(ut.point, 0 === n ? 0 : 1, .2,
function(t, e, n) {
return 0 === e ? n[n.length - 1] : n[e - 1]
},
function(t, e, n) {
return e === n.length - 1 ? n[0] : n[e + 1]
}),
dt = (0, p.
default)({},
ut, {
point: ft
});
ct = this._translateLatLngForSingleRegion(dt, 0, !0, null, 0 === n ? 0 : .5)
}
ct.originRegion = ut,
ct.isWall = !1,
at.push(ct)
}
var ht = this._getWallRegions(at, n);
return o.styleId = 196608 ^ a,
o.points = [].concat(at, (0, m.
default)(ht)),
o.layerId = n,
{
offset: e,
nowLayerRegions: o,
nowLayerEscalatorRegions: st
}
}
},
{
key: "_getWallRegions",
value: function(t, e) {
for (var n = this,
i = [], o = t, r = o.slice(), a = 0; a < r.length; a++) { (function(t) {
var o = r[t],
a = o.originRegion;
if (2 !== a.displayType) return "continue";
var s = a.point,
l = s[0],
u = s;
u[0].x === u[u.length - 1].x && u[0].y === u[u.length - 1].y || u.push(u[0]),
(0, E.isClockWise)(u) && u.reverse();
var c = {},
f = a.gates.map(function(t) {
return {
hasCelling: t.hasCelling,
pt: t.pt.map(function(t) {
var e = (0, E.pixels2LongLat)(t.x, t.y),
i = (0, E.latLng2Mercator)(e.x, e.y),
o = {};
return o.x = i.x - n.areaCenter.x,
o.y = i.y - n.areaCenter.y,
new A.
default(o.x, o.y)
})
}
}).filter(function(t) {
var e = t.pt.reduce(function(t, e) {
return "" + t + e.x + "+" + e.y + ";"
},
"");
if (!c[e]) return c[e] = !0,
!0
}),
d = [[]],
h = 0;
u.forEach(function(t, e) {
if (e !== u.length - 1) {
d[h].push(t);
var n = u[e + 1],
i = n.clone().sub(t),
o = i.clone().normalize(),
r = [];
f.forEach(function(e) {
var a = e.pt[1].clone().sub(e.pt[0]),
s = a.clone().normalize(),
l = Math.abs(i.x * a.y - a.x * i.y),
u = l <= .3,
c = e.pt[0].x >= Math.min(t.x, n.x) && e.pt[0].x <= Math.max(t.x, n.x) && e.pt[0].y >= Math.min(t.y, n.y) && e.pt[0].y <= Math.max(t.y, n.y) && e.pt[1].x >= Math.min(t.x, n.x) && e.pt[1].x <= Math.max(t.x, n.x) && e.pt[1].y >= Math.min(t.y, n.y) && e.pt[1].y <= Math.max(t.y, n.y);
if (u && c) {
var f = e.pt.slice();
o.dot(s) + 1 < .1 && f.reverse(),
r.push(f)
}
}),
r.sort(function(e, n) {
return e[0].clone().sub(t).lengthSq() - n[0].clone().sub(t).lengthSq()
});
var a = [];
r.forEach(function(t) {
if (0 === a.length) a.push(t);
else {
var e = a[a.length - 1]; (Math.abs(t[0].x - e[0].x) > .1 || Math.abs(t[0].y - e[0].y) > .1) && a.push(t)
}
}),
a.forEach(function(t) {
d[h].push(t[0]),
h += 1,
d[h] = [t[1]]
})
}
}),
d[h].push(l);
var v = null;
if (d.length > 1) {
var _ = d[0],
g = _[0],
y = d[d.length - 1],
x = y[y.length - 1];
x.x === g.x && x.y === g.y && (d.shift(), y.pop(), y.push.apply(y, (0, m.
default)(_)))
}
v = d.map(function(t) {
var i = t,
o = i.slice().reverse(),
r = n._extrudePolygon(o, 0 === e ? 1 : -1, .2,
function(t, e, n) {
return 0 === e ? 1 === d.length ? n[n.length - 2] : t: n[e - 1]
},
function(t, e, n) {
return e === n.length - 1 ? 1 === d.length ? n[1] : t: n[e + 1]
}),
a = [].concat((0, m.
default)(i), (0, m.
default)(r));
return (0, E.isClockWise)(a) && 0 === e && a.reverse(),
a
}),
v.forEach(function(t) {
var e = (0, p.
default)({},
a);
e.point = t;
var o = n._translateLatLngForSingleRegion(e, 1, !1, t.holeIndecies);
o.height /= 10,
o.isWall = !0,
i.push(o)
})
})(a)
}
return i
}
},
{
key: "_extrudePolygon",
value: function(t, e, n, i, o) {
var r = t;
return r.map(function(t, a) {
var s = i(t, a, r),
l = o(t, a, r),
u = t.clone().sub(s).normalize(),
c = l.clone().sub(t).normalize(),
f = new A.
default( - u.y, u.x),
d = new A.
default( - c.y, c.x),
h = 0 === a ? d: f,
v = u.clone().add(c).normalize(),
p = new A.
default( - v.y, v.x),
_ = Math.abs(p.dot(h)),
m = p.clone().mult(e).mult(n / (Math.abs(_ - 0) < .1 ? 1 : _));
return t.clone().add(m)
})
}
},
{
key: "getEscalatorAttributes",
value: function(t) {
var e = this,
n = new Float32Array(2 * t.length),
i = new Int16Array(4 * t.length);
return t.forEach(function(t, o) {
var r = (0, E.pixels2LongLat)(t.centerX, t.centerY),
a = (0, E.latLng2Mercator)(r.x, r.y);
n[2 * o] = a.x - e.areaCenter.x,
n[2 * o + 1] = a.y - e.areaCenter.y,
i[4 * o] = t.rectWidth,
i[4 * o + 1] = t.rectHeight,
i[4 * o + 2] = t.height,
i[4 * o + 3] = t.angle
}),
{
instanceCoordsTypeArray: n,
instanceInfosTypeArray: i,
count: t.length
}
}
},
{
key: "getTopGeometryAttributes",
value: function(t) {
var e = this,
n = this.zoom,
i = t.reduce(function(t, e) {
return t + e.points.reduce(function(t, e) {
return t + (e.point && e.point.length || 0)
},
0)
},
0),
o = t.reduce(function(t, e) {
return t + e.points.reduce(function(t, e) {
return t + (e.index.top && e.index.top.length || 0)
},
0)
},
0),
r = o > 65535 ? new Uint32Array(o) : new Uint16Array(o),
a = new Float32Array(i),
s = new Uint8ClampedArray(i),
l = 0,
u = 0;
t.forEach(function(t) {
var i = t.styleId,
o = (0, N.getStyle)(i, n, e.indoorStyle);
o && t.points.forEach(function(t) {
if (!t._fail) {
var e = l,
n = u;
t.index.top && (t.index.top.forEach(function(t, i) {
r[n + i] = t + e / 3
}), t.point.forEach(function(n, i) {
a[e + i] = n,
s[e + i] = t.isWall ? o.topStyle[i % 3] : o.bottomStyle[i % 3]
}), u += t.index.top.length, l += t.point.length)
}
})
});
var c = this._computeNormals(a, r);
return {
color: s,
position: a,
index: r,
normal: c
}
}
},
{
key: "getSidesGeometryAttributes",
value: function(t) {
var e = this,
n = this.zoom,
i = t.reduce(function(t, e) {
return t + e.points.reduce(function(t, e) {
return t + (e.index.sides && 6 * e.index.sides.length * 3 || 0)
},
0)
},
0),
o = t.reduce(function(t, e) {
return t + e.points.reduce(function(t, e) {
return t + (e.index.sides && 6 * e.index.sides.length || 0)
},
0)
},
0),
r = o > 65535 ? new Uint32Array(o) : new Uint16Array(o),
a = new Float32Array(i),
s = new Uint8ClampedArray(i),
l = 0,
u = 0;
t.forEach(function(t) {
var i = t.styleId,
o = (0, N.getStyle)(i, n, e.indoorStyle);
o && t.points.forEach(function(t) {
if (!t._fail) {
var e = l,
n = u;
if (t.index.sides) {
var i = t.index.top,
c = Math.max.apply(null, i || [0]);
t.index.sides.forEach(function(i, l) {
var u = t.isWall && c > 0 && i.every(function(t) {
return t > c ? t - c >= c / 2 : t >= c / 2
});
i.forEach(function(i, c) {
var f = t.point[3 * i],
d = t.point[3 * i + 1],
h = t.point[3 * i + 2],
v = e + 6 * l * 3 + 3 * c;
a[v + 0] = f,
a[v + 1] = d,
a[v + 2] = h,
s[v + 0] = u ? o.insideStyle[0] : o.outsideStyle[0],
s[v + 1] = u ? o.insideStyle[1] : o.outsideStyle[1],
s[v + 2] = u ? o.insideStyle[2] : o.outsideStyle[2];
var p = e / 3 + 6 * l + c;
r[n + 6 * l + c] = p
})
}),
l += 6 * t.index.sides.length * 3,
u += 6 * t.index.sides.length
}
}
})
});
var c = this._computeNormals(a, r);
return {
color: s,
position: a,
index: r,
normal: c
}
}
},
{
key: "getBuildingPointInfo",
value: function(t) {
var e = this.indoorStyle,
n = {},
i = "",
o = []; (0, h.
default)(t).forEach(function(r) {
var a = parseInt(r.replace("zoom", ""), 10);
n[r] = [],
t[r].forEach(function(t, s) {
return n[r][s] = [],
t.directs.map(function(l, u) {
var c = t.styleIds[u],
f = t.texts[u],
d = t.ranks[u],
h = t.positions.slice(3 * u, 3 * u + 3),
v = (0, N.getStyle)(c, a, e);
if (v) {
var p = (0, N.getStyle)(v.labelid, a, e);
if (p) {
var _ = v.icon_offset,
m = null,
g = p.fontSize,
y = p.font,
x = (0, E.getPoiDrawInfo)(c, a, l, e);
x.drawIcon && (m = O.ConfigUtil.getIconSrc(_), o.push(m)),
i += f;
var b = {
direct: l,
styleId: c,
text: f,
rank: d,
font: y,
fontSize: g,
position: [h[0], h[1], h[2]],
iconSrc: m,
drawInfo: x
};
n[r][s].push(b)
}
}
})
}),
n[r].shift()
});
var r = new f.
default(i.split("")),
a = (0, u.
default)(r),
s = new f.
default(o);
return o = (0, u.
default)(s),
{
pointInfoSet: n,
glyphList: a,
iconSrcList: o
}
}
},
{
key: "parseInstanceBuildingPoint",
value: function(t, e, n, i) {
var o = this.indoorStyle;
return (0, h.
default)(t).forEach(function(r) {
var a = parseInt(r.replace("zoom", ""), 10);
t[r].filter(function(t) {
return !! t
}).forEach(function(t, r) {
var s = 0,
l = [],
c = [],
f = [],
d = [],
h = [],
v = [],
p = i[a][r];
t.forEach(function(t, i) {
var r = p[i],
_ = (0, N.getStyle)(t.styleId, a, o),
g = (0, N.getStyle)(_.labelid, a, o);
if (r.forEach(function(e) {
return e.rank = t.rank
}), t.drawInfo.drawIcon) {
var y = e[t.iconSrc];
if (y) {
var x = O.INDOOR_ICON_SIZE / 2,
b = O.INDOOR_ICON_SIZE / 2;
l.push(t.position[0], t.position[1], 0),
c.push(O.INDOOR_ICON_SIZE, O.INDOOR_ICON_SIZE, x, b),
f.push(y.x, y.y, y.width, y.height),
d.push(0, 1, -1, 1),
h.push(1, 1, 1, 1),
v.push(0, 0, 0, 0),
r.iconSymbolIndex = s,
s += 1
}
}
t.drawInfo.drawLabel && r.forEach(function(e) {
var i = e.anchor,
o = e.textBounds,
r = o.w,
a = o.h,
p = new Uint16Array(e.text.length),
_ = e.text.length,
y = [0],
x = 0,
b = 0; (0, u.
default)(e.text).forEach(function(e) {
var i = t.fontSize / n[e].fontSize;
x = y[y.length - 1] + n[e].width * i,
b = Math.max(b, n[e].height * i),
y.push(x)
});
for (var S = Math.max(1, x / r, b / a), w = {
x: x / 2 - i.x * S,
y: b / 2 - i.y * S
},
E = 0; E < _; E++) {
var T = n[e.text[E]],
A = t.fontSize / T.fontSize;
l.push(t.position[0], t.position[1], 0),
c.push(T.width * A, T.height * A, w.x - y[E], w.y),
f.push(T.x, T.y, T.width, T.height),
d.push(0, 1, 0, 1),
h.push.apply(h, (0, m.
default)(g.fillStyle)),
v.push.apply(v, (0, m.
default)(g.strokeStyle)),
p[E] = s,
s += 1
}
e.textSymbolIndexList = p,
e.instance_trans = t.position,
e.instance_coords = [x, b, w.x, w.y]
})
});
var _ = new Float32Array(l),
g = new Float32Array(c),
y = new Float32Array(f),
x = new Float32Array(d),
b = new Uint8ClampedArray(h),
S = new Uint8ClampedArray(v);
p.instance = {
isIndoor: !0,
instanceTransTypeArray: _,
instanceCoordsTypeArray: g,
instanceTextBoundsTypeArray: y,
instanceInfosTypeArray: x,
instanceColorsTypeArray: b,
instanceStrokeColorsTypeArray: S,
count: d.length / 4
}
})
}),
i
}
},
{
key: "_computeNormals",
value: function(t, e) {
var n = t,
i = new Float32Array(t.length),
o = void 0,
r = void 0,
a = void 0,
s = C.
default.create(),
l = C.
default.create(),
u = C.
default.create(),
c = C.
default.create(),
f = C.
default.create();
if (e) for (var d = e,
h = 0; h < d.length; h += 3) o = 3 * d[h + 0],
r = 3 * d[h + 1],
a = 3 * d[h + 2],
s[0] = n[o + 0],
s[1] = n[o + 1],
s[2] = n[o + 2],
l[0] = n[r + 0],
l[1] = n[r + 1],
l[2] = n[r + 2],
u[0] = n[a + 0],
u[1] = n[a + 1],
u[2] = n[a + 2],
C.
default.subtract(c, u, l),
C.
default.subtract(f, s, l),
C.
default.cross(c, c, f),
i[o] += c[0],
i[o + 1] += c[1],
i[o + 2] += c[2],
i[r] += c[0],
i[r + 1] += c[1],
i[r + 2] += c[2],
i[a] += c[0],
i[a + 1] += c[1],
i[a + 2] += c[2];
else for (var v = 0; v < n.length; v += 9) s[0] = n[v + 0],
s[1] = n[v + 1],
s[2] = n[v + 2],
l[0] = n[v + 3],
l[1] = n[v + 4],
l[2] = n[v + 5],
u[0] = n[v + 6],
u[1] = n[v + 7],
u[2] = n[v + 8],
C.
default.subtract(c, u, l),
C.
default.subtract(f, s, l),
C.
default.cross(c, c, f),
i[o] += c[0],
i[o + 1] += c[1],
i[o + 2] += c[2],
i[r] += c[0],
i[r + 1] += c[1],
i[r + 2] += c[2],
i[a] += c[0],
i[a + 1] += c[1],
i[a + 2] += c[2];
for (var p = C.
default.create(), _ = 0; _ < i.length; _ += 3) p[0] = i[_ + 0],
p[1] = i[_ + 1],
p[2] = i[_ + 2],
C.
default.normalize(p, p),
i[_ + 0] = p[0],
i[_ + 1] = p[1],
i[_ + 2] = p[2];
return i
}
},
{
key: "_translateLatLngPointForSinglePoint",
value: function(t, e, n) {
var i = (0, p.
default)({},
t),
o = i.points[0],
r = (0, E.latLng2Mercator)(o.x, o.y);
return i.points = [{
x: r.x - this.areaCenter.x,
y: r.y - this.areaCenter.y,
z: e
}],
i.height = this.poiHeight / 9,
i.floorId = n,
i
}
},
{
key: "_translateLatLngForSingleRegion",
value: function(t, e, n, i, o) {
var r = e,
a = "",
l = t,
u = l.height,
c = t,
f = c.regionId;
t = t.point;
var d = {},
h = [],
v = [];
d.height = u;
var p = "";
if (t.length >= 3 && (0 === r ? (p = "bottom", a = "floor") : p = "other", h = this.cutTrianleRegion(t, p, i)), "bottom" !== p && !n) {
var _ = !0,
m = !1,
g = void 0;
try {
for (var y, x = (0, s.
default)(t); ! (_ = (y = x.next()).done); _ = !0) {
var b = y.value;
v.push(b.x),
v.push(b.y),
v.push(u)
}
} catch(t) {
m = !0,
g = t
} finally {
try { ! _ && x.
return && x.
return ()
} finally {
if (m) throw g
}
}
}
var S = !0,
w = !1,
E = void 0;
try {
for (var T, A = (0, s.
default)(t); ! (S = (T = A.next()).done); S = !0) {
var P = T.value;
v.push(P.x),
v.push(P.y),
v.push(o || 0)
}
} catch(t) {
w = !0,
E = t
} finally {
try { ! S && A.
return && A.
return ()
} finally {
if (w) throw E
}
}
return d.index = {
top: h.top || "",
sides: h.sides || "",
bottom: h.bottom || ""
},
d.point = v,
d.type = a,
d.regionId = f,
d
}
},
{
key: "cutTrianleRegion",
value: function(t, e, n) {
var i = t,
o = [],
r = !0,
a = !1,
l = void 0;
try {
for (var u, c = (0, s.
default)(i); ! (r = (u = c.next()).done); r = !0) {
var f = u.value;
o.push(f.x),
o.push(f.y)
}
} catch(t) {
a = !0,
l = t
} finally {
try { ! r && c.
return && c.
return ()
} finally {
if (a) throw l
}
}
var d = n && n.length > 0 ? D(o, n) : D(o);
if ("bottom" === e) return {
top: d
};
var h = [],
v = !0,
p = !1,
_ = void 0;
try {
for (var m, g = (0, s.
default)(d); ! (v = (m = g.next()).done); v = !0) {
var y = m.value;
h.push(y + i.length)
}
} catch(t) {
p = !0,
_ = t
} finally {
try { ! v && g.
return && g.
return ()
} finally {
if (p) throw _
}
}
for (var x = [], b = 0; b < i.length; b++) {
var S = [];
S.push(b),
S.push(b + i.length),
S.push((b + 1) % i.length),
S.push(b + i.length),
S.push(b === i.length - 1 ? b + 1 : b + i.length + 1),
S.push((b + 1) % i.length),
x.push(S)
}
return {
top: d,
sides: x,
bottom: h
}
}
},
{
key: "_translateLatLngForSingleLine",
value: function(t) {
var e = [],
n = !0,
i = !1,
o = void 0;
try {
for (var r, a = (0, s.
default)(t); ! (n = (r = a.next()).done); n = !0) {
var l = r.value,
u = (0, E.latLng2Mercator)(l.x, l.y);
u.x = u.x - this.areaCenter.x,
u.y = u.y - this.areaCenter.y;
var c = {};
c.x = u.x,
c.y = u.y,
c.z = 0,
e.push(c)
}
} catch(t) {
i = !0,
o = t
} finally {
try { ! n && a.
return && a.
return ()
} finally {
if (i) throw o
}
}
return e
}
},
{
key: "_refactorFloorPoints",
value: function(t, e, n) {
var i = {
buildingId: e,
floorId: n,
positions: new Float32Array(3 * t.length),
styleIds: new Uint32Array(t.length),
poiIds: [],
texts: [],
ranks: [],
heights: new Uint32Array(t.length),
directs: new Uint32Array(t.length),
uuids: []
};
return t.forEach(function(t, e) {
i.positions[3 * e] = t.points[0].x,
i.positions[3 * e + 1] = t.points[0].y,
i.positions[3 * e + 2] = t.points[0].z,
i.styleIds[e] = t.styleId,
i.poiIds.push(t.poiId),
i.texts.push(t.text),
i.ranks.push(t.rank),
i.heights[e] = t.height,
i.directs[e] = t.direct,
i.uuids.push(t.uuid)
}),
i
}
}]),
t
} ();
e.
default = z
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.STYLE = function() {
return {
regionStyles: {
196609 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: 0,
maxScaleVal: 22,
color_side: -1118482,
color_border: 0,
bottom_color: -1
}],
196610 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1,
maxScaleVal: 22,
color_side: -1118482,
color_border: -1,
bottom_color: -1
}],
196611 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -2953734,
maxScaleVal: 22,
color_side: -5712919,
color_border: -5712919,
bottom_color: -2953734
}],
196612 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -203803,
maxScaleVal: 22,
color_side: -1520948,
color_border: -1520948,
bottom_color: -203803
}],
196613 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1117483,
maxScaleVal: 22,
color_side: -3025487,
color_border: -3025487,
bottom_color: -1117483
}],
196614 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -3283714,
maxScaleVal: 22,
color_side: -5519384,
color_border: -5519384,
bottom_color: -3283714
}],
196615 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -202279,
maxScaleVal: 22,
color_side: -1191237,
color_border: -1191237,
bottom_color: -202279
}],
196616 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1117483,
maxScaleVal: 22,
color_side: -3025487,
color_border: -3025487,
bottom_color: -1117483
}],
196617 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -202279,
maxScaleVal: 22,
color_side: -1191237,
color_border: -1191237,
bottom_color: -202279
}],
196618 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -855310,
maxScaleVal: 22,
color_side: -2039584,
color_border: -2039584,
bottom_color: -855310
}],
196619 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1117483,
maxScaleVal: 22,
color_side: -3025487,
color_border: -3025487,
bottom_color: -1117483
}],
196620 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -2698028,
maxScaleVal: 22,
color_side: -2039584,
color_border: -2039584,
bottom_color: -2698028
}],
196621 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -202279,
maxScaleVal: 22,
color_side: -1191237,
color_border: -1191237,
bottom_color: -202279
}],
196622 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -202279,
maxScaleVal: 22,
color_side: -1191237,
color_border: -1191237,
bottom_color: -202279
}],
196623 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -3283714,
maxScaleVal: 22,
color_side: -5519384,
color_border: -5519384,
bottom_color: -3283714
}],
196624 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -2953734,
maxScaleVal: 22,
color_side: -5712919,
color_border: -5712919,
bottom_color: -2953734
}],
196625 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -202279,
maxScaleVal: 22,
color_side: -1191237,
color_border: -1191237,
bottom_color: -202279
}],
196626 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1316376,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -1316376
}],
196627 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -2170631,
maxScaleVal: 22,
color_side: -4012824,
color_border: -4012824,
bottom_color: -2170631
}],
196628 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -2170631,
maxScaleVal: 22,
color_side: -4012824,
color_border: -4012824,
bottom_color: -2170631
}],
196629 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -2953734,
maxScaleVal: 22,
color_side: -5712919,
color_border: -5712919,
bottom_color: -2953734
}],
196630 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -2953734,
maxScaleVal: 22,
color_side: -5712919,
color_border: -5712919,
bottom_color: -2953734
}],
196631 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -202279,
maxScaleVal: 22,
color_side: -1191237,
color_border: -1191237,
bottom_color: -202279
}],
196632 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -202279,
maxScaleVal: 22,
color_side: -1191237,
color_border: -1191237,
bottom_color: -202279
}],
196633 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -202279,
maxScaleVal: 22,
color_side: -1191237,
color_border: -1191237,
bottom_color: -202279
}],
196634 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1117483,
maxScaleVal: 22,
color_side: -3025487,
color_border: -3025487,
bottom_color: -1117483
}],
196635 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1316376,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -1316376
}],
196636 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -657931,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -657931
}],
196637 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -657931,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -657931
}],
196638 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -656385,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -656385
}],
196639 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -1545,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -1545
}],
196640 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -1545,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -1545
}],
196641 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -656385,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -656385
}],
196642 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -459272,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -459272
}],
196643 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -656385,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -656385
}],
196644 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -328961,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -328961
}],
196645 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -328961,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -328961
}],
196646 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -66569,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -66569
}],
196647 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -66569,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -66569
}],
196648 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -328961,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -328961
}],
196649 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: 1,
top_color: -1,
color_fill: -2953734,
maxScaleVal: 22,
color_side: -5712919,
color_border: -5712919,
bottom_color: -2953734
}],
196650 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -657931,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -657931
}],
196651 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -657931,
maxScaleVal: 22,
color_side: -1644826,
color_border: -6513508,
bottom_color: -657931
}],
196652 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -1969153,
maxScaleVal: 22,
color_side: -2889739,
color_border: -2889739,
bottom_color: -1969153
}],
196653 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -135449,
maxScaleVal: 22,
color_side: -859430,
color_border: -859430,
bottom_color: -135449
}],
196654 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -135449,
maxScaleVal: 22,
color_side: -859430,
color_border: -859430,
bottom_color: -135449
}],
196655 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -1969153,
maxScaleVal: 22,
color_side: -2889739,
color_border: -2889739,
bottom_color: -1969153
}],
196656 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -1378325,
maxScaleVal: 22,
color_side: -2101793,
color_border: -2101793,
bottom_color: -1378325
}],
196657 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -1969153,
maxScaleVal: 22,
color_side: -2889739,
color_border: -2889739,
bottom_color: -1969153
}],
196658 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -986625,
maxScaleVal: 22,
color_side: -1776139,
color_border: -1776139,
bottom_color: -986625
}],
196659 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -986625,
maxScaleVal: 22,
color_side: -1776139,
color_border: -1776139,
bottom_color: -986625
}],
196660 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -199962,
maxScaleVal: 22,
color_side: -858152,
color_border: -858152,
bottom_color: -199962
}],
196661 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -199962,
maxScaleVal: 22,
color_side: -858152,
color_border: -858152,
bottom_color: -199962
}],
196662 : [{
outside_color: -2039584,
minScaleVal: 19,
sidewidth: 1,
top_color: -1,
color_fill: -986625,
maxScaleVal: 22,
color_side: -1776139,
color_border: -1776139,
bottom_color: -986625
}],
196663 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -596290,
maxScaleVal: 22,
color_side: -596290,
color_border: -1,
bottom_color: -596290
}],
196664 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -3289606,
maxScaleVal: 22,
color_side: -3289606,
color_border: -1,
bottom_color: -3289606
}],
196665 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -4861953,
maxScaleVal: 22,
color_side: -4861953,
color_border: -1,
bottom_color: -4861953
}],
196666 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -5513217,
maxScaleVal: 22,
color_side: -5513217,
color_border: -1,
bottom_color: -5513217
}],
196667 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -4656129,
maxScaleVal: 22,
color_side: -4656129,
color_border: -1,
bottom_color: -4656129
}],
196668 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -4984092,
maxScaleVal: 22,
color_side: -4984092,
color_border: -1,
bottom_color: -4984092
}],
196669 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -4069182,
maxScaleVal: 22,
color_side: -4069182,
color_border: -1,
bottom_color: -4069182
}],
196670 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1972315,
maxScaleVal: 22,
color_side: -1972315,
color_border: -1,
bottom_color: -1972315
}],
196671 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -663120,
maxScaleVal: 22,
color_side: -663120,
color_border: -1,
bottom_color: -663120
}],
196672 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -337216,
maxScaleVal: 22,
color_side: -337216,
color_border: -1,
bottom_color: -337216
}],
196673 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -796706,
maxScaleVal: 22,
color_side: -796706,
color_border: -1,
bottom_color: -796706
}],
196674 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -863247,
maxScaleVal: 22,
color_side: -863247,
color_border: -1,
bottom_color: -863247
}],
196675 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -2108430,
maxScaleVal: 22,
color_side: -2108430,
color_border: -1,
bottom_color: -2108430
}],
196676 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1514785,
maxScaleVal: 22,
color_side: -1514785,
color_border: -1,
bottom_color: -1514785
}],
196677 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -596290,
maxScaleVal: 22,
color_side: -596290,
color_border: -1,
bottom_color: -596290
}],
196678 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -3289606,
maxScaleVal: 22,
color_side: -3289606,
color_border: -1,
bottom_color: -3289606
}],
196679 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -4861953,
maxScaleVal: 22,
color_side: -4861953,
color_border: -1,
bottom_color: -4861953
}],
196680 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -5513217,
maxScaleVal: 22,
color_side: -5513217,
color_border: -1,
bottom_color: -5513217
}],
196681 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -4656129,
maxScaleVal: 22,
color_side: -4656129,
color_border: -1,
bottom_color: -4656129
}],
196682 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -4984092,
maxScaleVal: 22,
color_side: -4984092,
color_border: -1,
bottom_color: -4984092
}],
196683 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -4069182,
maxScaleVal: 22,
color_side: -4069182,
color_border: -1,
bottom_color: -4069182
}],
196684 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -1972315,
maxScaleVal: 22,
color_side: -1972315,
color_border: -1,
bottom_color: -1972315
}],
196685 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -663120,
maxScaleVal: 22,
color_side: -663120,
color_border: -1,
bottom_color: -663120
}],
196686 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -337216,
maxScaleVal: 22,
color_side: -337216,
color_border: -1,
bottom_color: -337216
}],
196687 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -796706,
maxScaleVal: 22,
color_side: -796706,
color_border: -1,
bottom_color: -796706
}],
196688 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -329739,
maxScaleVal: 22,
color_side: -1186079,
color_border: -4543842,
bottom_color: -329739
}],
196689 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -6710887,
color_fill: -1,
maxScaleVal: 22,
color_side: -1118482,
color_border: -6710887,
bottom_color: -1
}],
196690 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -6710887,
color_fill: -1,
maxScaleVal: 22,
color_side: -1118482,
color_border: -6710887,
bottom_color: -1
}],
196691 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -6710887,
color_fill: -1,
maxScaleVal: 22,
color_side: -1118482,
color_border: -6710887,
bottom_color: -1
}],
196692 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -6710887,
color_fill: -1,
maxScaleVal: 22,
color_side: -1118482,
color_border: -6710887,
bottom_color: -1
}],
196693 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -265762,
maxScaleVal: 22,
color_side: -1648708,
color_border: -1648708,
bottom_color: -265762
}],
196694 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -6710887,
color_fill: -1,
maxScaleVal: 22,
color_side: -1118482,
color_border: -6710887,
bottom_color: -1
}],
196695 : [{
outside_color: -2039584,
minScaleVal: 16,
sidewidth: .2,
top_color: -1,
color_fill: -265762,
maxScaleVal: 22,
color_side: -1648708,
color_border: -1648708,
bottom_color: -265762
}]
},
labelStyles: {
262145 : [{
font_size: 0,
maxScaleVal: 18,
effect: 5,
font_weight: 0,
font_color: -11385024,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 0,
maxScaleVal: 19,
effect: 5,
font_weight: 0,
font_color: -11385024,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 0,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11385024,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262146 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262147 : [{
font_size: 13,
maxScaleVal: 17,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 18,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 20,
background_color: -1,
effect_size: 1
}],
262148 : [{
font_size: 13,
maxScaleVal: 17,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 18,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 20,
background_color: -1,
effect_size: 1
}],
262149 : [{
font_size: 13,
maxScaleVal: 17,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 18,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 20,
background_color: -1,
effect_size: 1
}],
262150 : [{
font_size: 13,
maxScaleVal: 17,
effect: 5,
font_weight: 1,
font_color: -16743471,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -16743471,
minScaleVal: 18,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -16743471,
minScaleVal: 20,
background_color: -1,
effect_size: 1
}],
262151 : [{
font_size: 13,
maxScaleVal: 17,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 18,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -3050966,
minScaleVal: 20,
background_color: -1,
effect_size: 1
}],
262152 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -11564867,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -11564867,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11564867,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262153 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262154 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -8288957,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -8288957,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -8288957,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262155 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -10847555,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -10847555,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -10847555,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262156 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 19,
background_color: -1,
effect_size: 1
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 20,
background_color: -1,
effect_size: 1
}],
262157 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -11052612,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 12,
maxScaleVal: 21,
effect: 5,
font_weight: 1,
font_color: -11052612,
minScaleVal: 19,
background_color: -1,
effect_size: 1
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11052612,
minScaleVal: 22,
background_color: -1,
effect_size: 1
}],
262158 : [{
font_size: 13,
maxScaleVal: 17,
effect: 5,
font_weight: 1,
font_color: -10008623,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -10008623,
minScaleVal: 18,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -10008623,
minScaleVal: 20,
background_color: -1,
effect_size: 1
}],
262159 : [{
font_size: 13,
maxScaleVal: 17,
effect: 5,
font_weight: 1,
font_color: -16743471,
minScaleVal: 0,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -16743471,
minScaleVal: 18,
background_color: -1,
effect_size: 1
},
{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -16743471,
minScaleVal: 20,
background_color: -1,
effect_size: 1
}],
262160 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -10847555,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 21,
effect: 5,
font_weight: 1,
font_color: -10847555,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -10847555,
minScaleVal: 22,
background_color: -1,
effect_size: .9
}],
262161 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262162 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -13278798,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262163 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7248559,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262164 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7248559,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262165 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -13278798,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262166 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -12878512,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262167 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -13278798,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262168 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262169 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262170 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7182279,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262171 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7182279,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262172 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262173 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -13278798,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262174 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7248559,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262175 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7248559,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262176 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -13278798,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262177 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -12878512,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262178 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -13278798,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262179 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262180 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262181 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7182279,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262182 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7182279,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262183 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262184 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262185 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11844161,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262186 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -13870145,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262187 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -15305788,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262188 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -16739907,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262189 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -14250907,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262190 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -12480718,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262191 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -7568090,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262192 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -5013962,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262193 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -4559043,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262194 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -6204330,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262195 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -7583631,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262196 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -9223276,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262197 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -7568770,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262198 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262199 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262200 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262201 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262202 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262203 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262204 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262205 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262206 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262207 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262208 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 0,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262209 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262210 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -4687280,
minScaleVal: 20,
background_color: -1,
effect_size: .9
}],
262211 : [{
font_size: 14,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -16752231,
minScaleVal: 0,
background_color: 1291845631,
effect_size: 1
},
{
font_size: 0,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: 0,
minScaleVal: 19,
background_color: 16777215,
effect_size: 0
}],
262212 : [{
font_size: 14,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -4023420,
minScaleVal: 0,
background_color: 1291845631,
effect_size: 1
},
{
font_size: 0,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: 0,
minScaleVal: 19,
background_color: 16777215,
effect_size: 0
}],
262213 : [{
font_size: 14,
maxScaleVal: 19,
effect: 5,
font_weight: 1,
font_color: -10057525,
minScaleVal: 0,
background_color: 1291845631,
effect_size: 1
},
{
font_size: 0,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: 0,
minScaleVal: 20,
background_color: 16777215,
effect_size: 0
}],
262214 : [{
font_size: 14,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -11848551,
minScaleVal: 0,
background_color: 1291845631,
effect_size: 1
},
{
font_size: 0,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: 0,
minScaleVal: 19,
background_color: 16777215,
effect_size: 0
}],
262215 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11844161,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262216 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -13870145,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262217 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -15305788,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262218 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -16739907,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262219 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -14250907,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262220 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -12480718,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262221 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7568090,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262222 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -5013962,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262223 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -4559043,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262224 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -6204330,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262225 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7583631,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262226 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -9223276,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262227 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -7568770,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262228 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262229 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262230 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262231 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262232 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262233 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262234 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262235 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262236 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262237 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262238 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11777112,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262239 : [{
font_size: 12,
maxScaleVal: 18,
effect: 5,
font_weight: 1,
font_color: -4756097,
minScaleVal: 0,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 21,
effect: 5,
font_weight: 1,
font_color: -4756097,
minScaleVal: 19,
background_color: -1,
effect_size: .9
},
{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -4756097,
minScaleVal: 22,
background_color: -1,
effect_size: .9
}],
262240 : [{
font_size: 10,
maxScaleVal: 18,
effect: 4,
font_weight: 0,
font_color: -1,
minScaleVal: 0,
background_color: -8411598,
effect_size: 1
},
{
font_size: 10,
maxScaleVal: 19,
effect: 4,
font_weight: 0,
font_color: -1,
minScaleVal: 19,
background_color: -8411598,
effect_size: 1
},
{
font_size: 10,
maxScaleVal: 22,
effect: 4,
font_weight: 0,
font_color: -1,
minScaleVal: 20,
background_color: -8411598,
effect_size: 1
}],
262241 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -4023420,
minScaleVal: 0,
background_color: 1291845631,
effect_size: 1
}],
262242 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -11385024,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262243 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -8288957,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262244 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -8288957,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262245 : [{
font_size: 12,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -6127544,
minScaleVal: 0,
background_color: -1,
effect_size: .9
}],
262246 : [{
font_size: 14,
maxScaleVal: 22,
effect: 5,
font_weight: 1,
font_color: -5923176,
minScaleVal: 0,
background_color: 1291845631,
effect_size: 1
}]
},
lineStyles: {
131072 : [{
linelevel: 0,
has_side: 1,
minScaleVal: 16,
sidewidth: 1.5,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 16,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 1.5,
dash_space: 0,
has_dash: 0
},
{
linelevel: 0,
has_side: 1,
minScaleVal: 17,
sidewidth: 3.2,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 18,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 3.2,
dash_space: 0,
has_dash: 0
},
{
linelevel: 0,
has_side: 1,
minScaleVal: 19,
sidewidth: 3.2,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 22,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 3.2,
dash_space: 0,
has_dash: 0
}],
131073 : [{
linelevel: 0,
has_side: 1,
minScaleVal: 20,
sidewidth: 1,
joinround: 1,
color_fill: -6052957,
maxScaleVal: 22,
color_side: 0,
joincap: 0,
dash_length: 2,
width: 1,
dash_space: 2,
has_dash: 1
}],
131074 : [{
linelevel: 0,
has_side: 1,
minScaleVal: 20,
sidewidth: 1,
joinround: 1,
color_fill: -6052957,
maxScaleVal: 22,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 1,
dash_space: 0,
has_dash: 0
}],
131075 : [{
linelevel: 0,
has_side: 1,
minScaleVal: 20,
sidewidth: 1,
joinround: 1,
color_fill: -6052957,
maxScaleVal: 22,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 1,
dash_space: 0,
has_dash: 0
}],
131076 : [{
linelevel: 0,
has_side: 1,
minScaleVal: 20,
sidewidth: 1,
joinround: 1,
color_fill: -2894893,
maxScaleVal: 22,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 1,
dash_space: 0,
has_dash: 0
}],
131077 : [{
linelevel: 0,
has_side: 1,
minScaleVal: 16,
sidewidth: 1.5,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 16,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 1.5,
dash_space: 0,
has_dash: 0
},
{
linelevel: 0,
has_side: 1,
minScaleVal: 17,
sidewidth: 3.2,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 18,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 3.2,
dash_space: 0,
has_dash: 0
},
{
linelevel: 0,
has_side: 1,
minScaleVal: 19,
sidewidth: 3.2,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 22,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 3.2,
dash_space: 0,
has_dash: 0
}],
131078 : [{
linelevel: 0,
has_side: 1,
minScaleVal: 16,
sidewidth: 1.5,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 16,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 1.5,
dash_space: 0,
has_dash: 0
},
{
linelevel: 0,
has_side: 1,
minScaleVal: 17,
sidewidth: 3.2,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 18,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 3.2,
dash_space: 0,
has_dash: 0
},
{
linelevel: 0,
has_side: 1,
minScaleVal: 19,
sidewidth: 3.2,
joinround: 1,
color_fill: -6313288,
maxScaleVal: 22,
color_side: 0,
joincap: 0,
dash_length: 0,
width: 3.2,
dash_space: 0,
has_dash: 0
}]
},
pointStyles: {
65537 : [{
icon_offset: 0,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 6
}],
65538 : [{
icon_offset: 1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65539 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 2,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262145,
density: 0
}],
65540 : [{
icon_offset: 16,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 16,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262243,
density: 0
}],
65541 : [{
icon_offset: 4,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65542 : [{
icon_offset: 5,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262239,
density: 0
}],
65543 : [{
icon_offset: 6,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 6,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262153,
density: 0
}],
65544 : [{
icon_offset: 7,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65545 : [{
icon_offset: -1,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 8,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262145,
density: 0
}],
65546 : [{
icon_offset: 9,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65547 : [{
icon_offset: 10,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262245,
density: 0
}],
65548 : [{
icon_offset: 11,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65549 : [{
icon_offset: 12,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65550 : [{
icon_offset: 13,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262239,
density: 0
}],
65551 : [{
icon_offset: 14,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65552 : [{
icon_offset: 15,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65553 : [{
icon_offset: 16,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 16,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262243,
density: 0
}],
65554 : [{
icon_offset: 17,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65555 : [{
icon_offset: 18,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65556 : [{
icon_offset: 19,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65557 : [{
icon_offset: 109,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65558 : [{
icon_offset: 21,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65559 : [{
icon_offset: 22,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65560 : [{
icon_offset: 23,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262239,
density: 0
}],
65561 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 24,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262244,
density: 0
}],
65562 : [{
icon_offset: 25,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65563 : [{
icon_offset: 26,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 26,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262153,
density: 0
}],
65564 : [{
icon_offset: 27,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65565 : [{
icon_offset: 28,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 28,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262145,
density: 0
}],
65566 : [{
icon_offset: 29,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 29,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262154,
density: 0
}],
65567 : [{
icon_offset: 30,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 30,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262145,
density: 0
}],
65568 : [{
icon_offset: 31,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262239,
density: 0
}],
65569 : [{
icon_offset: 32,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65570 : [{
icon_offset: 33,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262155,
density: 0
}],
65571 : [{
icon_offset: 34,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 34,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262244,
density: 0
}],
65572 : [{
icon_offset: 35,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262145,
density: 0
}],
65573 : [{
icon_offset: 36,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 36,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262153,
density: 0
}],
65574 : [{
icon_offset: 37,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 37,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262145,
density: 0
}],
65575 : [{
icon_offset: 38,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65576 : [{
icon_offset: 39,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65577 : [{
icon_offset: 40,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 40,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262145,
density: 0
}],
65578 : [{
icon_offset: 41,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65579 : [{
icon_offset: 143,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 143,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262239,
density: 0
}],
65580 : [{
icon_offset: 43,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262155,
density: 0
}],
65581 : [{
icon_offset: 44,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 44,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262153,
density: 0
}],
65582 : [{
icon_offset: 45,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262239,
density: 0
}],
65583 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 46,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262145,
density: 0
}],
65584 : [{
icon_offset: 47,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 47,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262145,
density: 0
}],
65585 : [{
icon_offset: 48,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65586 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262147,
density: 0
}],
65587 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262145,
density: 0
}],
65588 : [{
icon_offset: 49,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262239,
density: 0
}],
65589 : [{
icon_offset: 50,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262145,
density: 0
}],
65590 : [{
icon_offset: 52,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262155,
density: 0
}],
65591 : [{
icon_offset: 53,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262155,
density: 0
}],
65592 : [{
icon_offset: 54,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 54,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262153,
density: 0
}],
65593 : [{
icon_offset: 82,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65594 : [{
icon_offset: -1,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 149,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262156,
density: 0
}],
65595 : [{
icon_offset: 84,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65596 : [{
icon_offset: 85,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65597 : [{
icon_offset: 55,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262239,
density: 0
}],
65598 : [{
icon_offset: 56,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 56,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262245,
density: 0
}],
65599 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262148,
density: 0
}],
65600 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262149,
density: 0
}],
65601 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262150,
density: 0
}],
65602 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262151,
density: 0
}],
65603 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 109,
maxScaleVal: 19,
minScaleVal: 19,
labelid: 262145,
density: 0
},
{
icon_offset: 109,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262153,
density: 0
}],
65604 : [{
icon_offset: -1,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262153,
density: 0
}],
65605 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 110,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262152,
density: 0
}],
65606 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 111,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262155,
density: 0
}],
65607 : [{
icon_offset: 112,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65608 : [{
icon_offset: 113,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65609 : [{
icon_offset: 114,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65610 : [{
icon_offset: 115,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65611 : [{
icon_offset: 116,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65612 : [{
icon_offset: 117,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65613 : [{
icon_offset: 118,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65614 : [{
icon_offset: 132,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65615 : [{
icon_offset: 118,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65616 : [{
icon_offset: 118,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65617 : [{
icon_offset: 119,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65618 : [{
icon_offset: 116,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65619 : [{
icon_offset: 119,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65620 : [{
icon_offset: 119,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65621 : [{
icon_offset: 119,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65622 : [{
icon_offset: 115,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65623 : [{
icon_offset: 120,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65624 : [{
icon_offset: 119,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65625 : [{
icon_offset: 121,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65626 : [{
icon_offset: 122,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65627 : [{
icon_offset: 123,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65628 : [{
icon_offset: 124,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65629 : [{
icon_offset: 125,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262154,
density: 0
}],
65630 : [{
icon_offset: 126,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262154,
density: 0
}],
65631 : [{
icon_offset: 127,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262154,
density: 0
}],
65632 : [{
icon_offset: 128,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262154,
density: 0
}],
65633 : [{
icon_offset: 129,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65634 : [{
icon_offset: 130,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65635 : [{
icon_offset: 131,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65636 : [{
icon_offset: 133,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65637 : [{
icon_offset: 134,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262157,
density: 0
}],
65638 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262158,
density: 0
}],
65639 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262159,
density: 0
}],
65640 : [{
icon_offset: 136,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65641 : [{
icon_offset: 137,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65642 : [{
icon_offset: 138,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65643 : [{
icon_offset: 139,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65644 : [{
icon_offset: 140,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65645 : [{
icon_offset: 141,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65646 : [{
icon_offset: 140,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
65647 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262146,
density: 0
}],
65648 : [{
icon_offset: 146,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262162,
density: 0
}],
65649 : [{
icon_offset: 143,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262163,
density: 0
}],
65650 : [{
icon_offset: 143,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262164,
density: 0
}],
65651 : [{
icon_offset: 146,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262165,
density: 0
}],
65652 : [{
icon_offset: 145,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262166,
density: 0
}],
65653 : [{
icon_offset: 146,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262167,
density: 0
}],
65654 : [{
icon_offset: 147,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262168,
density: 0
}],
65655 : [{
icon_offset: 147,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262169,
density: 0
}],
65656 : [{
icon_offset: 144,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262170,
density: 0
}],
65657 : [{
icon_offset: 144,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262171,
density: 0
}],
65658 : [{
icon_offset: 147,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262172,
density: 0
}],
65659 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262146,
density: 0
}],
65660 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262173,
density: 0
}],
65661 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262174,
density: 0
}],
65662 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262175,
density: 0
}],
65663 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262176,
density: 0
}],
65664 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262177,
density: 0
}],
65665 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262178,
density: 0
}],
65666 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262179,
density: 0
}],
65667 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262180,
density: 0
}],
65668 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262181,
density: 0
}],
65669 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262182,
density: 0
}],
65670 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262183,
density: 0
}],
65671 : [{
icon_offset: 42,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
65672 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262185,
density: 0
}],
65673 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262186,
density: 0
}],
65674 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262187,
density: 0
}],
65675 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262188,
density: 0
}],
65676 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262189,
density: 0
}],
65677 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262190,
density: 0
}],
65678 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262191,
density: 0
}],
65679 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262192,
density: 0
}],
65680 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262193,
density: 0
}],
65681 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262194,
density: 0
}],
65682 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262195,
density: 0
}],
65683 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262196,
density: 0
}],
65684 : [{
icon_offset: -1,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 8,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262145,
density: 0
}],
65685 : [{
icon_offset: 40,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262145,
density: 0
}],
65686 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 29,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262145,
density: 0
}],
65687 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 46,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262145,
density: 0
}],
65688 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262145,
density: 0
}],
65689 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262145,
density: 0
}],
65690 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262197,
density: 0
}],
65691 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262198,
density: 0
}],
65692 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262199,
density: 0
}],
65693 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262200,
density: 0
}],
65694 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262201,
density: 0
}],
65695 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262202,
density: 0
}],
65696 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262203,
density: 0
}],
65697 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262204,
density: 0
}],
65698 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262205,
density: 0
}],
65699 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262206,
density: 0
}],
65700 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262207,
density: 0
}],
65701 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262208,
density: 0
}],
65702 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262211,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262145,
density: 0
}],
65703 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262212,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262145,
density: 0
}],
65704 : [{
icon_offset: -1,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262213,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262145,
density: 0
}],
65705 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262214,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262145,
density: 0
}],
65706 : [{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262145,
density: 0
}],
65707 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262215,
density: 0
}],
65708 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262216,
density: 0
}],
65709 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262217,
density: 0
}],
65710 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262218,
density: 0
}],
65711 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262219,
density: 0
}],
65712 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262220,
density: 0
}],
65713 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262221,
density: 0
}],
65714 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262222,
density: 0
}],
65715 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262223,
density: 0
}],
65716 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262224,
density: 0
}],
65717 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262225,
density: 0
}],
65718 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262226,
density: 0
}],
65719 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262227,
density: 0
}],
65720 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262228,
density: 0
}],
65721 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262229,
density: 0
}],
65722 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262230,
density: 0
}],
65723 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262231,
density: 0
}],
65724 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262232,
density: 0
}],
65725 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262233,
density: 0
}],
65726 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262234,
density: 0
}],
65727 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262235,
density: 0
}],
65728 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262236,
density: 0
}],
65729 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262237,
density: 0
}],
65730 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262238,
density: 0
}],
65731 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 51,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262156,
density: 0
}],
65732 : [{
icon_offset: 148,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262156,
density: 0
}],
65733 : [{
icon_offset: -1,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 50,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262156,
density: 0
}],
65734 : [{
icon_offset: 150,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262156,
density: 0
}],
65735 : [{
icon_offset: -1,
maxScaleVal: 17,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 18,
labelid: 262241,
density: 0
}],
65736 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 143,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262239,
density: 0
}],
65737 : [{
icon_offset: 13,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262239,
density: 0
}],
65738 : [{
icon_offset: -1,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 109,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262153,
density: 0
}],
65739 : [{
icon_offset: 110,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 110,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
65740 : [{
icon_offset: 29,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: -1,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262246,
density: 0
}],
65741 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 152,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262245,
density: 0
}],
65742 : [{
icon_offset: -1,
maxScaleVal: 18,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 152,
maxScaleVal: 22,
minScaleVal: 19,
labelid: 262245,
density: 0
}],
66437 : [{
icon_offset: 57,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 57,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66438 : [{
icon_offset: 58,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 58,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66439 : [{
icon_offset: 59,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 59,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66440 : [{
icon_offset: 60,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 60,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66441 : [{
icon_offset: 61,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 61,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66442 : [{
icon_offset: 62,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 62,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66443 : [{
icon_offset: 63,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 63,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66444 : [{
icon_offset: 64,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 64,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66445 : [{
icon_offset: 65,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 65,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66446 : [{
icon_offset: 66,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 66,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262155,
density: 0
}],
66447 : [{
icon_offset: 67,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 67,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66448 : [{
icon_offset: 68,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
66449 : [{
icon_offset: 69,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}],
66450 : [{
icon_offset: 70,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 70,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66451 : [{
icon_offset: 71,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66452 : [{
icon_offset: 72,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66453 : [{
icon_offset: 73,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66454 : [{
icon_offset: 74,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66455 : [{
icon_offset: 75,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66456 : [{
icon_offset: 76,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66457 : [{
icon_offset: 77,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66458 : [{
icon_offset: 78,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66459 : [{
icon_offset: 79,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66460 : [{
icon_offset: 80,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262153,
density: 0
}],
66461 : [{
icon_offset: 81,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262146,
density: 0
}],
66462 : [{
icon_offset: 86,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262146,
density: 0
}],
66463 : [{
icon_offset: 87,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262146,
density: 0
}],
66464 : [{
icon_offset: 88,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 88,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66465 : [{
icon_offset: 89,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 89,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66466 : [{
icon_offset: 90,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 90,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66467 : [{
icon_offset: 91,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 91,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66468 : [{
icon_offset: 92,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 92,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66469 : [{
icon_offset: 93,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 93,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66470 : [{
icon_offset: 94,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 94,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66471 : [{
icon_offset: 95,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 95,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66472 : [{
icon_offset: 96,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 96,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66473 : [{
icon_offset: 97,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 97,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66474 : [{
icon_offset: 98,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 98,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66475 : [{
icon_offset: 99,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 99,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66476 : [{
icon_offset: 100,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 100,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66477 : [{
icon_offset: 101,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 101,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66478 : [{
icon_offset: 102,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 102,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66479 : [{
icon_offset: 103,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 103,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66480 : [{
icon_offset: 104,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 104,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66481 : [{
icon_offset: 105,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 105,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262152,
density: 0
}],
66482 : [{
icon_offset: 106,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 106,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262146,
density: 0
}],
66483 : [{
icon_offset: 107,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 107,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262146,
density: 0
}],
66484 : [{
icon_offset: 108,
maxScaleVal: 19,
minScaleVal: 16,
labelid: 262145,
density: 0
},
{
icon_offset: 108,
maxScaleVal: 22,
minScaleVal: 20,
labelid: 262146,
density: 0
}],
66485 : [{
icon_offset: 151,
maxScaleVal: 22,
minScaleVal: 16,
labelid: 262152,
density: 0
}]
},
arrowStyles: {},
bgColor: "#123182",
stylesId: "default"
}
} ()
},
function(t, e, n) {
"use strict";
function i(t) {
return t = (0, s.colorToRGBA)(t),
[t[0], t[1], t[2], 255 * t[3]]
}
function o() {
return ""
}
function r() {
return l ? "bold": ""
}
function a(t) {
var e = l ? "Microsoft YaHei UI,Microsoft YaHei,黑体,Hiragino Sans GB,sans-serif": "Microsoft YaHei UI,Microsoft YaHei,黑体,sans-serif";
return t && t.length > 0 ? t: e
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.convertColorToHex = i,
e.getFontStyle = o,
e.getFontWeight = r,
e.getFontFamily = a;
var s = n(10),
l = !1
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(27),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(479),
f = i(c),
d = function() {
function t() { (0, s.
default)(this, t)
}
return (0, u.
default)(t, [{
key: "parse",
value: function(t) {
var e = (0, f.
default)(t),
n = e.meshes,
i = n.reduce(function(t, e) {
return t + e.header.vertexCount
},
0);
return {
mode: 4,
vertexCount: i,
attributes: this.mergeAttributes(n, i)
}
}
},
{
key: "mergeAttributes",
value: function(t, e) {
var n = new Float32Array(3 * e),
i = void 0,
o = void 0,
a = void 0,
s = 0,
l = !0,
u = !1,
c = void 0;
try {
for (var f, d = (0, r.
default)(t); ! (l = (f = d.next()).done); l = !0) {
var h = f.value,
v = h.attributes,
p = v.POSITION,
_ = v.NORMAL,
m = v.COLOR_0,
g = v.TEXCOORD_0;
n.set(p.value, 3 * s),
_ && (i = i || new Int8Array(3 * e), i.set(_.value, 3 * s)),
m && (o = o || new Uint8Array(3 * e), o.set(m.value.map(function(t) {
return Math.round(255 * t)
}), 3 * s)),
g && (a = a || new Float32Array(2 * e), a.set(g.value, 2 * s)),
s += p.value.length / 3
}
} catch(t) {
u = !0,
c = t
} finally {
try { ! l && d.
return && d.
return ()
} finally {
if (u) throw c
}
}
var y = {};
return y.POSITION = {
value: n,
size: 3
},
i && (y.NORMAL = {
value: i,
size: 3
}),
o && (y.COLOR_0 = {
value: o,
size: 3
}),
a && (y.TEXCOORD_0 = {
value: a,
size: 2
}),
y
}
}]),
t
} ();
e.
default = d
},
function(t, e, n) {
"use strict";
function i(t, e, n) {
if (n = n || {},
"object" !== (void 0 === n ? "undefined": (0, r.
default)(n))) throw new Error("options is invalid");
var i = n,
o = i.properties,
l = n,
u = l.npoints,
c = n,
f = c.offset;
return t = (0, a.getCoord)(t),
e = (0, a.getCoord)(e),
o = o || {},
u = u || 100,
f = f || 10,
new s.GreatCircle({
x: t[0],
y: t[1]
},
{
x: e[0],
y: e[1]
},
o).Arc(u, {
offset: f
}).json()
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(20),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o),
a = n(1052),
s = n(650);
e.
default = i
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = Math.PI / 180,
o = 180 / Math.PI,
r = function(t, e) {
this.lon = t,
this.lat = e,
this.x = i * t,
this.y = i * e
};
r.prototype.view = function() {
return String(this.lon).slice(0, 4) + "," + String(this.lat).slice(0, 4)
},
r.prototype.antipode = function() {
var t = -1 * this.lat,
e = this.lon < 0 ? 180 + this.lon: -1 * (180 - this.lon);
return new r(e, t)
};
var a = function() {
this.coords = [],
this.length = 0
};
a.prototype.move_to = function(t) {
this.length++,
this.coords.push(t)
};
var s = function(t) {
this.properties = t || {},
this.geometries = []
};
s.prototype.json = function() {
if (this.geometries.length <= 0) return {
geometry: {
type: "LineString",
coordinates: null
},
type: "Feature",
properties: this.properties
};
if (1 === this.geometries.length) return {
geometry: {
type: "LineString",
coordinates: this.geometries[0].coords
},
type: "Feature",
properties: this.properties
};
for (var t = [], e = 0; e < this.geometries.length; e++) t.push(this.geometries[e].coords);
return {
geometry: {
type: "MultiLineString",
coordinates: t
},
type: "Feature",
properties: this.properties
}
},
s.prototype.wkt = function() {
for (var t = "",
e = "LINESTRING(",
n = function(t) {
e += t[0] + " " + t[1] + ","
},
i = 0; i < this.geometries.length; i++) {
if (0 === this.geometries[i].coords.length) return "LINESTRING(empty)";
this.geometries[i].coords.forEach(n),
t += e.substring(0, e.length - 1) + ")"
}
return t
};
var l = function(t, e, n) {
if (!t || void 0 === t.x || void 0 === t.y) throw new Error("GreatCircle constructor expects two args: start and end objects with x and y properties");
if (!e || void 0 === e.x || void 0 === e.y) throw new Error("GreatCircle constructor expects two args: start and end objects with x and y properties");
this.start = new r(t.x, t.y),
this.end = new r(e.x, e.y),
this.properties = n || {};
var i = this.start.x - this.end.x,
o = this.start.y - this.end.y,
a = Math.pow(Math.sin(o / 2), 2) + Math.cos(this.start.y) * Math.cos(this.end.y) * Math.pow(Math.sin(i / 2), 2);
if (this.g = 2 * Math.asin(Math.sqrt(a)), this.g === Math.PI) throw new Error("it appears " + t.view() + " and " + e.view() + " are 'antipodal', e.g diametrically opposite, thus there is no single route but rather infinite");
if (isNaN(this.g)) throw new Error("could not calculate great circle between " + t + " and " + e)
};
l.prototype.interpolate = function(t) {
var e = Math.sin((1 - t) * this.g) / Math.sin(this.g),
n = Math.sin(t * this.g) / Math.sin(this.g),
i = e * Math.cos(this.start.y) * Math.cos(this.start.x) + n * Math.cos(this.end.y) * Math.cos(this.end.x),
r = e * Math.cos(this.start.y) * Math.sin(this.start.x) + n * Math.cos(this.end.y) * Math.sin(this.end.x),
a = e * Math.sin(this.start.y) + n * Math.sin(this.end.y),
s = o * Math.atan2(a, Math.sqrt(Math.pow(i, 2) + Math.pow(r, 2)));
return [o * Math.atan2(r, i), s]
},
l.prototype.Arc = function(t, e) {
var n = [];
if (!t || t <= 2) n.push([this.start.lon, this.start.lat]),
n.push([this.end.lon, this.end.lat]);
else for (var i = 1 / (t - 1), o = 0; o < t; ++o) {
var r = i * o,
l = this.interpolate(r);
n.push(l)
}
for (var u = !1,
c = 0,
f = e && e.offset ? e.offset: 10, d = 180 - f, h = -180 + f, v = 360 - f, p = 1; p < n.length; ++p) {
var _ = n[p - 1][0],
m = n[p][0],
g = Math.abs(m - _);
g > v && (m > d && _ < h || _ > d && m < h) ? u = !0 : g > c && (c = g)
}
var y = [];
if (u && c < f) {
var x = [];
y.push(x);
for (var b = 0; b < n.length; ++b) {
var S = parseFloat(n[b][0]);
if (b > 0 && Math.abs(S - n[b - 1][0]) > v) {
var w = parseFloat(n[b - 1][0]),
E = parseFloat(n[b - 1][1]),
T = parseFloat(n[b][0]),
A = parseFloat(n[b][1]);
if (w > -180 && w < h && 180 === T && b + 1 < n.length && n[b - 1][0] > -180 && n[b - 1][0] < h) {
x.push([ - 180, n[b][1]]),
b++,
x.push([n[b][0], n[b][1]]);
continue
}
if (w > d && w < 180 && -180 === T && b + 1 < n.length && n[b - 1][0] > d && n[b - 1][0] < 180) {
x.push([180, n[b][1]]),
b++,
x.push([n[b][0], n[b][1]]);
continue
}
if (w < h && T > d) {
var P = w;
w = T,
T = P;
var I = E;
E = A,
A = I
}
if (w > d && T < h && (T += 360), w <= 180 && T >= 180 && w < T) {
var k = (180 - w) / (T - w),
L = k * A + (1 - k) * E;
x.push([n[b - 1][0] > d ? 180 : -180, L]),
x = [],
x.push([n[b - 1][0] > d ? -180 : 180, L]),
y.push(x)
} else x = [],
y.push(x);
x.push([S, n[b][1]])
} else x.push([n[b][0], n[b][1]])
}
} else {
var M = [];
y.push(M);
for (var C = 0; C < n.length; ++C) M.push([n[C][0], n[C][1]])
}
for (var R = new s(this.properties), B = 0; B < y.length; ++B) {
var N = new a;
R.geometries.push(N);
for (var O = y[B], D = 0; D < O.length; ++D) O[D][1] > 85 && (O[D][1] = 85),
O[D][1] < -85 && (O[D][1] = -85),
N.move_to(O[D])
}
return R
},
e.Coord = r,
e.Arc = s,
e.GreatCircle = l,
e.
default = {
Coord: r,
Arc: s,
GreatCircle: l
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = {
Int8: Int8Array,
Uint8: Uint8Array,
Uint8Clamped: Uint8ClampedArray,
Int16: Int16Array,
Uint16: Uint16Array,
Int32: Int32Array,
Uint32: Uint32Array,
Float32: Float32Array,
Float64: Float64Array
},
u = function() {
function t(e, n, i) { (0, r.
default)(this, t),
n = [].concat(n),
this.extendEntitySize = 1024,
this.entitySize = e || this.extendEntitySize,
this.struct = n,
this.attributes = i;
for (var o = void 0,
a = void 0,
s = 0,
u = 0,
c = n.length; u < c; u++) o = n[u],
a = l[o].BYTES_PER_ELEMENT,
n[u] = {
type: o,
BYTES_PER_ELEMENT: a
},
s += a;
this.unit8 = new Uint8Array(e * s),
this.arrayBuffer = this.unit8.buffer,
this.dataView = new DataView(this.arrayBuffer),
this.bytesPerElement = s,
this.length = 0
}
return (0, s.
default)(t, [{
key: "add",
value: function(t) {
if (t instanceof Array && 0 !== t.length) {
if (t[0] instanceof Array) for (var e = 0,
n = t.length; e < n; e++) this.addItem(t[e]);
else for (var i = 0,
o = t.length; i < o; i++) this.addItem([t[i]])
}
}
},
{
key: "addItem",
value: function(t) {
var e = this.struct;
if (t.length !== e.length) throw new Error("add data error"); (this.length + 1) * this.bytesPerElement > this.arrayBuffer.byteLength && this.extend();
for (var n = this.length,
i = this.bytesPerElement,
o = void 0,
r = void 0,
a = this.dataView,
s = 0,
l = 0,
u = e.length; l < u; l++) o = e[l ? l - 1 : 0],
r = e[l],
l > 0 && (s += o.BYTES_PER_ELEMENT),
a["set" + r.type](n * i + s, t[l], !0);
this.length += 1
}
},
{
key: "extend",
value: function() {
this.resize(this.entitySize + this.extendEntitySize)
}
},
{
key: "compress",
value: function() {
this.resize(this.length)
}
},
{
key: "resize",
value: function(t) {
var e = this.unit8;
t > this.entitySize ? (this.arrayBuffer = new ArrayBuffer(t * this.bytesPerElement), this.unit8 = new Uint8Array(this.arrayBuffer), this.unit8.set(e)) : this.entitySize,
this.entitySize = t,
this.dataView = new DataView(this.arrayBuffer)
}
},
{
key: "toArray",
value: function() {
for (var t = this.struct,
e = this.length,
n = this.bytesPerElement,
i = this.dataView,
o = [], r = void 0, a = 0; a < e; a++) for (var s = 0,
l = 0; l < t.length; l++) r = t[l],
o.push(i["get" + r.type](n * a + s, !0)),
s += r.BYTES_PER_ELEMENT;
return o
}
}]),
t
} ();
e.
default = u
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
for (var n = void 0,
i = new p.
default,
o = [], a = (0, h.
default)(t).sort(function(t, e) {
return Number(t) - Number(e)
}), s = 0, l = a.length; s < l; s++) if (n = t[a[s]], !(n.length <= 0)) {
var c = n[0].type;
c === _.BASE_LAYER_TYPE.line ? (o.push(Number(a[s])), r(n, i)) : c === _.BASE_LAYER_TYPE.region && u(n, i)
}
return {
vertices: i.vertiesDataBuffer,
indeices: i.indicesDataBuffer,
size: i.indicesDataBuffer.length,
id: e,
vertiesCount: i.vertiesDataBuffer.length,
lineCount: i.lineCount,
lineRankKeys: o
}
}
function r(t, e) {
for (var n = 0,
i = t.length; n < i; n++) l(t[n], e, "side");
for (var o = 0,
r = t.length; o < r; o++) l(t[o], e, "fill")
}
function a(t) {
return t = Math.ceil(t || 0)
}
function s(t, e) {
var n = t.style,
i = n.sidewidth,
o = n.width,
r = t.style,
s = t.preStyle,
l = t.nextStyle,
u = t.zLevel,
c = t.options,
d = t.transform;
o = a(o),
i = a(i);
var h = (0, y.isDefaultStyle)(c.mapStyleId),
v = g.
default.isDefaultNoSideLine(r.styleId);
return h && v && (r.has_side = 0),
"side" === e ? r.has_side ? (i = i - o < 2 ? o + 2 : i, {
hasDash: !1,
color: f(r.color_side.slice()),
width: i,
preWidth: a(s && s.sidewidth),
nextWidth: a(l && l.sidewidth),
noTerminal: u || r.has_dash,
deltaSideWidth: Math.ceil(i - o),
isSide: 1,
styleId: t.layerId,
transform: d,
pickingColor: (0, x.encodePickingColor)(t.layerId, !0)
}) : null: {
hasDash: r.has_dash,
dashLength: r.has_dash ? r.dash_length: 0,
dashSpace: r.has_dash ? r.dash_space: 0,
color: f(r.color_fill.slice()),
width: o,
preWidth: a(s && s.width),
nextWidth: a(l && l.width),
noTerminal: u || r.has_dash,
startDistance: c && c.startDistance || 0,
isSide: 0,
styleId: t.layerId,
transform: d,
pickingColor: (0, x.encodePickingColor)(t.layerId, !0)
}
}
function l(t, e, n) {
var i = s(t, n);
if (i) {
var o = i.color,
r = i.width,
a = i.dashLength,
l = i.dashSpace,
u = i.startDistance;
t.datas.forEach(function(t) {
e.addLine(i, t, o, r, a, l, u)
})
}
}
function u(t, e) {
for (var n = 0,
i = t.length; n < i; n++) c(t[n], e)
}
function c(t, e) {
var n = t.datas,
i = t.style,
o = f((i.color_border || i.color_side).slice()),
r = f(i.color_fill.slice()),
a = (0, x.encodePickingColor)(t.layerId, !0),
s = i.sidewidth;
if (0 !== r[3]) {
if (o[3] > 0 && s > 0) for (var l = 0,
u = n.length; l < u; l++) {
var c = n[l];
if (! (c.length <= 4)) {
var d = {
transform: t.transform
};
e.addLine(d, c, o, s, null, null, null, !0)
}
}
for (var h = 0,
v = n.length; h < v; h++) {
var p = n[h];
p.length <= 4 || e.addPolygon(p, r, {
transform: t.transform,
pickingColor: a
})
}
}
}
function f(t) {
return t[0] <= 1 && t[1] <= 1 && t[2] <= 1 && (t[0] = Math.floor(255 * t[0]), t[1] = Math.floor(255 * t[1]), t[2] = Math.floor(255 * t[2])),
t[3] < 2 && (t[3] = Math.floor(255 * t[3])),
t
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var d = n(17),
h = i(d),
v = n(483),
p = i(v),
_ = n(66),
m = n(381),
g = i(m),
y = n(301),
x = n(240);
e.
default = o
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return t.map(function(t, e) {
return 3 === e ? Math.round(255 * t) : Math.round(t)
})
}
function r(t, e) {
var n = new u.
default,
i = !0,
r = !1,
a = void 0;
try {
for (var l, c = (0, s.
default)(t); ! (i = (l = c.next()).done); i = !0) {
var f = l.value;
n.add({
points: f.datas,
height: f.h,
colorFill: o(f.colorFill),
colorSide: o(f.colorSide),
transform: f.transform
})
}
} catch(t) {
r = !0,
a = t
} finally {
try { ! i && c.
return && c.
return ()
} finally {
if (r) throw a
}
}
return {
vertices: n.vertiesDataBuffer,
indeices: n.indicesDataBuffer,
size: n.indicesDataBuffer.length,
id: e
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(27),
s = i(a),
l = n(657),
u = i(l);
e.
default = r
},
function(t, e, n) {
"use strict";
function i(t, e) {
var n = e.info,
i = !0,
o = !1,
a = void 0;
try {
for (var s, l = (0, r.
default)(t); ! (i = (s = l.next()).done); i = !0) {
var u = s.value,
c = u.datas[0];
if (c && c.icon && c.icon_coords) {
if (!n[String(c.icon)]) continue;
u.id = "icon_" + u.id
}
}
} catch(t) {
o = !0,
a = t
} finally {
try { ! i && l.
return && l.
return ()
} finally {
if (o) throw a
}
}
return t
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(27),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o);
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
return t && !(0, v.isInterceptForPlacement)(e, t.coordZ) ? t: null
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(0),
a = i(r),
s = n(1),
l = i(s),
u = n(28),
c = i(u),
f = n(656),
d = i(f),
h = n(66),
v = n(482),
p = n(23),
_ = i(p),
m = function() {
function t(e, n) { (0, a.
default)(this, t),
this._textCache = e,
this.placement = new d.
default({
textCache:
this._textCache
}),
this._currentPlacementIndex = n.length - 1,
this._currentTileIndex = 0,
this._isDone = !1,
this._batchedUpdate = !1,
this._fadeUntil = 0,
this._batchUpdateTime = 0,
this._destroyed = !1
}
return (0, l.
default)(t, [{
key: "isDone",
value: function() {
return this._isDone
}
},
{
key: "continuePlacement",
value: function(t, e, n, i) {
if (!this._destroyed) {
for (var r = i.zoom,
a = Math.round(r), s = c.
default.now(), l = !1; this._currentPlacementIndex >= 0;) {
var u = t[this._currentPlacementIndex];
if (u && u.type === h.BASE_LAYER_TYPE.text) {
var f = t.filter(function(t) {
return t.type === h.BASE_LAYER_TYPE.point
})[0],
d = t.filter(function(t) {
return t.type === h.BASE_LAYER_TYPE.label
})[0];
for (u = f || d || u; this._currentTileIndex < u.tiles.length;) {
var v = u.tiles[this._currentTileIndex],
p = d && d.tiles[this._currentTileIndex],
m = f && f.tiles[this._currentTileIndex];
Math.round(i.zoom) >= _.
default.maxDataZoom && !this._textCache && (p && p.children && (p = v.children[Math.round(i.zoom)]), m && m.children && (m = m.children[Math.round(i.zoom)]));
var g = e[v.id],
y = this._textCache ? this._textCache.tiles[v.id] : null,
x = p && p.features && p.features.instance && p.features.instance.count > 0 || m && m.features && m.features.instance && m.features.instance.count > 0;
if (g && (this._textCache ? y: x) && (this.placement.calculateTextByTile({
label: o(p, r),
poi: o(m, r),
icon: o(m, r)
},
g, n, i), this.placement.impactTextByTile(v)), this._currentTileIndex += 1, c.
default.now() - s > 4) {
l = !0;
break
}
}
if (l) return
}
if (u && u.type === h.RENDER_LAYER_TYPE.indoorPoi && u.tiles.length > 0) {
var b = u.tiles[0],
S = n.pvMatrix,
w = b.features.pois[a] && b.features.pois[a][0],
E = w && w.instance && w.instance.count > 0;
S && E && (this.placement.calculateAllIndoorPois(w, b.features.center, S, n, i, b), this.placement.impactTextByTile(b))
}
this._currentPlacementIndex -= 1
}
this._isDone = !0
}
}
},
{
key: "batchUpdate",
value: function(t) {
return this.placement.batchUpdate(t),
this._batchedUpdate = !0,
this._fadeUntil = c.
default.now() + 300,
this.placement
}
},
{
key: "isFading",
value: function() {
return this._isDone && c.
default.now() < this._fadeUntil
}
},
{
key: "destroy",
value: function() {
this._destroyed || (this._textCache = null, this.placement.clear(), this.placement = null, this._currentPlacementIndex = null, this._currentTileIndex = null, this._isDone = null, this._batchedUpdate = null, this._fadeUntil = null, this._batchUpdateTime = null, this._destroyed = !0)
}
}]),
t
} ();
e.
default = m
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(32),
r = i(o),
a = n(16),
s = i(a),
l = n(27),
u = i(l),
c = n(17),
f = i(c),
d = n(0),
h = i(d),
v = n(1),
p = i(v),
_ = n(107),
m = n(23),
g = i(m),
y = n(10),
x = i(y),
b = n(28),
S = i(b),
w = n(112),
E = 80,
T = function() {
function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, h.
default)(this, t),
this.DELTA_SCREEN_CELL = Math.round(E * (e.textCache && e.textCache.scale || 1)),
this.boundsBuffer = 0,
this.iconBoundsBuffer = 0,
this.textScreenCoordList = {},
this.textDataSet = {},
this.textTileCellSet = {},
this.textFeatureSet = {},
this.poiScreenCoordList = {},
this.poiDataSet = {},
this.poiTileCellSet = {},
this.iconScreenCoordList = {},
this.iconDataSet = {},
this.iconTileCellSet = {},
this.v = 1,
this.instanceSet = {},
this.cellSet = {},
this._batchUpdateTime = 0,
this.inUse = !1
}
return (0, p.
default)(t, [{
key: "updateVersion",
value: function() {
this.v += 1
}
},
{
key: "setInUse",
value: function(t) {
this.inUse = t
}
},
{
key: "getInUse",
value: function() {
return this.inUse
}
},
{
key: "clear",
value: function() {
this.clearText(),
this.clearPoi(),
this.clearIcon(),
this.instanceSet = {},
this.cellSet = {}
}
},
{
key: "clearText",
value: function() {
var t = this,
e = this.v,
n = this.textDataSet,
i = this.textScreenCoordList;
x.
default.forIn(n,
function(i, o) {
if (o.v !== e) {
var r = o.tileId,
a = o.roadSymbolIndex;
t.instanceSet[r] && (t.instanceSet[r].instanceInfosTypeArray[4 * a + 1] = 0),
n[i].destory && n[i].destory(),
delete n[i]
}
}),
x.
default.forIn(i,
function(t, n) {
x.
default.forIn(n,
function(t, i) {
"cell" !== t && i.v !== e && (n[t].destory && n[t].destory(), delete n[t])
})
}),
this.textTileCellSet = {}
}
},
{
key: "clearPoi",
value: function() {
var t = this; (0, f.
default)(this.poiDataSet).forEach(function(e) {
var n = t.poiDataSet[e],
i = n.tileId,
o = n.textSymbolIndexList;
t.instanceSet[i] && o.forEach(function(e) {
t.instanceSet[i].instanceInfosTypeArray[4 * e + 1] = 1
}),
t.poiDataSet[e].destory && t.poiDataSet[e].destory()
}),
this.poiDataSet = {},
this.poiScreenCoordList = {},
this.poiTileCellSet = {}
}
},
{
key: "clearIcon",
value: function() {
var t = this; (0, f.
default)(this.iconDataSet).forEach(function(e) {
var n = t.iconDataSet[e],
i = n.tileId,
o = n.iconSymbolIndex;
t.instanceSet[i] && (t.instanceSet[i].instanceInfosTypeArray[4 * o + 1] = 1),
t.iconDataSet[e].destory && t.iconDataSet[e].destory()
}),
this.iconDataSet = {},
this.iconScreenCoordList = {},
this.iconTileCellSet = {}
}
},
{
key: "_sortValue",
value: function(t, e) {
return e.y - t.y > t.x - e.x ? 1 : -1
}
},
{
key: "getFadeChange",
value: function() {
return (S.
default.now() - this._batchUpdateTime) / 500
}
},
{
key: "batchUpdate",
value: function(t) {
this._batchUpdateTime = S.
default.now(),
this.batchUpdateShow();
var e = 0;
t && (e = (this._batchUpdateTime - t._batchUpdateTime) / 500),
this.batchChangeOpacity(t, e),
this.batchUpdateOpacities()
}
},
{
key: "batchUpdateShow",
value: function() {
var t = this; (0, f.
default)(this.textDataSet).forEach(function(e) {
var n = t.textDataSet[e];
n.updateShow && n.updateShow()
}),
(0, f.
default)(this.poiDataSet).forEach(function(e) {
var n = t.poiDataSet[e];
n.updateShow && n.updateShow()
}),
(0, f.
default)(this.iconDataSet).forEach(function(e) {
var n = t.iconDataSet[e];
n.updateShow && n.updateShow()
})
}
},
{
key: "batchChangeOpacity",
value: function(t, e) {
var n = this; (0, f.
default)(this.textDataSet).forEach(function(i) {
var o = n.textDataSet[i];
if (o.setOpacity) {
var r = t && t.textDataSet && t.textDataSet[i];
r && null !== r._opacity ? o.setOpacity(r.getShow() !== o.getShow() ? r.getOpacity() : x.
default.clamp(r._opacity + (o.getShow() ? e: -e), 0, 1)) : o.setOpacity(o.getShow() ? 1 : 0)
}
}),
(0, f.
default)(this.poiDataSet).forEach(function(i) {
var o = n.poiDataSet[i];
if (o.setOpacity) {
var r = t && t.poiDataSet && t.poiDataSet[i];
r && null !== r._opacity ? o.setOpacity(r.getShow() !== o.getShow() ? r.getOpacity() : x.
default.clamp(r._opacity + (o.getShow() ? e: -e), 0, 1)) : r && r.getShow() ? o.setOpacity(1) : o.setOpacity(o.isIndoor && o.getShow() ? 1 : 0)
}
}),
(0, f.
default)(this.iconDataSet).forEach(function(i) {
var o = n.iconDataSet[i];
if (o.setOpacity) {
var r = t && t.iconDataSet && t.iconDataSet[i];
r && null !== r._opacity ? o.setOpacity(r.getShow() !== o.getShow() ? r.getOpacity() : x.
default.clamp(r._opacity + (o.getShow() ? e: -e), 0, 1)) : r && r.getShow() ? o.setOpacity(1) : o.setOpacity(o.isIndoor && o.getShow() ? 1 : 0)
}
})
}
},
{
key: "batchUpdateOpacities",
value: function() {
var t = this; (0, f.
default)(this.textDataSet).forEach(function(e) {
var n = t.textDataSet[e];
n.updateOpacity && n.updateOpacity()
}),
(0, f.
default)(this.poiDataSet).forEach(function(e) {
var n = t.poiDataSet[e];
n.updateOpacity && n.updateOpacity()
}),
(0, f.
default)(this.iconDataSet).forEach(function(e) {
var n = t.iconDataSet[e];
n.updateOpacity && n.updateOpacity()
})
}
},
{
key: "calculateAlsoShowedLabel",
value: function(t, e, n) {
var i = this; (0, f.
default)(this.textFeatureSet).filter(function(t) {
return i.textFeatureSet[t].getShow()
}).forEach(function(o) {
var r = i.textFeatureSet[o];
t[r.tileId] && r.zoom === n.roundZoom && i.calculateLabelFeatures({
matrix: t[r.tileId]
},
r.roadFeature.roads, e, r.tile, n, r.tileFeatures, r.roadFeature)
})
}
},
{
key: "calculateTextByTile",
value: function(t, e, n, i) {
t.label && this.calculateLabelByTile(t.label, e, n, i),
t.poi && this.calculatePoiByTile(t.poi, e, n, i),
t.icon && this.calculateIconByTile(t.icon, e, n, i)
}
},
{
key: "calculateLabelByTile",
value: function(t, e, n, i) {
var o = !0,
r = !1,
a = void 0;
try {
for (var s, l = (0, u.
default)(t.features); ! (o = (s = l.next()).done); o = !0) {
var c = s.value;
c.roads instanceof Array && c.roads.length && this.calculateLabelFeatures({
matrix: e
},
c.roads, n, t, i, t.features, c)
}
} catch(t) {
r = !0,
a = t
} finally {
try { ! o && l.
return && l.
return ()
} finally {
if (r) throw a
}
}
}
},
{
key: "calculatePoiByTile",
value: function(t, e, n, i) {
var o = !0,
r = !1,
a = void 0;
try {
for (var s, l = (0, u.
default)(t.features); ! (o = (s = l.next()).done); o = !0) {
var c = s.value;
if (c.datas && c.datas[0] && c.datas[0].text) {
var f = void 0;
c.datas[0].icon && (f = c.id),
this.calculatePoi({
matrix: e
},
c, t.scale, null, n, t.offset, f, t, i, t.features)
}
}
} catch(t) {
r = !0,
a = t
} finally {
try { ! o && l.
return && l.
return ()
} finally {
if (r) throw a
}
}
}
},
{
key: "calculateIconByTile",
value: function(t, e, n, i) {
var o = 1 / t.scale,
r = !0,
a = !1,
s = void 0;
try {
for (var l, c = (0, u.
default)(t.features); ! (r = (l = c.next()).done); r = !0) {
var f = l.value;
"iconSymbolIndex" in f && this.calculateIcon({
matrix: e,
scale: o
},
f.id, t, f, n, i, t.features)
}
} catch(t) {
a = !0,
s = t
} finally {
try { ! r && c.
return && c.
return ()
} finally {
if (a) throw s
}
}
}
},
{
key: "impactTextByTile",
value: function(t) {
var e = this,
n = this.textTileCellSet[t.id] || null,
i = this.poiTileCellSet[t.id] || null,
o = this.iconTileCellSet[t.id] || null,
r = (0, s.
default)({},
n, i, o); (0, f.
default)(r).forEach(function(t) {
e.impactTextByCellId(t)
})
}
},
{
key: "impactTextByCellId",
value: function(t) {
var e = this,
n = this.textDataSet,
i = this.poiDataSet,
o = this.iconDataSet,
r = this.textScreenCoordList,
a = this.poiScreenCoordList,
s = this.iconScreenCoordList,
l = void 0,
u = void 0;
x.
default.forIn(r[t],
function(l, c) {
if ((u = n[l]) && u.getShow()) for (var f = u,
d = f.linkIds,
h = r[t].cell, v = 0; v < 3; v++) if (u && u.getShow()) for (var p = 0; p < 3; p++) if (u && u.getShow()) {
var _ = h[0] + v - 1 + "_" + (h[1] + p - 1),
m = r[_],
g = a[_],
y = s[_];
m && x.
default.forIn(m,
function(t, i) {
var o = n[t];
if (o && o.getShow && t !== l && (!d || !d[t]) && e._impact(c, i)) if (u.rank > o.rank) {
o.setShow(!1);
var r = o.linkIds;
x.
default.forIn(r,
function(t) {
n[t].setShow(!1)
})
} else {
u.setShow(!1);
var a = u,
s = a.linkIds;
x.
default.forIn(s,
function(t) {
n[t].setShow(!1)
})
}
}),
g && x.
default.forIn(g,
function(t, o) {
var r = i[t];
if (r && r.getShow() && e._impact(c, o)) {
u.setShow(!1);
var a = u,
s = a.linkIds;
x.
default.forIn(s,
function(t) {
n[t].setShow(!1)
})
}
}),
y && x.
default.forIn(y,
function(t, n) {
var i = o[t];
i && i.getShow() && u.rank >= i.rank && e._impact(c, n) && i.setShow(!1)
})
}
}),
x.
default.forIn(a[t],
function(n, r) {
if ((l = i[n]) && l.getShow()) for (var u = l.linkId,
c = a[t].cell, f = 0; f < 3; f++) if (l && l.getShow()) for (var d = 0; d < 3; d++) if (l && l.getShow()) {
var h = c[0] + f - 1 + "_" + (c[1] + d - 1),
v = a[h],
p = s[h];
p && x.
default.forIn(p,
function(t, n) {
var i = o[t];
i && i.getShow() && l.iconId !== i.id && l.rank >= i.rank && e._impact(r, n) && i.setShow(!1)
}),
v && x.
default.forIn(v,
function(t, a) {
var s = i[t];
if (n !== t && s && s.getShow() && (!u || u !== t) && e._impact(r, a)) if (l.rank > s.rank) {
s.setShow(!1),
o[s.iconId] && o[s.iconId].setShow(!1);
var c = s.linkId;
c && i[c] && i[c].setShow(!1)
} else {
l.setShow(!1),
o[l.iconId] && o[l.iconId].setShow(!1);
var f = l,
d = f.linkId;
d && i[d] && i[d].setShow(!1)
}
})
}
}),
x.
default.forIn(s[t],
function(n, i) {
var r = o[n];
if (r && r.getShow()) for (var a = s[t].cell, l = 0; l < 3; l++) if (r && r.getShow()) for (var u = 0; u < 3; u++) if (r && r.getShow()) {
var c = a[0] + l - 1 + "_" + (a[1] + u - 1),
f = s[c];
i.isInCell && c !== t || f && x.
default.forIn(f,
function(t, a) {
var s = o[t];
n !== t && s && s.getShow() && e._impact(i, a) && (r.rank > s.rank ? s.setShow(!1) : r.setShow(!1))
})
}
})
}
},
{
key: "textImpact",
value: function() {
var t = this;
x.
default.forIn(this.cellSet,
function(e) {
t.impactTextByCellId(e)
})
}
},
{
key: "_impactCoord",
value: function(t, e) {
return ! (Math.abs(t.z - e.z) > 0 || Math.abs(t.x - e.x) > 1 || Math.abs(t.y - e.y) > 1)
}
},
{
key: "_impact",
value: function(t, e) {
var n = t.x <= e.x ? e.x: t.x,
i = t.y <= e.y ? e.y: t.y;
return n >= t.x && n <= t.x + t.w && i >= t.y && i <= t.y + t.h && n >= e.x && n <= e.x + e.w && i >= e.y && i <= e.y + e.h
}
},
{
key: "calculateLabelFeatures",
value: function(t, e, n, i, o, r, a) {
if (r.instance) {
var s = i.id + "_" + Math.round(o.zoom);
this.instanceSet[s] = r.instance;
var l = e.length / 2 - .5,
c = Math.floor(l),
f = e[0].font_size || 12,
d = void 0;
if (l % 1 == 0) d = e[l].datas[0].coords;
else {
var h = e[Math.floor(l)].datas[0].coords,
v = e[Math.ceil(l)].datas[0].coords;
d = [(h[0] + v[0]) / 2, (h[1] + v[1]) / 2]
}
var p = new _.Vector4(0, 0, 0, 1),
m = !0,
g = !1,
y = void 0;
try {
for (var x, b = (0, u.
default)(e); ! (m = (x = b.next()).done); m = !0) {
var S = x.value,
w = S.datas[0].screenCoords;
if (!w || w.version !== n.version) {
p.elements[0] = S.datas[0].coords[0] + f / 2,
p.elements[1] = -(S.datas[0].coords[1] + f / 2);
var E = n.getScreenCoordsByCustomMatrix(t.matrix, p);
E.rank = S.datas[0].rank,
S.datas[0].screenCoords = E
}
}
} catch(t) {
g = !0,
y = t
} finally {
try { ! m && b.
return && b.
return ()
} finally {
if (g) throw y
}
}
for (var T = e[Math.floor(l)], A = e[Math.ceil(l)], P = T.datas[0].screenCoords, I = A.datas[0].screenCoords, k = {
x: (P.x + I.x) / 2,
y: (P.y + I.y) / 2
},
L = e[0].datas[0].coords, M = e[e.length - 1].datas[0].coords, C = {
x: L[0],
y: L[1]
},
R = {
x: M[0],
y: M[1]
},
B = this._sortValue(C, R), N = this._sortValue(e[0].datas[0].screenCoords, e[e.length - 1].datas[0].screenCoords), O = B !== N, D = void 0, z = {},
F = 0, V = 0, Y = void 0, U = 0, j = e.length; U < j; U++) {
var G = e[U].datas[0],
Z = void 0,
H = void 0,
W = O ? e[j - U - 1] : e[U];
G.text = W.datas[1].text,
G.text_bounds = W.datas[1].text_bounds,
G.glyph_text_bounds = W.datas[1].glyph_text_bounds;
var X = W.roadSymbolIndex,
Q = r.instance.instanceTransTypeArray[3 * X],
q = r.instance.instanceTransTypeArray[3 * X + 1],
K = r.instance.instanceTransTypeArray[3 * X + 2];
W.roadSymbolIndex = e[U].roadSymbolIndex,
r.instance.instanceTransTypeArray[3 * W.roadSymbolIndex] = r.instance.instanceTransTypeArray[3 * e[U].roadSymbolIndex],
r.instance.instanceTransTypeArray[3 * W.roadSymbolIndex + 1] = r.instance.instanceTransTypeArray[3 * e[U].roadSymbolIndex + 1],
r.instance.instanceTransTypeArray[3 * W.roadSymbolIndex + 2] = r.instance.instanceTransTypeArray[3 * e[U].roadSymbolIndex + 2],
e[U].roadSymbolIndex = X,
r.instance.instanceTransTypeArray[3 * e[U].roadSymbolIndex] = Q,
r.instance.instanceTransTypeArray[3 * e[U].roadSymbolIndex + 1] = q,
r.instance.instanceTransTypeArray[3 * e[U].roadSymbolIndex + 2] = K,
U < j - 1 && (Z = e[U + 1].datas[0], H = this.lineAngle(G.screenCoords, Z.screenCoords), D = U === j - 2 ? H: 0),
G.line = U === j - 1 ? D: H,
G.line >= 45 && G.line <= 135 || G.line >= 225 && G.line <= 315 ? V += 1 : F += 1;
var J = "label_" + e[U].datas[0].text + "_" + e[U].id;
z[J] = J
}
if (F === V) {
var $ = e[0].datas[0].line;
Y = !($ >= 45 && $ <= 135 || $ >= 225 && $ <= 315)
} else Y = F >= V;
for (var tt = e.map(function(t) {
return t.id
}).join(), et = c; et >= 0; et--) {
var nt = {
coords: et === c ? d: e[et + 1].datas[0].coords,
newCoords: et === c ? d: e[et + 1].datas[0].newCoords,
screenCoords: et === c ? k: e[et + 1].datas[0].screenCoords
};
this.calculate({
transform: t,
feature: e[et],
camera: n,
tile: i,
neighbor: nt,
linkIds: z,
fixType: Y,
gltrans: o,
tileFeatures: r,
roadFeature: a,
roadFeatureId: tt
})
}
for (var it = c + 1; it < e.length; it++) {
var ot = {
coords: it === c + 1 ? d: e[it - 1].datas[0].coords,
newCoords: it === c + 1 ? d: e[it - 1].datas[0].newCoords,
screenCoords: it === c + 1 ? k: e[it - 1].datas[0].screenCoords
};
this.calculate({
transform: t,
feature: e[it],
camera: n,
tile: i,
neighbor: ot,
linkIds: z,
fixType: Y,
gltrans: o,
tileFeatures: r,
roadFeature: a,
roadFeatureId: tt
})
}
}
}
},
{
key: "calculate",
value: function(t) {
var e = t.transform,
n = t.feature,
i = t.camera,
o = t.tile,
r = t.neighbor,
a = t.linkIds,
s = t.fixType,
l = t.gltrans,
u = t.tileFeatures,
c = t.roadFeature,
f = t.roadFeatureId,
d = n.datas[0],
h = i.scale,
v = n.roadSymbolIndex,
p = d.text,
m = "label_" + p + "_" + n.id,
g = u.instance.instanceCoordsTypeArray[4 * v] * h,
y = u.instance.instanceCoordsTypeArray[4 * v + 1] * h,
x = d.screenCoords,
b = d.line || 0,
S = 360 - this.calMix(s, b) || 0,
w = Math.sqrt(Math.pow(x.x - r.screenCoords.x, 2) + Math.pow(x.y - r.screenCoords.y, 2)),
E = this.calCoords(r.coords, d.coords, w, r.newCoords, d.coordScale, h),
T = E[0],
A = E[1];
d.newCoords = [T, A],
u.instance.instanceTransTypeArray[3 * v] = T,
u.instance.instanceTransTypeArray[3 * v + 1] = -A;
var P = d.newScreenCoords;
if (!P || P.version !== i.version) {
var I = new _.Vector4(0, 0, 0, 1);
I.elements[0] = T,
I.elements[1] = -A,
d.newScreenCoords = i.getScreenCoordsByCustomMatrix(e.matrix, I),
P = d.newScreenCoords,
P.rank = d.rank,
P.w = g,
P.h = y,
P.x -= g / 2,
P.y -= y / 2
}
var k = Math.floor(P.x / this.DELTA_SCREEN_CELL),
L = Math.floor(P.y / this.DELTA_SCREEN_CELL),
M = k + "_" + L;
P.isInCell = k === Math.floor((P.x + P.w) / this.DELTA_SCREEN_CELL) && L === Math.floor((P.y + P.h) / this.DELTA_SCREEN_CELL),
this.textFeatureSet[f] || (this.textFeatureSet[f] = {
_show: !0,
tileId: o.id,
roadFeature: c,
tile: o,
tileFeatures: u,
zoom: l.roundZoom,
getShow: function() {
return this._show
},
setShow: function(t) {
this._show = t
},
destory: function() {
this._show = null
}
});
var C = this,
R = {
v: this.v,
_show: !0,
roadSymbolIndex: v,
rank: d.rank,
tileId: o.id,
linkIds: a,
coordX: o.coordX,
coordY: o.coordY,
coordZ: o.coordZ,
_opacity: null,
getOpacity: function() {
return this._opacity
},
setOpacity: function(t) {
this._opacity = t
},
updateOpacity: function() {
u.instance.instanceInfosTypeArray[4 * this.roadSymbolIndex + 3] = this._opacity
},
getShow: function() {
return this._show
},
setShow: function(t) {
this._show = t,
C.textFeatureSet[f].setShow(t)
},
updateShow: function() {
u.instance.instanceInfosTypeArray[4 * this.roadSymbolIndex + 1] = this._show ? 1 : 0
},
destory: function() {
this._show = null,
this._opacity = null
}
};
P.x + P.w < -120 || P.x > l.width + 120 || P.y + P.h < -120 || P.y > l.height + 120 ? R.setShow(!1) : (P.v = this.v, this.textTileCellSet[o.id] = this.textTileCellSet[o.id] || {},
this.textTileCellSet[o.id][M] = !0, this.textScreenCoordList[M] = this.textScreenCoordList[M] || {
cell: [k, L]
},
this.textScreenCoordList[M][m] = P, this.cellSet[M] = !0),
u.instance.instanceInfosTypeArray[4 * v] = -S % 360 * Math.PI / 180,
u.instance.instanceInfosTypeArray[4 * v + 1] = 1;
var B = this.textDataSet[m];
B && (R.setShow(B.getShow()), R.setOpacity(B.getOpacity())),
this.textDataSet[m] = R
}
},
{
key: "calculateAllIndoorPois",
value: function(t, e, n, i, o, r) {
var a = this;
if (t.instance) {
var s = r.id + "_" + Math.round(o.zoom);
this.instanceSet[s] = t.instance;
var l = o.getDistanceScales(),
u = o.center,
c = 1 / (0, w.getSpatialResolution)(o.zoom);
t.forEach(function(s) {
var f = "iconSymbolIndex" in s,
d = s.length > 0 && s[0].instance_trans;
if (f || d) {
var h = s.iconSymbolIndex,
v = r.id + "_icon_" + h,
p = s.map(function(t, e) {
return "indoor_" + t.text + "_" + r.id + "_" + (t.textSymbolIndexList && t.textSymbolIndexList[e] || "")
}),
_ = s.map(function(t) {
return t.text
}).join("/"),
m = o.latLngToCenterLocalPixelByDistanceScales(e, {
distanceScales: l,
center: u,
pixelsPerMeter: c,
offsetMercator: f ? {
x: t.instance.instanceTransTypeArray[3 * h],
y: t.instance.instanceTransTypeArray[3 * h + 1]
}: {
x: s[0].instance_trans[0],
y: s[0].instance_trans[1]
}
});
a.calculateSingleIndoorPoi(s, {
linkIds: p,
indoorTile: r,
hasIcon: f,
iconId: v,
localPixel: m,
camera: i,
tileMatrix: n,
transform: o,
indoorPois: t,
textName: _
}),
f && a.calculateIndoorPoiIcon({
indoorPois: t,
iconId: v,
poiInfo: s,
localPixel: m,
tileMatrix: n,
camera: i,
transform: o,
tile: r,
textName: _
})
}
})
}
}
},
{
key: "calculateSingleIndoorPoi",
value: function(t, e) {
var n = this,
i = t,
o = e.linkIds,
a = e.indoorTile,
s = e.hasIcon,
l = e.iconId,
u = e.localPixel,
c = e.camera,
f = e.tileMatrix,
d = e.transform,
h = e.indoorPois,
v = e.textName;
i.forEach(function(t, e) {
if (0 !== t.textBounds.w && 0 !== t.textBounds.h) {
var p = o[e],
_ = 0 === e ? o[1] : o[0],
m = n._generatePoiDataItem({
isIndoor: !0,
textSymbolIndexList: t.textSymbolIndexList,
rank: t.rank,
tile: a,
linkId: _,
iconId: l,
instance: h.instance,
name: v
});
if (n.poiDataSet[p] = m, !(e > 0)) {
var y = 1,
x = 1,
b = 0;
if (i.length > 1) {
var S = i.map(function(t) {
return t.textBounds
}),
w = (0, r.
default)(S, 2),
E = w[0],
T = w[1],
A = i.map(function(t) {
return t.anchor
}),
P = (0, r.
default)(A, 2),
I = P[0],
k = P[1];
T.w > E.w && (y = T.w / E.w);
var L = Math.abs(k.y - I.y) - (E.h + T.h) / 2;
x = (E.h + T.h + L) / E.h;
var M = I.x - E.w / 2 - (k.x - T.w / 2);
M > 0 && (b = M)
}
var C = n._generateScreenCoordsForPoi({
screenCoordsContainer: t,
localPixel: u,
textInfo: t,
boundsScale: y,
boundsH: x,
camera: c,
tileMatrix: f,
correctCallback: function(e) {
if (e.x -= b, s) {
var n = g.
default.iconSize * c.scale,
i = t.anchor;
i.x > 0 ? (e.x -= n, e.w += n) : i.x < 0 ? e.w += n: (e.h += n, i.y > 0 && (e.y -= n))
}
}
});
n._packPoiToSet(C, {
item: m,
transform: d,
infoId: p,
tile: a
})
}
}
})
}
},
{
key: "calculateIndoorPoiIcon",
value: function(t) {
var e = t.indoorPois,
n = t.iconId,
i = t.poiInfo,
o = t.localPixel,
r = t.tileMatrix,
a = t.camera,
s = t.transform,
l = t.tile,
u = t.textName,
c = new _.Vector4(0, 0, 0, 1);
c.elements[0] = o.x,
c.elements[1] = o.y;
var f = i.iconScreenCoods;
if (!f || f.version !== a.version) {
i.iconScreenCoods = a.getScreenCoordsByCustomMatrix(r, c),
f = i.iconScreenCoods,
f.rank = i[0].rank || 0,
f.coord = {
x: f.x,
y: f.y
};
var d = g.
default.iconSize * a.scale;
f.x -= d / 2,
f.y -= d / 2,
f.w = d,
f.h = d,
f.iconSymbolIndex = i.iconSymbolIndex
}
this._packIconToSet(f, {
id: n,
isIndoor: !0,
tileId: l.id,
gltrans: s,
instance: e.instance,
needIcon: !i[0].textSymbolIndex,
name: u
})
}
},
{
key: "calculatePoi",
value: function(t, e, n, i, o, r, a, s, l, u) {
if (u.instance) {
var c = s.id + "_" + Math.round(l.zoom);
this.instanceSet[c] = u.instance;
var f = e.datas[0];
if (f.coords.length) for (var d = f.text,
h = 1,
v = 1,
p = f.text_bounds,
_ = void 0,
m = 0,
g = d.length; m < g; m++) {
var y = "text_" + d[m].text + "_" + e.id,
x = void 0;
if (_ = 2 === g ? p.slice(4 * (1 - m), 4 * (1 - m) + 4) : p.slice(4 * m, 4 * m + 4), !(_[2] < 10 || _[3] < 10) && d[m].instance_trans) {
if (2 === g) {
var b = d[1].text,
S = d[0].text;
x = 0 === m ? "text_" + b + "_" + e.id: "text_" + S + "_" + e.id,
h = d[0].instance_coords && d[1].instance_coords ? d[0].instance_coords[0] > d[1].instance_coords[0] ? 1 : d[1].instance_coords[0] / d[0].instance_coords[0] : 1,
v = 2
}
this.calculateSingle(t, d[m], y, a, e, o, x, s, m, h, v, l, u)
}
}
}
}
},
{
key: "calculateSingle",
value: function(t, e, n, i, o, r, a, s, l, u, c, f, d) {
var h = e.textSymbolIndexList,
v = e.rank,
p = this._generatePoiDataItem({
isIndoor: !1,
textSymbolIndexList: h,
rank: v,
tile: s,
linkId: a,
iconId: i,
instance: d.instance,
index: l,
name: o.datas[0].textName
});
if (this.poiDataSet[n] = p, l) return void(this.poiDataSet[n] = p);
var _ = this._generateScreenCoordsForPoi({
screenCoordsContainer: o.datas[0],
localPixel: {
x: e.instance_trans[0],
y: e.instance_trans[1]
},
textInfo: e,
boundsScale: u,
boundsH: c,
tileMatrix: t.matrix,
camera: r,
correctCallback: function(t) {
var n = e.centerOffset,
a = g.
default.iconSize,
s = r.scale,
l = e.instance_coords[0],
c = !!i;
if (o.datas[0].stretching_len) {
var f = {
x: o.datas[0].screenW || 0,
y: o.datas[0].screenH || 0
};
t.x += (n && n.x) * s,
t.y += (n && n.y) * s,
t.w += f.x * s,
t.h += f.y * s
} else if (n) {
var d = {
x: 0,
y: 0
},
h = {
x: 0,
y: 0
};
if (0 === n.x) {
if (d.x = -l * (u - 1) / 2, c) {
var v = Math.abs(e.instance_coords[3]) + a / 2;
d.y = n.y > 0 ? -v: 0,
h.y = v
}
} else {
var p = Math.abs(e.instance_coords[2]) + a / 2;
d.x = n.x < 0 ? -l * (u - 1) : -p,
h.x = p
}
t.x += d.x * s,
t.y += d.y * s,
t.w += h.x * s,
t.h += h.y * s
}
}
});
this._packPoiToSet(_, {
item: p,
infoId: n,
tile: s,
transform: f
})
}
},
{
key: "_generateScreenCoordsForPoi",
value: function(t) {
var e = t.screenCoordsContainer,
n = t.localPixel,
i = t.textInfo,
o = t.boundsScale,
r = t.boundsH,
a = t.camera,
s = t.tileMatrix,
l = t.correctCallback,
u = new _.Vector4(0, 0, 0, 1),
c = e.poiScreenCoords,
f = a.scale;
if (!c || c.version !== a.version) {
u.elements[0] = n.x,
u.elements[1] = n.y;
var d = i.instance_coords[0] * f,
h = i.instance_coords[1] * f,
v = {
x: i.instance_coords[2] * f,
y: i.instance_coords[3] * f
};
e.poiScreenCoords = a.getScreenCoordsByCustomMatrix(s, u),
c = e.poiScreenCoords,
c.rank = i.rank || 0,
c.coord = {
x: c.x,
y: c.y
},
c.x -= v.x,
c.y -= v.y,
c.w = d * o,
c.h = h * r,
l && l(c)
}
return c
}
},
{
key: "_generatePoiDataItem",
value: function(t) {
return {
name: t.name || "",
_show: !0,
textSymbolIndexList: t.textSymbolIndexList,
rank: t.rank,
isIndoor: t.isIndoor,
tileId: t.tile.id,
linkId: t.linkId,
iconId: t.iconId,
coordX: t.tile.coordX,
coordY: t.tile.coordY,
coordZ: t.tile.coordZ,
index: t.index || 0,
_opacity: null,
getOpacity: function() {
return this._opacity
},
setOpacity: function(t) {
this._opacity = t
},
updateOpacity: function() {
var e = this;
this.textSymbolIndexList.forEach(function(n) {
t.instance.instanceInfosTypeArray[4 * n + 3] = e._opacity
})
},
getShow: function() {
return this._show
},
setShow: function(t) {
this._show = t
},
updateShow: function() {
var e = this;
this.textSymbolIndexList.forEach(function(n) {
t.instance.instanceInfosTypeArray[4 * n + 1] = e._show ? 1 : 0
})
},
destory: function() {
this._show = null,
this._opacity = null
}
}
}
},
{
key: "_packPoiToSet",
value: function(t, e) {
var n = this.calCellCoord(t),
i = n.hIdx,
o = n.vIdx,
r = n.cellId;
t.isInCell = i === Math.floor((t.x + t.w) / this.DELTA_SCREEN_CELL) && o === Math.floor((t.y + t.h) / this.DELTA_SCREEN_CELL),
t.x + t.w < -120 || t.x > e.transform.width + 120 || t.y + t.h < -120 || t.y > e.transform.height + 120 ? e.item.setShow(!1) : (this.poiScreenCoordList[r] ? this.poiScreenCoordList[r][e.infoId] = t: (this.poiScreenCoordList[r] = {
cell: [i, o]
},
this.poiScreenCoordList[r][e.infoId] = t), this.poiTileCellSet[e.tile.id] = this.poiTileCellSet[e.tile.id] || {},
this.poiTileCellSet[e.tile.id][r] = !0, this.cellSet[r] = !0)
}
},
{
key: "calculateIcon",
value: function(t, e, n, i, o, r, a) {
if (a.instance) {
var s = n.id + "_" + Math.round(r.zoom);
this.instanceSet[s] = a.instance
}
var l = i.datas[0].text,
u = g.
default.iconSize,
c = new _.Vector4(0, 0, 0, 1);
c.elements[0] = a.instance.instanceTransTypeArray[3 * i.iconSymbolIndex],
c.elements[1] = a.instance.instanceTransTypeArray[3 * i.iconSymbolIndex + 1];
var f = i.datas[0].iconScreenCoods;
if (!f || f.version !== o.version) {
i.datas[0].iconScreenCoods = o.getScreenCoordsByCustomMatrix(t.matrix, c),
f = i.datas[0].iconScreenCoods,
f.rank = l && l[0] && l[0].rank || 0;
var d = u * f.depthScale * o.scale,
h = u * f.depthScale * o.scale;
f.coord = {
x: f.x,
y: f.y
},
f.x -= d / 2 + this.iconBoundsBuffer,
f.y -= h / 2 + this.iconBoundsBuffer,
f.w = d + 2 * this.iconBoundsBuffer,
f.h = h + 2 * this.iconBoundsBuffer,
f.iconSymbolIndex = i.iconSymbolIndex
}
this._packIconToSet(f, {
id: e,
tileId: n.id,
isIndoor: !1,
gltrans: r,
instance: a.instance,
needIcon: l.length <= 0,
name: i.datas[0].textName
})
}
},
{
key: "_packIconToSet",
value: function(t, e) {
var n = e.id,
i = e.tileId,
o = e.isIndoor,
r = e.gltrans,
a = e.instance,
s = e.needIcon,
l = e.name,
u = Math.floor(t.x / this.DELTA_SCREEN_CELL),
c = Math.floor(t.y / this.DELTA_SCREEN_CELL),
f = u + "_" + c;
t.isInCell = u === Math.floor((t.x + t.w) / this.DELTA_SCREEN_CELL) && c === Math.floor((t.y + t.h) / this.DELTA_SCREEN_CELL),
this.iconDataSet[n] = {
id: n,
name: l,
isIndoor: o,
tileId: i,
rank: t.rank,
_show: !0,
iconSymbolIndex: t.iconSymbolIndex,
_opacity: null,
getOpacity: function() {
return this._opacity
},
setOpacity: function(t) {
this._opacity = t
},
updateOpacity: function() {
a.instanceInfosTypeArray[4 * this.iconSymbolIndex + 3] = this._opacity
},
getShow: function() {
return this._show
},
setShow: function(t) {
this._show = t
},
updateShow: function() {
a.instanceInfosTypeArray[4 * this.iconSymbolIndex + 1] = this._show ? 1 : 0
},
destory: function() {
this._show = null,
this._opacity = null
}
},
t.x + t.w < -120 || t.x > r.width + 120 || t.y + t.h < -120 || t.y > r.height + 120 ? this.iconDataSet[n].setShow(!1) : s && (this.iconScreenCoordList[f] ? this.iconScreenCoordList[f][n] = t: (this.iconScreenCoordList[f] = {
cell: [u, c]
},
this.iconScreenCoordList[f][n] = t), this.iconTileCellSet[i] = this.iconTileCellSet[i] || {},
this.iconTileCellSet[i][f] = !0, this.cellSet[f] = !0)
}
},
{
key: "calMix",
value: function(t, e) {
var n = 0;
return n = t ? e >= 90 && e <= 270 ? e - 180 : e: e <= 180 ? e - 90 : e - 270,
Math.round(n)
}
},
{
key: "lineAngle",
value: function(t, e) {
var n = t.x,
i = t.y,
o = e.x,
r = e.y,
a = o - n,
s = r - i,
l = Math.sqrt(a * a + s * s),
u = a / l,
c = Math.acos(u),
f = 180 * c / Math.PI;
return s > 0 ? f = -f: 0 === s && a < 0 && (f = 180),
f = f > 90 ? 360 - (f - 90) : 90 - f,
Math.round(f)
}
},
{
key: "calCoords",
value: function(t, e, n, i, o, r) {
if (!n) return i;
var a = e[0] - t[0],
s = e[1] - t[1],
l = Math.sqrt(a * a + s * s),
u = l / o * r,
c = u / n;
return [i[0] + a * c, i[1] + s * c]
}
},
{
key: "calCellCoord",
value: function(t) {
var e = Math.floor(t.x / this.DELTA_SCREEN_CELL),
n = Math.floor(t.y / this.DELTA_SCREEN_CELL);
return {
hIdx: e,
vIdx: n,
cellId: e + "_" + n
}
}
},
{
key: "getDataInCell",
value: function(t, e) {
var n = this[e + "ScreenCoordList"],
i = this[e + "DataSet"],
o = [];
return n && i && x.
default.forIn(n[t],
function(t, e) {
"cell" !== t && o.push(x.
default.extend({
poiId:
t
},
e, i[t]))
}),
o
}
},
{
key: "getPoi",
value: function(t) {
var e = this,
n = null,
i = this.calCellCoord(t),
o = i.hIdx,
r = i.vIdx,
a = [[0, 0], [0, -1], [ - 1, 0], [ - 1, -1]],
s = [];
a.forEach(function(t) {
var n = o + t[0] + "_" + (r + t[1]),
i = !!(t[0] + t[1]),
a = e.getDataInCell(n, "poi").filter(function(t) {
return t._show && !(i && t.isInCell)
}),
l = e.getDataInCell(n, "icon").filter(function(t) {
return t._show && !(i && t.isInCell)
});
s = s.concat(a).concat(l)
});
for (var l = 0; l < s.length; l++) {
var u = s[l],
c = u.x,
f = u.y,
d = u.w,
h = u.h,
v = u.coord,
p = u.isIndoor,
_ = u.name,
m = {
x: t.x - c,
y: t.y - f
},
g = d + 2,
y = h + 2;
if (m.x >= -2 && m.x <= g && m.y >= -2 && m.y <= y) {
n = {
coord: v,
bounds: [c, f, d, h],
isIndoor: p,
name: _ ? _.replace("/", "") : ""
};
break
}
}
return n
}
}]),
t
} ();
e.
default = T
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return [{
name:
"a_Position",
components: 2,
type: "UNSIGNED_SHORT",
offset: 0
},
{
name: "a_Info",
components: 4,
type: "UNSIGNED_BYTE",
offset: 4
},
{
name: "a_Color",
components: 4,
type: "UNSIGNED_BYTE",
offset: 8
},
{
name: "a_Transform",
components: 2,
type: "UNSIGNED_BYTE",
offset: 12
},
{
name: "a_Height",
components: 1,
type: "UNSIGNED_SHORT",
offset: 14
}]
}
function r() {
return ["Uint16", "Uint16", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint8", "Uint16"]
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(27),
s = i(a),
l = n(24),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(481),
p = i(v),
_ = n(278),
m = i(_),
g = n(237),
y = i(g),
x = n(634),
b = i(x),
S = function() {
function t() { (0, f.
default)(this, t);
var e = (0, p.
default)(r(), o()),
n = (0, p.
default)(["Int16"]);
this.vertiesDataBuffer = e(1024),
this.indicesDataBuffer = n(1024)
}
return (0, h.
default)(t, [{
key: "add",
value: function(t) {
var e = t.points,
n = t.height,
i = t.colorFill,
o = t.colorSide,
r = t.transform;
n *= 1;
for (var a = r.transX,
s = void 0 === a ? 0 : a, l = r.transY, c = void 0 === l ? 0 : l, f = r.scale, d = void 0 === f ? 1 : f, h = [Math.round(s / 256) + 16 * Math.round(c / 256), Math.round(1 / d)], v = this.vertiesDataBuffer, p = this.indicesDataBuffer, _ = y.
default.mixCoords(e, "polygon", [128, 128, 129, 0].concat((0, u.
default)(i), h, [n]), 2048), g = m.
default.flatten([_]), x = g.vertices, b = g.dimensions, S = (0, m.
default)(x, g.holes, b, v.length), w = 0, E = x.length / b; w < E; w++) {
for (var T = [], A = w * b, P = (w + 1) * b; A < P; A++) T.push(x[A]);
v.add([T])
}
p.add(S),
this.addWalls(e, _, o, h)
}
},
{
key: "addWalls",
value: function(t, e, n, i) {
for (var o = this.vertiesDataBuffer,
r = this.indicesDataBuffer,
a = o.length,
l = e.length,
c = y.
default.mixCoords(t, "polygon", [0, 0, 0, 0].concat((0, u.
default)(n), (0, u.
default)(i), [0]), 2048), f = [], d = [], h = 1; h < l; h++) {
var v = [[].concat(e[h - 1]), [].concat(e[h]), [].concat(c[h - 1]), [].concat(c[h])],
p = (0, b.
default)(v[0], v[1], v[2], 127, 128),
_ = !0,
m = !1,
g = void 0;
try {
for (var x, S = (0, s.
default)(v); ! (_ = (x = S.next()).done); _ = !0) {
var w = x.value;
w.splice.apply(w, [6, 4].concat((0, u.
default)(n))),
w.splice(2, 3, p[0], p[1], p[2])
}
} catch(t) {
m = !0,
g = t
} finally {
try { ! _ && S.
return && S.
return ()
} finally {
if (m) throw g
}
} [].push.apply(f, v),
d.push(a + 0, a + 1, a + 2, a + 1, a + 3, a + 2),
a += v.length
}
o.add(f),
r.add(d)
}
}]),
t
} ();
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
var n = {
increase: {},
decrease: {}
},
i = [a(t), a(e)],
o = i[0],
r = i[1],
s = l((0, _.
default)(o), (0, _.
default)(r)),
u = s.sameList,
c = s.increaseList,
f = s.decreaseList;
return c.forEach(function(t) {
n.increase[t] = r[t]
}),
f.forEach(function(t) {
n.decrease[t] = o[t]
}),
u.forEach(function(t) {
var e = l(o[t], r[t]),
i = e.increaseList,
a = e.decreaseList;
i.forEach(function(e) {
n.increase[t] ? n.increase[t].push(e) : n.increase[t] = [e]
}),
a.forEach(function(e) {
n.decrease[t] ? n.decrease[t].push(e) : n.decrease[t] = [e]
})
}),
n
}
function r(t) {
if ("object" !== (void 0 === t ? "undefined": (0, v.
default)(t)) || null === t) return ! 1;
if (Array.isArray(t)) {
var e = !0,
n = !1,
i = void 0;
try {
for (var o, a = (0, d.
default)(t); ! (e = (o = a.next()).done); e = !0) {
return !! r(o.value)
}
} catch(t) {
n = !0,
i = t
} finally {
try { ! e && a.
return && a.
return ()
} finally {
if (n) throw i
}
}
}
return ! 0
}
function a(t) {
var e = {};
if (Array.isArray(t)) t.forEach(function(t) {
var n = t.type,
i = t.features;
n && (e[n] = s(n, i))
});
else {
var n = t.type,
i = t.features;
n && (e[n] = s(n, i))
}
return e
}
function s(t, e) {
if (!Array.isArray(e)) return m.DEFAULT_BASEMAP[t] && m.DEFAULT_BASEMAP[t].features;
switch (t) {
case m.MAP_TYPE.vector:
var n = [].concat((0, c.
default)(e));
if (n.includes("building")) {
var i = n.indexOf("building");
n.includes("building3d") ? n.splice(i, 1) : n.splice(i, 1, "building3d")
}
if (n.includes("building2d") && n.includes("building3d")) {
var o = n.indexOf("building2d");
n.splice(o, 1)
}
return n;
case m.MAP_TYPE.satellite:
case m.MAP_TYPE.traffic:
case m.MAP_TYPE.handdraw:
default:
return e
}
}
function l(t, e) {
var n = [],
i = [],
o = [];
return Array.isArray(t) && Array.isArray(e) && (e.forEach(function(e) {
t.includes(e) ? n.push(e) : i.push(e)
}), o = t.filter(function(t) {
return ! n.includes(t)
})),
{
sameList: n,
increaseList: i,
decreaseList: o
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.isVerifiedBaseMap = e.formatBaseMap = e.compareBaseMap = void 0;
var u = n(24),
c = i(u),
f = n(27),
d = i(f),
h = n(20),
v = i(h),
p = n(17),
_ = i(p),
m = n(281);
e.compareBaseMap = o,
e.formatBaseMap = a,
e.isVerifiedBaseMap = r
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return c || (c = new a.
default(function(t) {
u(null, l.
default.verSrc,
function(e) {
e && e.info && 0 === e.error && (l.
default.dataVersion.sat = e.info.sat, l.
default.dataVersion.tile = e.info["1d"], l.
default.dataVersion.scenic = e.info.scenic),
t()
},
function() {
t()
})
})),
c
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(25),
a = i(r);
e.
default = o;
var s = n(23),
l = i(s),
u = n(340).send,
c = void 0
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
return new Rt[e.type](t, e, n)
}
function r(t, e) {
return t instanceof Array ? {
imgBase64List: [].concat(t).concat(e),
extOffset: t.length
}: {
imgBase64List: [t, e],
extOffset: 1
}
}
function a(t, e) {
var n = e.id;
return new L.
default(function(e, i) {
if (t) {
var o = new Image;
o.onload = function() {
e(o)
},
o.onerror = function() {
i(n)
},
o.src = "data:img/png;base64," + t
} else e(null)
})
}
function s(t) {
var e = document.createElement("canvas"),
n = [],
i = 0,
o = 0;
if (t.forEach(function(t) {
t && (i = Math.max(t.width, i), o += t.height)
}), e.width = i, e.height = o, i && o) {
var r = e.getContext("2d"),
a = 0;
return t.forEach(function(t) {
n.push(a),
t && (r.drawImage(t, 0, a), a += t.height)
}),
{
canvas: e,
yOffset: n
}
}
return {}
}
function l(t, e) {
if (t) {
if (Array.isArray(t)) return t.find(function(t) {
return t.type === e
});
return t.type === e ? t: null
}
}
function u(t) {
return ! (!t || t.type !== dt.MAP_TYPE.satellite)
}
var c, f = n(113),
d = i(f),
h = n(32),
v = i(h),
p = n(27),
_ = i(p),
m = n(221),
g = i(m),
y = n(115),
x = i(y),
b = n(17),
S = i(b),
w = n(20),
E = i(w),
T = n(283),
A = i(T),
P = n(282),
I = i(P),
k = n(25),
L = i(k),
M = n(3),
C = i(M),
R = n(0),
B = i(R),
N = n(1),
O = i(N),
D = n(5),
z = i(D),
F = n(4),
V = i(F),
Y = n(222),
U = i(Y),
j = n(487),
G = n(622),
Z = i(G),
H = n(626),
W = i(H),
X = n(694),
Q = i(X),
q = n(493),
K = i(q),
J = n(674),
$ = i(J),
tt = n(677),
et = i(tt),
nt = n(681),
it = i(nt),
ot = n(679),
rt = i(ot),
at = n(676),
st = i(at),
lt = n(684),
ut = i(lt),
ct = n(90),
ft = n(66),
dt = n(281),
ht = n(658),
vt = n(301),
pt = n(696),
_t = i(pt),
mt = n(697),
gt = n(498),
yt = n(385),
xt = n(659),
bt = i(xt),
St = n(509),
wt = n(788),
Et = i(wt),
Tt = n(380),
At = n(482),
Pt = n(143),
It = n(29),
kt = n(484),
Lt = n(106),
Mt = n(23),
Ct = n(10),
Rt = (c = {},
(0, U.
default)(c, ct.SOURCE_TYPE.vector, Q.
default), (0, U.
default)(c, ct.SOURCE_TYPE.geojson, K.
default), (0, U.
default)(c, ct.SOURCE_TYPE.geoTask, $.
default), (0, U.
default)(c, ct.SOURCE_TYPE.imageTile, et.
default), (0, U.
default)(c, ct.SOURCE_TYPE.indoor, it.
default), (0, U.
default)(c, ct.SOURCE_TYPE.ground, st.
default), (0, U.
default)(c, ct.SOURCE_TYPE.traffic, ut.
default), c),
Bt = function(t) {
function e(t, n) { (0, B.
default)(this, e);
var i = (0, z.
default)(this, (e.__proto__ || (0, C.
default)(e)).call(this));
return i.map = n,
i._visualPlugins = {},
i._layers = {},
i._sources = {},
i._stylePromise = null,
i.dispatcher = new Z.
default(W.
default, i, t.workerCount),
i.iconsLoader = new Et.
default,
i._mapStyleId = t.mapStyleId,
i._finalUsedMapStyleId = vt.STYLE_ID[i._mapStyleId],
i._lastStyleId = vt.STYLE_ID[i._mapStyleId],
i._baseMap = null === t.baseMap ? null: t.baseMap || dt.DEFAULT_BASEMAP.vector,
i._baseLayerList = [],
i._setEventedParent(n, null),
i._on("loaderror",
function(t) {
var e = t.tile,
n = t.error;
console.error("加载瓦片发生错误:" + e.coord.id, e, n)
}),
(0, bt.
default)().then(function() {
i.initBaseLayer()
}),
i.loadStyle().then(function(t) {
var e = t.styleId;
i._fire("mapstyle_changed", {
styleId: e
})
}).
catch(function() {}),
i
}
return (0, V.
default)(e, t),
(0, O.
default)(e, [{
key: "getStyleIdPromise",
value: function() {
return (0, _t.
default)(this._mapStyleId, this.map.id)
}
},
{
key: "loadStyle",
value: function() {
var t = this;
if (!this._stylePromise) {
var e = !1;
this._stylePromise = this.getStyleIdPromise().then(function(n) {
if (e) return L.
default.reject("加载样式aborted");
t._finalUsedMapStyleId = n,
t._lastStyleId = n;
var i = (0, mt.loadPoiIconFile)(n, Mt.iconSrc).then(function(e) {
return t.iconsLoader && t.iconsLoader.load(e)
}),
o = (0, gt.loadPoiIconIndexFile)(n, Mt.iconIndexSrc),
r = (0, yt.loadStyleFile)(n, n);
return L.
default.all([i, o, r]).then(function() {
return e ? L.
default.reject("加载样式aborted"):
{
styleId:
n,
iconInfo: {
scale: t.iconsLoader && t.iconsLoader.scale,
w: t.iconsLoader && t.iconsLoader.w,
h: t.iconsLoader && t.iconsLoader.h
}
}
})
}),
this._stylePromise.abort = function() {
e = !0
}
}
return this._stylePromise
}
},
{
key: "setMapStyleId",
value: function() {
function t(t) {
return e.apply(this, arguments)
}
var e = (0, I.
default)(A.
default.mark(function t(e) {
var n, i = this;
return A.
default.wrap(function(t) {
for (;;) switch (t.prev = t.next) {
case 0:
if (e !== this._mapStyleId || "config" === this._finalUsedMapStyleId) {
t.next = 2;
break
}
return t.abrupt("return");
case 2:
return this._mapStyleId = e,
n = this._finalUsedMapStyleId,
this._stylePromise.abort(),
this._stylePromise = null,
this.loadStyle().then(function(t) {
var e = t.styleId,
o = t.iconInfo;
e !== n && i.resetStyle(e, o)
}),
t.abrupt("return", this);
case 8:
case "end":
return t.stop()
}
},
t, this)
}));
return t
} ()
},
{
key: "loadStyleConfig",
value: function(t) {
var e = this;
if (!this._stylePromise) {
var n = t.style,
i = t.icon,
o = void 0 === i ? null: i,
r = t.iconIndex,
a = void 0 === r ? null: r;
"config" !== this._finalUsedMapStyleId && (this._lastStyleId = this._finalUsedMapStyleId, this._finalUsedMapStyleId = "config");
var s = !1,
l = (0, yt.setStyleConfig)(n, "config"),
u = void 0,
c = void 0;
o && a ? (u = {
data: o
},
c = {
data: a
}) : (u = {
styleId: 0,
iconSrc: Mt.iconSrc
},
c = {
styleId: 0,
iconIndexSrc: Mt.iconIndexSrc
});
var f = (0, mt.setPoiIcon)(u).then(function(t) {
return e.iconsLoader.load(t)
}),
d = (0, gt.setPoiIconIndex)(c);
this._stylePromise = L.
default.all([l, f, d]).then(function() {
return s ? L.
default.reject("加载样式aborted"):
{
styleId:
"config",
iconInfo: {
scale: e.iconsLoader.scale,
w: e.iconsLoader.w,
h: e.iconsLoader.h
}
}
}),
this._stylePromise.abort = function() {
s = !0
}
}
return this._stylePromise
}
},
{
key: "setMapStyleConfig",
value: function(t) {
var e = this,
n = t.style,
i = t.icon,
o = void 0 === i ? void 0 : i,
r = t.iconIndex,
a = void 0 === r ? void 0 : r;
return n ? o && "string" != typeof o ? void console.error("icon属性不合法") : a && "object" !== (void 0 === a ? "undefined": (0, E.
default)(a)) ? void console.error("iconIndex属性不合法") : (this._stylePromise.abort(), this._stylePromise = null, void this.loadStyleConfig(t).then(function(t) {
var n = t.styleId,
i = t.iconInfo;
e.resetStyle(n, i)
})) : void console.error("setMapStyleConfig中style属性不合法")
}
},
{
key: "resetStyle",
value: function(t, e) {
var n = this,
i = []; (0, S.
default)(this._sources).forEach(function(t) {
n._sources[t].id && n._sources[t].id.indexOf("vector_source") >= 0 && i.push(n._sources[t])
}),
i.length > 0 && i.forEach(function(n) {
n.setStyleAndIconInfo(t, e),
n.clearTiles()
}),
this._fire("mapstyle_changed", {
styleId: t
})
}
},
{
key: "initBaseLayer",
value: function(t) {
var e = this;
if (this._baseMap || t) {
if (t || (t = this._baseMap), Array.isArray(t)) return void t.forEach(function(t) {
e.initBaseLayer(t)
});
switch (t.type) {
case dt.MAP_TYPE.handdraw:
(0, j.createHanddrawLayer)(this.map);
break;
case dt.MAP_TYPE.satellite:
(0, j.createSatelliteLayer)(this.map, {
features: t.features
});
break;
case dt.MAP_TYPE.traffic:
(0, j.createTrafficLayer)(this.map, t);
break;
case dt.MAP_TYPE.vector:
default:
(0, j.createVectorLayer)(this.map, {
features: t.features
})
}
}
}
},
{
key: "resetBaseLayer",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : dt.DEFAULT_BASEMAP.vector;
if (! (0, ht.isVerifiedBaseMap)(e)) return console.error("setBaseMap传入的参数不合法", e),
this;
var n = Array.isArray(e) ? e.map(function(t) {
return t.type
}) : [e.type];
null === this._baseMap && (this._baseMap = {});
var i = (0, ht.compareBaseMap)(this._baseMap, e),
o = i ? (0, x.
default)(i.increase):
[],
r = i ? (0, x.
default)(i.decrease):
[];
r.length > 0 && this._handleDecreaseBaseMap(r),
o.length > 0 && this._handleIncreaseBaseMap(o, e);
var a = (0, ht.formatBaseMap)(e).vector;
a && 0 === a.length ? this._setSourceFrozen("vector_source", !0) : this._setSourceFrozen("vector_source", !1);
var s = (0, g.
default)(dt.SATELLITE_LAYER_ID),
u = void 0,
c = 0;
return n.forEach(function(n) {
switch (n) {
case dt.MAP_TYPE.handdraw:
u = t.getLayer(dt.MAP_TYPE.handdraw),
u && u.setZIndex(c += 1);
break;
case dt.MAP_TYPE.satellite:
s.forEach(function(e) { (u = t.getLayer(e)) && u.setZIndex(c += 1)
});
break;
case dt.MAP_TYPE.traffic:
(0, g.
default)(dt.TRAFFIC_LAYER_ID).forEach(function(n) {
u = t.getLayer(n);
var i = l(e, dt.MAP_TYPE.traffic);
u && (u._updateFilter(i && i.filter), i && i.hasOwnProperty("opacity") && u.setOpacity(i.opacity), u.setZIndex(c += 1))
});
break;
case dt.MAP_TYPE.vector:
u = t.getLayer(dt.VECTOR_LAYER_ID.base),
u && u.setZIndex(c += 1)
}
}),
this._baseMap = e,
this
}
},
{
key: "_handleIncreaseBaseMap",
value: function(t) {
var e = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
i = [],
o = !0,
r = !1,
a = void 0;
try {
for (var s, u = (0, _.
default)(t); ! (o = (s = u.next()).done); o = !0) !
function() {
var t = (0, v.
default)(s.value, 2),
o = t[0],
r = t[1],
a = [];
switch (o) {
case dt.MAP_TYPE.traffic:
if (r.forEach(function(t) {
e._layers[dt.TRAFFIC_LAYER_ID[t]] ? (e._setLayerVisible(dt.TRAFFIC_LAYER_ID[t], !0), e._setSourceFrozen(dt.TRAFFIC_LAYER_ID[t], !1)) : a.push(t)
}), a.length > 0) {
var u = l(n, dt.MAP_TYPE.traffic);
i.push(u)
}
break;
case dt.MAP_TYPE.satellite:
var c = o === dt.MAP_TYPE.satellite ? dt.SATELLITE_LAYER_ID: dt.TRAFFIC_LAYER_ID;
r.forEach(function(t) {
e._layers[c[t]] ? (e._setLayerVisible(c[t], !0), e._setSourceFrozen(c[t], !1)) : a.push(t)
}),
a.length > 0 && i.push({
type: o,
features: a
});
break;
case dt.MAP_TYPE.handdraw:
e._layers[o] ? (e._setLayerVisible(dt.MAP_TYPE.handdraw, !0), e._setSourceFrozen(dt.MAP_TYPE.handdraw, !1)) : i.push({
type: o
});
break;
case dt.MAP_TYPE.vector:
r.forEach(function(t) {
switch (t) {
case ft.BASE_LAYER_TYPE.base:
e._layers[dt.VECTOR_LAYER_ID.base] ? e._setLayerVisible(dt.VECTOR_LAYER_ID.base, !0) : a.push(t);
break;
case ft.BASE_LAYER_TYPE.arrow:
e._layers[dt.VECTOR_LAYER_ID.arrow] ? e._setLayerVisible(dt.VECTOR_LAYER_ID.arrow, !0) : a.push(t);
break;
case ft.BASE_LAYER_TYPE.building2d:
case ft.BASE_LAYER_TYPE.building3d:
a.push(t);
break;
case ft.BASE_LAYER_TYPE.point:
case ft.BASE_LAYER_TYPE.label:
var n = e._layers[dt.VECTOR_LAYER_ID.poi],
i = t === ft.BASE_LAYER_TYPE.point ? ft.BASE_LAYER_TYPE.label: ft.BASE_LAYER_TYPE.point;
if (n) {
var o = t + "_" + n.id,
r = i + "_" + n.id;
n.hasChild(o) ? (n.getChild(o).setVisible(!0), e.map.drawManager.updatePlace()) : (n.hasChild(r) && !1 !== n.getChild(r).visible && a.push(i), n.setMap(null), a.push(t))
} else a.push(t)
}
}),
a.length > 0 && i.push({
type: o,
features: a
})
}
} ()
} catch(t) {
r = !0,
a = t
} finally {
try { ! o && u.
return && u.
return ()
} finally {
if (r) throw a
}
}
this.initBaseLayer(i)
}
},
{
key: "_handleDecreaseBaseMap",
value: function(t) {
var e = this,
n = !0,
i = !1,
o = void 0;
try {
for (var r, a = (0, _.
default)(t); ! (n = (r = a.next()).done); n = !0) {
var s = (0, v.
default)(r.value, 2),
l = s[0],
u = s[1];
switch (l) {
case dt.MAP_TYPE.traffic:
case dt.MAP_TYPE.satellite:
if ("break" ===
function() {
var t = l === dt.MAP_TYPE.satellite ? dt.SATELLITE_LAYER_ID: dt.TRAFFIC_LAYER_ID,
n = (0, S.
default)(t);
return u.forEach(function(i) {
n.includes(i) && (e._setLayerVisible(t[i], !1), e._setSourceFrozen(t[i], !0))
}),
"break"
} ()) break;
case dt.MAP_TYPE.handdraw:
this._setLayerVisible(dt.MAP_TYPE.handdraw, !1),
this._setSourceFrozen(dt.MAP_TYPE.handdraw, !0);
break;
case dt.MAP_TYPE.vector:
u.forEach(function(t) {
switch (t) {
case ft.BASE_LAYER_TYPE.base:
e._setLayerVisible(dt.VECTOR_LAYER_ID.base, !1);
break;
case ft.BASE_LAYER_TYPE.arrow:
e._setLayerVisible(dt.VECTOR_LAYER_ID.arrow, !1);
break;
case ft.BASE_LAYER_TYPE.building2d:
case ft.BASE_LAYER_TYPE.building3d:
var n = e._layers[dt.VECTOR_LAYER_ID.building];
n && n.setMap(null);
break;
case ft.BASE_LAYER_TYPE.point:
case ft.BASE_LAYER_TYPE.label:
var i = e._layers[dt.VECTOR_LAYER_ID.poi];
i && i.hasChild(t + "_" + i.id) && i.getChild(t + "_" + i.id).setVisible(!1)
}
})
}
}
} catch(t) {
i = !0,
o = t
} finally {
try { ! n && a.
return && a.
return ()
} finally {
if (i) throw o
}
}
}
},
{
key: "_setLayerVisible",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],
n = this._layers[t];
return n && n.setVisible(e),
this
}
},
{
key: "_setSourceFrozen",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],
n = this.getSource(t);
return n && (e ? n.freeze() : n.unfreeze()),
this
}
},
{
key: "getFinalUsedMapStyleId",
value: function() {
return this._finalUsedMapStyleId
}
},
{
key: "getSource",
value: function(t) {
return this._sources[t]
}
},
{
key: "addSource",
value: function(t, e) {
var n = o(t, e, this.dispatcher);
this._sources[t] = n,
n._setEventedParent(this,
function() {
return {
source: n,
sourceId: t
}
}),
n.onAdd(this.map)
}
},
{
key: "removeSource",
value: function(t) {
if (this._sources[t]) {
var e = this._sources[t];
delete this._sources[t],
e._setEventedParent(null),
e.clear(),
e.onRemove && e.onRemove(this.map)
}
}
},
{
key: "addIndoorIndexSource",
value: function(t) {
return new rt.
default(t, this.dispatcher)
}
},
{
key: "removeLayer",
value: function(t) {
var e = this._layers[t];
if (!e) return void this._fire("error", {
error: new Error("The layer '" + t + "' does not exist in map")
});
e._setEventedParent(null),
delete this._layers[t]
}
},
{
key: "getLayer",
value: function(t) {
return this._layers[t]
}
},
{
key: "findLayer",
value: function(t) {
return (0, g.
default)(this._layers).find(t)
}
},
{
key: "addLayer",
value: function(t) {
this._layers[t.id] = t,
t._setEventedParent(this, {
layer: {
id: t.id
}
})
}
},
{
key: "_serializeLayers",
value: function() {
var t = [],
e = (0, S.
default)(this._layers),
n = !0,
i = !1,
o = void 0;
try {
for (var r, a = (0, _.
default)(e); ! (n = (r = a.next()).done); n = !0) {
var s = r.value,
l = this._layers[s];
t.push(l)
}
} catch(t) {
i = !0,
o = t
} finally {
try { ! n && a.
return && a.
return ()
} finally {
if (i) throw o
}
}
return t.length > 1 && t.sort(function(t, e) {
return t.rank - e.rank
}),
t
}
},
{
key: "getDrawLayers",
value: function() {
return (0, g.
default)(this._layers).reduce(function(t, e) {
return t.concat(e.flat())
},
[])
}
},
{
key: "getDrawSource",
value: function(t) {
var e = this,
n = {};
return Ct.forIn(this._layers,
function(i, o) {
var r = o.sourceId || o.layerSourceId,
a = e.map.getSource(r);
a && t >= o.minZoom && t <= o.maxZoom && (n[r] = a)
}),
n
}
},
{
key: "_updateSource",
value: function(t, e, n) {
var i = this.getDrawSource(t.zoom);
Ct.forIn(i,
function(i, o) {
o && !0 !== o.isFrozen && o.update(t, e, n)
})
}
},
{
key: "updateIndoorData",
value: function(t, e) {
Ct.forIn(this._sources,
function(n, i) {
i.updateIndoorData && i.updateIndoorData(t, e)
})
}
},
{
key: "moveLayer",
value: function(t, e) {
var n = (0, g.
default)(Pt.LAYER_LEVEL);
if (!n.includes(e)) return void new It.EnumError("level", n, e).error();
var i = this._layers[t] || this._visualPlugins[t];
if (i) {
if (i.setLevel(e), (0, kt.hasBorderLayer)(i.type)) {
var o = t + "_border";
this.moveLayer(o, e)
}
} else console.log("moveLayer: 当前地图不存在此图层 " + t)
}
},
{
key: "update",
value: function() {}
},
{
key: "addVisualPlugin",
value: function(t) {
var e = t.id;
if (this._visualPlugins[e]) return void console.warn("The visualPlugin '" + e + "' already exists in map");
this._visualPlugins[e] = t
}
},
{
key: "removeVisualPlugin",
value: function(t) {
if (!this._visualPlugins[t]) return void console.warn("The visualPlugin '" + t + "' does not exist in map");
delete this._visualPlugins[t]
}
},
{
key: "getPlugins",
value: function() {
return (0, g.
default)(this._visualPlugins)
}
},
{
key: "_sortPlugins",
value: function(t, e) {
var n = (0, g.
default)(t);
return Ct.bubbleSort(n, e),
n
}
},
{
key: "uploadTileImage",
value: function(t, e, n) {
var i = this,
o = e.tileId,
l = r(e.imgBase64, e.extImgBase64),
u = l.imgBase64List,
c = l.extOffset;
if (o && u.length) {
this.map.renderEngine.painters.symbol.preDraw({
iconsLoader: this.iconsLoader
});
var f = this.map.renderEngine.textCache;
if (f && !f.tiles[o]) {
var d = new St.ScheduleTaskNode;
d.tileId = o;
var h = function() {
if (f.tiles[o]) return n(null, null),
null;
var t = null,
r = !1,
l = !1,
d = null,
h = [];
if ((0, At.isInterceptForBase64)(i.map.getZoom(), e.zoom, e.maxDataZoom)) return r = !0,
l = !0,
n(null, null),
null;
var v = u.map(function(t, e) {
return a(t, {
id: o + "_" + e
})
});
return L.
default.all(v).then(function(e) {
var n = s(e),
i = n.canvas,
o = n.yOffset;
t = i,
h = o,
r = !0,
d && d()
}).
catch(function(t) {
console.error("img upload failed ", t)
}),
d = function() {
if (r && !l) return (0, At.isInterceptForGPU)(i.map && i.map.getZoom(), e.zoom, e.maxDataZoom) ? (l = !0, n(null, null), null) : t ? (f.addImage(o, t,
function() {
t = null,
f.tiles[o].yOffsetList = h,
l = !0,
n(null, {
yOffsetList: h,
extOffset: c
})
}), d) : (n(null, {
yOffsetList: h,
extOffset: c
}), null);
if (l) {
if ((0, At.isInterceptForTileData)(i.map.getZoom(), e.zoom, e.maxDataZoom)) return null;
var a = i.getSource(e.sourceId),
s = a && a.getDrawItems(),
u = s && s[o],
v = u && u.getData();
return v ? (v[ft.BASE_LAYER_TYPE.text] || (v[ft.BASE_LAYER_TYPE.text] = {},
v[ft.BASE_LAYER_TYPE.text][o] = t && t.toDataURL() || ""), null) : d
}
return d
},
d.tileId = o,
null
};
h.tileId = o,
d.setCallback(h),
d.addToQueue(this.map.fpsManager.scheduleTaskQueue)
} else f && n(null, {
yOffsetList: f.tiles[o].yOffsetList,
extOffset: c
})
} else n(null, null)
}
},
{
key: "addGlyphs",
value: function(t, e, n, i) {
if (e.glyphs && e.glyphs.length > 0) {
var o = this.map.renderEngine.glyphManager.generateAtlas(e.glyphs, i || {});
n(null, {
mapping: (0, d.
default)(o.mapping)
})
} else n(null, {
mapping: "{}"
})
}
},
{
key: "addMarkers",
value: function(t, e, n) {
e.markerSrcs && e.markerSrcs.length > 0 ? this.map.renderEngine.markerManager.generateAtlas(e.markerSrcs, e.glyphs).then(function(t) {
n(null, {
mapping: (0, d.
default)(t)
})
}).
catch(function(t) {
console.error(t),
n(null, {
mapping: "{}"
})
}) : n(null, {
mapping: "{}"
})
}
},
{
key: "addBillboards",
value: function(t, e, n) {
if (e.markerSrcs && e.markerSrcs.length > 0 || e.tileId) {
var i = e.markerSrcs,
o = null;
e.tileId && (o = JSON.parse(e.billboardData), i = o.map(function(t) {
return t.text
})),
this.map.renderEngine.markerManager.generateAtlas(i, null, {
tileId: e.tileId,
tileImage64: e.tileImage64,
billboardData: o
}).then(function(t) {
n(null, {
mapping: (0, d.
default)(t)
})
}).
catch(function(t) {
console.error(t),
n(null, {
mapping: "{}"
})
})
} else n(null, {
mapping: "{}"
})
}
},
{
key: "uploadTileTexture",
value: function(t, e, n) {
var i = this;
if (e.billboard || e.glyphs) {
var o = new L.
default(function(n) {
i.addBillboards(t, e.billboard,
function(t, e) {
n(e.mapping)
})
}),
r = {
glyphs: []
},
a = {
glyphs: []
};
e.glyphs && e.glyphs.forEach(function(t) {
"bold" === t.font_weight ? a.glyphs.push(t.text) : r.glyphs.push(t.text)
});
var s = new L.
default(function(e) {
i.addGlyphs(t, r,
function(t, n) {
e(n.mapping)
},
{
fontWeight: "normal"
})
}),
l = new L.
default(function(e) {
i.addGlyphs(t, a,
function(t, n) {
e(n.mapping)
},
{
fontWeight: "bold"
})
});
L.
default.all([o, s, l]).then(function(t) {
n(null, {
billboardMapping: t[0],
glyphMapping: t.slice(1)
})
})
} else n(null, {
billboardMapping: "{}",
glyphMapping: "{}"
})
}
},
{
key: "getIndoorGlyphInfo",
value: function(t, e, n) {
var i = this;
if (e.pointInfoSet || e.glyphList || e.iconSrcList) {
var o = new L.
default(function(n) {
i.addMarkers(t, {
markerSrcs: e.iconSrcList
},
function(t, e) {
n(e.mapping)
})
}),
r = new L.
default(function(n) {
i.addGlyphs(t, {
glyphs: e.glyphList
},
function(t, e) {
n(e.mapping)
})
}),
a = JSON.parse(e.indoorStyle),
s = new L.
default(function(t) {
var n = document.createElement("canvas"),
i = n.getContext("2d"),
o = JSON.parse(e.pointInfoSet),
r = {}; (0, S.
default)(o).forEach(function(t) {
var e = parseInt(t.replace("zoom", ""), 10);
r[e] = o[t].filter(function(t) {
return !! t
}).map(function(t) {
return t.map(function(t) {
return (0, Tt.getPoiRect)(t, e, i, a)
})
})
}),
t((0, d.
default)(r))
});
L.
default.all([o, r, s]).then(function(t) {
n(null, {
iconMapping: t[0],
glyphMapping: t[1],
poiMapping: t[2]
})
})
} else n(null, {
iconMapping: "{}",
glyphMapping: "{}",
poiMapping: "{}"
})
}
},
{
key: "destroy",
value: function() {
var t = this; (0, S.
default)(this._visualPlugins).forEach(function(e) {
t._visualPlugins[e].remove()
}),
this._visualPlugins = null,
(0, g.
default)(this._layers).forEach(function(t) {
t.setMap(null)
}),
this._layers = null,
(0, S.
default)(this._sources).forEach(function(e) {
t.removeSource(e)
}),
this._sources = null,
this._stylePromise = null,
this.dispatcher.destroy(),
this.iconsLoader = null,
this._mapStyleId = null,
this._finalUsedMapStyleId = null,
this._lastStyleId = null,
this._baseMap = null,
this._clearAllListeners(),
this.map = null
}
},
{
key: "hasSatellite",
value: function() {
var t = !1;
return Array.isArray(this._baseMap) ? this._baseMap.forEach(function(e) {
u(e) && (t = !0)
}) : t = u(this._baseMap),
t
}
},
{
key: "baseMap",
get: function() {
return this._baseMap
},
set: function(t) {
this.resetBaseLayer(t)
}
}]),
e
} (Lt);
t.exports = Bt
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(485),
m = i(_),
g = n(66),
y = n(29),
x = n(209),
b = i(x),
S = n(43),
w = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, s.
default)(this, e),
t.type = g.RENDER_LAYER_TYPE.canvasGround;
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return (0, S.statCn)("CanvasGroundLayer"),
n
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "_initialize",
value: function(t) { (0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "_initialize", this).call(this, t),
t.canvas || new y.BaseTypeError("CanvasGroundLayer.canvas", "HTMLCanvasElement", t.canvas).error(),
t.bounds instanceof b.
default || new y.BaseTypeError("CanvasGroundLayer.bounds", "LatLngBounds", t.bounds).error(),
this._mediaSource = t.canvas,
this._bounds = t.bounds
}
},
{
key: "setCanvas",
value: function(t) {
t || new y.BaseTypeError("CanvasGroundLayer.canvas", "HTMLCanvasElement", t).error(),
this._mediaSource !== t && this._updateMediaSource(t)
}
},
{
key: "refresh",
value: function() {
this._resetData()
}
}]),
e
} (m.
default);
e.
default = w
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o() {
return {
state:
0,
transition: function(t) {
var e = "overlay" === t;
switch (this.state) {
case 0:
this.state = e ? 1 : 0;
break;
case 1:
this.state = e ? 1 : 2;
break;
case 2:
this.state = e ? 1 : 0
}
}
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(82),
a = i(r),
s = n(16),
l = i(s),
u = n(3),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(5),
_ = i(p),
m = n(35),
g = i(m),
y = n(4),
x = i(y),
b = n(299),
S = i(b),
w = n(90),
E = n(66),
T = n(41),
A = i(T),
P = n(29),
I = n(43),
k = n(28),
L = i(k),
M = n(468),
C = i(M),
R = A.
default.isNumber,
B = function(t) {
function e(t) { (0, d.
default)(this, e);
var n = (0, _.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t));
return (0, I.statCn)("GrayTileLayer"),
n
}
return (0, x.
default)(e, t),
(0, v.
default)(e, [{
key: "_initialize",
value: function(t) {
var n = (0, l.
default)({},
t),
i = n.colorMap;
this.getTileUrl = t.getTileUrl,
i && i instanceof C.
default || (new P.BaseTypeError("WeatherLayer.colorMap", "GradientColor", i).error(), n.colorMap = null),
this.colorMap = n.colorMap || null,
this.rgbaFormatter = n.rgbaFormatter || "color.r",
this.type = E.RENDER_LAYER_TYPE.grayTile,
this.grayType = n.weatherType || E.RENDER_LAYER_TYPE.grayTile,
this._bubbleHandler = [],
this._mousemoveFSM = o(),
(0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "_initialize", this).call(this, t)
}
},
{
key: "setZIndex",
value: function(t) {
return R(t) || new P.BaseTypeError("GrayTileLayer.zIndex", "number", t).error(),
(0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "setZIndex", this).call(this, t)
}
},
{
key: "_addSource",
value: function() {
this._bindBubbleHandler(),
this.map && !this.map.getSource(this.sourceId) && (this.map.addSource(this.sourceId, {
type: w.SOURCE_TYPE.imageTile,
tileSize: this.tileSize,
data: this.getTileUrl,
colorMap: this.colorMap,
rgbaFormatter: this.rgbaFormatter,
minZoom: this.minDataZoom,
maxZoom: this.maxDataZoom
}), this._fire("layer", {}))
}
},
{
key: "_removeSource",
value: function() { (0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "_removeSource", this).call(this),
this._removeBubbleHandler()
}
},
{
key: "_bindBubbleHandler",
value: function() {
var t = this;
this._bubbleHandler && (this._bubbleHandler.push(L.
default.on(this.map._bubbleMiddleware, "mousemove",
function() {
t._mousemoveFSM.transition.call(t._mousemoveFSM, "map")
})), this._bubbleHandler.push(L.
default.on(this.map._bubbleMiddleware, "action",
function(e) {
e && e.layerId === t.id && ("click" === e.eventType && t.emit("click", (0, l.
default)({},
e.mapEvent, {
value: t.getValueFromColor(e.pickColor),
rgba: (0, a.
default)(e.pickColor),
type: "click",
target: t
})), "mousemove" === e.eventType && (t._mousemoveFSM.transition.call(t._mousemoveFSM, "overlay"), t._emitPixelEvent("hover", t.getValueFromColor(e.pickColor), e.pickColor, e.mapEvent)))
})), this._bubbleHandler.push(L.
default.on(this.map, "destroy",
function() {
t.setMap(null)
})))
}
},
{
key: "_removeBubbleHandler",
value: function() {
this._bubbleHandler.forEach(function(t) {
t && t.remove && t.remove()
})
}
},
{
key: "_emitPixelEvent",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : null,
n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : [0, 0, 0, 1],
i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {};
this.emit(t, (0, l.
default)({},
i, {
value: e,
rgba: (0, a.
default)(n),
type: t,
target: this
}))
}
},
{
key: "getValueFromColor",
value: function(t) {
return Number(t[0] || 0).toFixed(2)
}
}]),
e
} (S.
default);
e.
default = B
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
if (R(t)) {
var e = t.id,
n = void 0 === e ? (0, b.uniqueId)() : e,
i = t.paths;
return t.id = n,
C(i) ? i.flat(3).every(function(t, e) {
var n = B(t);
return n || new P.ClassTypeError("HighlightGeometry.path[" + e + "]", "LatLng", t).error(),
n
}) : (new P.BaseTypeError("HighlightGeometry.paths", "Array", i).error(), !1)
}
return new P.BaseTypeError("HighlightGeometry", "Object", t).error(),
!1
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(24),
a = i(r),
s = n(148),
l = i(s),
u = n(3),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(5),
_ = i(p),
m = n(4),
g = i(m),
y = n(257),
x = i(y),
b = n(10),
S = n(90),
w = n(220),
E = n(66),
T = n(41),
A = i(T),
P = n(29),
I = n(227),
k = i(I),
L = n(143),
M = n(218),
C = A.
default.isArray,
R = A.
default.isObject,
B = A.
default.isValidLatLng,
N = new M.ExtrudablePolygonStyle({
color: "#ffffff",
showBorder: !1,
extrudeHeight: 1e3
}),
O = function(t) {
function e(t) {
return (0, d.
default)(this, e),
t.type = E.RENDER_LAYER_TYPE.highlight,
t.level = L.LAYER_LEVEL.POST_PROCESS,
(0, _.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t))
}
return (0, g.
default)(e, t),
(0, v.
default)(e, [{
key: "_initialize",
value: function(t) {
var e = t.geometries,
n = void 0 === e ? [] : e,
i = new l.
default;
this.sourceId = this.id,
this.maskGeoMap = i,
this.highlightColor = new k.
default("rgba(0, 0, 0, 0)").toArray(),
this.shadeColor = new k.
default("rgba(0, 0, 0, 0.4)").toArray(),
n && n.lenght > 0 && this.add(n)
}
},
{
key: "_addSource",
value: function() {
this.map && !this.map.getSource(this.sourceId) && this.map.addSource(this.sourceId, {
type: S.SOURCE_TYPE.geojson,
data: {
type: w.GEOMETRY_TYPES.HIGHLIGHT,
geometries: [].concat((0, a.
default)(this.maskGeoMap.values())),
styles: {
default:
N,
highlightColor: this.highlightColor,
shadeColor: this.shadeColor
}
}
})
}
},
{
key: "_removeSource",
value: function() {
this.map && this.map.removeSource(this.sourceId)
}
},
{
key: "add",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [];
return C(e) ? (e.forEach(function(e) {
if (o(e)) {
var n = e.id;
t.maskGeoMap.has(n) ? console.warn("HighlightLayer.add: 已存在id为" + n + "的MaskGeometry对象。") : t.maskGeoMap.set(n, e)
}
}), this._updateData(), this) : (new P.BaseTypeError("HighlightLayer.add()传入参数", "Array", e).error(), this)
}
},
{
key: "get",
value: function(t) {
return this.maskGeoMap.get(t)
}
},
{
key: "getAll",
value: function() {
return [].concat((0, a.
default)(this.maskGeoMap.values()))
}
},
{
key: "remove",
value: function(t) {
if (!C(t)) return new P.BaseTypeError("HighlightLayer.remove()传入参数", "Array", t).error(),
this;
var e = this.maskGeoMap;
return t.forEach(function(t) {
e.has(t) ? e.delete(t) : console.warn("HighlightLayer.remove: 不存在id为" + t + "的MaskGeometry对象。")
}),
this._updateData(),
this
}
},
{
key: "clear",
value: function() {
return this.maskGeoMap.clear(),
this._updateData(),
this
}
},
{
key: "update",
value: function(t, e) {
var n = e.highlightColor,
i = void 0 === n ? "rgba(0, 0, 0, 0)": n,
r = e.shadeColor,
a = void 0 === r ? "rgba(0, 0, 0, 0.4)": r;
if (!C(t)) return new P.BaseTypeError("HighlightLayer.update()传入参数", "Array", t).error(),
this;
var s = this.maskGeoMap;
return t.forEach(function(t) {
o(t) && (t.styleId = "default", s.set(t.id, t))
}),
this.highlightColor = new k.
default(i).toArray(),
this.shadeColor = new k.
default(a).toArray(),
this._updateData(),
this
}
},
{
key: "_updateData",
value: function() {
this.map && this.map.getSource(this.sourceId).setData({
type: w.GEOMETRY_TYPES.HIGHLIGHT,
geometries: [].concat((0, a.
default)(this.maskGeoMap.values())),
styles: {
default:
N,
highlightColor: this.highlightColor,
shadeColor: this.shadeColor
}
})
}
}]),
e
} (x.
default);
e.
default = O
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(485),
m = i(_),
g = n(66),
y = n(29),
x = n(209),
b = i(x),
S = n(43),
w = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, s.
default)(this, e),
t.type = g.RENDER_LAYER_TYPE.imageGround;
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return (0, S.statCn)("ImageGroundLayer"),
n
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "_initialize",
value: function(t) {
var n = this; (0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "_initialize", this).call(this, t),
t.src || new y.BaseTypeError("ImageGroundLayer.src", "URL", t.src).error(),
t.bounds instanceof b.
default || new y.BaseTypeError("ImageGroundLayer.bounds", "LatLngBounds", t.bounds).error();
var i = new Image;
this._image = i,
i.crossOrigin = "anonymous",
i.onload = function() {
n._mediaSource = i,
n._bounds = t.bounds;
var e = n.map;
e && n.setMap(null),
n.setMap(e),
n.emit("image_loaded")
},
i.onerror = function() {
console.error("图片资源获取失败: " + t.src)
},
i.src = t.src
}
},
{
key: "setSrc",
value: function(t) {
var e = this;
t || new y.BaseTypeError("ImageGroundLayer.src", "URL", t).error(),
this._image.src !== t && (this._image.onload = function() {
e._updateMediaSource(e._image),
e.emit("image_loaded")
},
this._image.src = t)
}
}]),
e
} (m.
default);
e.
default = w
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(257),
m = i(_),
g = n(90),
y = n(143),
x = n(66),
b = function(t) {
function e(t) {
return (0, s.
default)(this, e),
t.level = t.type !== x.RENDER_LAYER_TYPE.indoorPoi ? y.LAYER_LEVEL.BUILDING: y.LAYER_LEVEL.OVERLAY_NAA,
t.zIndex = 0,
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "_initialize",
value: function(t) { (0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "_initialize", this).call(this, t),
this.buildingData = t.buildingData,
this.filter = t.type,
this.sourceId || (this.sourceId = this.id)
}
},
{
key: "_addSource",
value: function() {
this.map && !this.map.getSource(this.sourceId) && this.map.addSource(this.sourceId, {
type: g.SOURCE_TYPE.indoor,
data: this.buildingData
})
}
},
{
key: "_removeSource",
value: function() {
this.map && this.map.removeSource(this.sourceId)
}
}]),
e
} (m.
default);
e.
default = b
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(257),
m = i(_),
g = n(90),
y = function(t) {
function e(t) {
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t))
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "_initialize",
value: function(t) { (0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "_initialize", this).call(this, t),
this.sourceData = t.sourceData,
this.sourceId = this.id,
this.minimumClusterSize = t.minimumClusterSize,
this.gridSize = t.gridSize,
this.averageCenter = t.averageCenter
}
},
{
key: "_addSource",
value: function() {
this.map && !this.map.getSource(this.sourceId) && this.map.addSource(this.sourceId, {
type: g.SOURCE_TYPE.geoTask,
data: this.sourceData,
workerOptions: {
gridSize: this.gridSize,
minimumClusterSize: this.minimumClusterSize,
averageCenter: this.averageCenter
},
maxZoom: this.maxZoom
})
}
},
{
key: "_removeSource",
value: function() {
this.map && this.map.removeSource(this.sourceId)
}
}]),
e
} (m.
default);
e.
default = y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(17),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(382),
y = i(g),
x = n(90),
b = n(66),
S = n(41),
w = i(S),
E = n(29),
T = n(227),
A = i(T),
P = n(43),
I = n(23),
k = n(281),
L = w.
default.isNumber,
M = w.
default.isArray,
C = ["#13b06a", "#e9ab1d", "#e05649", "#6c120a"],
R = ["#6CC356", "#FAB835", "#F94954", "#B90149"],
B = [80, 30, 10, 5],
N = function(t) {
function e(t) { (0, u.
default)(this, e),
t.type = t.type || b.RENDER_LAYER_TYPE.trafficBase;
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return (0, P.statCn)(t.type === b.RENDER_LAYER_TYPE.trafficBase ? "TrafficBaseTileLayer": "TrafficFlowTileLayer"),
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "_initialize",
value: function(t) { (0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "_initialize", this).call(this, t),
this.sourceId = this.sourceId || this.id,
this.baseColor = R.map(function(t) {
return new A.
default(t).toUpArray()
}),
this.setColor(t.flowColor),
this.setSpeed(t.flowSpeed),
this.setFilter(t.filter)
}
},
{
key: "setZIndex",
value: function(t) {
return L(t) || new E.BaseTypeError("TrafficTileLayer.zIndex", "number", t).error(),
(0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "setZIndex", this).call(this, t)
}
},
{
key: "setColor",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : C;
M(t) || (new E.BaseTypeError("flowColor", "Array", t).error(), t = C),
4 !== t.length && (console.error("flowColor 格式错误需传入长度为4的数组"), t = C),
this.flowColor = t.map(function(t) {
return new A.
default(t).toUpArray()
})
}
},
{
key: "setSpeed",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : B;
M(t) || (new E.BaseTypeError("flowSpeed", "Array", t).error(), t = B),
4 !== t.length && (console.error("flowSpeed 格式错误需传入长度为4的数组"), t = B),
this.flowSpeed = t
}
},
{
key: "setFilter",
value: function(t) {
var e = [];
M(t) ? t.forEach(function(t) { (0, r.
default)(k.TRAFFIC_ROAD_TYPE).includes(t) ? e.push(t) : new E.EnumError("filter", (0, r.
default)(k.TRAFFIC_ROAD_TYPE), t).error()
}) : (new E.BaseTypeError("TrafficTileLayer.filter", "array", t).error(), e = k.DEFAULT_BASEMAP.traffic.filter.slice()),
this.trafficFilter = e.slice()
}
},
{
key: "_addSource",
value: function() {
this.map && this.map.keepHighFps(!0),
this.map && !this.map.getSource(this.sourceId) && (this.map.addSource(this.sourceId, {
type: x.SOURCE_TYPE.traffic,
tileSize: this.tileSize,
data: function(t, e, n) {
var i = (t + e) % I.trafficSrc.length;
return I.trafficSrc[i] + "?x=" + t + "&y=" + (Math.pow(2, n) - 1 - e) + "&z=" + n + "&type=jsonp&time=" + (new Date).getTime()
},
minZoom: this.minDataZoom,
maxZoom: this.maxDataZoom,
baseColor: this.baseColor,
opacity: this.opacity,
flowColor: this.flowColor,
flowSpeed: this.flowSpeed,
filter: this.trafficFilter
}), this._fire("layer", {}))
}
},
{
key: "_updateFilter",
value: function(t) {
if (t !== this.trafficFilter && (this.setFilter(t || k.DEFAULT_BASEMAP.traffic.filter), this.map)) {
var e = this.map.getSource(this.sourceId);
if (e && (e.setFilter(this.trafficFilter), e.reload()), this.type === b.RENDER_LAYER_TYPE.trafficFlow) {
var n = this.map.renderEngine.getImageCache(this.id);
n && n.clear()
} else {
this.map.renderEngine.painters.trafficBase.clearStore()
}
this._fire("layer", {})
}
}
},
{
key: "_removeSource",
value: function() {
this.map && this.map.keepHighFps(!1),
this.map && this.map.removeSource(this.sourceId),
this._fire("source_removed", {})
}
}]),
e
} (y.
default);
e.
default = N
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = t.params;
e.hasOwnProperty("version") || (e.version = "1.3.0"),
e.hasOwnProperty("CRS") || (e.CRS = "EPSG:3857");
var n = "";
for (var i in e) n = n + "&" + i + "=" + e[i];
return function(e, i, o) {
var r = new g(0, 0),
a = new g(0, 0),
s = Math.pow(2, o - 1);
return r.x = (e / s - 1) * x,
r.y = (1 - (i + 1) / s) * x,
a.x = ((e + 1) / s - 1) * x,
a.y = (1 - i / s) * x,
t.url + "?REQUEST=GetMap&SERVICE=WMS" + n + "&WIDTH=256&HEIGHT=256&FORMAT=image/png&TRANSPARENT=true&BBOX=" + r.x + "," + r.y + "," + a.x + "," + a.y
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(3),
a = i(r),
s = n(0),
l = i(s),
u = n(5),
c = i(u),
f = n(4),
d = i(f),
h = n(299),
v = i(h),
p = n(247),
_ = i(p),
m = n(43),
g = n(74),
y = _.
default[1],
x = y / 2,
b = function(t) {
function e(t) { (0, l.
default)(this, e),
t.getTileUrl = o(t);
var n = (0, c.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, t));
return (0, m.statCn)("WMSLayer"),
n
}
return (0, d.
default)(e, t),
e
} (v.
default);
e.
default = b
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = t.params,
n = "";
e.hasOwnProperty("version") || (e.version = "1.0.0");
for (var i in e) n = n + "&" + i + "=" + e[i];
return function(i, o, r) {
var a = "geoserver" === t.service ? e.tileMatrixSet + ":" + r: r;
return t.url + "?Request=GetTile&Service=WMTS" + n + "&Format=image/png&TileMatrix=" + a + "&TileRow=" + o + "&TileCol=" + i
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(3),
a = i(r),
s = n(0),
l = i(s),
u = n(5),
c = i(u),
f = n(4),
d = i(f),
h = n(299),
v = i(h),
p = n(43),
_ = function(t) {
function e(t) { (0, l.
default)(this, e),
t.getTileUrl = o(t);
var n = (0, c.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, t));
return (0, p.statCn)("WMTSLayer"),
n
}
return (0, d.
default)(e, t),
e
} (v.
default);
e.
default = _
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(10),
p = n(106),
_ = i(p),
m = n(384),
g = i(m),
y = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : (0, v.uniqueId)(),
n = arguments[1],
i = arguments[2]; (0, s.
default)(this, e);
var o = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this)),
a = n.cacheSize,
l = void 0 === a ? 0 : a;
return o.id = t,
o.dispatcher = i,
o.cache = new g.
default(l, o.onCacheRemove.bind(o)),
o.isFrozen = !1,
o.updateUniqueId(),
o
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "updateUniqueId",
value: function() {
var t = this.map && this.map.id || (0, v.uniqueId)();
this.uniqueId = t + "_" + this.id
}
},
{
key: "getUniqueId",
value: function() {
return this.uniqueId
}
},
{
key: "update",
value: function() {
this.isFrozen || this.onUpdate.apply(this, arguments)
}
},
{
key: "freeze",
value: function() {
this.isFrozen = !0
}
},
{
key: "unfreeze",
value: function() {
this.isFrozen = !1
}
},
{
key: "clear",
value: function() {
this.cache.reset(),
this.onClear()
}
},
{
key: "reload",
value: function() {
this.cache.reset(),
this.onReload()
}
},
{
key: "onAdd",
value: function(t) {
this.map = t,
this.updateUniqueId()
}
},
{
key: "onRemove",
value: function() {
this.map = null
}
},
{
key: "getDrawItems",
value: function() {
return {}
}
},
{
key: "onCacheRemove",
value: function() {}
},
{
key: "onUpdate",
value: function() {}
},
{
key: "onClear",
value: function() {}
},
{
key: "onReload",
value: function() {}
}]),
e
} (_.
default);
e.
default = y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(241),
r = i(o),
a = n(24),
s = i(a),
l = n(148),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(23),
p = i(v),
_ = n(10),
m = {
UP: 4,
DOWN: 3
},
g = function() {
function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
n = e.add,
i = e.remove,
o = e.show,
r = e.minZoom,
a = void 0 === r ? p.
default.minZoom:
r,
s = e.maxZoom,
l = void 0 === s ? p.
default.maxZoom:
s,
c = e.round,
d = void 0 === c || c; (0, f.
default)(this, t),
this.config = {
minZoom: a,
maxZoom: l,
round: d
},
this.add = n,
this.remove = i,
this.show = o,
this.coordPool = new u.
default,
this.deps = new u.
default,
this.responsers = new u.
default,
this.waitingPool = new u.
default
}
return (0, h.
default)(t, [{
key: "getTileCoord",
value: function(t) {
return this.coordPool.get(t)
}
},
{
key: "isLoaded",
value: function(t) {
var e = this.getTileCoord(t);
return e && e.loaded
}
},
{
key: "clear",
value: function() {
var t = this;
this.coordPool.forEach(function(e) {
t.remove(e)
}),
this.coordPool.clear(),
this.deps.clear(),
this.responsers.clear()
}
},
{
key: "update",
value: function(t, e) {
var n = this,
i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
o = this.config,
a = o.round,
l = o.minZoom,
u = o.maxZoom,
c = [].concat((0, s.
default)(this.coordPool.values()));
t = (0, _.clamp)(t, l, u),
a && (t = Math.round(t));
var f = e.coveringTiles({
zoom: t,
round: a,
minZoom: l,
maxZoom: u
}),
d = new r.
default(f.map(function(t) {
return t.id
})),
h = f.filter(function(t) {
return ! n.coordPool.has(t.id)
}),
v = c.filter(function(t) {
return ! d.has(t.id)
});
this.dealWithRemoveList(v, d, t),
this.dealWithAddList(h, i.reason)
}
},
{
key: "dealWithRemoveList",
value: function(t, e, n) {
var i = this;
t.length,
t.forEach(function(t) {
var o = i.isLoaded(t.id),
r = t.z - n,
a = (0, _.isInRange)(r, -m.DOWN, m.UP);
if (o && a) if (r > 0) {
var s = t.ancestor(n);
if (e.has(s.id)) return void i.markTileToRemove(t, [s])
} else if (r < 0) {
var l = t.descendant(n),
u = l.filter(function(t) {
return e.has(t.id)
});
if (u.length > 0) return void i.markTileToRemove(t, u)
}
i.removeTile(t)
})
}
},
{
key: "dealWithAddList",
value: function(t, e) {
var n = this;
t.length,
t.forEach(function(t) {
n.addTile(t, e)
})
}
},
{
key: "addTile",
value: function(t, e) {
var n = this;
t && (t.loaded = !1, this.coordPool.set(t.id, t), this.add(t, e).then(function() {
t.loaded = !0,
n.removeMarkedTile(t)
}))
}
},
{
key: "removeTile",
value: function(t) {
t && (this.isLoaded(t.id) || this.removeMarkedTile(t), this.removeFromMarked(t), this.showWaitingTiles(t.id), this.coordPool.delete(t.id), this.remove(t))
}
},
{
key: "markTileToRemove",
value: function(t, e) {
var n = this,
i = e.filter(function(t) {
return ! n.isLoaded(t.id)
});
this.deps.set(t.id, new r.
default(i.map(function(t) {
return t.id
}))),
i.forEach(function(e) {
var i = e.id;
n.responsers.has(i) || n.responsers.set(i, new r.
default),
n.responsers.get(i).add(t.id)
})
}
},
{
key: "removeMarkedTile",
value: function(t) {
var e = this,
n = void 0,
i = this.responsers.get(t.id);
i && i.size && i.forEach(function(i) {
if (e.deps.has(i)) {
var o = e.deps.get(i);
o.delete(t.id),
0 === o.size ? (e.deps.delete(i), e.removeTile(e.getTileCoord(i))) : n = i
} else e.removeTile(e.getTileCoord(i))
}),
this.responsers.delete(t.id),
n ? this.addTileToWaitingPool(t.id, n) : this.show(t)
}
},
{
key: "removeFromMarked",
value: function(t) {
var e = this,
n = this.deps.get(t.id);
n && n.size && n.forEach(function(n) {
var i = e.responsers.get(n);
i.delete(t.id),
0 === i.size && e.responsers.delete(n)
}),
this.deps.delete(t.id)
}
},
{
key: "addTileToWaitingPool",
value: function(t, e) {
this.waitingPool.has(e) ? this.waitingPool.get(e).add(t) : this.waitingPool.set(e, new r.
default([t]))
}
},
{
key: "showWaitingTiles",
value: function(t) {
var e = this;
this.waitingPool.has(t) && (this.waitingPool.get(t).forEach(function(t) {
var n = e.getTileCoord(t);
n && e.show(n)
}), this.waitingPool.delete(t))
}
}]),
t
} ();
e.
default = g
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(673),
p = i(v),
_ = n(491),
m = i(_),
g = function(t) {
function e(t, n, i) { (0, s.
default)(this, e);
var o = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n, i));
return o.loading = {},
o.loaded = {},
o
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_indexData",
value: function(t, e, n) {
try {
var i = {
enableGeodesic: e.enableGeodesic || !1,
features: {
geometries: e.geometries,
styles: e.styles,
_eraseOpts: e._eraseOpts
},
type: e.type
};
n(null, i)
} catch(t) {
return n(t)
}
}
},
{
key: "loadTile",
value: function(t, e) {
function n(t, n) {
return delete this.loading[i][o],
t ? e(t) : n ? (r.vectorTile = n, r.parse(n, this.actor, e), this.loaded[i] = this.loaded[i] || {},
void(this.loaded[i][o] = r)) : e(null, null)
}
var i = t.source,
o = t.uid;
this.loading[i] || (this.loading[i] = {}),
this.loading[i][o] = new p.
default(t);
var r = this.loading[i][o];
r.abort = this.loadVectorData(t, n.bind(this))
}
},
{
key: "abortTile",
value: function(t) {
var e = this.loading[t.source],
n = t.uid;
e && e[n] && e[n].abort && (e[n].abort(), delete e[n])
}
},
{
key: "removeTile",
value: function(t) {
var e = this.loaded[t.source],
n = t.uid;
e && e[n] && delete e[n],
this.removeSource(t)
}
}]),
e
} (m.
default);
e.
default = g
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(277),
u = i(l),
c = n(642),
f = i(c),
d = n(640),
h = i(d),
v = n(639),
p = i(v),
_ = n(476),
m = i(_),
g = n(477),
y = i(g),
x = n(331),
b = i(x),
S = n(641),
w = i(S),
E = n(220),
T = function() {
function t(e) { (0, r.
default)(this, t),
this.uid = e.uid,
this.coord = e.coord
}
return (0, s.
default)(t, [{
key: "parse",
value: function(t, e, n) {
var i = void 0,
o = this.coord.x + "_" + this.coord.y + "_" + this.coord.z,
r = {};
switch (t.type) {
case E.GEOMETRY_TYPES.HIGHLIGHT:
i = (0, u.
default)(t.features, e),
i.highlightColor = t.features.styles.highlightColor,
i.shadeColor = t.features.styles.shadeColor;
break;
case E.GEOMETRY_TYPES.MASK:
i = (0, w.
default)(t.features, e);
break;
case E.GEOMETRY_TYPES.POLYGON:
i = (0, u.
default)(t.features, e);
break;
case E.GEOMETRY_TYPES.CIRCLE:
i = (0, m.
default)(t.features, e);
break;
case E.GEOMETRY_TYPES.ELLIPSE:
i = (0, y.
default)(t.features, e);
break;
case E.GEOMETRY_TYPES.RECTANGLE:
i = (0, b.
default)(t.features, e);
break;
case E.GEOMETRY_TYPES.POLYLINE:
i = (0, f.
default)(t.features, t.enableGeodesic),
i.uid = this.uid;
break;
case E.GEOMETRY_TYPES.POINT:
return void(0, h.
default)(t.features, e,
function(t) {
r[o] = t,
n(null, r)
});
case E.GEOMETRY_TYPES.LABEL:
return void(0, p.
default)(t.features, e,
function(t) {
r[o] = t,
n(null, r)
})
}
r[o] = i,
n(null, r)
}
}]),
t
} ();
e.
default = T
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(493),
p = i(v),
_ = n(90),
m = function(t) {
function e(t, n, i) {
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n, i))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_initialize",
value: function() {
this.type = _.SOURCE_TYPE.geoTask
}
},
{
key: "update",
value: function() {}
},
{
key: "getCluster",
value: function(t, e) {
var n = {
type: this.type,
pixelsPerDegree: t.pixelsPerDegree,
resetCluster: t.resetCluster,
mapBounds: t.mapBounds,
zoom: t.zoom,
maxZoom: this.maxZoom,
source: this.getUniqueId()
};
this.dispatcher.send(this.type + ".getCluster", n,
function(t, n) {
if (t || !n) return void console.error(t);
var i = JSON.parse(n);
return e(i)
},
this.workerID)
}
}]),
e
} (p.
default);
e.
default = m
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(113),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(491),
m = i(_),
g = n(643),
y = i(g),
x = !1,
b = function(t) {
function e(t, n, i) {
return (0, u.
default)(this, e),
(0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t, n, i))
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "_indexData",
value: function(t, e, n) {
try {
var i = {
task: new y.
default(e, {
minimumClusterSize: t.minimumClusterSize,
gridSize: t.gridSize,
averageCenter: t.averageCenter
})
};
n(null, i)
} catch(t) {
return n(t)
}
}
},
{
key: "getCluster",
value: function(t, e) {
function n(n, i) {
x && console.log(i),
x && console.time("createClusters");
var o = i.task,
a = o.createClusters(t);
x && console.timeEnd("createClusters"),
e(null, (0, r.
default)(a))
}
x && console.log("getCluster", t),
this.loadVectorData(t, n.bind(this))
}
}]),
e
} (m.
default);
e.
default = b
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(237),
m = n(249),
g = i(m),
y = n(300),
x = i(y),
b = n(489),
S = i(b),
w = n(213),
E = i(w),
T = function(t) {
function e(t, n, i) { (0, s.
default)(this, e);
var o = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n, i));
return o._data = n.data || null,
o._data && (o._data.center = o._data.bounds.getCenter()),
o._glTexture = null,
o._items = {},
o
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "onAdd",
value: function(t) {
this.map = t,
this._glTexture || (this._glTexture = new E.
default(this.map.renderEngine.gl, {
pixels: this._data.mediaSource
})),
this._fire("data", {
dataType: "source",
sourceDataType: "metadata"
})
}
},
{
key: "setData",
value: function(t) {
if (this._data = t, this._data && (this._data.center = this._data.bounds.getCenter()), this._glTexture) {
var e = this.map.renderEngine.gl;
this._glTexture.update(this._data.mediaSource, {
textureIndex: 0,
minFilter: e.LINEAR,
magFilter: e.LINEAR,
wrapS: e.CLAMP_TO_EDGE,
wrapT: e.CLAMP_TO_EDGE,
premultiply: !0,
useMipmap: !1,
flipY: !0
})
}
this.transform,
this.camera && this.update(this.transform, this.camera),
this._fire("data", {
dataType: "source",
sourceDataType: "content"
})
}
},
{
key: "update",
value: function(t, e) {
if (this.transform = t, this.camera = e, this._data && (0, _.isInFrustum)(this.map, this._data.bounds)) {
var n = new x.
default(0, 0, 0, 0);
this.addItem(n)
}
}
},
{
key: "addItem",
value: function(t) {
var e = this._items[t.id];
if (this._data && !e) {
e = new g.
default(t, this.tileSize),
this._items[t.id] = e,
e.setData({
bounds: this._data.bounds,
center: this._data.center,
texture: this._glTexture,
texInfo: {
s: 0,
t: 0,
w: 1,
h: 1
}
});
var n = this.map.renderEngine.gl;
this._glTexture.upload({
textureIndex: 0,
minFilter: n.LINEAR,
magFilter: n.LINEAR,
wrapS: n.CLAMP_TO_EDGE,
wrapT: n.CLAMP_TO_EDGE,
premultiply: !0,
useMipmap: !1,
flipY: !0
})
} else {
var i = e.getData();
i.bounds = this._data.bounds,
i.center = this._data.center,
e.setData(i)
}
}
},
{
key: "getDrawItems",
value: function() {
var t = this._items;
return this._data ? (0, _.isInFrustum)(this.map, this._data.bounds) ? t: {}: t
}
},
{
key: "onRemove",
value: function() { (0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "onRemove", this).call(this),
this._items = {},
this._glTexture.destroy()
}
}]),
e
} (S.
default);
e.
default = T
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(25),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(488),
m = i(_),
g = n(90),
y = n(249),
x = n(138),
b = i(x),
S = n(796),
w = window.createImageBitmap && "Firefox" !== b.
default.browser,
E = function(t) {
function e(t, n, i) { (0, u.
default)(this, e);
var o = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t, n, i));
return o.type = g.SOURCE_TYPE.imageTile,
o
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "loadTile",
value: function(t) {
var e = this,
n = t.coord,
i = t.uid,
o = t.tileSize,
a = this._data(n.x, n.y, n.z),
s = {
url: a,
uid: i,
tileSize: o,
type: this.type,
isBitmapEnabled: w
};
return new r.
default(function(n) {
var i = function(i, o) {
if (i) return void n(i);
a.indexOf("oversea") > -1 && (e.overseaNum = e.overseaNum || 0, e.overseaNum = e.overseaNum + 1),
o.bitmap ? (t.setData(o.bitmap), n(null)) : o.image ? (0, S.blobToImage)(o.image).then(function(e) {
return (0, S.canvasToImage)((0, S.imageToCanvas)(e, {
width: t.tileSize,
height: t.tileSize
}))
}).then(function(e) {
t.setData(e),
n(null)
}).
catch(function(t) {
console.error(t),
n("Image格式转换失败")
}) : n("Invalid Data")
};
t.workerID && t.state !== y.TILE_STATE.expired ? e.dispatcher.send("reloadTile", s, i, t.workerID) : t.workerID = e.dispatcher.send("loadTile", s, i)
})
}
}]),
e
} (m.
default);
e.
default = E
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(79),
u = n(110),
c = function() {
function t(e) { (0, r.
default)(this, t),
this.actor = e,
this.cache = new u.Store("imageTileLoader", 1e3)
}
return (0, s.
default)(t, [{
key: "loadTile",
value: function(t, e) {
var n = t.url,
i = t.uid,
o = t.tileSize,
r = t.isBitmapEnabled;
i in this.cache || (this.cache[i] = (0, l.getImage)(n, 12e3)),
this.cache[i].promise.then(function(t) {
r ? self.createImageBitmap(t, {
imageOrientation: "flipY",
premultiplyAlpha: "premultiply",
resizeWidth: o,
resizeHeight: o
}).then(function(t) {
e(null, {
bitmap: t,
transferableList: [t]
})
}).
catch(function(t) {
console.warn(t),
e(t)
}) : e(null, {
image: t,
transfertableList: [t]
})
}).
catch(function(t) {
switch (t.message) {
case "abort":
break;
default:
e(t)
}
})
}
},
{
key: "abortTile",
value: function(t) {
var e = t.uid;
e in this.cache && (this.cache[e].xhr.abort(), this.cache[e] = null)
}
},
{
key: "removeTile",
value: function(t) {
this.abortTile(t)
}
},
{
key: "reloadTile",
value: function(t, e) {
t.uid in this.cache && delete this.cache[t.uid],
this.loadTile(t, e)
}
}]),
t
} ();
e.
default = c
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(90),
u = function() {
function t(e, n) { (0, r.
default)(this, t),
this.id = e,
this.dispatcher = n,
this.type = l.SOURCE_TYPE.indoorIndex,
this.workerId = null
}
return (0, s.
default)(t, [{
key: "loadIndexData",
value: function(t, e, n, i) {
t.length > 0 ? this.workerId ? this.dispatcher.send(this.type + ".calcBuildingListInView", {
ids: t,
viewBounds: e,
indexType: n
},
i, this.workerId) : this.workerId = this.dispatcher.send(this.type + ".calcBuildingListInView", {
ids: t,
viewBounds: e,
indexType: n
},
i) : i && i([])
}
},
{
key: "onAdd",
value: function(t) {
this._map = t
}
}]),
t
} ();
e.
default = u
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
var i = t.getUint32(e, n),
o = t.getUint32(e + 4, n);
return n ? i + Math.pow(2, 32) * o: Math.pow(2, 32) * i + o
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(24),
a = i(r),
s = n(283),
l = i(s),
u = n(223),
c = i(u),
f = n(25),
d = i(f),
h = n(282),
v = i(h),
p = n(20),
_ = i(p),
m = n(221),
g = i(m),
y = n(27),
x = i(y),
b = n(0),
S = i(b),
w = n(1),
E = i(w),
T = n(23),
A = i(T),
P = n(89),
I = i(P),
k = n(137),
L = i(k),
M = n(79),
C = function() {
function t(e, n) { (0, S.
default)(this, t),
this._mapId = n,
this.actor = e,
this._cityIdsCache = {}
}
return (0, E.
default)(t, [{
key: "calcBuildingListInView",
value: function(t, e) {
var n = this,
i = t.ids,
o = void 0 === i ? [] : i,
r = t.viewBounds,
a = t.indexType;
this._getIndoorIndexList(o, a).then(function(t) {
var i = [],
o = !0,
a = !1,
s = void 0;
try {
for (var l, u = (0, x.
default)((0, g.
default)(t)); ! (o = (l = u.next()).done); o = !0) {
var c = l.value;
if ("object" === (void 0 === c ? "undefined": (0, _.
default)(c)) && c.dataLength > 0) {
var f = n.getBuildingIdsInView(c.buildingList.infoList, r);
i = i.concat(f)
}
}
} catch(t) {
a = !0,
s = t
} finally {
try { ! o && u.
return && u.
return ()
} finally {
if (a) throw s
}
}
return e(i),
i
})
}
},
{
key: "_getIndoorIndexList",
value: function() {
function t(t, n) {
return e.apply(this, arguments)
}
var e = (0, v.
default)(l.
default.mark(function t(e, n) {
var i, o, r, a, s, u, f = this;
return l.
default.wrap(function(t) {
for (;;) switch (t.prev = t.next) {
case 0:
return t.prev = 0,
i = {},
o = this._getSortedCityId(e),
r = o.oldIds,
a = o.newIds,
s = r.map(function(t) {
return f._getCityIndexCache(t)
}),
t.next = 6,
d.
default.all(s);
case 6:
return u = t.sent,
u.forEach(function(t, e) {
t ? i[r[e]] = t: a.push(r[e])
}),
t.abrupt("return", this._loadCityData(a, n).then(function(t) {
return i = (0, c.
default)({},
i, t)
}));
case 11:
t.prev = 11,
t.t0 = t.
catch(0),
console.warn(t.t0);
case 14:
case "end":
return t.stop()
}
},
t, this, [[0, 11]])
}));
return t
} ()
},
{
key: "_loadCityData",
value: function(t, e) {
var n = this,
i = {};
if (t.length > 0) {
var o = t.map(function(t) {
return t + ",0"
}).join(","),
r = A.
default.indoorIndexSrc + "&all=" + e + "&data=" + o;
return new d.
default(function(t, e) {
M.getArrayBuffer(r,
function(o, r) {
if (!o && r && r.data) {
var a = new DataView(r.data);
i = n._extract(a),
t(i)
} else e(o || "未知错误:获取室内索引失败。")
})
})
}
return new d.
default(function(t) {
t(i)
})
}
},
{
key: "_getSortedCityId",
value: function(t) {
var e = this,
n = [],
i = [];
return t.forEach(function(t) {
e._cityIdsCache[t] ? n.push(t) : (i.push(t), e._cityIdsCache[t] = !0)
}),
{
oldIds: n,
newIds: i
}
}
},
{
key: "_getCityIndexCache",
value: function(t) {
var e = L.
default.QMAPI_indoor_index + t;
return new d.
default(function(t) {
I.
default.get(e,
function(e) {
t(e)
})
})
}
},
{
key: "_extract",
value: function(t) {
var e = {},
n = 0,
i = t.getInt8(n, !0);
e.cityNum = i,
n += 1;
for (var o = 0,
r = 0; r < i; r++) {
o = t.getInt16(n, !0),
n += 2,
e[o] || (e[o] = {}),
e[o].version = t.getInt32(n, !0),
n += 4,
e[o].intervel = t.getInt16(n, !0),
n += 2,
e[o].status = t.getInt8(n, !0),
n += 1;
var a = t.getInt32(n, !0);
e[o].dataLength = a,
n += 4,
a > 0 && (e[o].buildingList = this._extractCityInfo(t, n)),
n += a,
I.
default.set(L.
default.QMAPI_indoor_index + o, e[o])
}
return e
}
},
{
key: "_extractCityInfo",
value: function(t, e) {
var n = e,
i = {};
i.sign = String.fromCharCode.apply(String, (0, a.
default)(new Uint8Array(t.buffer.slice(n, n + 4)))),
n += 4,
i.df = t.getInt32(n, !0),
n += 4,
i.dataVer = t.getInt32(n, !0),
n += 4,
i.confSize = t.getInt32(n, !0),
n += 4,
i.crc = t.getInt32(n + i.confSize, !0),
i.cityIndex = t.getInt16(n, !0),
n += 2,
n += 6,
i.buildingNum = t.getInt32(n, !0),
n += 4,
i.infoList = [];
for (var r = 0; r < i.buildingNum; r++) {
var s = {},
l = t.getInt32(n, !0) + e;
n += 4,
n += 4,
s.buildingId = String(parseInt(o(t, l, !0))),
l += 8,
s.version = t.getInt32(l, !0),
l += 4,
s.left = t.getInt32(l, !0),
l += 4,
s.right = t.getInt32(l, !0),
l += 4,
s.top = t.getInt32(l, !0),
l += 4,
s.bottom = t.getInt32(l, !0),
l += 4,
i.infoList.push(s)
}
return i
}
},
{
key: "getBuildingIdsInView",
value: function(t, e) {
var n = [],
i = e.left,
o = e.right,
r = e.top,
a = e.bottom;
return t.forEach(function(t) {
var e = t.buildingId,
s = t.left,
l = t.right,
u = t.top,
c = t.bottom;
s > 0 && l > 0 && i < l && o > s && a > u && r < c && n.push(e)
}),
n
}
}]),
t
} ();
e.
default = C
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(222),
r = i(o),
a = n(32),
s = i(a),
l = n(113),
u = i(l),
c = n(3),
f = i(c),
d = n(0),
h = i(d),
v = n(1),
p = i(v),
_ = n(5),
m = i(_),
g = n(4),
y = i(g),
x = n(23),
b = i(x),
S = n(47),
w = i(S),
E = n(209),
T = i(E),
A = n(490),
P = i(A),
I = n(300),
k = i(I),
L = n(237),
M = n(90),
C = n(332),
R = function(t) {
function e(t, n, i) {
return (0, h.
default)(this, e),
(0, m.
default)(this, (e.__proto__ || (0, f.
default)(e)).call(this, t, n, i))
}
return (0, y.
default)(e, t),
(0, p.
default)(e, [{
key: "setSelectedFloor",
value: function(t) {
if (!this._loaded) return - 1;
var e = this.getMetaData(),
n = e.floorInfo.floorStrArr.indexOf(t);
return n >= 0 && (this._selectedFloorNum = n, this.update(this.map.transform)),
n
}
},
{
key: "getSelectedFloor",
value: function() {
return this._loaded ? this.getMetaData().floorInfo.floorStrArr[this._selectedFloorNum] || null: null
}
},
{
key: "_initialize",
value: function() {
this.type = M.SOURCE_TYPE.indoor,
this._selectedFloorNum = null
}
},
{
key: "_onLoadDataStart",
value: function() {
var t = C.IndoorStyleMap.getInstance().get(this._data.indoorStyleId);
t.id = this._data.indoorStyleId,
this.workerID = this.dispatcher.send(this.type + ".setStyle", {
indoorStyle: (0, u.
default)(t)
})
}
},
{
key: "_onLoadDataEnd",
value: function() {
var t = this.getMetaData(),
e = t.floorInfo.defaultNum;
this._selectedFloorNum = e;
var n = (0, s.
default)(t.floorInfo.bounds, 2),
i = n[0],
o = n[1];
this._buildingBounds = new T.
default(new w.
default(i.lat, i.lng), new w.
default(o.lat, o.lng)),
this._fire("loaded")
}
},
{
key: "_onLoadDataError",
value: function(t) {
console.error("室内建筑物 " + this._data.buildingId + " 加载出错", t)
}
},
{
key: "update",
value: function(t) {
if (this.transform = t, this._loaded && (0, L.isInFrustum)(this.map, this._buildingBounds) && t.zoom >= b.
default.minShowIndoorZoom) {
var e = this.getMetaData(),
n = new k.
default(0, e.buildingId, this._selectedFloorNum, 0);
this.addItem(n)
}
}
},
{
key: "getDrawItems",
value: function() {
var t = this._items,
e = this.getMetaData();
if (!e) return t;
if (! (0, L.isInFrustum)(this.map, this._buildingBounds)) return {};
var n = e.buildingId + "_" + this._selectedFloorNum + "_0",
i = t[n];
return i && i.hasData() && (this._currentItems = (0, r.
default)({},
n, i)),
this._currentItems || {}
}
}]),
e
} (P.
default);
e.
default = R
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(24),
r = i(o),
a = n(25),
s = i(a),
l = n(20),
u = i(l),
c = n(148),
f = i(c),
d = n(0),
h = i(d),
v = n(1),
p = i(v),
_ = n(23),
m = i(_),
g = n(47),
y = i(g),
x = n(379),
b = n(380),
S = n(683),
w = i(S),
E = n(89),
T = i(E),
A = n(137),
P = i(A),
I = n(1013),
k = n(552),
L = n(79),
M = function() {
function t(e, n) { (0, h.
default)(this, t),
this._indoorBuildingSet = {},
this._mapId = n,
this.actor = e,
this.loading = {},
this.loaded = {},
this.versionPromiseMap = new f.
default
}
return (0, p.
default)(t, [{
key: "setStyle",
value: function(t) {
this._indoorStyle = JSON.parse(t.indoorStyle)
}
},
{
key: "loadTile",
value: function(t, e) {
function n(t, n) {
return delete this.loading[i][o],
t ? e(t) : n ? (r.vectorTile = n, r.parse(n, this.actor, this._indoorStyle, e), this.loaded[i] = this.loaded[i] || {},
void(this.loaded[i][o] = r)) : e(null, null)
}
var i = t.source,
o = t.uid;
this.loading[i] || (this.loading[i] = {}),
this.loading[i][o] = new w.
default(t);
var r = this.loading[i][o];
r.abort = this.loadVectorData(t, n.bind(this))
}
},
{
key: "removeTile",
value: function(t) {
this.removeSource(t)
}
},
{
key: "loadVectorData",
value: function(t, e) {
var n = t.source;
if (!this._indoorBuildingSet[n]) return e(null, null);
e(null, this._indoorBuildingSet[n])
}
},
{
key: "loadData",
value: function(t, e) {
var n = function(n, i) {
return n ? e(n) : "object" !== (void 0 === i ? "undefined": (0, u.
default)(i)) ? e(new Error("Input data is not a valid Indoor object.")) : (this._indoorBuildingSet[t.source] = i, void e(null, {
buildingId: i.buildingId,
buildingName: i.Name_CN,
floorInfo: i.floorInfo,
center: i.areaCenter
}))
}.bind(this);
this.loadIndoorBuffer(t, n)
}
},
{
key: "loadIndoorBuffer",
value: function(t, e) {
var n = this,
i = JSON.parse(t.data),
o = P.
default.QMAPI_indoor_buffer + i.buildingId;
new s.
default(function(t) {
T.
default.get(o,
function(e) {
t(e)
})
}).then(function(t) {
return n._getVersion(t).then(function(e) {
return n._getIndoorInfoData(i, t, e)
})
}).then(function(t) {
x.ConfigUtil.setBV(t.version),
e(null, t.buildingData)
}).
catch(function(t) {
e(t, null)
})
}
},
{
key: "_getVersion",
value: function(t) {
var e = null;
if (t) {
var n = m.
default.indoorBuildingSrc + "?df=1&type=dataver&cid=" + t.cityId;
e = this.versionPromiseMap.get(t.cityId) || new s.
default(function(t) {
L.getJSON(null, n,
function(e, n) {
var i = 1 / 0;
e ? console.error(e) : i = n && n.metadata && n.metadata.version && n.metadata.version.data,
t({
version: i
})
})
}),
this.versionPromiseMap.set(t.cityId, e)
} else e = s.
default.resolve({
version:
1 / 0
});
return e
}
},
{
key: "_getIndoorInfoData",
value: function(t, e, n) {
var i = this,
o = P.
default.QMAPI_indoor_buffer + t.buildingId,
r = m.
default.indoorBuildingSrc + "?df=1&cid=" + (e && e.cityId || t.cityId) + "&bid=" + t.buildingId,
a = n.version;
return e && e.version >= a ? s.
default.resolve(e):
new s.
default(function(e, n) {
L.getArrayBuffer(r,
function(r, a) {
if (r) n(r);
else {
var s = null,
l = a.data,
u = new DataView(l);
s = i.extract(u, t.buildingId),
T.
default.set(o, s),
e(s)
}
})
}).
catch(function(t) {
if (console.error(t), e) return e;
throw new Error(t)
})
}
},
{
key: "removeSource",
value: function(t) {
this._indoorBuildingSet[t.source] && delete this._indoorBuildingSet[t.source]
}
},
{
key: "extract",
value: function(t, e) {
var n = {},
i = 0;
n.sign = String.fromCharCode.apply(String, (0, r.
default)(new Uint8Array(t.buffer.slice(i, 4)))),
i += 4,
n.version = t.getInt32(i, !0),
i += 4,
n.cityId = t.getInt32(i, !0),
i += 4,
n.buildId = t.getInt32(i, !0),
i += 4,
n.zipSize = t.getInt32(i, !0),
i += 4,
n.srcSize = t.getInt32(i, !0),
i += 4,
n.CRC = t.getInt32(i),
i += 4,
I(t.byteLength - 28 === n.zipSize, "Check zip size");
var o = k.inflate(t.buffer.slice(i), {
windowBits: -15
});
return I(o.length === n.srcSize, "Check unzipped size"),
n.buildingData = this.extractFloorInfo(o, e),
n.buildingData.buildingId = e,
n.buildingData.buffer = o,
n
}
},
{
key: "extractFloorInfo",
value: function(t) {
var e = new DataView(t.buffer),
n = 0,
i = {};
i.Attribute_size = e.getInt32(n, !0),
n += 4,
i.Data_size = e.getInt32(n, !0),
n += 4,
i.Topology_size = e.getInt32(n, !0),
n += 4,
i.Name_CN_size = e.getUint8(n, !0),
n += 1,
i.Name_CN = String.fromCharCode.apply(String, (0, r.
default)(new Uint16Array(e.buffer.slice(n, n + i.Name_CN_size)))),
n += i.Name_CN_size,
i.DefaultFloor = e.getUint8(n, !0),
n += 1,
i.Floor_num = e.getUint8(n, !0),
n += 1,
i.Floor_str_size = e.getUint8(n, !0),
n += 1;
for (var o = [], a = 0; a < i.Floor_str_size; a++) {
var s = e.getUint8(n, !0);
o.push(s),
n += 1
}
i.floorStr = String.fromCharCode.apply(null, o);
for (var l = [], u = 0; u < 4; u++) {
var c = e.getInt32(n, !0);
l.push(c),
n += 4
}
var f = [],
d = {},
h = {};
d.x = l[0],
h.x = l[1],
d.y = l[2],
h.y = l[3];
var v = void 0,
p = void 0;
try {
v = (0, b.pixels2LongLat)(d.x, h.y),
p = (0, b.pixels2LongLat)(h.x, d.y),
f.push(v),
f.push(p)
} catch(t) {
throw new Error("数据错误bounds无效。")
}
return i.floorInfo = {
floorNum: i.Floor_num,
floorStr: i.floorStr,
floorStrArr: i.floorStr.split(","),
bounds: f,
defaultNum: i.DefaultFloor
},
i.Floor_num = e.getInt32(n, !0),
i.areaCenter = new y.
default((v.lat + p.lat) / 2, (v.lng + p.lng) / 2),
i
}
}]),
t
} ();
e.
default = M
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(17),
r = i(o),
a = n(222),
s = i(a),
l = n(113),
u = i(l),
c = n(25),
f = i(c),
d = n(0),
h = i(d),
v = n(1),
p = i(v),
_ = n(66),
m = n(645),
g = i(m),
y = function() {
function t(e) { (0, h.
default)(this, t),
this.uid = e.uid,
this.coord = e.coord
}
return (0, p.
default)(t, [{
key: "_parseEscalator",
value: function() {}
},
{
key: "parse",
value: function(t, e, n, i) {
var o = this.coord.x + "_" + this.coord.y + "_" + this.coord.z,
r = {},
a = t.buffer,
l = t.buildingId,
c = t.areaCenter,
d = new g.
default(l, {
buffer: a,
areaCenter: c,
floorInfo: t.floorInfo,
selectedFloorNum: this.coord.y,
indoorStyle: n
}),
h = d.parseBuilding(),
v = d.getBuildingPointInfo(h.buildingPoint),
p = new f.
default(function(t) {
e.send("getIndoorGlyphInfo", {
glyphList: v.glyphList,
iconSrcList: v.iconSrcList,
pointInfoSet: (0, u.
default)(v.pointInfoSet),
indoorStyle: (0, u.
default)(n)
},
function(e, n) {
if (e) console.error(e),
t(null);
else {
var i = JSON.parse(n.iconMapping),
o = JSON.parse(n.glyphMapping),
r = JSON.parse(n.poiMapping);
t({
poiMapping: r,
iconMapping: i,
glyphMapping: o
})
}
})
}),
m = h.buildingData.map(function(t) {
if (t.length > 0) {
return {
top: d.getTopGeometryAttributes(t),
sides: d.getSidesGeometryAttributes(t)
}
}
return null
}).filter(function(t) {
return !! t
}),
y = h.buildingEscalator.map(function(t) {
if (t.length > 0) {
return d.getEscalatorAttributes(t)
}
return null
}).filter(function(t) {
return !! t
}),
x = h.floorBoundsData.map(function(t) {
if (t.length > 0) {
var e = d.getTopGeometryAttributes(t);
return delete e.normal,
delete e.color,
{
top: e
}
}
}).filter(function(t) {
return !! t
});
p.then(function(t) {
var e = d.parseInstanceBuildingPoint(v.pointInfoSet, t.iconMapping, t.glyphMapping, t.poiMapping);
r[_.RENDER_LAYER_TYPE.indoorRegion] = (0, s.
default)({},
o, {
regions: m,
bounds: x,
center: c,
floorIndex: d.selectedFloorNum
}),
r[_.RENDER_LAYER_TYPE.indoorPoi] = (0, s.
default)({},
o, {
pois: e,
bounds: x,
center: c,
floorIndex: d.selectedFloorNum
}),
r[_.RENDER_LAYER_TYPE.indoorEscalator] = (0, s.
default)({},
o, {
escalators: y,
bounds: x,
center: c
}),
r.id = o,
i(null, r)
})
}
},
{
key: "transferData",
value: function(t, e) {
var n = [],
i = ["top", "sides"],
o = ["position", "index", "color", "normal"]; ["regions", "bounds"].forEach(function(r) {
e[_.RENDER_LAYER_TYPE.indoorRegion][t][r].forEach(function(t) {
i.forEach(function(e) {
o.forEach(function(i) {
var o = t[e] && t[e][i] && t[e][i].buffer;
o && n.push(o)
})
})
})
});
var a = e[_.RENDER_LAYER_TYPE.indoorPoi][t].pois; (0, r.
default)(a).forEach(function(t) {
a[t].forEach(function(t) {
t.instance.count > 0 && ["instanceTransTypeArray", "instanceCoordsTypeArray", "instanceTextBoundsTypeArray", "instanceInfosTypeArray", "instanceColorsTypeArray", "instanceStrokeColorsTypeArray"].forEach(function(e) {
n.push(t.instance[e].buffer)
})
})
});
var s = e[_.RENDER_LAYER_TYPE.indoorEscalator][t].escalators;
return s.length > 0 && ["instanceCoordsTypeArray", "instanceInfosTypeArray"].forEach(function(t) {
n.push(s[0][t].buffer)
}),
e.transferableList = n,
e
}
}]),
t
} ();
e.
default = y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(25),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(488),
m = i(_),
g = n(90),
y = n(249),
x = function(t) {
function e(t, n, i) { (0, u.
default)(this, e);
var o = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t, n, i));
return o.type = g.SOURCE_TYPE.traffic,
o.baseColor = n.baseColor,
o.flowColor = n.flowColor,
o.flowSpeed = n.flowSpeed,
o.setFilter(n.filter),
o
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "setFilter",
value: function(t) {
this.filter = t
}
},
{
key: "loadTile",
value: function(t) {
var e = this,
n = t.coord,
i = t.uid,
o = this.baseColor,
a = this.flowColor,
s = this.flowSpeed,
l = this.filter,
u = this._data(n.x, n.y, n.z),
c = {
url: u,
uid: i + "_" + u,
baseColor: o,
flowColor: a,
flowSpeed: s,
filter: l,
type: this.type
};
return new r.
default(function(n) {
var i = function(e, i) {
if (e) return void n(e);
if (i && i.flowData) {
var o = i.flowData,
r = o.texSize,
a = o.pixelSpace,
s = o.pointArray,
l = o.count,
u = o.instance;
self.createImageBitmap(new ImageData(s, r, r), {
premultiplyAlpha: "none"
}).then(function(e) {
t.setData({
base: i.baseData,
flow: {
pathImage: e,
count: l,
instance: u,
texSize: r,
pixelSpace: a
},
uid: c.uid
}),
n(null)
})
} else n("Invalid Data")
};
t.workerID && t.state !== y.TILE_STATE.expired ? e.dispatcher.send("reloadTile", c, i, t.workerID) : t.workerID = e.dispatcher.send("loadTile", c, i)
})
}
}]),
e
} (m.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(17),
r = i(o),
a = n(25),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(110),
h = n(79),
v = n(29),
p = n(688),
_ = function() {
function t(e) { (0, u.
default)(this, t),
this.actor = e,
this.cache = new d.Store("trafficTileLoader", 1e3)
}
return (0, f.
default)(t, [{
key: "loadTile",
value: function(t, e) {
var n = t.url,
i = t.uid,
o = t.baseColor,
r = t.flowColor,
a = t.flowSpeed,
l = t.filter;
if (! (i in this.cache)) {
var u = void 0,
c = new s.
default(function(t, e) {
u = (0, h.getJSON)(i, n,
function(n, i) {
n ? e(n) : t(i)
})
});
this.cache[i] = {
xhr: u,
promise: c
}
}
this.cache[i].promise.then(function(t) {
if (t.hasOwnProperty("ret")) if (0 === t.ret) {
var n = (0, p.parse)(t, {
enc: !1,
baseColor: o,
flowColor: r,
flowSpeed: a,
filter: l
});
n.uid = i,
e(null, n)
} else e(new v.AJAXError("no data", 404));
else {
var s = (0, p.parse)(t, {
baseColor: o,
flowColor: r,
flowSpeed: a,
filter: l
});
s.uid = i,
e(null, s)
}
}).
catch(function(t) {
switch (t.message) {
case "abort":
break;
default:
e(t)
}
})
}
},
{
key: "abortTile",
value: function(t) {
var e = t.uid,
n = (0, r.
default)(this.cache).find(function(t) {
return t.includes(e)
});
n && (this.cache[n].xhr.abort(), this.cache[n] = null)
}
},
{
key: "removeTile",
value: function(t) {
this.abortTile(t)
}
},
{
key: "reloadTile",
value: function(t, e) {
t.uid in this.cache && delete this.cache[t.uid],
this.loadTile(t, e)
}
}]),
t
} ();
e.
default = _
},
function(t, e, n) {
"use strict";
function i(t) {
var e = 0;
t.forEach(function(t) {
var n = Math.round(t.length * o);
e += n,
t.particles = n
});
var n = new Uint16Array(2 * e),
i = new Uint8ClampedArray(4 * e),
r = new Uint8ClampedArray(e),
a = 0,
s = 0,
l = 0;
return t.forEach(function(t) {
for (var e = t.offset,
o = t.length,
u = t.particles,
c = t.color,
f = 0; f < u; f++) {
var d = Math.floor(Math.random() * o);
n[a] = e,
a += 1,
n[a] = o,
a += 1,
i[s] = c[0],
s += 1,
i[s] = c[1],
s += 1,
i[s] = c[2],
s += 1,
i[s] = c[3],
s += 1,
r[l] = d,
l += 1
}
}),
{
count: e,
instance: {
instanceLinkList: n,
instanceColorList: i,
instanceParticleList: r
}
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = i;
var o = .1
},
function(t, e, n) {
"use strict";
function i(t) {
if (!t || !t.length) return t;
for (var e = [], n = t[0].slice(), i = void 0, r = 1; r < t.length; r++) {
i = t[r];
switch (o(n, i)) {
case 1:
n[1] = n[1].concat(i[1].slice(1));
break;
case 2:
n[1] = i[1].concat(n[1].slice(1));
break;
case 0:
default:
e.push(n),
n = i.slice()
}
}
return e
}
function o(t, e) {
if (t[0] !== e[0]) return 0;
var n = t[1].length,
i = e[1].length;
if (n && i) {
var o = t[1][0],
a = e[1][0],
s = t[1][n - 1],
l = e[1][i - 1];
return r(a, s) ? 1 : r(o, l) ? 2 : 0
}
return 0
}
function r(t, e) {
var n = e.x - t.x,
i = e.y - t.y;
return Math.sqrt(n * n + i * i) <= 2
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.merge = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
var n = s(t, e),
i = r(n.flowData, e),
o = a(n.baseData, e);
return {
baseData: {
indeices: {
arrayBuffer: o.indeices.dataView,
length: o.indeices.length
},
lineCount: o.lineCount,
size: o.size,
vertices: {
arrayBuffer: o.vertices.dataView,
attributes: o.vertices.attributes,
bytesPerElement: o.vertices.bytesPerElement
},
vertiesCount: o.vertiesCount
},
flowData: i
}
}
function r(t, e) {
var n = l(t, e),
i = n.linkInfoList,
o = n.pointArray,
r = (0, b.
default)(i),
a = r.instance,
s = r.count;
return {
texSize: w,
pixelSpace: 1e3 * S,
count: s,
instance: a,
pointArray: o
}
}
function a(t, e) {
return (0, g.
default)(t, e.baseColor)
}
function s(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = e.enc,
i = void 0 === n || n,
o = e.filter;
if (!t.data) return {};
var r = i ? (0, y.parseJson)((0, v.decode)(t.data)) : t;
if (0 !== r.ret) return console.error("瓦块没有数据", t),
{};
var a = r.features,
s = (0, p.restore)(a, o);
return {
baseData: s,
flowData: (0, _.merge)(s)
}
}
function l(t, e) {
var n = e.flowColor,
i = e.flowSpeed,
o = 0,
r = [],
a = new Uint8ClampedArray(w * w * 4);
return {
linkInfoList: t.map(function(t) {
var e = o,
s = i[t[0]] * S,
l = t[1];
l.forEach(function(t, n) {
if (r.push(t), c(a, 4 * e, t), e += 1, n < l.length - 1) for (var i = l[n + 1], o = Math.sqrt(Math.pow(i.x - t.x, 2) + Math.pow(i.y - t.y, 2)), f = Math.ceil(o / s), d = 1; d < f; d++) r.push(u(t, i, d / f)),
c(a, 4 * e, u(t, i, d / f)),
e += 1
});
var f = {
offset: o,
length: e - o,
color: n[t[0]]
};
return o = e,
f
}),
pointArray: a
}
}
function u(t, e, n) {
return {
x: Math.round(t.x * (1 - n) + e.x * n),
y: Math.round(t.y * (1 - n) + e.y * n)
}
}
function c(t, e, n) {
var i = f(n),
o = (0, h.
default)(i, 4),
r = o[0],
a = o[1],
s = o[2],
l = o[3];
t[e] = r,
t[e + 1] = a,
t[e + 2] = s,
t[e + 3] = l
}
function f(t) {
var e = t.x + 128,
n = t.y + 128;
return [e < 256 ? e: 255, e < 256 ? 0 : e - 255, n < 256 ? n: 255, n < 256 ? 0 : n - 255]
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var d = n(32),
h = i(d);
e.parse = o,
e.preParse = s,
e.interpolate = l;
var v = n(494),
p = n(690),
_ = n(687),
m = n(689),
g = i(m),
y = n(10),
x = n(686),
b = i(x),
S = .1,
w = 64
},
function(t, e, n) {
"use strict";
function i(t, e, n) {
var i = r(t, n);
if (i) {
var a = i.color,
s = i.width,
l = i.dashLength,
u = i.dashSpace,
c = i.startDistance,
f = o(t[1]); ! f || f.length < 2 || e.addLine(i, f, a, s, l, u, c)
}
}
function o(t) {
var e = [];
return t.forEach(function(t) {
e.push(t.x, t.y)
}),
e
}
function r(t, e) {
var n = l;
return {
hasDash: 0,
dashLength: 0,
dashSpace: 0,
color: e[t[0]],
width: n,
preWidth: n,
nextWidth: n,
noTerminal: 0,
startDistance: 0,
isSide: 0,
transform: {
transX: 0,
transY: 0,
scale: 1
}
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = function(t, e) {
for (var n = new s.
default,
o = 0,
r = t.length; o < r; o++) i(t[o], n, e);
return {
vertices: n.vertiesDataBuffer,
indeices: n.indicesDataBuffer,
size: n.indicesDataBuffer.length,
vertiesCount: n.vertiesDataBuffer.length,
lineCount: n.lineCount
}
};
var a = n(483),
s = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (a),
l = 3
},
function(t, e, n) {
"use strict";
function i(t) {
for (var e = [], n = t.slice(), i = null, o = 0, r = n.length; o < r; o += 2) {
if (i) {
i = {
x: i.x + n[o],
y: i.y + n[o + 1]
}
} else i = {
x: n[o],
y: n[o + 1]
};
e.push(i)
}
return e
}
function o() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [],
e = arguments[1];
t.forEach(function(t) {
t[0] instanceof Array ? t.forEach(function(t) {
t[1] = i(t[1])
}) : t[1] = i(t[1])
});
var n = e.map(function(t) {
return r.TRAFFIC_ROAD_TYPE[t]
});
return t = t.filter(function(t) {
return n.includes(t[2])
})
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.restore = o;
var r = n(281)
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
var n = t.z - e.z,
i = Math.pow(2, n);
return {
transX: (t.x - e.x * i) * t.tileSize,
transY: (t.y - e.y * i) * t.tileSize,
scale: 1 / i
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(16),
a = i(r),
s = n(0),
l = i(s),
u = n(1),
c = i(u),
f = n(300),
d = i(f),
h = n(495),
v = i(h),
p = n(23),
_ = i(p),
m = function() {
function t(e) { (0, l.
default)(this, t);
var n = d.
default.converter(e.coord);
this._batchCoord = n,
this._workerTile = new v.
default((0, a.
default)({},
e, {
coord: n
})),
this._workerTile.dataZoom = n.z + 1,
this._batchTiles = n.children().map(function(t) {
return new v.
default((0, a.
default)({},
e, {
coord: t
}))
})
}
return (0, c.
default)(t, [{
key: "parse",
value: function(t, e, n, i, o, r, a) {
function s(t, e) {
return function(t, n) {
if (t && (console.error(t), n = null), l[e] = n, (u += 1) === c.length) {
var i = l.reduce(function(t, e) {
return e && (Array.prototype.push.apply(t, e.transferableList), delete e.transferableList),
t
},
[]);
l.transferableList = i,
r(null, l)
}
}
}
if (_.
default.batchRender) return void this.batchParse.apply(this, arguments);
var l = [],
u = 0,
c = this._batchTiles;
this._batchTiles.forEach(function(r, l) {
var u = s(r.coord, l);
if (!e || !e.datas || !e.datas[l]) return void u(new Error("瓦片:" + r.coord.id + " 加载失败!"), null);
r.parse(t, e.datas[l], n, i, o, u, a)
})
}
},
{
key: "batchParse",
value: function(t, e, n, i, r, a, s) {
function l(t, e) {
if (t) return console.error(t),
void a(t);
a(null, e)
}
var u = this._batchCoord,
c = e.datas;
u.children().forEach(function(t, e) {
c[e].tileTransform = o(t, u)
}),
this._workerTile.parse(t, c, n, i, r, l, s)
}
}]),
t
} ();
e.
default = m
},
function(t, e, n) {
"use strict";
function i(t) {
return !! t && t[0] instanceof Number && !t[2]
}
e.merge = function(t) {
if (!t || !t.length) return t;
for (var e = [], n = null, o = !1, r = void 0, a = void 0, s = 0; s < t.length; s++) r = t[s],
n && i(r) && r[0] === n[0] ? o ? (a = n[1], a.push(r[1])) : (n[1] = [n[1]], a = n[1], a.push(r[1]), o = !0) : (e.push(r), o = !1, n = i(r) ? r: null);
return e
}
},
function(t, e, n) {
"use strict";
function i(t) {
for (var e = [], n = t.slice(), i = 0, o = n.length; i < o; i += 2) if (0 === e.length) e.push(n[0], n[1]);
else {
var r = e[i - 2] + n[i],
a = e[i - 1] + n[i + 1];
e.push(r, a)
}
return e
}
e.restores = function(t) {
for (var e = t || [], n = 0; n < e.length; n++) {
var o = e[n];
if (o[0] instanceof Array) for (var r = 0; r < o.length; r++) {
var a = o[r];
a[1] = i(a[1])
} else o[1] = i(o[1])
}
return t
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return t >= C.
default.maxDataZoom
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(17),
a = i(r),
s = n(27),
l = i(s),
u = n(3),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(5),
_ = i(p),
m = n(35),
g = i(m),
y = n(4),
x = i(y),
b = n(43),
S = n(249),
w = i(S),
E = n(384),
T = i(E),
A = n(10),
P = i(A),
I = n(492),
k = i(I),
L = n(90),
M = n(23),
C = i(M),
R = C.
default.batchRender,
B = function(t) {
function e(t, n, i) { (0, d.
default)(this, e);
var o = (0, _.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t, n, i));
return o._data = n.data,
o.type = L.SOURCE_TYPE.vector,
o.iconInfo = n.iconInfo || null,
o.enc = n.enc,
o.styleId = n.styleId,
o._shadowTiles = {},
o._parentTiles = {},
o._parentCache = new T.
default(0, o.unloadTile.bind(o)),
o
}
return (0, x.
default)(e, t),
(0, v.
default)(e, [{
key: "setStyleId",
value: function(t) {
this.styleId = t
}
},
{
key: "setStyleAndIconInfo",
value: function(t, e) {
this.styleId = t,
this.iconInfo = e
}
},
{
key: "clear",
value: function() {
this._shadowTiles = {},
(0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "clear", this).call(this),
this._parentTiles = {},
this._parentCache.reset()
}
},
{
key: "clearTiles",
value: function() {
var t = this;
P.
default.forIn(this._parentTiles,
function(e) {
t.removeBatchTile(e)
}),
this._cache.reset(),
this._parentCache.reset()
}
},
{
key: "reload",
value: function() {
var t = this;
this._cache.reset(),
this._parentCache.reset(),
P.
default.forIn(this._items,
function(e, n) {
t.reloadTile(n, !0)
})
}
},
{
key: "reloadTile",
value: function(t, e) { (e || t.state !== S.TILE_STATE.reloading) && (t.state = S.TILE_STATE.reloading, this.loadBatchTile(t, {},
this._tileLoaded.bind(this, t)))
}
},
{
key: "updateCacheSize",
value: function(t) { (0, g.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "updateCacheSize", this).call(this, t),
this._parentCache.setMaxSize(this._cache.max / 4)
}
},
{
key: "update",
value: function(t, e, n) {
var i = this;
this.transform = t,
this.camera = e;
var o = {},
r = {},
a = void 0,
s = void 0,
u = !0;
this.updateCacheSize(t);
var c = this.transform.zoom,
f = Math.max(c - 4, this.minZoom),
d = Math.max(c + 3, this.minZoom),
h = t.coveringTiles({
round: !0,
tileSize: this.tileSize,
minZoom: this.minZoom - 1,
maxZoom: this.maxZoom - 1,
zoom: c - 1
});
if (h.forEach(function(t) {
var e = i._parentTiles[t.id];
e && e.hasData() || (u = !1, r[t.id] = !0)
}), 0 !== P.
default.keysDifference(r, this._parentTiles).length || u || c > C.
default.maxDataZoom) {
for (var v = 0; v < h.length; v++) {
var p = h[v];
if (p.z >= C.
default.maxDataZoom) {
var _ = p.ancestor(C.
default.maxDataZoom - 1) || p;
this.addTile(_, n, null),
o[_.id] = !0
} else {
if (this.icon && p.setIconUrls(this.icon), !(a = this.addTile(p, n, null))) continue;
if (o[p.id] = !0, a.hasData()) continue;
this._findLoadedChildren(p, d, o) || (s = this.findLoadedParent(p, f, o)) && this.addTile(s.coord, n, null)
}
}
var m = P.
default.keysDifference(this._parentTiles, o),
g = !0,
y = !1,
x = void 0;
try {
for (var b, S = (0, l.
default)(m); ! (g = (b = S.next()).done); g = !0) {
var w = b.value;
this.removeBatchTile(w)
}
} catch(t) {
y = !0,
x = t
} finally {
try { ! g && S.
return && S.
return ()
} finally {
if (y) throw x
}
}
} else h.forEach(function(t) {
if (i._parentTiles[t.id].hasData()) {
var e = t.parent(d);
i.removeBatchTile(e && e.id),
t.children(d).forEach(function(t) {
i.removeBatchTile(t && t.id)
})
}
})
}
},
{
key: "_findLoadedChildren",
value: function(t, e, n) {
var i = this,
o = !1;
return P.
default.forIn(this._parentTiles,
function(r, a) {
if (! (n[r] || !a.hasData() || a.coord.z <= t.z || a.coord.z > e)) {
var s = Math.pow(2, Math.min(a.coord.z, i.maxZoom) - Math.min(t.z, i.maxZoom));
if (Math.floor(a.coord.x / s) === t.x && Math.floor(a.coord.y / s) === t.y) for (n[r] = !0, o = !0; a && a.coord.z - 1 > t.z;) {
var l = a.coord.parent(i.maxZoom).id;
a = i._parentTiles[l],
a && a.hasData() && (delete n[r], n[l] = !0)
}
}
}),
o
}
},
{
key: "findLoadedParent",
value: function(t, e, n) {
for (var i = t.z - 1; i >= e; i--) {
t = t.parent(this.maxZoom);
var o = this._parentTiles[t.id];
if (o && o.hasData()) return n[t.id] = !0,
o
}
}
},
{
key: "addTile",
value: function(t, e, n) {
var i = this;
if (P.
default.isDefined(this.styleId)) {
var r = this._parentTiles[t.id];
return r ? ((R || o(r.coord.z)) && r.hasData() && (this._items[r.coord.id] = r), r) : (r = this._parentCache.get(t.id)) ? (this._parentTiles[t.id] = r, o(t.z) || R ? this._items[t.id] = r: r.coord.children().forEach(function(t) {
var e = i._cache.get(t.id);
e && (i._items[t.id] = e)
}), r) : (r = new w.
default(t, this.tileSize), this._parentTiles[t.id] = r, (o(t.z) || R) && (this._items[t.id] = r), this.loadBatchTile(r, e, n ? n.bind(this) : this._tileLoaded.bind(this, r)), r)
}
return null
}
},
{
key: "removeBatchTile",
value: function(t) {
var e = this,
n = this._parentTiles[t];
if (n) if (o(n.coord.z) || R ? this.removeTile(n.coord.id, !0) : n.coord.children().forEach(function(t) {
return e.removeTile(t.id)
}), delete this._parentTiles[t], n.hasData()) {
var i = n.coord.id;
this._parentCache.add(i, n)
} else n.aborted = !0,
this.abortTile(n),
this.unloadTile(n)
}
},
{
key: "loadBatchTile",
value: function(t, e, n) {
function i(e, i, r) {
var s = this;
if (e) return (0, b.qos)("tile", {
id: "v",
status: 1
}),
n(e); (0, b.qos)("tile", {
id: "v",
status: 0,
time: r
}),
t.setData(i),
o(a.z) || R || a.children().forEach(function(e, n) {
t = new w.
default(e, s.tileSize),
s._items[e.id] = t,
t.setData(i[n]),
s._parentTiles[t.coord.parent().id] || s.removeTile(t.coord.id)
}),
n(null)
}
var r = t,
a = r.coord,
s = o(a.z) ? a.url(this._data.vectorSrc) : a.urlForBatchChildren(this._data.batchVectorSrc),
l = {
url: s,
uid: t.uid,
type: this.type,
source: this.getUniqueId(),
coord: a,
enc: this.enc,
styleId: this.styleId,
reason: e,
maxDataZoom: this.maxDataZoom,
sourceId: this.id,
dataFinishCallback: {
finishPromise: this.map.layerResource.loadStyle.bind(this.map.layerResource),
type: "vector.setStyleInfo"
}
};
t.workerID && t.state !== S.TILE_STATE.expired ? t.state === S.TILE_STATE.loading || this.dispatcher.send("reloadTile", l, i.bind(this), t.workerID) : t.workerID = this.dispatcher.send(o(a.z) ? "loadTile": "vector.loadBatchTile", l, i.bind(this))
}
},
{
key: "abortTile",
value: function(t) {
this.dispatcher.send("abortTile", {
uid: t.uid,
type: this.type,
source: this.getUniqueId(),
tileId: t.coord.id
},
null, t.workerID)
}
},
{
key: "unloadTile",
value: function(t) {
t.clear(),
this.dispatcher.send("removeTile", {
uid: t.uid,
type: this.type,
source: this.getUniqueId(),
tileId: t.coord.id
},
null, t.workerID)
}
},
{
key: "_tileLoaded",
value: function(t, e) {
var n = this;
e ? (t.state = S.TILE_STATE.errored, 404 !== e.status && this._fire("loaderror", {
tile: t,
error: e
})) : this._fire("data", {
dataType: "source",
tile: t
}),
(0, a.
default)(this._items).every(function(e) {
return n._items && n._items[e] && (n._items[e].getData() && n._items[e].state === S.TILE_STATE.loaded || t.state === S.TILE_STATE.errored)
}) && this._fire("tilesloaded", {
dataType: "source",
tiles: this._items
})
}
}]),
e
} (k.
default);
e.
default = B
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(283),
r = i(o),
a = n(25),
s = i(a),
l = n(282),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(699),
p = n(787),
_ = i(p),
m = n(691),
g = i(m),
y = n(10),
x = i(y),
b = n(79),
S = n(495),
w = function() {
function t(e) { (0, f.
default)(this, t),
this.actor = e,
this.loading = {},
this.loaded = {},
self._preloadPromiseCache || (self._preloadPromiseCache = {}),
self._iconIndexCache || (self._iconIndexCache = {}),
self._styleCache || (self._styleCache = {}),
this.currentStyleId = null
}
return (0, h.
default)(t, [{
key: "_toTextureCoords",
value: function(t, e, n) {
return x.
default.forIn(t,
function(i, o) {
t[i] = {
left: o[0] / e,
right: (o[0] + o[2]) / e,
top: (n - o[1]) / n,
bottom: (n - o[1] - o[3]) / n,
width: o[2],
height: o[3]
}
}),
t
}
},
{
key: "getStyleInfo",
value: function(t, e) {
this.styleMap && this.styleMap[t] && "config" !== t ? e(this.styleMap[t]) : (this.iconInfoCallbackObj = this.iconInfoCallbackObj || {},
this.iconInfoCallbackObj[t] = this.iconInfoCallbackObj[t] || [], this.iconInfoCallbackObj[t].push(e))
}
},
{
key: "setStyleInfo",
value: function(t) {
var e = t.iconInfo,
n = t.styleId;
this.styleMap = this.styleMap || {},
this.styleMap[n] = e,
this.iconInfoCallbackObj && this.iconInfoCallbackObj[n] && this.iconInfoCallbackObj[n].length > 0 && (this.iconInfoCallbackObj[n].forEach(function(t) {
t(e)
}), this.iconInfoCallbackObj[n] = null)
}
},
{
key: "_preload",
value: function() {
function t(t, n) {
return e.apply(this, arguments)
}
var e = (0, u.
default)(r.
default.mark(function t(e, n) {
var i = this;
return r.
default.wrap(function(t) {
for (;;) switch (t.prev = t.next) {
case 0:
return t.abrupt("return", s.
default.all([self._iconIndexCache[e] || (0, _.
default)(e), self._styleCache[e] || (0, v.getStyleForWorker)(e)]).then(function(t) {
return self._iconIndexCache[e] = t[0],
self._styleCache[e] = t[1],
{
iconCoords: i._toTextureCoords(t[0], n.w, n.h),
style: t[1],
iconInfoData: n
}
}));
case 1:
case "end":
return t.stop()
}
},
t, this)
}));
return t
} ()
},
{
key: "deleteCache",
value: function(t) {
null !== t && (delete self._iconIndexCache[t], delete self._styleCache[t])
}
},
{
key: "reloadTile",
value: function(t, e) {
var n = t.uid,
i = t.source,
o = this.loading[i],
r = this.loaded[i];
o[n] ? this.abortTile(t) : r[n] && this.removeTile(t),
this.loadBatchTile(t, e)
}
},
{
key: "loadBatchTile",
value: function(t, e) {
function n(n, i, s) {
return n ? (console.error(n), e(n)) : i ? this.loading[o][a] ? (delete this.loading[o][a], d.vectorTile = i, d.parse(t, i, c, u, this.actor,
function(t, n) {
e(t, n, s)
},
r), this.loaded[o] = this.loaded[o] || {},
void(this.loaded[o][a] = d)) : void e(null, null) : e(null, null)
}
var i = this,
o = t.source,
r = t.enc,
a = t.uid,
l = t.styleId,
u = void 0,
c = void 0,
f = new s.
default(function(t) {
i.currentStyleId !== l && (null !== i.currentStyleId && i.deleteCache(i.currentStyleId), i.currentStyleId = l);
var e = "" + l;
"config" === l && (delete self._preloadPromiseCache[e], i.deleteCache(l)),
i.getStyleInfo(l,
function(n) {
var o = self._preloadPromiseCache[e];
o || (c = n, o = i._preload(l, c), self._preloadPromiseCache[e] = o),
o.then(function(e) {
var i = e.iconCoords,
o = e.style;
c = n,
c.info = i,
u = o,
t()
})
})
});
this.loading[o] || (this.loading[o] = {}),
this.loading[o][a] = new g.
default(t);
var d = this.loading[o][a],
h = new s.
default(function(e) {
d.abort = i.loadVectorData(t, e)
});
s.
default.all([f, h]).then(function(t) {
n.call(i, t[1].err, t[1].data, t[1].time)
})
}
},
{
key: "loadTile",
value: function(t, e) {
function n(n, i, s) {
return n ? e(n) : i ? this.loading[o][a] ? (delete this.loading[o][a], d.vectorTile = i, d.parse(t, i, c, u, this.actor,
function(t, n) {
e(t, n, s)
},
r), this.loaded[o] = this.loaded[o] || {},
void(this.loaded[o][a] = d)) : void e(null, null) : e(null, null)
}
var i = this,
o = t.source,
r = t.enc,
a = t.uid,
l = t.styleId,
u = void 0,
c = void 0,
f = new s.
default(function(t) {
i.currentStyleId !== l && (null !== i.currentStyleId && i.deleteCache(i.currentStyleId), i.currentStyleId = l);
var e = "" + l;
"config" === l && (delete self._preloadPromiseCache[e], i.deleteCache(l)),
i.getStyleInfo(l,
function(n) {
var o = self._preloadPromiseCache[e];
o || (c = n, o = i._preload(l, c), self._preloadPromiseCache[e] = o),
o.then(function(e) {
var i = e.iconCoords,
o = e.style;
c = n,
c.info = i,
u = o,
t()
})
})
});
this.loading[o] || (this.loading[o] = {}),
this.loading[o][a] = new S(t);
var d = this.loading[o][a],
h = new s.
default(function(e) {
d.abort = i.loadVectorData(t, e)
});
s.
default.all([f, h]).then(function(t) {
n.call(i, t[1].err, t[1].data, t[1].time)
})
}
},
{
key: "abortTile",
value: function(t) {
var e = this.loading[t.source],
n = t.uid;
e && e[n] && e[n].abort && (e[n].abort(), delete e[n])
}
},
{
key: "removeTile",
value: function(t) {
var e = this.loaded[t.source],
n = t.uid;
e && e[n] && delete e[n]
}
},
{
key: "loadVectorData",
value: function(t, e) {
var n = b.getJSON(t.id, t.url,
function(t, n, i) {
e && e({
err: t,
data: n,
time: i
})
});
return function() {
e = null,
n.abort()
}
}
}]),
t
} ();
t.exports = w
},
function(t, e, n) {
"use strict";
function i() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "DEFAULT",
e = arguments[1];
return s.STYLE_ID.hasOwnProperty(t) ? r.
default.resolve(s.STYLE_ID[t]):
(0, a.checkKey)(e).then(function(e) {
var n = s.STYLE_ID.DEFAULT;
if (e && e.custom_map_style && e.custom_map_style.style_list) {
var i = parseInt(String(t).replace("style", ""));
e.custom_map_style.style_list.some(function(t) {
return i > -1 && i === t.order && (n = t.id, (0, l.cs)({
styleId: n,
subkey: e.subkey
}), !0)
}) || console.error("个性化样式 " + t + " 并未找到,已自动启用默认样式!")
}
return n
})
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(25),
r = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o),
a = n(294),
s = n(301),
l = n(43);
e.
default = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
return new f.
default(function(n) {
var i = t || 0,
o = p.
default.QMAPI_poi_icon + i,
r = -1,
l = "",
c = "";
m.
default.support() ? m.
default.get(o,
function(t) {
var f = JSON.parse(t);
r = t ? f.version: r,
l = e.replace("{id}", i).replace("{version}", r),
h.
default.getJSON(null, l,
function(t, e, l) {
if (!t && e && e.data) {
if ("{}" !== (0, u.
default)(e.data)) return s({
styleId:
i,
version: r,
time: l
}),
c = e.data,
void m.
default.set(o, (0, u.
default)(e),
function() {
n("data:image/png;base64," + c)
});
c = f.data
} else a({
styleId: i,
version: r,
err: t
}),
console.error(t, e),
c = f.data;
n("data:image/png;base64," + c)
})
}) : (l = e.replace("{id}", i).replace("{version}", r), h.
default.getJSON(null, l,
function(t, e, o) {
return ! t && e && e.data ? "{}" === (0, u.
default)(e.data) ? (a({
styleId: i,
version: r,
err: null
}), console.error(e), void n(null)) : (s({
styleId: i,
version: r,
time: o
}), c = e.data, void n("data:image/png;base64," + c)) : (a({
styleId: i,
version: r,
err: t
}), console.error(t, e), void n(null))
}))
})
}
function r(t) {
var e = t.data,
n = t.styleId,
i = t.iconSrc;
return new f.
default(function(t) {
e && "string" == typeof e ? m.
default.support() ? m.
default.set(y, (0, u.
default)({
data:
e
}),
function() {
t("data:image/png;base64," + e)
}) : (console.error("兼容性错误当前浏览器不支持LocalStorage。"), t(null)) : o(n, i).then(function(e) {
m.
default.support() ? m.
default.set(y, (0, u.
default)(e),
function() {
t(e)
}) : (console.error("兼容性错误当前浏览器不支持LocalStorage。"), t(null))
})
})
}
function a(t) {
var e = t.styleId,
n = t.version,
i = t.err; (0, g.qos)("icon", {
styleId: e,
version: n,
error: i && i.status || 0
})
}
function s(t) {
var e = t.styleId,
n = t.version,
i = t.time; (0, g.qos)("icon", {
styleId: e,
version: n,
loadTime: i
})
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.setPoiIcon = e.loadPoiIconFile = void 0;
var l = n(113),
u = i(l),
c = n(25),
f = i(c),
d = n(79),
h = i(d),
v = n(137),
p = i(v),
_ = n(89),
m = i(_),
g = n(43),
y = p.
default.QMAPI_poi_icon + "config";
e.loadPoiIconFile = o,
e.setPoiIcon = r
},
function(t, e, n) {
"use strict";
function i(t) {
var e = ["background_color", "font_color", "color_fill", "color_side", "color_border"]; ["regionStyles", "lineStyles", "pointStyles", "labelStyles", "arrowStyles"].forEach(function(n) {
var i = t[n];
a(i,
function(t, n) {
n.forEach(function(t) {
e.forEach(function(e) {
e in t && (t[e] = r(t[e]))
})
})
})
})
}
var o = n(10),
r = o.colorToRGBA,
a = o.forIn;
t.exports = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = {};
return [v.BASE_LAYER_TYPE.region, v.BASE_LAYER_TYPE.line, v.BASE_LAYER_TYPE.label, v.BASE_LAYER_TYPE.point, v.BASE_LAYER_TYPE.arrow].forEach(function(n) {
e[n] = {
type: n,
style: t[n + "Styles"]
}
}),
e.point.relyStyle = e.label.style,
e.point.relyStyleField = "labelid",
e
}
function r(t) {
var e, n = (e = {},
(0, f.
default)(e, v.BASE_LAYER_TYPE.region, t.region.style), (0, f.
default)(e, v.BASE_LAYER_TYPE.line, t.line.style), e),
i = {};
return m.
default.forIn(n,
function(t, e) {
m.
default.forIn(e,
function(e, n) {
var o = n[0];
if (o) {
var r = o.stylename;
i[e] = i[e] || {
id: e,
name: r,
type: t,
styles: {}
};
for (var a = i[e], s = 0, l = n.length; s < l; s++) o = n[s],
a.styles[o.minScaleVal + "-" + o.maxScaleVal] = o
}
})
}),
i
}
function a(t) {
g(t);
var e = o(t);
return {
style: e,
layerMeta: r(e),
styleTag: t.Tag
}
}
function s(t) {
return new u.
default(function(e) {
var n = null,
i = null;
if (y.support()) {
var o = h.
default.QMAPI_style + t;
y.get(o,
function(o) {
o ? (n = JSON.parse(o).data, i = a(n), i.styleId = t, e(i)) : (0, p.loadStyleFileFromServer)({
styleId: t,
version: -1
}).then(function(n) {
i = a(n.data),
i.styleId = t,
e(i)
})
})
} else(0, p.loadStyleFileFromServer)({
styleId: t,
version: -1
}).then(function(n) {
i = a(n.data),
i.styleId = t,
e(i)
})
})
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var l = n(25),
u = i(l),
c = n(222),
f = i(c);
e.parseStyle = a,
e.getStyleForWorker = s;
var d = n(137),
h = i(d),
v = n(66),
p = n(385),
_ = n(10),
m = i(_),
g = n(698),
y = n(89)
},
, , , , , , , , , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.animatableMap = void 0;
var o = n(16),
r = i(o),
a = n(470),
s = n(10),
l = i(s),
u = {
startAnimation: function(t, e) {
this.stopMoving(),
this._prepareMoving();
var n = {
center: this.getCenter(),
zoom: this.getZoom(),
pitch: this.getPitch(),
rotation: this.getRotation()
};
this._animate(t, {
onFrame: function(t) {
var e = t.percentage,
n = t.frame,
i = this.transform;
l.
default.forIn(n,
function(t, e) {
switch (t) {
case "percentage":
break;
case "rotation":
i.heading = -e;
break;
default:
i[t] = e
}
}),
this.emit("animation_playing", {
percentage: e,
frame: n
}),
this._fireMoveEvents()
},
onEnd: function() {
this.emit("animation_ended"),
this._moveToEnd()
},
onLoop: function(t) {
this.emit("animation_looped", t)
},
onStop: function() {
this.emit("animation_stopped"),
this._moveToEnd()
},
onPause: function() {
this._moveToEnd()
}
},
e, n)
},
stopAnimation: function() {
this._stopAnimate()
},
pauseAnimation: function() {
this._pauseAnimate()
},
resumeAnimation: function() {
this._resumeAnimate()
}
};
e.animatableMap = (0, r.
default)(u, a.animatableMixin)
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
var n = document.createElement(t);
return n.style.cssText = e,
n
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(3),
a = i(r),
s = n(0),
l = i(s),
u = n(1),
c = i(u),
f = n(5),
d = i(f),
h = n(4),
v = i(h),
p = n(390),
_ = i(p),
m = n(47),
g = i(m),
y = n(10),
x = n(41),
b = i(x),
S = n(29),
w = n(28),
E = n(43),
T = b.
default.isString,
A = b.
default.isNumber,
P = b.
default.isObject,
I = ["position:absolute;", "left:0;top:0;", "padding:0px 0px 6px;"],
k = ["min-width:100px;", "white-space:nowrap;", "background-color:white;", "text-align:center;", "padding:25px 10px 12px;", "border-radius:6px;", "box-shadow:0 2px 4px 0 rgba(0,0,0,0.15);"],
L = ["width:10px;height:10px;", "background-color:white;", "transform:rotate(45deg);", "position:absolute;", "bottom:1px;", "left:0;right:0;", "margin:auto;", "box-shadow:2px 2px 2px rgba(0,0,0,0.15);"],
M = ["width:15px;height:15px;", "position:absolute;", "right:5px;top:5px;", "cursor:pointer;"],
C = {
x: 0,
y: 0
},
R = function(t) {
function e(t) {
return (0, l.
default)(this, e),
(0, d.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, t || {}))
}
return (0, v.
default)(e, t),
(0, c.
default)(e, [{
key: "onInit",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.content = "",
this.zIndex = 0,
this.offset = C,
this.enableCustom = !!t.enableCustom && t.enableCustom,
this._handlers = [],
this._domResizeObserver = null,
this.setContent(t.content).setZIndex(t.zIndex).setOffset(t.offset).setPosition(t.position),
(0, E.statCn)("InfoWindow")
}
},
{
key: "onDestroy",
value: function() {
this._handlers.forEach(function(t) {
t && t.remove()
}),
this._domResizeObserver && this._domResizeObserver.disconnect()
}
},
{
key: "createDOM",
value: function() {
var t = this;
if (this.enableCustom) return this.dom;
var e = o("div", k.join(""));
e.innerHTML = this.content,
window.ResizeObserver && (this._domResizeObserver = new ResizeObserver(function() {
t.updateDOM()
}), this._domResizeObserver.observe(e));
var n = o("div", L.join("")),
i = o("div", M.join(""));
i.innerHTML = '<svg style="fill: #aaa;overflow: hidden;" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">\n<path d="M579.888 512l190.064-190.064a48 48 0 0 0-67.888-67.872L512 444.112 321.936 254.064a48 48 0 1 0-67.872 67.872L444.112 512 254.064 702.064a48 48 0 1 0 67.872 67.872L512 579.888l190.064 190.064a48 48 0 0 0 67.872-67.888L579.888 512z" fill></path>\n</svg>',
this._handlers.push((0, w.on)(i, "click,touchend",
function() {
t.emit("closeclick"),
t.close()
}));
var r = o("div", I.join(""));
return r.appendChild(e),
r.appendChild(n),
r.appendChild(i),
r.style.zIndex = this.zIndex,
this._handlers.push((0, w.on)(r, "click, touchstart, touchend",
function(t) {
t && t.stopPropagation && t.stopPropagation()
})),
r
}
},
{
key: "updateDOM",
value: function() {
if (this.map) {
var t = this.map.projectToContainer(this.position),
e = this.offset.x || 0,
n = this.offset.y || 0,
i = t.x - this.dom.clientWidth / 2 + e + "px",
o = t.y - this.dom.clientHeight + n + "px";
this.dom.style.transform = "translate(" + i + ", " + o + ")"
}
}
},
{
key: "close",
value: function() {
return this.dom && (this.dom.style.display = "none"),
this
}
},
{
key: "open",
value: function() {
return this.dom && (this.dom.style.display = "", this.updateDOM()),
this
}
},
{
key: "setPosition",
value: function(t) {
return t instanceof g.
default ? (this.position = t, this.updateDOM()) : console.error("类型错误: InfoWindow.position参数类型错误应为TMap.LatLng。"),
this
}
},
{
key: "getPosition",
value: function() {
return this.position
}
},
{
key: "setContent",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "";
if (!T(t)) return new S.BaseTypeError("InfoWindow.content", "string", t).error(),
this;
if (this.enableCustom) {
this._removeFromMap(),
this.content = t;
var e = (new DOMParser).parseFromString(t, "text/html").body.firstElementChild;
if (e) return this.dom && (e.style.cssText = this.dom.style.cssText),
this.dom = e,
this.dom.style.position = "absolute",
this._addToMap(),
this;
this.enableCustom = !1,
console.error("自定义信息窗体解析错误: content内容无法被解析为DOM将自动转为默认样式。")
}
return this.content = t,
this.dom && (this.dom.firstElementChild.innerHTML = this.content, this.updateDOM()),
this
}
},
{
key: "setZIndex",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 0;
return A(t) ? (this.zIndex = t, this.dom && (this.dom.style.zIndex = this.zIndex), this) : (new S.BaseTypeError("InfoWindow.zIndex", "number", t).error(), this)
}
},
{
key: "setOffset",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : C;
return P(t) ? (t = (0, y.extend)({},
C, t), A(t.x) ? A(t.y) ? (this.offset = t, this.dom && this.updateDOM(), this) : (new S.BaseTypeError("InfoWindow.offset.y", "number", t.y).error(), this) : (new S.BaseTypeError("InfoWindow.offset.x", "number", t.x).error(), this)) : (new S.BaseTypeError("InfoWindow.offset", "object", t).error(), this)
}
}]),
e
} (_.
default);
e.
default = R
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(223),
r = i(o),
a = n(17),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(35),
m = i(_),
g = n(4),
y = i(g),
x = n(47),
b = i(x),
S = n(338),
w = i(S),
E = n(220),
T = n(66),
A = n(476),
P = n(41),
I = i(P),
k = n(218),
L = k.CircleStyle,
M = I.
default.isValidColor,
C = I.
default.isNumber,
R = function(t) {
function e(t) {
return (0, f.
default)(this, e),
(0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t))
}
return (0, y.
default)(e, t),
(0, h.
default)(e, [{
key: "_setGeometryType",
value: function() {
this._geometryType = E.GEOMETRY_TYPES.CIRCLE,
this._layerType = T.RENDER_LAYER_TYPE.circle,
this._className = "MultiCircle"
}
},
{
key: "_checkGeometries",
value: function() { (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []).forEach(function(t, e) {
t ? t.center && t.center instanceof b.
default ? !t.radius || !C(t.radius) || t.radius <= 0 ? console.error("MultiCircle.geometries: 希望传入CircleGeometry数组实际第" + e + "元素的radius属性无效") : (t.styleId || (t.styleId = "default"), t._valid = !0) : console.error("MultiCircle.geometries: 希望传入CircleGeometry数组实际第" + e + "元素的center属性无效") : console.error("MultiCircle.geometries: 希望传入CircleGeometry数组实际第" + e + "元素不存在!")
})
}
},
{
key: "_getDefaultStyle",
value: function() {
return new L
}
},
{
key: "_checkStyles",
value: function(t) { (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_checkStyles", this).call(this, t),
(0, s.
default)(t).forEach(function(e) {
var n = t[e];
n && n instanceof L ? n instanceof L && (M(n.color) ? M(n.borderColor) || console.error("MultiCircle.styles: 样式id ", e, " 对应的PolygonStyle.borderColor属性无效", n) : console.error("MultiCircle.styles: 样式id ", e, " 对应的PolygonStyle.color属性无效", n)) : console.error("MultiCircle.styles: 样式id ", e, "希望传入CircleStyle实例实际传入", n)
})
}
},
{
key: "_transferFromGeometry",
value: function(t) {
return (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_transferFromGeometry", this).call(this, t).map(function(t) {
var e = t.center,
n = t.radius;
if (t._valid) return (0, r.
default)({},
t, {
paths: (0, A.getCirclePath)(e, n)
})
}).filter(function(t) {
return !! t
})
}
},
{
key: "_getAllPoints",
value: function() {
return this.getGeometries().map(function(t) {
return t.center
})
}
},
{
key: "_getAllSegments",
value: function() {
return []
}
}]),
e
} (w.
default);
t.exports = R
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(223),
r = i(o),
a = n(17),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(35),
m = i(_),
g = n(4),
y = i(g),
x = n(47),
b = i(x),
S = n(338),
w = i(S),
E = n(220),
T = n(66),
A = n(477),
P = n(41),
I = i(P),
k = n(218),
L = k.EllipseStyle,
M = I.
default.isValidColor,
C = I.
default.isNumber,
R = function(t) {
function e(t) {
return (0, f.
default)(this, e),
(0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t))
}
return (0, y.
default)(e, t),
(0, h.
default)(e, [{
key: "_setGeometryType",
value: function() {
this._geometryType = E.GEOMETRY_TYPES.ELLIPSE,
this._layerType = T.RENDER_LAYER_TYPE.ellipse,
this._className = "MultiEllipse"
}
},
{
key: "_checkGeometries",
value: function() { (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []).forEach(function(t, e) {
t ? t.center && t.center instanceof b.
default ? !t.majorRadius || !C(t.majorRadius) || t.majorRadius <= 0 ? console.error("MultiEllipse.geometries: 希望传入EllipseGeometry数组实际第" + e + "元素的majorRadius属性无效") : !t.minorRadius || !C(t.minorRadius) || t.minorRadius <= 0 ? console.error("MultiEllipse.geometries: 希望传入EllipseGeometry数组实际第" + e + "元素的minorRadius属性无效") : (t.styleId || (t.styleId = "default"), t._valid = !0) : console.error("MultiEllipse.geometries: 希望传入EllipseGeometry数组实际第" + e + "元素的center属性无效") : console.error("MultiEllipse.geometries: 希望传入EllipseGeometry数组实际第" + e + "元素不存在!")
})
}
},
{
key: "_getDefaultStyle",
value: function() {
return new L
}
},
{
key: "_checkStyles",
value: function(t) { (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_checkStyles", this).call(this, t),
(0, s.
default)(t).forEach(function(e) {
var n = t[e];
n && n instanceof L ? n instanceof L && (M(n.color) ? M(n.borderColor) || console.error("MultiEllipse.styles: 样式id ", e, " 对应的EllipseStyle.borderColor属性无效", n) : console.error("MultiEllipse.styles: 样式id ", e, " 对应的EllipseStyle.color属性无效", n)) : console.error("MultiEllipse.styles: 样式id ", e, "希望传入EllipseStyle实例实际传入", n)
})
}
},
{
key: "_transferFromGeometry",
value: function(t) {
return (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_transferFromGeometry", this).call(this, t).map(function(t) {
var e = t.center,
n = t.majorRadius,
i = t.minorRadius;
if (t._valid) return (0, r.
default)({},
t, {
paths: (0, A.getEllipsePath)(e, n, i)
})
}).filter(function(t) {
return !! t
})
}
},
{
key: "_getAllPoints",
value: function() {
return this.getGeometries().map(function(t) {
return t.center
})
}
},
{
key: "_getAllSegments",
value: function() {
return []
}
}]),
e
} (w.
default);
t.exports = R
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(17),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(47),
y = i(g),
x = n(303),
b = i(x),
S = n(391),
w = i(S),
E = n(220),
T = n(66),
A = n(41),
P = i(A),
I = P.
default.isNumber,
k = P.
default.isUndefined,
L = function(t) {
function e(t) {
return (0, u.
default)(this, e),
(0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t))
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "_initialize",
value: function(t) {
var e = t.enableCollision,
n = void 0 !== e && e;
this.enableCollision = n
}
},
{
key: "_createLayer",
value: function() { (0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "_createLayer", this).call(this),
this.layer._enableCollision = !!this.enableCollision
}
},
{
key: "_setGeometryType",
value: function() {
this._geometryType = E.GEOMETRY_TYPES.LABEL,
this._layerType = T.RENDER_LAYER_TYPE.label,
this._className = "MultiLabel"
}
},
{
key: "_checkGeometries",
value: function() { (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []).forEach(function(t, e) {
t ? t.styleId ? t.position && t.position instanceof y.
default ? t.content ? k(t.rank) || I(t.rank) || console.error("MultiLabel.geometries: 希望传入LabelGeometry数组实际第" + e + "元素的rank属性无效!") : console.error("MultiLabel.geometries: 希望传入LabelGeometry数组实际第" + e + "元素的content属性无效!") : console.error("MultiLabel.geometries: 希望传入LabelGeometry数组实际第" + e + "元素的position属性无效") : t.styleId = "default": console.error("MultiLabel.geometries: 希望传入LabelGeometry数组实际第" + e + "元素不存在!")
})
}
},
{
key: "_getDefaultStyle",
value: function() {
return new w.
default
}
},
{
key: "_checkStyles",
value: function(t) { (0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "_checkStyles", this).call(this, t),
(0, r.
default)(t).forEach(function(e) {
var n = t[e];
n && n instanceof w.
default || console.error("MultiLabel.styles: 样式id ", e, "希望传入LabelStyle实例实际传入", n)
})
}
}]),
e
} (b.
default);
t.exports = L
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(17),
r = i(o),
a = n(16),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(35),
m = i(_),
g = n(4),
y = i(g),
x = n(140),
b = i(x),
S = n(376),
w = n(399),
E = i(w),
T = n(10),
A = n(74),
P = i(A),
I = n(47),
k = i(I),
L = n(303),
M = i(L),
C = n(220),
R = n(66),
B = n(505),
N = function(t) {
return "number" == typeof t && !(0, b.
default)(t)
},
O = function(t) {
function e(t) { (0, f.
default)(this, e);
var n = (0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t));
return (0, s.
default)(n, S.easableMixin),
n._movingState = null,
n._pausedState = null,
n
}
return (0, y.
default)(e, t),
(0, h.
default)(e, [{
key: "_initialize",
value: function(t) {
var e = t.enableCollision,
n = void 0 !== e && e;
this.enableCollision = n
}
},
{
key: "_createLayer",
value: function() { (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_createLayer", this).call(this),
this.layer._enableCollision = !!this.enableCollision
}
},
{
key: "_setGeometryType",
value: function() {
this._geometryType = C.GEOMETRY_TYPES.POINT,
this._layerType = R.RENDER_LAYER_TYPE.marker,
this._className = "MultiMarker"
}
},
{
key: "_checkGeometries",
value: function() { (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []).forEach(function(t, e) {
t ? t.styleId || (t.styleId = "default") : console.error("MultiMarker.geometries: 希望传入PointGeometry数组实际第" + e + "元素不存在!"),
t.position && t.position instanceof k.
default || console.error("MultiMarker.geometries: 希望传入PointGeometry数组实际第" + e + "元素的position属性无效")
})
}
},
{
key: "_getDefaultStyle",
value: function() {
return new B
}
},
{
key: "_checkStyles",
value: function(t) { (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_checkStyles", this).call(this, t),
(0, r.
default)(t).forEach(function(e) {
var n = t[e];
n && n instanceof B ? n.width && n.width > 0 && n.width % 1 == 0 ? n.height && n.height > 0 && n.height % 1 == 0 ? n.src || console.error("MultiMarker.styles: 样式id ", e, " 对应的MarkerStyle.src属性无效", n) : console.error("MultiMarker.styles: 样式id ", e, " 对应的MarkerStyle.height属性无效", n) : console.error("MultiMarker.styles: 样式id ", e, " 对应的MarkerStyle.width属性无效", n) : console.error("MultiMarker.styles: 样式id ", e, "希望传入MarkerStyle实例实际传入", n)
})
}
},
{
key: "moveAlong",
value: function(t) {
var e = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
i = n.autoRotation,
o = void 0 !== i && i;
if (!this.getMap()) return this;
this.stopMove();
var a = {},
l = this.map.transform.getDistanceScales(),
u = l.pixelsPerMeter,
c = l.pixelsPerDegree,
f = [c[0] / u[0], c[1] / u[1]];
try { (0, r.
default)(t).forEach(function(n) {
if (! (n in e._idSet)) return void console.warn("MultiMarker中并不存在id为: " + n + "的点!");
var i = t[n],
o = i.path,
r = i.duration,
s = i.speed;
if (e._checkMoveAlongParams(i, n)) {
var l = [],
u = 0,
c = 0;
if (o.forEach(function(t, e, n) {
if (e !== n.length - 1) {
var i = void 0;
n[e + 1].lng * t.lng < 0 && (i = t.lng / Math.abs(t.lng) * (180 - Math.abs(n[e + 1].lng)) + (180 - Math.abs(t.lng)));
var o = new P.
default((i || n[e + 1].lng - t.lng) * f[0], (n[e + 1].lat - t.lat) * f[1]),
r = o.mag();
u += r,
l.push({
angle: o.angle(),
segDistance: r,
start: t,
end: n[e + 1],
radio: null,
totalRadio: null
})
}
}), 0 === u) return void console.error("moveAlong方法中id为" + n + "对应的path计算得到的总长度为0");
var d = s / 3.6,
h = r || u / d * 1e3;
l.forEach(function(t) {
t.radio = t.segDistance / u,
c += t.radio,
t.totalRadio = c,
t.pendingTime = t.radio * h,
t.totalPendingTime = t.totalRadio * h,
t.totalDistance = u
}),
a[n] = {
segmentInfos: l,
pendingTime: h,
curSeg: 0,
geometry: e._rawGeometries[e._idSet[n]],
param: i
}
}
})
} catch(t) {
console.error("moveAlong数据解析出错请检查传入参数是否合法", t)
}
this._moveParamSet = t;
var d = [],
h = 0;
return (0, r.
default)(a).forEach(function(e) {
var n = a[e].geometry;
n.position.equals(t[e].path[0]) || d.push((0, s.
default)({},
n, {
position: t[e].path[0]
})),
h = h > a[e].pendingTime ? h: a[e].pendingTime
}),
d.length > 0 && this.updateGeometries(d),
this._startMoveAnimation(a, {
duration: h,
startTime: 0,
autoRotation: o
}),
this
}
},
{
key: "_checkMoveAlongParams",
value: function(t, e) {
var n = t.path,
i = t.duration,
o = t.speed,
r = void 0 !== i,
a = void 0 !== o;
return Array.isArray(n) && n.length > 0 ? r || a ? r && (!N(i) || i <= 0) ? (console.error("moveAlong方法中id为" + e + "对应的duration: " + i + "不合法!"), !1) : !(a && (!N(o) || o <= 0)) || (console.error("moveAlong方法中id为" + e + "对应的speed: " + o + "不合法!"), !1) : (console.error("moveAlong方法中id为" + e + "对应的duration和speed均未定义!"), !1) : (console.error("moveAlong方法中id为" + e + "对应的path: " + n + "不合法!"), !1)
}
},
{
key: "_startMoveAnimation",
value: function(t) {
var e = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
i = n.duration,
o = void 0 === i ? 0 : i,
a = n.startTime,
l = void 0 === a ? 0 : a,
u = n.autoRotation,
c = void 0 !== u && u,
f = this._moveParamSet;
this._ease(function(n) {
var i = [],
a = {},
u = l + n * o; (0, r.
default)(t).forEach(function(n) {
var o = t[n],
r = o.segmentInfos[o.curSeg];
if (r) {
for (; u > r.totalPendingTime && (o.curSeg += 1, r = o.segmentInfos[o.curSeg]););
if (r) {
var l = new k.
default(0, 0),
d = (u + r.pendingTime - r.totalPendingTime) / r.pendingTime;
if (l.lat = (0, E.
default)(r.start.lat, r.end.lat, d), l.lng = (0, E.
default)(r.start.lng, r.end.lng, d), r.start.lng * r.end.lng < 0) {
var h = r.start.lng,
v = r.end.lng,
p = (180 - Math.abs(h)) / (180 - Math.abs(h) + (180 - Math.abs(v)));
l.lng = d <= p ? d / p * (180 - Math.abs(h)) * (h / Math.abs(h)) + h: v / Math.abs(v) * (180 - (d - p) / (1 - p) * (180 - Math.abs(v)))
}
o.geometry.position = l;
var _ = o.geometry.styleId && 0 === e.styles[o.geometry.styleId].faceTo;
c && _ && (o.geometry.properties = (0, s.
default)({},
o.geometry.properties, {
$angle: (0, T.radianToDegree)(r.angle) - 90
}));
var m = f[n].path.slice(0, o.curSeg + 1);
m.push(l),
a[n] = {
passedLatLngs: m,
angle: o.geometry.properties && o.geometry.properties.$angle
},
i.push(o.geometry)
}
}
}),
e._movingState = {
moveAlongProcessed: t,
time: u,
left: (1 - n) * o,
autoRotation: c
},
e.updateGeometries(i);
var d = e.getMap();
d && d._changeFPS(),
e.emit("moving", a)
},
function() {
e._movingState = null,
e._pausedState = null,
e.emit("move_ended", f)
},
function() {
e._movingState && (e.emit("move_stopped", f), e._pausedState = null, e._movingState = null)
},
{
easing: T.linearEase,
animate: !0,
duration: o
})
}
},
{
key: "stopMove",
value: function() {
return this._abortFn && (this._abortFn(), this._abortFn = null),
this._finishFn = null,
this
}
},
{
key: "pauseMove",
value: function() {
return this._movingState && (this._pausedState = this._movingState, this._movingState = null, this.stopMove(), this.emit("move_paused")),
this
}
},
{
key: "resumeMove",
value: function() {
if (this._pausedState) {
var t = this._pausedState,
e = t.moveAlongProcessed,
n = t.autoRotation,
i = t.time,
o = t.left;
this._startMoveAnimation(e, {
duration: o,
autoRotation: n,
startTime: i
}),
this._pausedState = null,
this._movingState = null,
this.emit("move_resumed")
}
return this
}
},
{
key: "_getAllPoints",
value: function() {
return this.getGeometries().map(function(t) {
return t.position
})
}
}]),
e
} (M.
default);
t.exports = O
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(223),
r = i(o),
a = n(17),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(35),
m = i(_),
g = n(4),
y = i(g),
x = n(338),
b = i(x),
S = n(220),
w = n(66),
E = n(331),
T = n(41),
A = i(T),
P = n(209),
I = i(P),
k = n(218),
L = k.RectangleStyle,
M = A.
default.isValidColor,
C = A.
default.isNumber,
R = A.
default.isValidLatLng,
B = function(t) {
function e(t) {
return (0, f.
default)(this, e),
(0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t))
}
return (0, y.
default)(e, t),
(0, h.
default)(e, [{
key: "_setGeometryType",
value: function() {
this._geometryType = S.GEOMETRY_TYPES.RECTANGLE,
this._layerType = w.RENDER_LAYER_TYPE.rectangle,
this._className = "MultiRectangle"
}
},
{
key: "_checkGeometries",
value: function() { (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []).forEach(function(t, e) {
t ? t.center && t.center instanceof TMap.LatLng ? !t.width || !C(t.width) || t.width <= 0 ? console.error("MultiRectangle.geometries: 希望传入RectangleGeometry数组实际第" + e + "元素的width属性无效") : !t.height || !C(t.height) || t.height <= 0 ? console.error("MultiRectangle.geometries: 希望传入RectangleGeometry数组实际第" + e + "元素的height属性无效") : (t.styleId || (t.styleId = "default"), t._valid = !0) : console.error("MultiRectangle.geometries: 希望传入RectangleGeometry数组实际第" + e + "元素的center属性无效") : console.error("MultiRectangle.geometries: 希望传入RectangleGeometry数组实际第" + e + "元素不存在!")
})
}
},
{
key: "_getDefaultStyle",
value: function() {
return new L
}
},
{
key: "_checkStyles",
value: function(t) { (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_checkStyles", this).call(this, t),
(0, s.
default)(t).forEach(function(e) {
var n = t[e];
n && n instanceof L ? n instanceof L && (M(n.color) ? M(n.borderColor) || console.error("MultiRectangle.styles: 样式id ", e, " 对应的RectangleStyle.borderColor属性无效", n) : console.error("MultiRectangle.styles: 样式id ", e, " 对应的RectangleStyle.color属性无效", n)) : console.error("MultiRectangle.styles: 样式id ", e, "希望传入RectangleStyle实例实际传入", n)
})
}
},
{
key: "_transferFromGeometry",
value: function(t) {
return (0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "_transferFromGeometry", this).call(this, t).map(function(t) {
var e = t.center,
n = t.width,
i = t.height;
if (t._valid) return (0, r.
default)({},
t, {
paths: (0, E.getRectanglePath)(e, n, i)
})
}).filter(function(t) {
return !! t
})
}
}], [{
key: "getBounds",
value: function(t) {
if (!t) return void console.error("geometry参数无效,预期是RectangleGeometry对象实际传入", t);
var e = t.center,
n = t.width,
i = t.height;
if (!e || !R(e)) return void console.error("RectangleGeometry.center 属性无效,预期是符合要求的经纬度坐标,实际传入:", e);
if (!C(n) || n <= 0) return void console.error("RectangleGeometry.width 属性无效,预期是正数,实际传入:", n);
if (!C(i) || i <= 0) return void console.error("RectangleGeometry.height 属性无效,预期是正数,实际传入:", i);
var o = (0, E.getRectanglePath)(e, n, i);
return new I.
default(o[2], o[0])
}
}]),
e
} (b.
default);
t.exports = B
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(390),
p = i(v),
_ = n(558),
m = i(_),
g = n(296),
y = function(t) {
function e() {
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).apply(this, arguments))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "onInit",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.count = t.count,
this.instance = t.instance,
this.position = this.instance.center || this.instance.position,
this.zoomOnClick = t.zoomOnClick,
this._handlers = [],
this.visible = !0
}
},
{
key: "createDOM",
value: function() {
var t = this,
e = document.createElement("div");
return this.instance && this._updateContent(e),
this.finger = new g.Finger(e, {
preventDefaultMove: !0,
preventDefaultEnd: !0
}),
this.finger.on("tap",
function() {
t.instance.geometries && t.visible && t.zoomOnClick && t.map.fitBounds(t.instance.bounds),
t.emit("overlay-click", t.instance)
}),
e
}
},
{
key: "updateContent",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
return this.count = t.count,
this.instance = t.instance,
this.position = this.instance.center || this.instance.position,
this._updateContent(this.dom),
this.updateDOM(),
this.map !== t.map && this.setMap(t.map),
this
}
},
{
key: "_updateContent",
value: function(t) {
if (1 === this.count) {
t.textContent = "",
t.style.cssText = ["position:absolute;", "width: 32px;", "height: 32px;"].join(" ");
var e = document.createElement("img");
e.height = 32,
e.src = m.
default,
e.style.cssText = ["position: absolute;", "bottom: 16px;"].join(" "),
t.appendChild(e)
} else t.style.cssText = "\n\t\t\tposition: absolute;\n\t\t\twidth: 40px;\n\t\t\theight: 40px;\n\t\t\tborder-radius: 40px;\n\t\t\tbackground-color: green;\n\t\t\ttransform: translate3d(718.348px, 395.68px, 0px);\n\t\t\ttext-align: center;\n\t\t\tline-height: 40px;\n\t\t\tbox-shadow: 0 1px 1px 0 rgba(0,0,0,0.2);\n\t\t\tborder: 1px solid #3875FF;\n\t\t\tbackground-color: rgba(227,235,255,0.9);\n\t\t\tfont-size: 14px;\n\t\t\tcolor: #1D63FF;",
t.textContent = this.count
}
},
{
key: "updateDOM",
value: function() {
if (this.map && this.visible) {
var t = this.map.projectToContainer(this.position),
e = t.getX() - 20 + "px",
n = t.getY() - 20 + "px";
this.dom.style.transform = "translate3d(" + e + ", " + n + ", 0px)"
}
}
},
{
key: "setVisible",
value: function(t) {
return this.visible = !!t,
this.dom.style.display = this.visible ? "": "none",
this
}
},
{
key: "onDestroy",
value: function() {
this._handlers.forEach(function(t) {
return t.remove()
}),
this.finger && this.finger.destroy(),
this.removeAllListeners(),
this.count = null,
this.instance = null,
this.position = null,
this.dom = null,
this.visible = null
}
}]),
e
} (p.
default);
e.
default = y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(113),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(23),
y = i(g),
x = n(478),
b = i(x),
S = n(504),
w = i(S),
E = n(666),
T = i(E),
A = n(28),
P = i(A),
I = n(10),
k = i(I),
L = n(47),
M = i(L),
C = n(733),
R = i(C),
B = n(29),
N = n(43),
O = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this));
return n.id = t.id || k.
default.uniqueId(),
n._defaultMarkers = [],
n.clusters = [],
n._overlayList = [],
n._eventHandlers = [],
n._ready = !1,
n._prevZoom = null,
n._cacheCluster = n.clusters,
n.zIndex = t.zIndex || null,
n.enableDefaultStyle = !1 !== t.enableDefaultStyle,
n.minimumClusterSize = t.minimumClusterSize || 2,
n.zoomOnClick = !!n.enableDefaultStyle && !1 !== t.zoomOnClick,
n.gridSize = t.gridSize || 60,
n.averageCenter = !1 !== t.averageCenter,
n.maxZoom = k.
default.clamp(t.maxZoom || y.
default.maxZoom, y.
default.minZoom, y.
default.maxZoom),
n._checkGeometries(t.geometries),
n._rawGeometries = n._assignIdToGeometry(t.geometries),
n._idSet = n._updateGeometryIdSet(n._rawGeometries),
n.geometries = n._rawGeometries,
t.map && n.setMap(t.map),
(0, N.statCn)("Map"),
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "setMap",
value: function(t) {
return t === this.map ? this: null === t || t instanceof window.TMap.Map ? (t ? this.map ? (this.setMap(null), this.setMap(t)) : this.id && t.getLayer(this.id) ? console.error("Map中已存在id为" + this.id + "的图层,无法重复添加") : (this.map = t, this._bindEventHandler(), this._createLayer(), this._ready = !0, this._redraw()) : (this._removeEventHander(), this._removeLayer(), this._overlayList.forEach(function(t) {
return t.setMap(null)
}), this.map = null, this._ready = !1), this) : (console.error("所传入参数并非TMap.Map的实例"), this)
}
},
{
key: "setGeometries",
value: function(t) {
return Array.isArray(t) ? t === this._rawGeometries ? this: ((0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "setGeometries", this).call(this, t, this.styles), this) : (new B.BaseTypeError("geometries", "Array", t).error(), this)
}
},
{
key: "updateGeometries",
value: function(t, n) {
return t ? ((0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "updateGeometries", this).call(this, t, n), this) : this
}
},
{
key: "_bindEventHandler",
value: function() {
var t = this;
this._eventHandlers.push(P.
default.on(this.map, "zoom",
function() {
var e = k.
default.round(t.map.getZoom(), 1);
t._prevZoom !== e && (t._prevZoom = e, t._resetViewport())
})),
this._eventHandlers.push(P.
default.on(this.map, "idle",
function() {
t._redraw()
})),
this._eventHandlers.push(P.
default.on(this, "geometry_changed",
function() {
t.map && (t.map && t.map.getSource(t.id).setData(t.geometries), t._resetViewport(), t._redraw())
}))
}
},
{
key: "_removeEventHander",
value: function() {
this._eventHandlers.forEach(function(t) {
return t.remove()
})
}
},
{
key: "getMap",
value: function() {
return this.map
}
},
{
key: "_createLayer",
value: function() {
this.layer = new T.
default({
map:
this.map,
id: this.id,
type: this._layerType,
zIndex: this.zIndex,
maxZoom: this.maxZoom,
gridSize: this.gridSize,
minimumClusterSize: this.minimumClusterSize,
averageCenter: this.averageCenter,
sourceData: this.geometries
})
}
},
{
key: "_removeLayer",
value: function() {
this.layer.setMap(null)
}
},
{
key: "_resetViewport",
value: function() {
this.clusters = [],
this._resetCluster = !0
}
},
{
key: "_redraw",
value: function() {
var t = this;
if (this._ready && this.map.getSource(this.id)) {
var e = this.map.transform.getDistanceScales(),
n = this.map.getBounds();
this.map.getSource(this.id).getCluster({
pixelsPerDegree: e.pixelsPerDegree,
resetCluster: this._resetCluster,
mapBounds: {
sw: n.getSouthWest(),
ne: n.getNorthEast()
},
zoom: this.map.getZoom()
},
function(e) {
t.clusters = e.map(function(t) {
return b.
default.normalizeClusterInfo(t)
}),
t._checkClusterChange(),
t._repaint()
}),
this._resetCluster = !1
}
}
},
{
key: "_repaint",
value: function() {
var t = this;
if (this.enableDefaultStyle && this.layer.visible) {
this._overlayList.forEach(function(t) {
return t.setVisible(!1)
});
var e = 0,
n = this._overlayList.length;
this.clusters.forEach(function(i) {
var o = {
count: i.geometries.length,
instance: i,
map: t.map,
zoomOnClick: t.zoomOnClick
};
t._constructOverlay(e, n, o),
e += 1
})
}
}
},
{
key: "_constructOverlay",
value: function(t, e, n) {
var i = this;
if (t < e) this._overlayList[t].setVisible(!0),
this._overlayList[t].updateContent(n);
else {
var o = new R.
default(n);
o.on("overlay-click",
function(t) {
var e = {};
t.geometries ? e.cluster = t: e.geometry = t,
i.emit("click", e)
}),
this._overlayList.push(o)
}
}
},
{
key: "_checkClusterChange",
value: function() {
var t = this,
e = this.clusters,
n = [];
e.forEach(function(t) {
n.push((0, r.
default)(t.geometries))
});
var i = !1;
n.forEach(function(e, n) {
e !== (t._cacheCluster && t._cacheCluster[n]) && (i = !0)
}),
i && 0 !== n.length && (this._cacheCluster = n, this.emit("cluster_changed"))
}
},
{
key: "_checkGeometries",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [],
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return t.filter(function(t, n) {
return t ? t.position && t.position instanceof M.
default ? (t.styleId && e[t.styleId] || (t.styleId = "default"), !0) : (console.error("MarkerCluster.geometries: 希望传入PointGeometry数组实际第" + n + "元素的position属性无效"), !1) : (console.error("MarkerCluster.geometries: 希望传入PointGeometry数组实际第" + n + "元素不存在!"), !1)
})
}
},
{
key: "getClusters",
value: function() {
return this.clusters
}
},
{
key: "zoomInCluster",
value: function(t) {
t.bounds ? this.map.fitBounds(t.bounds) : console.warn("聚合簇 " + t + " 缺少bounds信息")
}
},
{
key: "setVisible",
value: function(t) {
this._overlayList.forEach(function(t) {
return t.setVisible(!1)
}),
this.layer.setVisible(t),
this._repaint()
}
},
{
key: "getVisible",
value: function() {
return this.layer.visible
}
},
{
key: "destroy",
value: function() {
this.setMap(null),
this._resetViewport(),
this._overlayList.forEach(function(t) {
return t.destroy()
}),
this._defaultMarkers = null,
this.clusters = null,
this._overlayList = null,
this._eventHandlers = null,
this._ready = null,
this._prevZoom = null,
this._cacheCluster = null,
this.zIndex = null,
this.enableDefaultStyle = null,
this.minimumClusterSize = null,
this.zoomOnClick = null,
this.gridSize = null,
this.averageCenter = null,
this.maxZoom = null,
this._rawGeometries = null,
this.id = null,
this._idSet = null,
this.geometries = null
}
}]),
e
} (w.
default);
e.
default = O
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(28),
p = i(v),
_ = n(779),
m = i(_),
g = n(106),
y = function(t) {
function e(t, n) { (0, s.
default)(this, e);
var i = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this));
return i.map = t,
i.el = i.map.getContainer(),
i.eventHandlers = [],
i.pickQuery = new m.
default(i.map),
i.featurePicking = n.featurePicking,
i.pickingRadius = n.pickingRadius,
[{
type: "mousedown",
immediate: !0,
delay: !1
},
{
type: "mouseout",
immediate: !0,
delay: !1
},
{
type: "mouseover",
immediate: !0,
delay: !1
},
{
type: "mouseup",
immediate: !0,
delay: !1
},
{
type: "touchstart",
immediate: !0,
delay: !1
},
{
type: "touchend",
immediate: !0,
delay: !1
},
{
type: "touchcancel",
immediate: !1,
delay: !1
},
{
type: "click",
immediate: !1,
delay: !1
},
{
type: "rightclick",
immediate: !1,
delay: !1
},
{
type: "dblclick",
immediate: !1,
delay: !0
}].forEach(function(t) {
i.eventHandlers.push(p.
default.on(i.map, t.type,
function(e) {
e.delay ? setTimeout(function() {
i.onHandleEvent(e, t)
},
50) : i.onHandleEvent(e, t)
}))
}),
i.eventHandlers.push(p.
default.on(i.map, {
mousemove: p.
default.throttle(function(t) {
i.requestPick("mousemove", {
event: t
})
},
50),
touchmove: p.
default.throttle(function(t) {
console.log("dasdasdas")
i.requestPick("touchmove", {
event: t
})
},
50)
})),
i._pickRequestObject = {},
i._isPicking = !1,
i.setMaxListeners(300),
i
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "onHandleEvent",
value: function(t, e) {
this.requestPick(e.type, {
event: t
}),
e.immediate && this.runPick()
}
},
{
key: "requestPick",
value: function(t, e) {
if (!this.map.moving || "dblclick" === t || "touchmove" === t || "touchend" === t) {
delete this._pickRequestObject.type,
delete this._pickRequestObject.pos,
delete this._pickRequestObject.radius,
this._pickRequestObject.type = t;
var n = e.event;
if (n && (n.point || n.points)) {
var i = n.points && n.points[0] || n.point;
this._pickRequestObject.pos = i,
this._pickRequestObject.radius = 1,
this._pickRequestObject.mapEvent = n,
"click" === t && this.featurePicking && (this._pickRequestObject.radius = this.pickingRadius || 5)
}
}
}
},
{
key: "runPick",
value: function() {
var t = this; (!this._isPicking && this._pickRequestObject.type && !this.map.moving || "touchmove" === this._pickRequestObject.type) && (this._isPicking = !0, this.pickQuery.pickObject({
x: this._pickRequestObject.pos.x,
y: this._pickRequestObject.pos.y,
radius: this._pickRequestObject.radius,
featurePicking: this.featurePicking && "click" === this._pickRequestObject.type,
callback: function(e) {
e && e.layerId && e.objectIndex > -1 && t.emit("action", {
eventType: t._pickRequestObject.type,
layerId: e.layerId,
objectIndex: e.objectIndex,
pickColor: e.pickColor,
mapEvent: t._pickRequestObject.mapEvent
}),
"click" === t._pickRequestObject.type && t.featurePicking && t.map.emit("feature_picked", e.featurePick),
t.emit(t._pickRequestObject.type, t._pickRequestObject.mapEvent),
t._clearRequest(),
t._isPicking = !1
}
}))
}
},
{
key: "_clearRequest",
value: function() {
this._pickRequestObject = {}
}
},
{
key: "destroy",
value: function() {
this._clearRequest(),
this.pickQuery.destroy(),
this.map = null,
this.removeAllListeners()
}
}]),
e
} (g);
e.
default = y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(221),
r = i(o),
a = n(24),
s = i(a),
l = n(283),
u = i(l),
c = n(32),
f = i(c),
d = n(25),
h = i(d),
v = n(282),
p = i(v),
_ = n(3),
m = i(_),
g = n(0),
y = i(g),
x = n(1),
b = i(x),
S = n(5),
w = i(S),
E = n(4),
T = i(E),
A = n(106),
P = i(A),
I = n(294),
k = n(507),
L = n(738),
M = n(487),
C = n(737),
R = n(281),
B = n(508),
N = n(471),
O = i(N),
D = n(248),
z = D.LOGO_URL.DEFAULT_LOGO,
F = {
ANY: 1,
CENTER: 0
},
V = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, y.
default)(this, e);
var n = (0, w.
default)(this, (e.__proto__ || (0, m.
default)(e)).call(this));
return n._map = t.map,
n._init(),
n
}
return (0, T.
default)(e, t),
(0, b.
default)(e, [{
key: "_init",
value: function() {
function t() {
return e.apply(this, arguments)
}
var e = (0, p.
default)(u.
default.mark(function t() {
var e, n, i, o, r, a, s;
return u.
default.wrap(function(t) {
for (;;) switch (t.prev = t.next) {
case 0:
return e = (0, I.checkKey)(this._map.id),
n = (0, I.overseaCheckKey)(),
t.next = 4,
h.
default.all([e, n]);
case 4:
if (i = t.sent, o = (0, f.
default)(i, 2), r = o[0], a = o[1], r) {
t.next = 9;
break
}
return console.error("鉴权失败:海外图鉴权失败"),
t.abrupt("return");
case 9:
if (!a || 0 !== a.error) {
t.next = 18;
break
}
return t.next = 12,
(0, B.getOnlineFrontier)(a);
case 12:
this.frontier = t.sent,
s = a && a.info && a.info.detail,
this.tilesrc = a && a.info && a.info.tilesrc,
this.isOverseaMap = !1,
this._turnOnOverseaControl(),
this._turnOnLogoControl(s);
case 18:
case "end":
return t.stop()
}
},
t, this)
}));
return t
} ()
},
{
key: "_turnOnOverseaControl",
value: function() {
var t = this;
this._map.on("bounds_changed",
function() {
t._switchOversea()
}),
this._map.on("mapstyle_changed",
function() {
t._switchOversea()
})
}
},
{
key: "_switchOversea",
value: function() {
var t = this._map.getBaseMap();
if (this.tilesrc && "satellite" !== t.type) {
if (this._map.getZoom() > 6) {
var e = this._map.getBounds();
return void(this._checkIsInDistrict("china", e, F.ANY) ? this._changeMapType("china") : this._changeMapType("overseamap"))
}
this._changeMapType("china")
}
}
},
{
key: "_changeMapType",
value: function(t) {
if (this.isOverseaMap || "overseamap" !== t) this.isOverseaMap && "china" === t && (this.isOverseaMap = !1, this._changeLayerVisible("china"));
else {
this.isOverseaMap = !0;
var e = this._map.getLayer("oversea");
e || (e = (0, M.createOverseaLayer)({
map: this._map,
tilesrc: this.tilesrc,
key: O.
default,
encrypt: C.encrypt
})),
this._changeLayerVisible("oversea")
}
}
},
{
key: "_changeLayerVisible",
value: function(t) {
var e = this,
n = "oversea" === t;
this.visibleCache = this.visibleCache || {};
var i = [].concat((0, s.
default)(R.VECTOR_LAYER_ID), ["handdraw", "traffic_base", "oversea"]); (0, r.
default)(i).forEach(function(t) {
var i = e._map.getLayer(t);
if (i) if (n) {
if (e.visibleCache[t] = i.visible, "oversea" === t) return void i.setVisible(!0);
i.setVisible(!1)
} else {
if ("oversea" === t) return void i.setVisible(!1);
var o = e.visibleCache[t];
i.setVisible(o)
}
}),
n ? (this._map.getSource("oversea") && this._map.getSource("oversea").unfreeze(), this._map.getSource("vector_source") && this._map.getSource("vector_source").freeze(), this._map.getSource("traffic_base") && this._map.getSource("traffic_base").freeze(), this._map.getSource("handdraw") && this._map.getSource("handdraw").freeze()) : (this._map.getSource("oversea") && this._map.getSource("oversea").freeze(), this._map.getSource("vector_source") && this._map.getSource("vector_source").unfreeze(), this._map.getSource("traffic_base") && this._map.getSource("traffic_base").unfreeze(), this._map.getSource("handdraw") && this._map.getSource("handdraw").unfreeze())
}
},
{
key: "_turnOnLogoControl",
value: function(t) {
var e = this;
this._map.on("bounds_changed",
function() {
e._switchLogo(t)
}),
this._map.on("mapstyle_changed",
function() {
e._switchLogo(t)
})
}
},
{
key: "_switchLogo",
value: function(t) {
var e = this;
if ("satellite" !== this._map.getBaseMap().type) for (var n = Math.ceil(this._map.getZoom()), i = t || k.defaultLogoRules, o = 0; o < i.length; o++) {
var r = i[o];
n >= r.level[0] && n <= r.level[1] &&
function() {
var t = null,
n = -1;
r.districts.forEach(function(i) {
if ("default" === i.frontier) i.priority > n && (t = i, n = i.priority);
else {
var o = e._map.getBounds();
e._checkIsInDistrict(i.frontier, o, i.rule) && i.priority > n && (t = i, n = i.priority)
}
}),
e._updateLogo(t)
} ()
}
}
},
{
key: "_checkIsInDistrict",
value: function(t, e, n) {
var i = this.frontier && this.frontier[t],
o = !1;
if (i) if (n === F.CENTER) {
var r = e.getCenter();
o = (0, L.isPointInFrontier)(r, i)
} else if (n === F.ANY) {
for (var a = (0, L.getBoundsPoints)(e, !0), s = 0; s < a.length; s++) if ((0, L.isPointInFrontier)(a[s], i)) {
o = !0;
break
}
o = o || (0, L.isFrontierInBounds)(e, i)
}
return o
}
},
{
key: "_updateLogo",
value: function(t) {
var e = this._map.layerResource.getFinalUsedMapStyleId(),
n = void 0;
n = 1 === e && t.logo_night ? t.logo_night: t.logo ? t.logo: z;
var i = this._map.getControl(this._map.lgId);
i && i.changeLogoUrl(n)
}
}]),
e
} (P.
default);
e.
default = V
},
function(t, e, n) {
"use strict";
function i(t) {
return l(t) ? o(t) : t
}
function o(t) {
var e = s.enc.Utf8.parse(t),
n = s.enc.Utf8.parse("d8ab2f7b7a7536a71894084e1c812fd0"),
i = s.enc.Utf8.parse("c0ab1f54he78k36d"),
o = s.AES.encrypt(e, n, {
iv: i
});
return encodeURIComponent(o.toString())
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.encrypt = i;
var r = n(41),
a = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r),
s = n(986),
l = a.
default.isString
},
function(t, e, n) {
"use strict";
function i(t, e) {
var n = a(t),
i = s(e),
o = n.x,
r = n.y,
l = i.polyX,
u = i.polyY,
c = u.length - 1,
f = !1,
d = void 0;
for (d = 0; d < u.length; d++)(u[d] < r && u[c] >= r || u[c] < r && u[d] >= r) && (l[d] <= o || l[c] <= o) && (f ^= l[d] + (r - u[d]) / (u[c] - u[d]) * (l[c] - l[d]) < o),
c = d;
return f
}
function o(t, e) {
var n = t.getNorthEast(),
i = t.getSouthWest(),
o = new l(n.getLat(), i.getLng()),
r = new l(i.getLat(), n.getLng()),
a = [n, o, i, r],
s = n.getLng() > i.getLng() ? n.getLng() : n.getLng() + 360;
return a.push(new l(n.getLat(), (s + i.getLng()) / 2)),
a.push(new l(i.getLat(), (s + i.getLng()) / 2)),
a.push(new l((n.getLat() + i.getLat()) / 2, n.getLng())),
a.push(new l((n.getLat() + i.getLat()) / 2, i.getLng())),
e && a.push(t.getCenter()),
a
}
function r(t, e) {
for (var n = s(e), i = n.latLngArray, o = 0; o < i.length; o++) if (t.contains(i[o])) return ! 0;
return ! 1
}
function a(t) {
var e = t.getLng().toString(),
n = t.getLat().toString(),
i = 20037508.34 * e / 180,
o = Math.log(Math.tan((90 + n) * Math.PI / 360)) / (Math.PI / 180);
return o = 20037508.34 * o / 180,
{
x: i,
y: o
}
}
function s(t) {
var e = t.split(":"),
n = [],
i = [],
o = [];
if (e.length > 0) for (var r = 0; r < e.length; r++) {
var a = e[r].split(",");
n[r] = new l(a[1], a[0]),
i[r] = 20037508.34 * a[0] / 180,
o[r] = Math.log(Math.tan((90 + a[1]) * Math.PI / 360)) / (Math.PI / 180) * 20037508.34 / 180
}
return {
latLngArray: n,
polyX: i,
polyY: o
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.isPointInFrontier = i,
e.getBoundsPoints = o,
e.isFrontierInBounds = r;
var l = n(47)
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(393),
u = n(304),
c = function() {
function t(e, n) { (0, r.
default)(this, t),
this._map = e,
this._setMapZoomType(n.mapZoomType),
this._onDblClick = this._onDblClick.bind(this)
}
return (0, s.
default)(t, [{
key: "isEnabled",
value: function() {
return !! this._enabled
}
},
{
key: "enable",
value: function() {
this.isEnabled() || (this._map._on("dblclick", this._onDblClick), this._enabled = !0)
}
},
{
key: "disable",
value: function() {
this.isEnabled() && (this._map._off("dblclick", this._onDblClick), this._enabled = !1)
}
},
{
key: "_setMapZoomType",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : u.MAP_ZOOM_TYPE.DEFAULT;
return t === u.MAP_ZOOM_TYPE.CENTER ? this._aroundCenter = !0 : (t !== u.MAP_ZOOM_TYPE.DEFAULT && console.error("mapZoomType参数错误参数应该是MAP_ZOOM_TYPE常量"), this._aroundCenter = !1)
}
},
{
key: "_onDblClick",
value: function(t) {
var e = t.point; (0, l.isResponsible)(this._map, e) && this._map.zoomTo(Math.min(this._map.getZoom() + (t.originalEvent.shiftKey ? -1 : 1), this._map.transform.maxZoom), {
around: this._aroundCenter ? this._map.getCenter() : t.latLng
},
t)
}
}]),
t
} ();
t.exports = c
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(393),
u = n(28),
c = n(210),
f = n(10),
d = f.bezier(0, 0, .3, 1),
h = function() {
function t(e) { (0, r.
default)(this, t),
this._map = e,
this._el = e.getContainer(),
this._moveStartEvent = null,
f.bindAll(["_onDown", "_onMove", "_onUp", "_onTouchEnd", "_onMouseUp"], this)
}
return (0, s.
default)(t, [{
key: "isEnabled",
value: function() {
return !! this._enabled
}
},
{
key: "isActive",
value: function() {
return !! this._active
}
},
{
key: "enable",
value: function() {
this.isEnabled() || (this._el.addEventListener("mousedown", this._onDown), this._el.addEventListener("touchstart", this._onDown), this._enabled = !0)
}
},
{
key: "disable",
value: function() {
this.isEnabled() && (this._el.removeEventListener("mousedown", this._onDown), this._el.removeEventListener("touchstart", this._onDown), this._enabled = !1)
}
},
{
key: "_onDown",
value: function(t) {
if (!this._ignoreEvent(t) && !this.isActive()) {
this._moveStartEvent = t,
t.touches && ((0, u.isMiniProgram)() && "pc" !== (0, u.getMiniProgramEnv)() || !(0, u.isMiniProgram)()) ? (window.document.addEventListener("touchmove", this._onMove), window.document.addEventListener("touchend", this._onTouchEnd)) : (window.document.addEventListener("mousemove", this._onMove), window.document.addEventListener("mouseup", this._onMouseUp)),
window.addEventListener("blur", this._onMouseUp),
this._active = !1;
var e = c.mousePos(this._el, t); (0, l.isResponsible)(this._map, e) && (this._pos = e),
this._inertia = [[Date.now(), this._pos]]
}
}
},
{
key: "_onMove",
value: function(t) {
console.log(this._map.ismoved1)
if(this._map.ismoved1==false){
this._onMouseUp(t);
//this._onUp(t);
setTimeout(() => {
this._map.ismoved1=true;
this._onUp(t);
}, 0);
}else{
// this._onUp(t);
}
var e = this;
if (!this._ignoreEvent(t)) {
if (!this.isActive()) {
if (!this._isMoved(t)) return;
this._active = !0,
this._map.moving = !0,
this._fireEvent("dragstart", t),
this._fireEvent("panstart", t),
this._fireEvent("movestart", t),
this._map.once("moveend",
function() {
e._active = !1
})
}
var n = c.mousePos(this._el, t),
i = this._map;
i.stopMoving(),
this._drainInertiaBuffer(),
//this._inertia.push([Date.now(), n]),
i.transform.setLocationAtPoint(i.unprojectFromContainer(this._pos), n),
this._pos = n,
this._fireEvent("drag", t),
this._fireEvent("pan", t),
this._fireEvent("move", t),
t.preventDefault()
//123
t.touches || t.preventDefault()
}
}
},
{
key: "_onUp",
value: function(t) {
var e = this;
if (this.isActive()) {
this._active = !1,
this._fireEvent("dragend", t),
this._fireEvent("panend", t),
this._drainInertiaBuffer();
var n = function() {
e._map.moving = !1,
e._fireEvent("moveend", t)
},
i = this._inertia;
if (i.length < 2) return void n();
var o = i[i.length - 1],
r = i[0],
a = o[1].sub(r[1]),
s = (o[0] - r[0]) / 1e3;
if (0 === s || o[1].equals(r[1])) return void n();
var u = c.mousePos(this._el, t);
if ((0, l.isResponsible)(this._map, u)) {
var f = a.mult(.3 / s),
h = f.mag();
h > 1400 && (h = 1400, f._unit()._mult(h));
var v = h / 750,
p = f.mult( - v / 2);
this._map.panBy(p, {
duration: 1e3 * v,
easing: d,
noMoveStart: !0
},
{
originalEvent: t
})
}
}
}
},
{
key: "_onMouseUp",
value: function(t) {
this._ignoreEvent(t) || (this._onUp(t), window.document.removeEventListener("mousemove", this._onMove), window.document.removeEventListener("mouseup", this._onMouseUp), window.removeEventListener("blur", this._onMouseUp))
}
},
{
key: "_onTouchEnd",
value: function(t) {
console.log("qweqwe")
this._ignoreEvent(t) || (this._onUp(t), window.document.removeEventListener("touchmove", this._onMove), window.document.removeEventListener("touchend", this._onTouchEnd))
}
},
{
key: "_fireEvent",
value: function(t, e) {
return this._map._fire(t, {
originalEvent: e
})
}
},
{
key: "_ignoreEvent",
value: function(t) {
var e = this._map;
if (e.boxZoom && e.boxZoom.isActive()) return ! 0;
if (e.dragRotate && e.dragRotate.isActive()) return ! 0;
if (t.touches) return t.touches.length > 1;
if (t.ctrlKey) return ! 0;
return "mousemove" === t.type ? !1 & t.buttons: t.button && 0 !== t.button
}
},
{
key: "_drainInertiaBuffer",
value: function() {
for (var t = this._inertia,
e = Date.now(); t.length > 0 && e - t[0][0] > 160;) t.shift()
}
},
{
key: "_isMoved",
value: function(t) {
var e = this._moveStartEvent;
if (!e) return ! 0;
var n = void 0,
i = void 0;
return t.touches ? (n = e.touches[0], i = t.touches[0]) : (n = e, i = t),
Math.abs(i.clientX - n.clientX) > 2 || Math.abs(i.clientY - n.clientY) > 2
}
}]),
t
} ();
t.exports = h
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(28),
u = n(41),
c = i(u),
f = n(29),
d = n(210),
h = n(10),
v = c.
default.isBoolean,
p = h.bezier(0, 0, .25, 1),
_ = function() {
function t(e) { (0, r.
default)(this, t),
this._map = e,
this._el = e.getContainer(),
this._pitchWithRotate = !0,
this._moveStartEvent = null,
this.pitchable = !0,
this.rotatable = !0,
h.bindAll(["_onDown", "_onMove", "_onUp"], this)
}
return (0, s.
default)(t, [{
key: "setPitchable",
value: function(t) {
v(t) ? this.pitchable = t: new f.BaseTypeError("pitchable", "Boolean", t).error()
}
},
{
key: "setRotatable",
value: function(t) {
v(t) ? this.rotatable = t: new f.BaseTypeError("rotatable", "Boolean", t).error()
}
},
{
key: "isEnabled",
value: function() {
return !! this._enabled
}
},
{
key: "isActive",
value: function() {
return !! this._active
}
},
{
key: "enable",
value: function() {
this.isEnabled() || (this._el.addEventListener("mousedown", this._onDown), this._enabled = !0)
}
},
{
key: "disable",
value: function() {
this.isEnabled() && (this._el.removeEventListener("mousedown", this._onDown), this._enabled = !1)
}
},
{
key: "_onDown",
value: function(t) {
this._ignoreEvent(t) || this.isActive() || (this._moveStartEvent = t, window.document.addEventListener("mousemove", this._onMove), window.document.addEventListener("mouseup", this._onUp), window.addEventListener("blur", this._onUp), this._active = !1, this._inertia = [[Date.now(), this._map.getHeading()]], this._pos = d.mousePos(this._el, t), this._startPos = this._pos, this._center = this._map.transform.centerPoint, t.preventDefault())
}
},
{
key: "_onMove",
value: function(t) {
console.log(1111)
var e = this;
if (!this._ignoreEvent(t)) {
if (!this.isActive()) {
if (!this._isMoved(t)) return;
this._active = !0,
this._map.moving = !0,
this._fireEvent("dragstart", t),
this._fireEvent("rotatestart", t),
this._fireEvent("movestart", t),
this._pitchWithRotate && this._fireEvent("pitchstart", t),
this._map.once("moveend",
function() {
e._active = !1
})
}
var n = this._map;
if (n.stopMoving(), this.rotatable || this.pitchable) {
var i = this._pos,
o = d.mousePos(this._el, t),
r = .8 * (i.x - o.x),
a = -.5 * (i.y - o.y),
s = n.getHeading() - r,
l = n.getPitch() - a,
u = this._inertia,
c = u[u.length - 1];
this.rotatable && (this._drainInertiaBuffer(), u.push([Date.now(), n._normalizeHeading(s, c[1])]), this._fireEvent("rotate", t), n.transform.heading = s),
this.pitchable && (this._fireEvent("pitch", t), n.transform.pitch = l),
this._fireEvent("drag", t),
this._fireEvent("move", t),
this._pos = o
}
}
}
},
{
key: "_onUp",
value: function(t) {
var e = this;
if (!this._ignoreEvent(t) && (window.document.removeEventListener("mousemove", this._onMove), window.document.removeEventListener("mouseup", this._onUp), window.removeEventListener("blur", this._onUp), this.isActive())) {
this._active = !1,
this._fireEvent("dragend", t),
this._fireEvent("rotateend", t),
this._drainInertiaBuffer();
var n = this._map,
i = n.getHeading(),
o = this._inertia,
r = function() {
Math.abs(i) < e._bearingSnap ? n.resetNorth({
noMoveStart: !0
},
{
originalEvent: t
}) : (e._map.moving = !1, e._fireEvent("moveend", t)),
e._pitchWithRotate && e._fireEvent("pitchend", t)
};
if (o.length < 2) return void r();
var a = o[0],
s = o[o.length - 1],
l = o[o.length - 2],
u = n._normalizeHeading(i, l[1]),
c = s[1] - a[1],
f = c < 0 ? -1 : 1,
d = (s[0] - a[0]) / 1e3;
if (0 === c || 0 === d) return void r();
var h = Math.abs(c * (.25 / d));
h > 180 && (h = 180);
var v = h / 180;
u += f * h * (v / 2),
Math.abs(n._normalizeHeading(u, 0)) < this._bearingSnap && (u = n._normalizeHeading(0, u)),
n.headTo(u, {
duration: 1e3 * v,
easing: p,
noMoveStart: !0
},
{
originalEvent: t
})
}
}
},
{
key: "_fireEvent",
value: function(t, e) {
return this._map._fire(t, {
originalEvent: e
})
}
},
{
key: "_ignoreEvent",
value: function(t) {
var e = this._map;
if (e.boxZoom && e.boxZoom.isActive()) return ! 0;
if (e.dragPan && e.dragPan.isActive()) return ! 0;
if (t.touches && ((0, l.isMiniProgram)() && "pc" !== (0, l.getMiniProgramEnv)() || !(0, l.isMiniProgram)())) return t.touches.length > 1;
var n = t.ctrlKey ? 1 : 2,
i = t.ctrlKey ? 0 : 2,
o = t.button;
return "undefined" != typeof InstallTrigger && 2 === t.button && t.ctrlKey && window.navigator.platform.toUpperCase().indexOf("MAC") >= 0 && (o = 0),
"mousemove" === t.type ? t.buttons & 0 === n: !this.isActive() && o !== i
}
},
{
key: "_drainInertiaBuffer",
value: function() {
for (var t = this._inertia,
e = Date.now(); t.length > 0 && e - t[0][0] > 160;) t.shift()
}
},
{
key: "_isMoved",
value: function(t) {
console.log(22222)
var e = this._moveStartEvent;
if (!e) return ! 0;
var n = e,
i = t;
return Math.abs(i.clientX - n.clientX) > 2 || Math.abs(i.clientY - n.clientY) > 2
}
}]),
t
} ();
t.exports = _
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(106),
p = i(v),
_ = n(10),
m = i(_),
g = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this));
return n.transform = t,
n.bindIdleEvent(),
n.start(),
n.isJudging = !1,
n.timer = null,
n.duration = 100,
n.input = void 0,
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "start",
value: function() {
this.isJudging || (this.input = this.transform.getInput(), this.isJudging = !0, this.judge())
}
},
{
key: "stop",
value: function() {
this.isJudging = !1,
this.timer && window.clearTimeout(this.timer)
}
},
{
key: "judge",
value: function() {
this.timer = window.setTimeout(function() {
var t = this.transform.getInput();
this.inputEqual(t, this.input) ? (this.stop(), this._fire("idle")) : this.judge(),
this.input = t
}.bind(this), this.duration)
}
},
{
key: "bindIdleEvent",
value: function() {
this.transform._on("input_change", this.start.bind(this))
}
},
{
key: "inputEqual",
value: function(t, e) {
return ! (!t || !e) && (m.
default.forIn(t,
function(n) {
return ("center" !== n || t[n].lat === e[n].lat && t[n].lng === e[n].lng) && (t[n] === e[n] && void 0)
}), !0)
}
}]),
e
} (p.
default);
e.
default = g
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(10),
u = function() {
function t(e) { (0, r.
default)(this, t),
this._map = e,
this._el = e.getContainer(),
l.bindAll(["_onTouchStart", "_onTouchMove", "_onTouchEnd"], this),
this.timer = null,
this.duration = 750,
this.buffer = 3,
this.position = null,
this.enabled = !1
}
return (0, s.
default)(t, [{
key: "enable",
value: function() {
//123
this.enabled || (this._el.addEventListener("touchstart", this._onTouchStart), this._el.addEventListener("touchmove", this._onTouchMove), this._el.addEventListener("touchend", this._onTouchEnd), this.enabled = !0)
}
},
{
key: "disable",
value: function() {
this.enabled && (this._el.removeEventListener("touchstart", this._onTouchStart), this._el.removeEventListener("touchmove", this._onTouchMove), this._el.removeEventListener("touchend", this._onTouchEnd), this.enabled = !1)
}
},
{
key: "startLongPress",
value: function() {
console.log(12306)
this.timer = window.setTimeout(function() {
this._map._fire("longpress"),
this.endLongPress()
}.bind(this), this.duration)
}
},
{
key: "endLongPress",
value: function() {
window.clearTimeout(this.timer),
this.position = null
}
},
{
key: "_onTouchStart",
value: function(t) {
console.log(12306)
this.endLongPress(),
1 === t.touches.length && (this.startLongPress(), this.position = {
x: t.touches[0].pageX,
y: t.touches[0].pageY
})
}
},
{
key: "_onTouchMove",
value: function(t) {
console.log(44444)
if (this.position) {
var e = t.touches[0].pageX - this.position.x,
n = t.touches[0].pageY - this.position.y;
Math.sqrt(e * e + n * n) > this.buffer && this.endLongPress()
}
}
},
{
key: "_onTouchEnd",
value: function() {
this.endLongPress()
}
}]),
t
} ();
t.exports = u
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(393),
u = n(23),
c = i(u),
f = n(304),
d = n(210),
h = n(10),
v = n(28),
p = window.navigator.userAgent.toLowerCase(),
_ = -1 !== p.indexOf("firefox"),
m = -1 !== p.indexOf("safari") && -1 === p.indexOf("chrom"),
g = function() {
function t(e, n) { (0, r.
default)(this, t),
this._map = e,
this._el = e.getContainer(),
h.bindAll(["_onWheel", "_onTimeout"], this),
this._setMapZoomType(n.mapZoomType)
}
return (0, s.
default)(t, [{
key: "isEnabled",
value: function() {
return !! this._enabled
}
},
{
key: "enable",
value: function() {
this.isEnabled() || (this._el.addEventListener("wheel", this._onWheel, !1), this._el.addEventListener("mousewheel", this._onWheel, !1), this._enabled = !0)
}
},
{
key: "disable",
value: function() {
this.isEnabled() && (this._el.removeEventListener("wheel", this._onWheel), this._el.removeEventListener("mousewheel", this._onWheel), this._enabled = !1)
}
},
{
key: "_setMapZoomType",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : f.MAP_ZOOM_TYPE.DEFAULT;
return t === f.MAP_ZOOM_TYPE.CENTER ? this._aroundCenter = !0 : (t !== f.MAP_ZOOM_TYPE.DEFAULT && console.error("mapZoomType参数错误参数应该是MAP_ZOOM_TYPE常量"), this._aroundCenter = !1)
}
},
{
key: "_onWheel",
value: function(t) {
var e = void 0;
"wheel" === t.type ? (e = t.deltaY, _ && t.deltaMode === window.WheelEvent.DOM_DELTA_PIXEL && (e /= v.devicePixelRatio), t.deltaMode === window.WheelEvent.DOM_DELTA_LINE && (e *= 40)) : "mousewheel" === t.type && (e = -t.wheelDeltaY, m && (e /= 3));
var n = v.now(),
i = n - (this._time || 0);
this._pos = d.mousePos(this._el, t),
this._time = n,
0 !== e && e % 4.000244140625 == 0 ? this._type = "wheel": 0 !== e && Math.abs(e) < 4 ? this._type = "trackpad": i > 400 ? (this._type = null, this._lastValue = e, this._timeout = setTimeout(this._onTimeout.bind(this, t), 40)) : this._type || (this._type = Math.abs(i * e) < 200 ? "trackpad": "wheel", this._timeout && (clearTimeout(this._timeout), this._timeout = null, e += this._lastValue)),
t.shiftKey && e && (e /= 4),
this._type && this._zoom( - e, t),
t.preventDefault()
}
},
{
key: "_onTimeout",
value: function(t) {
this._type = "wheel",
this._zoom( - this._lastValue, t)
}
},
{
key: "_zoom",
value: function(t, e) {
if (0 !== t) {
var n = this._map,
i = d.mousePos(this._el, e);
if ((0, l.isResponsible)(this._map, i)) {
var o = 2 / (1 + Math.exp( - Math.abs(t / 100)));
t < 0 && 0 !== o && (o = 1 / o);
var r = n.ease ? n.ease.to: n.transform.scrollScale,
a = h.clamp(n.transform.scaleZoom(r * o), c.
default.minZoom, c.
default.maxZoom);
n.zoomTo(a, {
duration: "wheel" === this._type ? 200 : 0,
around: this._aroundCenter ? n.getCenter() : n.unprojectFromContainer(this._pos),
delayEndEvents: 100,
smoothEasing: !0
},
{
originalEvent: e
})
}
}
}
}]),
t
} ();
t.exports = g
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(210),
u = n(10),
c = function() {
function t(e) { (0, r.
default)(this, t),
this._map = e,
this._el = e.getContainer(),
u.bindAll(["_onStart", "_onMove", "_onEnd"], this)
}
return (0, s.
default)(t, [{
key: "isEnabled",
value: function() {
return !! this._enabled
}
},
{
key: "enable",
value: function(t) {
//123
this.isEnabled() || (this._el.addEventListener("touchstart", this._onStart, !1), this._enabled = !0, this._aroundCenter = t && "center" === t.around)
}
},
{
key: "disable",
value: function() {
//123
this.isEnabled() && (this._el.removeEventListener("touchstart", this._onStart), this._enabled = !1)
}
},
{
key: "isActive",
value: function() {
return !! this._active
}
},
{
key: "_onStart",
value: function(t) {
console.log(12306)
if (!this._ignoreEvent(t)) {
var e = l.mousePos(this._el, t.touches[0]),
n = l.mousePos(this._el, t.touches[1]);
this._posP0 = e,
this._posP1 = n,
this._startPitch = this._map.transform.pitch,
this._gestureIntent = void 0,
this._inertia = [],
this._active = !1,
window.document.addEventListener("touchmove", this._onMove, !1),
window.document.addEventListener("touchend", this._onEnd, !1)
}
}
},
{
key: "_onMove",
value: function(t) {
console.log(55555)
if (!this._ignoreEvent(t)) {
this.isActive() || (this._active = !0);
var e = l.mousePos(this._el, t.touches[0]),
n = l.mousePos(this._el, t.touches[1]),
i = this._posP0.sub(e),
o = this._posP1.sub(n),
r = .5 * (i.y + o.y),
a = this._map;
if (this._posP0 = e, this._posP1 = n, this._gestureIntent) a.transform.pitch = a.getPitch() - r,
this._drainInertiaBuffer(),
this._inertia.push([Date.now(), r]),
this._fireEvent("pitch", t),
this._fireEvent("move", t);
else {
Math.abs(Math.abs(i.x) - Math.abs(o.x)) < 2 && (this._gestureIntent = "pitch", this._startPitch = a.transform.pitch)
}
t.preventDefault()
}
}
},
{
key: "_onEnd",
value: function() {
this._active = !1,
window.document.removeEventListener("touchmove", this._onMove),
window.document.removeEventListener("touchend", this._onEnd),
this._drainInertiaBuffer()
}
},
{
key: "_fireEvent",
value: function(t, e) {
return this._map._fire(t, {
originalEvent: e
})
}
},
{
key: "_ignoreEvent",
value: function(t) {
var e = this._map;
return ! (!e.dragPan || !e.dragPan.isActive()) || (!(!e.touchZoomRotate || !e.touchZoomRotate.isActive()) || (t.touches ? t.touches.length < 2 : void 0))
}
},
{
key: "_drainInertiaBuffer",
value: function() {
for (var t = this._inertia,
e = Date.now(); t.length > 2 && e - t[0][0] > 160;) t.shift()
}
}]),
t
} ();
t.exports = c
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(304),
u = n(210),
c = n(10),
f = c.bezier(0, 0, .15, 1),
d = function() {
function t(e, n) { (0, r.
default)(this, t),
this._map = e,
this._el = e.getContainer(),
c.bindAll(["_onStart", "_onMove", "_onEnd"], this),
this._setMapZoomType(n.mapZoomType)
}
return (0, s.
default)(t, [{
key: "isEnabled",
value: function() {
return !! this._enabled
}
},
{
key: "isActive",
value: function() {
return !! this._active
}
},
{
key: "enable",
value: function() {
//123
this.isEnabled() || (this._el.addEventListener("touchstart", this._onStart, !1), this._enabled = !0)
}
},
{
key: "disable",
value: function() {
//123
this.isEnabled() && (this._el.removeEventListener("touchstart", this._onStart), this._enabled = !1)
}
},
{
key: "disableRotation",
value: function() {
this._rotationDisabled = !0
}
},
{
key: "enableRotation",
value: function() {
this._rotationDisabled = !1
}
},
{
key: "_setMapZoomType",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : l.MAP_ZOOM_TYPE.DEFAULT;
return t === l.MAP_ZOOM_TYPE.CENTER ? this._aroundCenter = !0 : (t !== l.MAP_ZOOM_TYPE.DEFAULT && console.error("mapZoomType参数错误参数应该是MAP_ZOOM_TYPE常量"), this._aroundCenter = !1)
}
},
{
key: "_onStart",
value: function(t) {
if (2 === t.touches.length) {
var e = u.mousePos(this._el, t.touches[0]),
n = u.mousePos(this._el, t.touches[1]);
this._posP0 = e,
this._posP1 = n,
this._startVec = e.sub(n),
this._startScale = this._map.transform.scrollScale,
this._startHeading = this._map.transform.heading,
this._gestureIntent = void 0,
this._inertia = [],
this._active = !1,
window.document.addEventListener("touchmove", this._onMove, !1),
window.document.addEventListener("touchend", this._onEnd, !1)
}
}
},
{
key: "_onMove",
value: function(t) {
console.log(666666)
if (2 === t.touches.length) {
var e = u.mousePos(this._el, t.touches[0]),
n = u.mousePos(this._el, t.touches[1]),
i = e.add(n).div(2),
o = e.sub(n),
r = o.mag() / this._startVec.mag(),
a = this._rotationDisabled ? 0 : 180 * o.angleWith(this._startVec) / Math.PI,
s = this._map;
if (this._gestureIntent) {
var l = {};
"rotate" === this._gestureIntent && (l.heading = this._startHeading + a),
"zoom" === this._gestureIntent && (l.zoom = s.transform.scaleZoom(this._startScale * r)),
s.stopMoving(),
this._drainInertiaBuffer(),
this._inertia.push([Date.now(), r, i]),
s.easeTo(l, {
duration: 0,
around: this._aroundCenter ? s.getCenter() : s.unprojectFromContainer(i)
},
{
originalEvent: t
}),
this._fireEvent("rotate", t),
this._fireEvent("move", t)
} else {
var c = Math.abs(1 - r) > .15;
Math.abs(a) > 8 ? this._gestureIntent = "rotate": c && (this._gestureIntent = "zoom"),
this._gestureIntent && (this._startVec = o, this._startScale = s.transform.scrollScale, this._startHeading = s.transform.heading, this.isActive() || (this._active = !0))
}
t.preventDefault()
}
}
},
{
key: "_onEnd",
value: function(t) {
window.document.removeEventListener("touchmove", this._onMove),
window.document.removeEventListener("touchend", this._onEnd),
this._drainInertiaBuffer(),
this._active = !1;
var e = this._inertia,
n = this._map;
if (e.length < 2) return void n.snapToNorth({},
{
originalEvent: t
});
var i = e[e.length - 1],
o = e[0],
r = n.transform.scaleZoom(this._startScale * i[1]),
a = n.transform.scaleZoom(this._startScale * o[1]),
s = r - a,
l = (i[0] - o[0]) / 1e3,
u = i[2];
if (0 === l || r === a) return void n.snapToNorth({},
{
originalEvent: t
});
var c = .15 * s / l;
Math.abs(c) > 2.5 && (c = c > 0 ? 2.5 : -2.5);
var d = 1e3 * Math.abs(c / (12 * .15));
n.easeTo({},
{
duration: d,
easing: f,
around: this._aroundCenter ? n.getCenter() : n.unprojectFromContainer(u)
},
{
originalEvent: t
})
}
},
{
key: "_fireEvent",
value: function(t, e) {
return this._map._fire(t, {
originalEvent: e
})
}
},
{
key: "_drainInertiaBuffer",
value: function() {
for (var t = this._inertia,
e = Date.now(); t.length > 2 && e - t[0][0] > 160;) t.shift()
}
},
{
key: "_ignoreEvent",
value: function(t) {
var e = this._map;
return ! (!e.touchTilt || !e.touchTilt.isActive()) || (t.touches ? t.touches.length < 2 : void 0)
}
}]),
t
} ();
t.exports = d
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(28),
u = i(l),
c = n(748),
f = i(c),
d = n(509),
h = function() {
function t() {
var e = this; (0, r.
default)(this, t),
this.fps = 6,
this.now = null,
this.then = null,
this.interval = 1e3 / this.fps,
this.delta = null,
this._frameDeadline = 0,
this._channel = new MessageChannel,
this.scheduleTaskQueue = new d.ScheduleTaskQueue,
this.callbacks = {},
this._channel.port1.onmessage = function() {
if (e.scheduleTaskQueue) for (var t = e._frameDeadline - u.
default.now(), n = e.scheduleTaskQueue.first; n && (t > 1 || n.isTimeout());) {
var i = n;
n = n.next,
i && i.runTask(),
t = e._frameDeadline - u.
default.now()
}
}
}
return (0, s.
default)(t, [{
key: "_initStats",
value: function() {
this.stats = new f.
default,
this.stats.domElement.style.position = "absolute",
this.stats.domElement.style.right = "14px",
this.stats.domElement.style.bottom = "140px",
this.stats.domElement.style.zIndex = 1e6,
document.body.appendChild(this.stats.domElement)
}
},
{
key: "updateFPS",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 30;
this.fps = Math.max(0, Math.min(t, 60)),
this.interval = 0 === this.fps ? 1 / 0 : 1e3 / this.fps
}
},
{
key: "setCallback",
value: function(t) {
this.addCallback("singlecb", t, !0)
}
},
{
key: "addCallback",
value: function(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
"function" == typeof e && (this.callbacks[t] ? n && (this.callbacks[t] = e) : this.callbacks[t] = e)
}
},
{
key: "removeCallback",
value: function(t) {
delete this.callbacks[t]
}
},
{
key: "clearAllCallbacks",
value: function() {
this.callbacks = {}
}
},
{
key: "start",
value: function() {
this._animFrameId || this._destroyed || (this.then = u.
default.now(), this.tick())
}
},
{
key: "tickOnce",
value: function() {
var t = this;
this.isUpdating || (0, u.
default)(function(e) {
t.callback && t.callback(e)
})
}
},
{
key: "tick",
value: function(t) {
var e = this;
if (this._animFrameId = u.
default.frame(function(t) {
e.tick(t)
}), this.now = u.
default.now(), this.delta = this.now - this.then, this.delta > this.interval) {
this.stats && this.stats.update(),
this.then = this.now - this.delta % this.interval,
this._frameDeadline = t + this.interval;
for (var n in this.callbacks) this.callbacks[n](t);
this._channel.port2.postMessage(null)
}
}
},
{
key: "stop",
value: function() {
u.
default.cancelFrame(this._animFrameId),
this._animFrameId = null
}
},
{
key: "destroy",
value: function() {
this.stop(),
this.clearAllCallbacks();
for (var t = this.scheduleTaskQueue.first; t;) {
var e = t;
t = t.next,
e.remove()
}
this.scheduleTaskQueue = null,
this._destroyed = !0
}
},
{
key: "isUpdating",
get: function() {
return !! this._animFrameId
}
}]),
t
} ();
e.
default = h
},
function(t, e, n) {
"use strict";
var i = function() {
var t = 0,
e = 0,
n = Date.now(),
i = n,
o = 0,
r = 1e3,
a = 0,
s = 0,
l = 1e3,
u = 0,
c = 0,
f = 0,
d = document.createElement("div");
d.id = "stats",
d.addEventListener("mousedown",
function(t) {
t.preventDefault(),
f += 1,
x(f % 2)
},
!1),
d.style.cssText = "width:80px;opacity:0.9;cursor:pointer";
var h = document.createElement("div");
h.id = "fps",
h.style.cssText = "padding:0 0 3px 3px;text-align:left;background-color:#002",
d.appendChild(h);
var v = document.createElement("div");
v.id = "fpsText",
v.style.cssText = "color:#0ff;font-family:Helvetica,Arial,sans-serif;font-size:9px;font-weight:bold;line-height:15px",
v.innerHTML = "FPS",
h.appendChild(v);
var p = document.createElement("div");
for (p.id = "fpsGraph", p.style.cssText = "position:relative;width:74px;height:30px;background-color:#0ff", h.appendChild(p); 74 > p.children.length;) {
var _ = document.createElement("span");
_.style.cssText = "width:1px;height:30px;float:left;background-color:#113",
p.appendChild(_)
}
var m = document.createElement("div");
m.id = "ms",
m.style.cssText = "padding:0 0 3px 3px;text-align:left;background-color:#020;display:none",
d.appendChild(m);
var g = document.createElement("div");
g.id = "msText",
g.style.cssText = "color:#0f0;font-family:Helvetica,Arial,sans-serif;font-size:9px;font-weight:bold;line-height:15px",
g.innerHTML = "MS",
m.appendChild(g);
var y = document.createElement("div");
for (y.id = "msGraph", y.style.cssText = "position:relative;width:74px;height:30px;background-color:#0f0", m.appendChild(y); 74 > y.children.length;) _ = document.createElement("span"),
_.style.cssText = "width:1px;height:30px;float:left;background-color:#131",
y.appendChild(_);
var x = function(t) {
switch (f = t) {
case 0:
h.style.display = "block",
m.style.display = "none";
break;
case 1:
h.style.display = "none",
m.style.display = "block"
}
};
return {
domElement: d,
setMode: x,
begin: function() {
n = Date.now()
},
end: function() {
var f = Date.now();
o = f - n,
r = Math.min(r, o),
a = Math.max(a, o),
g.textContent = o + " MS (" + r + "-" + a + ")";
var d = Math.min(30, 30 - o / 200 * 30);
return y.appendChild(y.firstChild).style.height = d + "px",
c += 1,
f > i + 1e3 && (s = Math.round(1e3 * c / (f - i)), l = Math.min(l, s), u = Math.max(u, s), e += s, v.textContent = s + " FPS (" + l + "-" + u + ") Avg: " + parseInt(e / t), d = Math.min(30, 30 - s / 100 * 30), p.appendChild(p.firstChild).style.height = d + "px", i = f, c = 0),
t += 1,
f
},
update: function() {
n = this.end()
}
}
};
t.exports = i
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(143),
p = n(41),
_ = i(p),
m = n(29),
g = n(511),
y = n(10),
x = y.uniqueId,
b = 3,
S = 20,
w = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this)),
i = t.id,
o = void 0 === i ? x() : i,
a = t.zIndex,
l = void 0 === a ? 0 : a,
u = t.minZoom,
c = void 0 === u ? b: u,
d = t.maxZoom,
h = void 0 === d ? S: d;
return n.id = o,
n.level = v.LAYER_LEVEL.OVERLAY_AA,
n.zIndex = 0,
n.rank = (0, v.getRank)(n.level, n.zIndex),
n.setZIndex(l),
n.setMinZoom(c),
n.setMaxZoom(h),
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "getId",
value: function() {
return this.id
}
},
{
key: "addTo",
value: function(t) {
return t.addVisualPlugin(this),
this.map = t,
this.gl = t.renderEngine.gl,
this.transform = t.transform,
this
}
},
{
key: "remove",
value: function() {
return this.map && this.map.removeVisualPlugin(this.id),
this.map = null,
this.gl = null,
this.transform = null,
this
}
},
{
key: "redraw",
value: function() {
return this.map && this.map._render(),
this
}
},
{
key: "draw",
value: function() {}
},
{
key: "setZIndex",
value: function(t) {
return _.
default.isNumber(t) ? t < 0 ? (console.error("zIndex希望设置为非负数,实际值为: " + t), this) : (this.zIndex = t, this.rank = (0, v.getRank)(this.level, this.zIndex), this) : (new m.BaseTypeError("zIndex", "Number", t).error(), this)
}
},
{
key: "getZIndex",
value: function() {
return this.zIndex
}
},
{
key: "setMinZoom",
value: function(t) {
return _.
default.isNumber(t) ? t < 0 ? (console.error("minZoom希望设置为非负数,实际值为: " + t), this) : (this.minZoom = t, this) : (new m.BaseTypeError("minZoom", "Number", t).error(), this)
}
},
{
key: "getMinZoom",
value: function() {
return this.minZoom
}
},
{
key: "setMaxZoom",
value: function(t) {
return _.
default.isNumber(t) ? t < 0 ? (console.error("maxZoom希望设置为非负数,实际值为: " + t), this) : (this.maxZoom = t, this) : (new m.BaseTypeError("maxZoom", "Number", t).error(), this)
}
},
{
key: "getMaxZoom",
value: function() {
return this.maxZoom
}
},
{
key: "setLevel",
value: function(t) {
this.level = t,
this.rank = (0, v.getRank)(t, this.zIndex)
}
}]),
e
} (g);
t.exports = w
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var o = n(17),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(655),
f = i(c),
d = n(66),
h = n(23),
v = i(h),
p = n(10),
_ = i(p),
m = function() {
function t(e) { (0, s.
default)(this, t),
this.painter = e,
this.renderLayers = null,
this._destroyed = !1,
this._needReplace = !0,
this.gradualPlacementArr = []
}
return (0, u.
default)(t, [{
key: "updatePlace",
value: function() {
this._needReplace = !0
}
},
{
key: "resize",
value: function(t, e) {
this._destroyed || (this.width = t, this.height = e, this.painter.resize(t, e))
}
},
{
key: "update",
value: function(t, e) {
var n = this;
if (!this._destroyed) {
var i = t.getDrawLayers().filter(function(t) {
return ! t.isHidden(e.zoom)
}),
o = t.getPlugins(),
a = [],
s = {};
i.forEach(function(i) {
var o = i.filter,
l = i.sourceId,
u = t.getSource(l);
if (u) {
var c = u.getDrawItems();
if (0 !== (0, r.
default)(c).length) {
var f = {};
f.tileSize = i.tileSize,
f.type = i.type,
f.rank = i.rank,
f.id = i.id,
f.opacity = i.opacity,
"LABEL" !== i.type && "MARKER" !== i.type || (f._enableCollision = i._enableCollision),
i.type === d.RENDER_LAYER_TYPE.grayTile && (f.colorMap = i.colorMap, f.rgbaFormatter = i.rgbaFormatter),
"MASK" === i.type && (f.isMaskReverse = i.isMaskReverse);
var h = [];
_.
default.forIn(c,
function(t, r) {
var a = r.getQueryData(o),
l = r.coord;
if (a) {
var u = {},
c = void 0,
f = void 0;
if (l.isVirtualCoord()) c = 0,
f = 0;
else {
if ((l.z - e.tileZoom >= 4 || e.tileZoom - l.z >= 5) && e.tileZoom <= v.
default.maxDataZoom && !(i.maxDataZoom < v.
default.maxDataZoom && l.z <= i.maxDataZoom - 1) && i.type !== d.RENDER_LAYER_TYPE.grayTile) return;
var p = e.projectionTopLeft(l.z);
c = l.wrapXAroundCenter(e.center) * i.tileSize - p.x,
f = l.y * i.tileSize - p.y
}
u.offset = {
x: c,
y: f
},
u.id = l.id,
u.coordX = l.x,
u.coordY = l.y,
u.coordZ = l.z,
u.size = r.tileSize;
var _ = u.id in a ? a[u.id] : a;
if (_ && _.children && Math.round(e.zoom) >= v.
default.maxDataZoom) {
var m = _.children[Math.round(e.zoom)]; ! m || n.painter.textCache && [d.BASE_LAYER_TYPE.point, d.BASE_LAYER_TYPE.label].includes(o) || (_ = m)
}
if (u.features = _, u.scale = l.isVirtualCoord() ? 1 : e.calCoordsScale(l.z), !s[u.id]) {
var g = {};
g.offset = u.offset,
g.scale = u.scale,
g.tileSize = i.tileSize,
s[u.id] = g
}
h.push(u)
}
}),
f.tiles = h,
a.push(f)
}
}
}),
o.forEach(function(t) {
a.push({
type: d.RENDER_LAYER_TYPE.visualPlugin,
visualPlugin: t,
rank: t.rank
})
}),
a.sort(function(t, e) {
return t.rank - e.rank
}),
this.renderLayers = a;
var l = !1;
if (this.painter.preRender(e, s), (!this.gradualPlacement || this.gradualPlacement.isDone() && !this.gradualPlacement.isFading() && this._needReplace) && (this.gradualPlacement = new f.
default(this.painter.textCache, this.renderLayers), this._needReplace = !1, this.gradualPlacementArr.push(this.gradualPlacement), this.gradualPlacementArr.length > 3)) {
var u = this.gradualPlacementArr[0];
if (u.getInUse && u.getInUse()) return;
this.gradualPlacementArr.shift(),
u.destroy(),
u = null
}
return this.gradualPlacement.isDone() || (this.painter.painters.symbol && this.painter.painters.symbol.preDraw({
iconsLoader: t.iconsLoader
}), this.gradualPlacement.placement.updateVersion(), this.gradualPlacement.continuePlacement(this.renderLayers, this.painter.tilesMatrix, this.painter.camera, e), this.gradualPlacement.isDone() ? this.placement = this.gradualPlacement.batchUpdate(this.placement) : (this.lastGradualPlacement = this.gradualPlacement, l = !0, this.placement || (this.placement = this.gradualPlacement.placement))),
this.gradualPlacement && this.gradualPlacement.placement !== this.placement && this.placement.batchUpdateShow(),
this.painter.render(this.renderLayers, e, this.placement, {
fadeChange: this.placement.getFadeChange(),
iconsLoader: t.iconsLoader
}),
l
}
}
},
{
key: "resetGradualPlacement",
value: function() {
this.gradualPlacement && (this.gradualPlacement.destroy(), this.gradualPlacement = null)
}
},
{
key: "render",
value: function(t, e) {
if (!this._destroyed) return this.update(t, e)
}
},
{
key: "destroy",
value: function() {
this._destroyed || (this.gradualPlacement && (this.gradualPlacement.destroy(), this.gradualPlacement = null), this.painter = null, this.renderLayers = null, this._destroyed = !0, this.gradualPlacementArr = [])
}
},
{
key: "getPoi",
value: function(t) {
return this.placement ? this.placement.getPoi(t) : null
}
}]),
t
} ();
t.exports = m
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1,
n = JSON.parse((0, s.
default)(t));
return m.
default.forIn(n,
function(t, n) {
n.x *= e,
n.y *= e
}),
n
}
function r(t, e) {
var n = t * Math.PI / 180,
i = e / 2 * Math.PI / 180;
return (Math.cos(n) * Math.tan(n + i) - Math.sin(n)) / Math.tan(i)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(113),
s = i(a),
l = n(16),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(107),
p = n(110),
_ = n(10),
m = i(_),
g = n(112),
y = n(23),
x = i(y),
b = function() {
function t() {
var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
n = e.map,
i = e.view,
o = e.look,
r = e.scale,
a = e.offset; (0, f.
default)(this, t),
this.version = 0,
this.look = o,
this.view = i,
this.map = n,
this.scale = r,
this.lookPoint = new v.Vector3(o.slice(0, 3)),
this.lightPosition = new v.Vector3([0, 0, 0]);
var s = i.right - i.left,
l = i.top - i.bottom;
this.resolution = {
width: s,
height: l
},
this.pMatrix = new v.Matrix4,
this.vMatrix = new v.Matrix4,
this.vInverseMatrix = new v.Matrix4,
this.rotateMatrix = new v.Matrix4,
this.scaleMatrix = new v.Matrix4,
this.matrixStore = new p.Store("matrixStore", 1e4),
this.fovy = 30,
this.distance = Math.floor(o[2] = i.top / Math.tan(this.fovy / 2 * Math.PI / 180)),
this.far = 4 * this.distance,
this.near = 1;
var u = a.x,
c = void 0 === u ? 0 : u,
d = a.y,
h = void 0 === d ? 0 : d;
this.pMatrix.setPerspective(this.fovy, s / l, this.near, this.far, 2 * c / s, -2 * h / l),
this.offset = {
x: c,
y: h
},
this.setLookAt(o),
this.cache = {},
this.fogPitch = 45
}
return (0, h.
default)(t, [{
key: "setView",
value: function(t) {
if (arguments.length > 1 && void 0 !== arguments[1] && arguments[1]) this.updateVersion();
else for (var e in t) if (t.hasOwnProperty(e) && this.view[e] !== t[e]) {
this.updateVersion();
break
}
this.view = t;
var n = t.right - t.left,
i = t.top - t.bottom,
o = this.fovy,
r = this.near,
a = this.offset;
this.distance = Math.floor(t.top / Math.tan(o / 2 * Math.PI / 180)),
this.far = 4 * this.distance,
this.resolution.width = n,
this.resolution.height = i,
this.pMatrix.setPerspective(o, n / i, r, this.far, 2 * a.x / n, -2 * a.y / i),
this._setPVMatrix()
}
},
{
key: "setOffset",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {
x: 0,
y: 0
};
m.
default.deepEqual(t, this.offset) || (this.offset = t, this.setView(this.view, !0))
}
},
{
key: "setLookAt",
value: function(t) {
for (var e = 0,
n = t.length; e < n; e++) if (this.look[e] !== this.look[e]) {
this.updateVersion();
break
}
this.look = t,
this._setPVMatrix()
}
},
{
key: "setRotate",
value: function(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0;
e %= 360,
n %= 360,
t === this.pitch && e === this.heading && n === this.roll || this.updateVersion(),
(t || 0 === t) && (t = Math.min(Math.max(t, 0), x.
default.maxPitch)),
this.heading = e,
this.pitch = t,
this.roll = n,
this._setPVMatrix()
}
},
{
key: "setScale",
value: function(t) {
t !== this.scale && (this.updateVersion(), this.scaleMatrix.setScale(t, t, t), this.scale = t, this._setPVMatrix())
}
},
{
key: "canvasCoordsToGLCoords",
value: function(t, e) {
return (0, g.fromScreenToNdc)(t, e, this.resolution)
}
},
{
key: "glCoordsToCanvasCoords",
value: function(t, e) {
return (0, g.fromNdcToScreen)(t, e, this.resolution)
}
},
{
key: "getScreenCoordsByCustomMatrix",
value: function(t, e) {
var n = (0, g.getScreenCoordsByCustomMatrix)(t, e, this.resolution);
return (0, u.
default)({},
n, {
version: this.version
})
}
},
{
key: "getScreenCoordsFromPixel",
value: function(t) {
var e = new v.Vector4(t.x, t.y, 0, 1);
return this.getScreenCoordsByCustomMatrix(this.pvMatrix, e)
}
},
{
key: "getScreenCoordsFromWorld",
value: function(t) {
return this.getScreenCoordsByCustomMatrix(this.pvMatrix, t)
}
},
{
key: "getBounds",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1,
e = this.cache,
n = this.version,
i = this.pvMatrix;
if (e.bounds && e.bounds.version === n) return o(e.bounds.value, 1 / t);
var r = Math.min(this.getFogEdge()[1], 1),
a = {
centerDelta: {
x: 0,
y: 0
},
leftTop: (0, g.getZPlaneCoordsByCustomMatrix)(i, {
x: -1,
y: r
}),
rightTop: (0, g.getZPlaneCoordsByCustomMatrix)(i, {
x: 1,
y: r
}),
leftBottom: (0, g.getZPlaneCoordsByCustomMatrix)(i, {
x: -1,
y: -1
}),
rightBottom: (0, g.getZPlaneCoordsByCustomMatrix)(i, {
x: 1,
y: -1
})
};
return this.cache.bounds = {
version: this.version,
value: a
},
o(a, 1 / t)
}
},
{
key: "getFogEdge",
value: function() {
var t = this.fogPitch;
if (this.pitch < t - 5) return [1, 1 / 0, 1, 1];
if (this.cache.fogEdge && this.cache.fogEdge.version === this.version) return this.cache.fogEdge.value;
var e = this.map.transform._zoom > 18 ? this.map.transform._zoom - 17 : 1,
n = this.view.top / this.scale * r(t, this.fovy) * e,
i = n * Math.sin(this.heading * Math.PI / 180),
o = n * Math.cos(this.heading * Math.PI / 180),
a = this.pvMatrix.multiplyVector4({
elements: [i, o, 0, 1]
}).elements,
s = a.map(function(t) {
return t / a[3]
});
return this.cache.fogEdge = {
version: this.version,
value: s
},
s
}
},
{
key: "getLookPosition",
value: function() {
return this.vInverseMatrix.multiplyVector3(this.lookPoint)
}
},
{
key: "getLightPosition",
value: function(t) {
return this.vInverseMatrix.multiplyVector3(t || this.lightPosition)
}
},
{
key: "_setPVMatrix",
value: function() {
var t = new v.Matrix4,
e = new v.Matrix4;
e.translate(0, 0, -this.distance),
e.rotate( - this.pitch, 1, 0, 0),
e.rotate(this.roll, 0, 1, 0),
e.rotate(this.heading, 0, 0, 1),
e.scale(this.scale, this.scale, this.scale),
e.translate(0, 0, 0),
this.vMatrix = e,
this.vInverseMatrix.set(e).invert(),
t.multiply(this.pMatrix).multiply(e),
this.pvMatrix = t
}
},
{
key: "updateVersion",
value: function() {
this.version += 1
}
},
{
key: "destroy",
value: function() {
this.version = 0,
this.look = null,
this.view = null,
this.map = null,
this.scale = null,
this.lookPoint = null,
this.lightPosition = null,
this.resolution = null,
this.pMatrix = null,
this.vMatrix = null,
this.vInverseMatrix = null,
this.rotateMatrix = null,
this.scaleMatrix = null,
this.matrixStore.clear(),
this.matrixStore = null,
this.fovy = null,
this.distance = null,
this.far = null,
this.near = null,
this.cache = null
}
}]),
t
} ();
e.
default = b
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = t[0],
n = [];
return n = e ? e.color: [0, 0, 0],
{
lighting_uAmbientColor: n
}
}
function r(t) {
var e = [],
n = [];
return t.forEach(function(t) {
e.push.apply(e, (0, l.
default)(t.direction)),
n.push.apply(n, (0, l.
default)(t.color))
}),
t.length || (e.push(0, 0, 0), n.push(0, 0, 0)),
{
lighting_uDirDirection: e,
lighting_uDirColor: n,
lighting_uDirCount: t.length
}
}
function a(t, e) {
var n = [],
i = [],
o = [];
return t.forEach(function(t) {
var r = e.latLngToCenterLocalPixel(t.position),
a = 1 / (0, S.getSpatialResolution)(e.zoom),
s = a * t.height;
n.push(r.x, r.y, s),
i.push.apply(i, (0, l.
default)(t.attenuation)),
o.push.apply(o, (0, l.
default)(t.color))
}),
t.length || (n.push(0, 0, 0), i.push(0, 0, 0), o.push(0, 0, 0)),
{
lighting_uPointPosition: n,
lighting_uPointAtt: i,
lighting_uPointColor: o,
lighting_uPointCount: t.length
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(24),
l = i(s),
u = n(16),
c = i(u),
f = n(222),
d = i(f),
h = n(0),
v = i(h),
p = n(1),
_ = i(p),
m = n(753),
g = i(m),
y = n(341),
x = n(512),
b = i(x),
S = n(112),
w = n(107),
E = n(10),
T = i(E),
A = function() {
function t() {
var e; (0, v.
default)(this, t),
this.lights = (e = {},
(0, d.
default)(e, y.LIGHT_TYPE.AMBIENT, []), (0, d.
default)(e, y.LIGHT_TYPE.DIRECTION, []), (0, d.
default)(e, y.LIGHT_TYPE.POINT, []), e),
this.setConfig(),
this._uniforms = {},
this._cameraVer = null
}
return (0, _.
default)(t, [{
key: "setConfig",
value: function(t) {
var e = this,
n = (0, c.
default)({},
g.
default, t),
i = n.active,
o = n.toneMapping,
r = n.intensity,
a = n.lightList,
s = n.shadowOptions;
return i ? this.enable() : this.disable(),
this._toneMapping = o,
this.setIntensity(r),
this.clearLights(),
a && a.forEach(function(t) {
e.addLight(new b.
default(t))
}),
this.setShadowOptions(s),
this
}
},
{
key: "addLight",
value: function(t) {
var e = t.type;
return this.lights[e] && this.lights[e].length < 4 ? this.lights[e].push(t) : console.warn(e + "类型光源暂不支持,或已达上限,不可添加。"),
this
}
},
{
key: "removeLight",
value: function(t) {
var e = this.lights[t.type],
n = e.findIndex(function(e) {
return e.id === t.id
});
return n >= 0 && e.splice(n, 1),
this
}
},
{
key: "clearLights",
value: function() {
var t = this;
return T.
default.forIn(this.lights,
function(e) {
t.lights[e] = []
}),
this
}
},
{
key: "getLights",
value: function() {
var t = [];
return T.
default.forIn(this.lights,
function(e, n) {
t.push.apply(t, (0, l.
default)(n))
}),
t
}
},
{
key: "setIntensity",
value: function(t) {
return this.intensity = (0, c.
default)({
ambient:
0,
diffuse: 0,
specular: 0
},
this.intensity, t),
this
}
},
{
key: "getIntensity",
value: function() {
return this.intensity
}
},
{
key: "enable",
value: function() {
return this.active = !0,
this
}
},
{
key: "disable",
value: function() {
return this.active = !1,
this
}
},
{
key: "isActive",
value: function() {
return this.active
}
},
{
key: "setShadowOptions",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.lightId,
n = t.intensity,
i = void 0 === n ? 1 : n,
o = t.enabled,
r = void 0 !== o && o;
return this._shadowEnabled = r,
this._shadowLightId = e,
this._shadowIntensity = Math.max(0, Math.min(i, 1)),
this
}
},
{
key: "getShadowOptions",
value: function() {
return {
enabled: this._shadowEnabled,
lightId: this._shadowLightId,
intensity: this._shadowIntensity
}
}
},
{
key: "getShadowLight",
value: function() {
return this._shadowEnabled && this.lights[y.LIGHT_TYPE.DIRECTION][this._getShadowLightIndex()]
}
},
{
key: "_getShadowLightIndex",
value: function() {
var t = this;
return this.lights[y.LIGHT_TYPE.DIRECTION].findIndex(function(e) {
return e.id === t._shadowLightId
})
}
},
{
key: "_updateViewPos",
value: function(t) {
t ? t.version !== this._cameraVer && (this._uniforms.lighting_uViewPos = t.getLookPosition().elements, this._cameraVer = t.version) : this._uniforms.lighting_uViewPos = [0, 0, 1e3]
}
},
{
key: "getLightPVMatrix",
value: function(t) {
var e;
if (!this.getShadowLight()) return new w.Matrix4;
var n = new w.Vector3(this.getShadowLight().direction),
i = new w.Vector3(n.elements).scale(3e3, 3e3, 3e3),
o = new w.Vector3(0, 0, 1);
n.equals(o) && (o = new w.Vector3(0, 1, 0));
var r = (e = new w.Matrix4).setLookAt.apply(e, (0, l.
default)(i.elements).concat([0, 0, 0], (0, l.
default)(o.elements)));
return (new w.Matrix4).setOrtho(t.left, t.right, t.bottom, t.top, 1, 6e3).scale(.75, .75, 1).multiply(r)
}
},
{
key: "update",
value: function(t) {
var e = t.camera,
n = t.transform,
i = t.view,
s = this.isActive(),
l = this.intensity,
u = this._toneMapping;
this._updateViewPos(e);
var f = o(this.lights[y.LIGHT_TYPE.AMBIENT]),
d = r(this.lights[y.LIGHT_TYPE.DIRECTION]),
h = a(this.lights[y.LIGHT_TYPE.POINT], n); (0, c.
default)(this._uniforms, {
lighting_uBase: [s, l.ambient, l.diffuse, l.specular],
lighting_uToneMapping: [u.enable, u.exposure],
lighting_uShadow: [this._shadowEnabled && this._shadowIntensity, this._getShadowLightIndex()],
lighting_uShadowLightPVMatrix: this.getLightPVMatrix(i).elements
},
f, d, h)
}
},
{
key: "uniforms",
get: function() {
return this._uniforms
}
}]),
t
} ();
e.
default = A
},
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(341);
e.
default = {
active: !0,
toneMapping: {
enable: !1,
exposure: 1
},
intensity: {
ambient: 1,
diffuse: 1,
specular: 1
},
lightList: [{
type: i.LIGHT_TYPE.AMBIENT,
color: "#FFF",
intensity: .8
},
{
id: "$main",
type: i.LIGHT_TYPE.DIRECTION,
color: "#FFF",
intensity: .2,
direction: [ - 1, 2, -1.41]
},
{
type: i.LIGHT_TYPE.DIRECTION,
color: "#FFF",
intensity: .2,
direction: [1, -2, -1.41]
}],
shadowOptions: {
enabled: !1
}
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(17),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(35),
m = i(_),
g = n(4),
y = i(g),
x = n(305),
b = i(x),
S = n(585),
w = i(S),
E = n(213),
T = i(E),
A = n(110),
P = n(212),
I = i(P),
k = n(10),
L = i(k),
M = n(1049),
C = i(M),
R = !1,
B = new Image;
B.onload = function() {
R = !0
},
B.src = C.
default;
var N = function(t) {
function e(t) { (0, f.
default)(this, e);
var n = (0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t));
return n.shaderSource = w.
default,
n._store = new A.Store("buffer", 100, 16,
function(t) {
t.positions && t.positions.delete(),
t.indices && t.indices.delete(),
t.instanceBuffers && (0, s.
default)(t.instanceBuffers).forEach(function(e) {
var n = t.instanceBuffers[e];
n.data = null,
n.buffer.delete()
})
}),
n.shaderParams = {
attributes: ["a_Positions", "a_InstanceCoords", "a_InstanceColor", "a_InstanceWidth"],
uniforms: ["u_matrix", "u_mapScale", "u_SamplerArrow", "u_resolution"]
},
n.positions = new Int16Array([ - 1, 1, 1, 1, -1, -1, 1, -1]),
n.indices = new Uint8Array([0, 2, 1, 1, 2, 3]),
n
}
return (0, y.
default)(e, t),
(0, h.
default)(e, [{
key: "draw",
value: function(t, e, n) {
var i = this.gl,
o = n.tileId || 0;
i.useProgram(i.program),
i.uniform1f(this.u_mapScale, e.scale),
i.uniform1i(this.u_SamplerArrow, 0),
i.uniform2f(this.u_resolution, e.width, e.height),
i.uniformMatrix4fv(this.u_matrix, !1, e.matrix),
this.drawTileInstance(o, t.instance)
}
},
{
key: "drawTileInstance",
value: function(t, e) {
if (! (e.count < 1)) {
var n = this.gl,
i = this._store;
i.exist(t) || i.set(t, this.createBuffer(t, e));
var o = i.get(t);
o.positions.bind(),
o.positions.pointToAttrib({
location: this.a_Positions,
size: 2,
type: n.SHORT
}),
o.indices.bind(),
L.
default.forIn(o.instanceBuffers,
function(t, e) {
var i = e.buffer,
o = e.location,
r = e.size,
a = e.type;
i.bind(),
i.pointToAttrib({
location: o,
size: r,
type: a
}),
n.vertexAttribDivisor(o, 1)
}),
n.drawElementsInstanced(n.TRIANGLES, this.indices.length, n.UNSIGNED_BYTE, 0, e.count),
n.bindBuffer(n.ARRAY_BUFFER, null),
n.bindBuffer(n.ELEMENT_ARRAY_BUFFER, null),
n.vertexAttribDivisor(this.a_InstanceCoords, 0),
n.vertexAttribDivisor(this.a_InstanceColor, 0),
n.vertexAttribDivisor(this.a_InstanceWidth, 0)
}
}
},
{
key: "createBuffer",
value: function(t, e) {
var n = this.gl,
i = {
positions: null,
indices: null,
instanceBuffers: {}
};
if (this.positions && (i.positions = new I.
default(n, {
data: this.positions
})), this.indices && (i.indices = new I.
default(n, {
target: n.ELEMENT_ARRAY_BUFFER,
data: this.indices
})), e) {
var o = {
instanceCoordsTypeArray: {
location: this.a_InstanceCoords,
size: 4,
type: n.FLOAT
},
instanceColorTypeArray: {
location: this.a_InstanceColor,
size: 4,
type: n.FLOAT
},
instanceWidthTypeArray: {
location: this.a_InstanceWidth,
size: 1,
type: n.FLOAT
}
};
L.
default.forIn(o,
function(t, o) {
i.instanceBuffers[t] = (0, r.
default)({
data:
e[t],
buffer: new I.
default(n, {
data: e[t],
usage: n.DYNAMIC_DRAW
})
},
o)
})
}
return i
}
},
{
key: "afterDraw",
value: function() {
this._arrowTex && this._arrowTex.unbind()
}
},
{
key: "loadTexture",
value: function() {
R ? (this._arrowTex || (this._arrowTex = new T.
default(this.gl, {
pixels: B
}), this._arrowTex.upload({
flipY: !0
})), this._arrowTex.bind()) : (this.gl.activeTexture(this.gl.TEXTURE0), this.gl.bindTexture(this.gl.TEXTURE_2D, null))
}
},
{
key: "clear",
value: function() {
this._store.clear(),
this._arrowTexture && (this._arrowTexture.destroy(), this._arrowTexture = null)
}
},
{
key: "destroy",
value: function() {
this.positions = null,
this.indices = null,
this._store.clear(),
this._store = null,
this._arrowTex && (this._arrowTex.delete(), this._arrowTex = null),
(0, m.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (b.
default);
e.
default = N
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(211),
p = i(v),
_ = n(586),
m = i(_),
g = n(110),
y = n(219),
x = n(23),
b = i(x),
S = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.store = new g.Store("buffer", 1024, 128, y.deleteBuffersCallback),
n.shaderSource = m.
default,
n.shaderParams = {
attributes: ["a_Position", "a_Color", "a_Normal", "a_LineInfo", "a_LineDistance", "a_SideInfo", "a_PickingColor"],
uniforms: ["u_matrix", "u_modelMatrix", "u_SizeScale", "picking_useFeaturePickingColor"]
},
n.enableLight = !0,
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "draw",
value: function(t, e, n, i, o) {
var r = arguments.length > 5 && void 0 !== arguments[5] && arguments[5],
a = this.gl,
s = this.store,
l = t.vertices,
u = t.indeices,
c = "base_" + o + "_" + t.id + "_" + Math.round(i),
f = e.matrix,
d = e.modelMatrix,
h = void 0;
s.exist(c) ? (h = s.get(c), this.bindVertexBuffer(l, h.vertices), this.bindElementBuffer(u, h.indices)) : h = s.set(c, {
vertices: this.bindVertexBuffer(l),
indices: this.bindElementBuffer(u),
length: u.length
}),
a.uniformMatrix4fv(this.u_matrix, !1, f),
a.uniformMatrix4fv(this.u_modelMatrix, !1, d);
var v = ~~ (100 * (i - ~~i));
a.uniform1f(this.u_SizeScale, 1e3 * v + Math.min(Math.floor(100 * (n || 1)), 255)),
a.uniform1f(this.picking_useFeaturePickingColor, r ? 1 : 0);
var p = b.
default.batchRender ? a.UNSIGNED_INT: a.UNSIGNED_SHORT;
a.drawElements(a.TRIANGLES, h.length, p, 0),
this.unbindVertexBuffer(h.vertices, l.attributes)
}
}]),
e
} (p.
default);
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(211),
p = i(v),
_ = n(588),
m = i(_),
g = n(110),
y = n(219),
x = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.store = new g.Store("buffer", 1024, 128, y.deleteBuffersCallback),
n.shaderSource = m.
default,
n.shaderParams = {
attributes: ["a_Position", "a_Color", "a_Info", "a_Transform", "a_Height"],
uniforms: ["u_matrix", "u_modelMatrix", "u_use3D", "u_maskSampler", "u_maskScale"]
},
n.enableLight = !0,
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "draw",
value: function(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
i = this.gl,
o = this.store,
r = t.vertices,
a = t.indeices,
s = "build_" + t.id + "_" + e.zoom,
l = e.matrix,
u = e.modelMatrix,
c = e.maskScale || 1,
f = void 0;
o.exist(s) ? (f = o.get(s), this.bindVertexBuffer(r, f.vertices), this.bindElementBuffer(a, f.indices)) : f = o.set(s, {
vertices: this.bindVertexBuffer(r),
indices: this.bindElementBuffer(a),
length: a.length
}),
i.uniformMatrix4fv(this.u_matrix, !1, l),
i.uniformMatrix4fv(this.u_modelMatrix, !1, u),
i.uniform1i(this.u_maskSampler, 0),
i.uniform1f(this.u_maskScale, c),
i.uniform1f(this.u_use3D, n.use3D ? 1 : 0),
i.drawElements(i.TRIANGLES, f.length, i.UNSIGNED_SHORT, 0),
this.unbindVertexBuffer(f.vertices, r.attributes)
}
}]),
e
} (p.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(113),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(305),
y = i(g),
x = n(594),
b = function(t) {
function e(t) { (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.shaderSource = JSON.parse((0, r.
default)(x.grayShader)),
n.shaderParams = {
attributes: ["a_position"],
uniforms: ["u_matrix", "u_size", "u_texInfo", "u_opacity", "u_sampler", "u_Resolution", "u_hasColorMap", "u_samplerColorMap", "u_usePicking"]
},
n.geometry = {
vertices: new Float32Array([0, 0, 0, 1, 1, 0, 1, 1]),
indices: new Uint8Array([0, 2, 1, 1, 2, 3])
},
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "preDraw",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
n = t.hasColorMap,
i = t.colorMapTexture,
o = t.rgbaFormatter,
r = this.shaderSource.f;
if (this.shaderSource.f = x.grayShader.f.replace("{RGBA_FORMATTER}", o), (0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "preDraw", this).call(this, {
updated: r !== this.shaderSource.f
}), this.gl.uniform1f(this.u_hasColorMap, n ? 1 : 0), i && i._uploaded) {
if (this.gl.uniform1i(this.u_samplerColorMap, 1), !this.buffers) {
var a = this.geometry,
l = a.vertices,
u = a.indices;
this.buffers = this.createBuffer(null, l, u)
}
this.bindBuffer()
}
}
},
{
key: "bindBuffer",
value: function() {
var t = this.gl;
this.buffers.vertices.bind(),
this.buffers.vertices.pointToAttrib({
location: this.a_position,
size: 2,
type: t.FLOAT
}),
this.buffers.indices.bind()
}
},
{
key: "draw",
value: function(t) {
var e = t.matrix,
n = t.size,
i = t.texInfo,
o = t.opacity,
r = t.resolution,
a = t.usePicking,
s = void 0 !== a && a,
l = this.gl;
l.uniformMatrix4fv(this.u_matrix, !1, e.elements),
l.uniform1i(this.u_sampler, 0),
l.uniform2f(this.u_size, n.width, n.height),
l.uniform2f(this.u_Resolution, r.width, r.height),
l.uniform4f(this.u_texInfo, i.s, i.t, i.w, i.h),
l.uniform1f(this.u_opacity, o),
l.uniform1f(this.u_usePicking, s ? 1 : 0),
l.drawElements(l.TRIANGLES, this.buffers.length, l.UNSIGNED_BYTE, 0)
}
},
{
key: "destroy",
value: function() {
this.buffers && (this.buffers.vertices.delete(), this.buffers.indices.delete()),
this.vertices = null,
this.indices = null,
(0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (y.
default);
e.
default = b
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(394),
y = i(g),
x = n(599),
b = i(x),
S = n(212),
w = i(S),
E = n(10),
T = i(E),
A = n(644),
P = i(A),
I = n(1024),
k = new P.
default,
L = k.parse(I),
M = {
minX: -17.631067276000977,
maxX: 15.692798614501953,
minY: -3.118868112564087,
maxY: 3.4938244819641113,
minZ: .05786377936601639,
maxZ: 20.096586227416992
},
C = function(t) {
function e(t) { (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.shaderSource = b.
default,
n.shaderParams = {
attributes: ["aPosition", "aNormal", "aColor", "aInstanceCoord", "aInstanceInfo"],
uniforms: n.commonUniformList.concat(["uEnableLighting", "lighting_uCameraPosition", "lighting_lightPositions", "uBoxMin", "uBoxMax"])
},
n.enableLight = !0,
n.model = L,
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "createModelBuffer",
value: function() {
var t = this.gl,
e = this.model.attributes;
this.modelBuffers = {
positions: {
buffer: new w.
default(t, {
data: e.POSITION.value
}),
location: this.aPosition,
size: e.POSITION.size,
type: t.FLOAT
},
normals: {
buffer: new w.
default(t, {
data: e.NORMAL.value
}),
location: this.aNormal,
size: e.NORMAL.size,
type: t.BYTE
},
colors: {
buffer: new w.
default(t, {
data: e.COLOR_0.value
}),
location: this.aColor,
size: e.COLOR_0.size,
type: t.UNSIGNED_BYTE
}
}
}
},
{
key: "createBuffer",
value: function(t) {
var e = this.gl,
n = {},
i = {
instanceCoordsTypeArray: {
location: this.aInstanceCoord,
size: 2,
type: e.FLOAT
},
instanceInfosTypeArray: {
location: this.aInstanceInfo,
size: 4,
type: e.SHORT
}
};
return T.
default.forIn(i,
function(i, o) {
n[i] = (0, r.
default)({
data:
t[i],
buffer: new w.
default(e, {
target: e.ARRAY_BUFFER,
data: t[i],
usage: e.DYNAMIC_DRAW
})
},
o)
}),
n
}
},
{
key: "setBuffers",
value: function(t) {
var n = this;
this.modelBuffers || this.createModelBuffer();
var i = this.modelBuffers;
T.
default.forIn(i,
function(t, e) {
var n = e.buffer,
i = e.location,
o = e.size,
r = e.type;
n.bind(),
"index" !== t && n.pointToAttrib({
location: i,
size: o,
type: r
})
});
var o = (0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "setBuffers", this).call(this, t);
return T.
default.forIn(o,
function(t, e) {
var i = e.location;
n.gl.vertexAttribDivisor(i, 1)
}),
o
}
},
{
key: "setUniforms",
value: function(t, n, i, o) { (0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "setUniforms", this).call(this, t, n, i, o);
var r = this.gl;
r.uniform3f(this.uBoxMin, M.minX, M.minY, M.minZ),
r.uniform3f(this.uBoxMax, M.maxX, M.maxY, M.maxZ)
}
},
{
key: "draw",
value: function(t, e, n, i) {
if (t && n) {
var o = this.gl,
r = this.model;
o.useProgram(o.program),
this.setUniforms(t, e, n, i);
var a = this.setBuffers(t);
o.drawArraysInstanced(r.mode, 0, r.vertexCount, t.count),
o.bindBuffer(o.ARRAY_BUFFER, null),
T.
default.forIn(a,
function(t, e) {
var n = e.location;
o.vertexAttribDivisor(n, 0)
})
}
}
},
{
key: "destroy",
value: function() {
this.model = null,
(0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (y.
default);
e.
default = C
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(394),
m = i(_),
g = n(597),
y = i(g),
x = n(212),
b = i(x),
S = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.shaderSource = y.
default,
n.shaderParams = {
attributes: ["aPosition"],
uniforms: n.commonUniformList.concat(["uColor"])
},
n
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "createBuffer",
value: function(t) {
var e = this.gl,
n = t.position,
i = t.index;
return {
position: {
location: this.aPosition,
size: 3,
type: e.FLOAT,
data: n,
buffer: new b.
default(e, {
data: n,
usage: e.DYNAMIC_DRAW
})
},
index: {
data: i,
buffer: new b.
default(e, {
target: e.ELEMENT_ARRAY_BUFFER,
data: i
}),
type: 2 === i.BYTES_PER_ELEMENT ? e.UNSIGNED_SHORT: e.UNSIGNED_INT,
length: i.byteLength / i.BYTES_PER_ELEMENT
}
}
}
},
{
key: "setUniforms",
value: function(t, n, i, o) { (0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "setUniforms", this).call(this, t, n, i, o);
var a = this.gl,
s = o.color || [1, 1, 1, 1];
a.uniform4f(this.uColor, s[0], s[1], s[2], s[3])
}
}]),
e
} (m.
default);
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(515),
p = i(v),
_ = n(607),
m = i(_),
g = n(139),
y = n(112),
x = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.shaderParams.uniforms = n.shaderParams.uniforms.concat(["uCenter", "uZoom", "uPixelsPerMeter", "uResolution", "uProject_uCommonUnitsPerWorldUnit", "uProject_uCommonUnitsPerWorldUnit2", "uRelativeCenter"]),
n.shaderSource = m.
default,
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "draw",
value: function(t, e, n, i) {
var o = this.gl;
o.useProgram(o.program),
this.setCommonUniforms(t, i),
this.setUniforms(n, t, e, i),
this.drawTileInstance(n.id, n, i.updateSubData, !0)
}
},
{
key: "setUniforms",
value: function(t, e, n, i) {
var o = this.gl,
r = e.center,
a = e.zoom,
s = 1 / (0, y.getSpatialResolution)(a),
l = i.distanceScales || e.getDistanceScales(),
u = (0, g.splitLatLngNumber)(r.lat),
c = (0, g.splitLatLngNumber)(r.lng),
f = {
latPart: (0, g.splitLatLngNumber)(t.center.lat),
lngPart: (0, g.splitLatLngNumber)(t.center.lng)
};
o.uniformMatrix4fv(this.u_matrix, !1, n.elements),
o.uniform4f(this.uCenter, c.high, u.high, c.low, u.low),
o.uniform1f(this.uZoom, a),
o.uniform3f(this.uPixelsPerMeter, s, s, s),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit, l.pixelsPerDegree[0], l.pixelsPerDegree[1], l.pixelsPerDegree[2]),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit2, l.pixelsPerDegree2[0], l.pixelsPerDegree2[1], l.pixelsPerDegree2[2]),
o.uniform2f(this.uResolution, e.width, e.height),
o.uniform4f(this.uRelativeCenter, f.lngPart.high, f.latPart.high, f.lngPart.low, f.latPart.low),
o.uniform2f(this.u_InstanceTileTextureOffset, 0, 0)
}
}]),
e
} (p.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(394),
m = i(_),
g = n(598),
y = i(g),
x = n(212),
b = i(x),
S = n(10),
w = i(S),
E = function(t) {
function e(t) { (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.shaderSource = y.
default,
n.shaderParams = {
attributes: ["aPosition", "aColor", "aNormal"],
uniforms: n.commonUniformList
},
n.enableLight = !0,
n
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "createBuffer",
value: function(t) {
var e = this.gl,
n = t.index,
i = {},
o = {
position: {
location: this.aPosition,
size: 3,
type: e.FLOAT
},
color: {
location: this.aColor,
size: 3,
type: e.UNSIGNED_BYTE
},
normal: {
location: this.aNormal,
size: 3,
type: e.FLOAT
},
index: {
type: 2 === n.BYTES_PER_ELEMENT ? e.UNSIGNED_SHORT: e.UNSIGNED_INT,
length: n.byteLength / n.BYTES_PER_ELEMENT
}
};
return w.
default.forIn(o,
function(n, o) {
i[n] = (0, r.
default)({
data:
t[n],
buffer: new b.
default(e, {
target: "index" === n ? e.ELEMENT_ARRAY_BUFFER: e.ARRAY_BUFFER,
data: t[n],
usage: e.DYNAMIC_DRAW
})
},
o)
}),
i
}
}]),
e
} (m.
default);
e.
default = E
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(514),
y = i(g),
x = n(603),
b = i(x),
S = n(28),
w = i(S),
E = 1 / 16 / w.
default.devicePixelRatio,
T = function(t) {
function e(t) { (0, u.
default)(this, e),
t.attribList = ["instanceColors", "instanceStrokeColors", "instanceShow", "instanceType"],
t.uniformList = ["u_gamma", "u_buffer"];
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.shaderSource = b.
default,
n.symbolManager = t.glyphManager,
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "_onDraw",
value: function() {
var t = this.gl;
t.uniform1f(this.u_sizeMinPixels, 10),
t.uniform1f(this.u_gamma, E),
t.uniform1f(this.u_buffer, .71)
}
},
{
key: "_onDrawInstanceTile",
value: function() {
this.gl.vertexAttribDivisor(this.instanceColors, 0),
this.gl.vertexAttribDivisor(this.instanceStrokeColors, 0),
this.gl.vertexAttribDivisor(this.instanceShow, 0),
this.gl.vertexAttribDivisor(this.instanceType, 0)
}
},
{
key: "getInstanceConfig",
value: function() {
var t = this.gl;
return (0, r.
default)((0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "getInstanceConfig", this).call(this), {
instanceColorList: {
location: this.instanceColors,
size: 4,
type: t.UNSIGNED_BYTE
},
instanceStrokeColorList: {
location: this.instanceStrokeColors,
size: 4,
type: t.UNSIGNED_BYTE
},
instanceShowList: {
location: this.instanceShow,
size: 1,
type: t.UNSIGNED_BYTE
},
instanceTypeList: {
location: this.instanceType,
size: 1,
type: t.UNSIGNED_BYTE
}
})
}
}]),
e
} (y.
default);
e.
default = T
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(514),
y = i(g),
x = n(604),
b = i(x),
S = n(28),
w = i(S),
E = 1 / 16 / w.
default.devicePixelRatio,
T = function(t) {
function e(t) { (0, u.
default)(this, e),
t.attribList = ["instanceColors", "instanceStrokeColors", "instanceStrokeWidth", "instanceShow", "instanceType"],
t.uniformList = ["u_gamma", "u_buffer", "u_sdfRadius"];
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.shaderSource = b.
default,
n.symbolManager = t.markerManager,
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "_onDraw",
value: function() {
var t = this.gl;
t.uniform1f(this.u_sizeMinPixels, 10),
t.uniform1f(this.u_gamma, E),
t.uniform1f(this.u_buffer, .71),
t.uniform1f(this.u_sdfRadius, this.symbolManager.setting.radius)
}
},
{
key: "_onDrawInstanceTile",
value: function() {
this.gl.vertexAttribDivisor(this.instanceColors, 0),
this.gl.vertexAttribDivisor(this.instanceStrokeColors, 0),
this.gl.vertexAttribDivisor(this.instanceStrokeWidth, 0),
this.gl.vertexAttribDivisor(this.instanceShow, 0),
this.gl.vertexAttribDivisor(this.instanceType, 0)
}
},
{
key: "getInstanceConfig",
value: function() {
var t = this.gl;
return (0, r.
default)((0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "getInstanceConfig", this).call(this), {
instanceColorList: {
location: this.instanceColors,
size: 4,
type: t.UNSIGNED_BYTE
},
instanceStrokeColorList: {
location: this.instanceStrokeColors,
size: 4,
type: t.UNSIGNED_BYTE
},
instanceStrokeWidthList: {
location: this.instanceStrokeWidth,
size: 1,
type: t.UNSIGNED_SHORT
},
instanceShowList: {
location: this.instanceShow,
size: 1,
type: t.UNSIGNED_BYTE
},
instanceTypeList: {
location: this.instanceType,
size: 1,
type: t.UNSIGNED_BYTE
}
})
}
}]),
e
} (y.
default);
e.
default = T
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(24),
s = i(a),
l = n(3),
u = i(l),
c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(5),
p = i(v),
_ = n(4),
m = i(_),
g = n(211),
y = i(g),
x = n(602),
b = i(x),
S = n(110),
w = n(139),
E = n(212),
T = i(E),
A = n(219),
P = n(10),
I = i(P),
k = function(t) {
function e(t) { (0, f.
default)(this, e);
var n = (0, p.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t));
return n.store = new S.Store("buffer", 128, 16, A.deleteInstanceCacllback),
n.shaderSource = b.
default,
n.shaderParams = {
attributes: ["positions", "positions64xyLow"],
uniforms: ["uMatrix", "uCenter", "uZoom", "uPixelsPerMeter", "uResolution", "uProject_uCommonUnitsPerWorldUnit", "uProject_uCommonUnitsPerWorldUnit2", "uColor"]
},
n
}
return (0, m.
default)(e, t),
(0, h.
default)(e, [{
key: "draw",
value: function(t, e, n, i) {
var o = this.gl;
if (e) {
var r = t.center,
a = t.zoom,
l = t.getDistanceRatio(),
u = i.distanceScales,
c = i.color,
f = (0, w.splitLatLngNumber)(r.lat),
d = (0, w.splitLatLngNumber)(r.lng),
h = [d.high, f.high, d.low, f.low];
o.useProgram(o.program),
o.uniformMatrix4fv(this.uMatrix, !1, e.elements),
o.uniform4f.apply(o, [this.uCenter].concat(h)),
o.uniform1f(this.uZoom, a),
o.uniform3f(this.uPixelsPerMeter, l, l, l),
o.uniform3f.apply(o, [this.uProject_uCommonUnitsPerWorldUnit].concat((0, s.
default)(u.pixelsPerDegree))),
o.uniform3f.apply(o, [this.uProject_uCommonUnitsPerWorldUnit2].concat((0, s.
default)(u.pixelsPerDegree2))),
o.uniform2f(this.uResolution, t.width, t.height),
o.uniform4f(this.uColor, c[0], c[1], c[2], c[3]),
this.drawTile(n.uid, n)
}
}
},
{
key: "drawTile",
value: function(t, e) {
var n = this.gl,
i = this.store,
o = !1;
if (i) {
i.exist(t) ? this._hasChangedBuffer(t, e) && (o = !0) : i.set(t, this.createBuffer(t, e));
var r = i.get(t);
I.
default.forIn(r,
function(t, i) {
var r = i.buffer,
a = i.location,
s = i.size,
l = i.type;
r.bind(),
o && (r.bufferData(e[t], {
usage: n.DYNAMIC_DRAW
}), i.data = e[t]),
"indices" !== t && r.pointToAttrib({
location: a,
size: s,
type: l
})
}),
n.drawElements(n.TRIANGLES, r.indices.data.length, n.UNSIGNED_INT, 0),
n.bindBuffer(n.ARRAY_BUFFER, null),
n.bindBuffer(n.ELEMENT_ARRAY_BUFFER, null)
}
}
},
{
key: "_hasChangedBuffer",
value: function(t, e) {
var n = this.store.get(t);
for (var i in n) if (n.hasOwnProperty(i) && e[i] && n[i].data !== e[i]) return ! 0;
return ! 1
}
},
{
key: "createBuffer",
value: function(t, e) {
var n = this.gl;
if (e) {
var i = {},
o = {
positions: {
location: this.positions,
size: 3,
type: n.FLOAT
},
positions64xyLow: {
location: this.positions64xyLow,
size: 2,
type: n.FLOAT
},
indices: {}
};
return I.
default.forIn(o,
function(t, o) {
i[t] = (0, r.
default)({
data:
e[t],
buffer: new T.
default(n, {
target: "indices" === t ? n.ELEMENT_ARRAY_BUFFER: n.ARRAY_BUFFER,
data: e[t],
usage: n.DYNAMIC_DRAW
})
},
o)
}),
i
}
}
}]),
e
} (y.
default);
e.
default = k
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(28),
p = i(v),
_ = n(791),
m = n(342),
g = i(m),
y = n(591),
x = i(y),
b = 12,
S = 15,
w = 39,
E = function(t) {
function e(t) { (0, s.
default)(this, e),
t.uniformList = ["uResolution", "uSampler", "uEnabled"];
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t)),
i = (0, _.getGraphicHardwareInfo)(n.gl),
o = p.
default.devicePixelRatio >= 2 ? S: i ? /(\bHD\b)|(\bUHD\b)/.test(i.renderer) ? b: w: b;
return n.shaderSource = (0, x.
default)(o),
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "setUniforms",
value: function(t) {
var e = t.resolution,
n = t.texture,
i = t.enabled,
o = this.gl;
o.uniform2f(this.uResolution, e[0], e[1]),
o.uniform1f(this.uEnabled, i),
o.activeTexture(o.TEXTURE0),
o.bindTexture(o.TEXTURE_2D, n),
o.uniform1i(this.uSampler, 0)
}
}]),
e
} (g.
default);
e.
default = E
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(24),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(342),
y = i(g),
x = n(590),
b = i(x),
S = function(t) {
function e(t) { (0, u.
default)(this, e),
t.uniformList = ["uRange", "uFogEdge", "uSampler", "uDepthSampler", "uSkySampler", "uSkyInfo", "uViewInfo", "uSkyBrightness", "uFogColor", "uSkyColor"];
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.shaderSource = b.
default,
n.brightness = 1,
n.colors = {},
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "preDraw",
value: function() { (0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "preDraw", this).call(this)
}
},
{
key: "setFogColor",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [.93, .93, .93, 1];
this.colors.fog = t
}
},
{
key: "setSkyColor",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [.8, .8784, 1, 1];
this.colors.sky = t
}
},
{
key: "setBrightness",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1;
this.brightness = t
}
},
{
key: "setUniforms",
value: function(t) {
var e = t.rangeList,
n = t.fogEdge,
i = t.texture,
o = t.depth,
a = t.skyTex,
s = t.skyInfo,
l = t.viewInfo,
u = this.gl;
u.uniform4fv(this.uFogColor, this.colors.fog),
u.uniform4fv(this.uSkyColor, this.colors.sky),
u.uniform2f(this.uRange, e[0], e[1]),
u.uniform3f(this.uFogEdge, n[0], n[1], n[2]),
u.uniform4f.apply(u, [this.uSkyInfo].concat((0, r.
default)(s))),
u.uniform4f.apply(u, [this.uViewInfo].concat((0, r.
default)(l))),
u.uniform1f(this.uSkyBrightness, this.brightness),
u.activeTexture(u.TEXTURE0),
u.bindTexture(u.TEXTURE_2D, i),
u.uniform1i(this.uSampler, 0),
u.activeTexture(u.TEXTURE1),
u.bindTexture(u.TEXTURE_2D, o),
u.uniform1i(this.uDepthSampler, 1),
a ? (a.bind(u, {
textureIndex: 2
}), u.uniform1i(this.uSkySampler, 2)) : (u.activeTexture(u.TEXTURE2), u.bindTexture(u.TEXTURE_2D, null))
}
}]),
e
} (y.
default);
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(342),
p = i(v),
_ = n(593),
m = i(_),
g = function(t) {
function e(t) { (0, s.
default)(this, e),
t.uniformList = ["uSampler", "uHorizontal", "uResolution"];
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.shaderSource = m.
default,
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "setUniforms",
value: function(t) {
var e = t.texture,
n = t.horizontal,
i = t.resolution,
o = this.gl;
e.bind(),
o.uniform1i(this.uSampler, 0),
o.uniform1i(this.uHorizontal, n),
o.uniform2f(this.uResolution, i[0], i[1])
}
}]),
e
} (p.
default);
e.
default = g
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(342),
p = i(v),
_ = n(595),
m = i(_),
g = function(t) {
function e(t) { (0, s.
default)(this, e),
t.uniformList = ["uColor"];
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.shaderSource = m.
default,
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "setUniforms",
value: function(t) {
var e = t.color;
this.gl.uniform4fv(this.uColor, e)
}
}]),
e
} (p.
default);
e.
default = g
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(211),
m = i(_),
g = n(467),
y = i(g),
x = n(110),
b = n(139),
S = n(212),
w = i(S),
E = n(219),
T = n(10),
A = i(T),
P = function(t) {
function e(t) { (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.store = new x.Store("buffer", 128, 16, E.deleteInstanceCacllback),
n.shaderSource = y.
default,
n.shaderParams = {
attributes: ["vertexPositions", "vertexValid", "positions", "positions64xyLow", "nextPositions", "nextPositions64xyLow", "elevations", "fillColors", "lineColors", "pickingColors"],
uniforms: ["uMatrix", "uCenter", "uZoom", "uPixelsPerMeter", "uResolution", "uProject_uCommonUnitsPerWorldUnit", "uProject_uCommonUnitsPerWorldUnit2", "picking_usePickingColor", "u_isSideVertex", "u_extruded", "u_isWireframe", "u_elevationScale", "u_opacity"]
},
n.enableLight = !0,
n
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "draw",
value: function(t, e, n, i) {
var o = this.gl;
if (e) {
var r = t.center,
a = t.zoom,
s = t.getDistanceRatio(),
l = i.distanceScales,
u = i.extruded,
c = void 0 === u ? 1 : u,
f = (0, b.splitLatLngNumber)(r.lat),
d = (0, b.splitLatLngNumber)(r.lng);
o.useProgram(o.program),
o.uniformMatrix4fv(this.uMatrix, !1, e.elements),
o.uniform4f(this.uCenter, d.high, f.high, d.low, f.low),
o.uniform1f(this.uZoom, a),
o.uniform3f(this.uPixelsPerMeter, s, s, s),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit, l.pixelsPerDegree[0], l.pixelsPerDegree[1], l.pixelsPerDegree[2]),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit2, l.pixelsPerDegree2[0], l.pixelsPerDegree2[1], l.pixelsPerDegree2[2]),
o.uniform2f(this.uResolution, t.width, t.height),
o.uniform1f(this.picking_usePickingColor, i.usePicking ? 1 : 0),
o.uniform1f(this.u_isSideVertex, 0),
o.uniform1f(this.u_extruded, c),
o.uniform1f(this.u_isWireframe, !1),
o.uniform1f(this.u_elevationScale, 1),
o.uniform1f(this.u_opacity, 1),
this.drawTile(n.uid, n)
}
}
},
{
key: "drawTile",
value: function(t, e) {
var n = this.gl,
i = this.store,
o = !1;
if (i) {
i.exist(t) ? this._hasChangedBuffer(t, e) && (o = !0) : i.set(t, this.createBuffer(t, e));
var r = i.get(t);
n.disableVertexAttribArray(this.vertexPositions),
n.disableVertexAttribArray(this.nextPositions),
n.disableVertexAttribArray(this.nextPositions64xyLow),
A.
default.forIn(r,
function(t, i) {
var r = i.buffer,
a = i.location,
s = i.size,
l = i.type;
r.bind(),
o && (r.bufferData(e[t], {
usage: n.DYNAMIC_DRAW
}), i.data = e[t]),
"indices" !== t && r.pointToAttrib({
location: a,
size: s,
type: l
})
}),
n.drawElements(n.TRIANGLES, r.indices.data.length, n.UNSIGNED_INT, 0),
n.bindBuffer(n.ARRAY_BUFFER, null),
n.bindBuffer(n.ELEMENT_ARRAY_BUFFER, null)
}
}
},
{
key: "_hasChangedBuffer",
value: function(t, e) {
var n = this.store.get(t);
for (var i in n) if (n.hasOwnProperty(i) && e[i] && n[i].data !== e[i]) return ! 0;
return ! 1
}
},
{
key: "createBuffer",
value: function(t, e) {
var n = this.gl;
if (e) {
var i = {},
o = {
elevations: {
location: this.elevations,
size: 1,
type: n.FLOAT
},
fillColors: {
location: this.fillColors,
size: 4,
type: n.UNSIGNED_BYTE
},
lineColors: {
location: this.lineColors,
size: 4,
type: n.UNSIGNED_BYTE
},
pickingColors: {
location: this.pickingColors,
size: 3,
type: n.UNSIGNED_BYTE
},
positions: {
location: this.positions,
size: 3,
type: n.FLOAT
},
positions64xyLow: {
location: this.positions64xyLow,
size: 2,
type: n.FLOAT
},
vertexValid: {
location: this.vertexValid,
size: 1,
type: n.UNSIGNED_BYTE
},
indices: {}
};
return A.
default.forIn(o,
function(t, o) {
i[t] = (0, r.
default)({
data:
e[t],
buffer: new w.
default(n, {
target: "indices" === t ? n.ELEMENT_ARRAY_BUFFER: n.ARRAY_BUFFER,
data: e[t],
usage: n.DYNAMIC_DRAW
})
},
o)
}),
i
}
}
}]),
e
} (m.
default);
e.
default = P
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(35),
h = i(d),
v = n(4),
p = i(v),
_ = n(16),
m = i(_),
g = n(211),
y = i(g),
x = n(467),
b = i(x),
S = n(110),
w = n(139),
E = n(212),
T = i(E),
A = n(219),
P = n(10),
I = i(P),
k = (0, m.
default)({},
b.
default, {
name: "polygon_side"
}),
L = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.store = new S.Store("buffer", 128, 16, A.deleteInstanceCacllback),
n.shaderSource = k,
n.shaderParams = {
attributes: ["vertexPositions", "vertexValid", "positions", "positions64xyLow", "nextPositions", "nextPositions64xyLow", "elevations", "fillColors", "lineColors", "pickingColors"],
uniforms: ["uMatrix", "uCenter", "uZoom", "uPixelsPerMeter", "uResolution", "uProject_uCommonUnitsPerWorldUnit", "uProject_uCommonUnitsPerWorldUnit2", "picking_usePickingColor", "u_isSideVertex", "u_extruded", "u_isWireframe", "u_elevationScale", "u_opacity"]
},
n.enableLight = !0,
n._vertPositions = new Float32Array([1, 1, 0, 1, 0, 0, 1, 0]),
n
}
return (0, p.
default)(e, t),
(0, u.
default)(e, [{
key: "draw",
value: function(t, e, n, i) {
var o = this.gl;
if (e) {
var r = t.center,
a = t.zoom,
s = t.getDistanceRatio(),
l = i.distanceScales,
u = i.extruded,
c = void 0 === u ? 1 : u,
f = (0, w.splitLatLngNumber)(r.lat),
d = (0, w.splitLatLngNumber)(r.lng);
o.useProgram(o.program),
o.uniformMatrix4fv(this.uMatrix, !1, e.elements),
o.uniform4f(this.uCenter, d.high, f.high, d.low, f.low),
o.uniform1f(this.uZoom, a),
o.uniform3f(this.uPixelsPerMeter, s, s, s),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit, l.pixelsPerDegree[0], l.pixelsPerDegree[1], l.pixelsPerDegree[2]),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit2, l.pixelsPerDegree2[0], l.pixelsPerDegree2[1], l.pixelsPerDegree2[2]),
o.uniform2f(this.uResolution, t.width, t.height),
o.uniform1f(this.picking_usePickingColor, i.usePicking ? 1 : 0),
o.uniform1f(this.u_isSideVertex, 1),
o.uniform1f(this.u_extruded, c),
o.uniform1f(this.u_isWireframe, i.drawBorder ? 1 : 0),
o.uniform1f(this.u_elevationScale, 1),
o.uniform1f(this.u_opacity, 1),
this.drawTile(n.uid, n, i.drawBorder)
}
}
},
{
key: "drawTile",
value: function(t, e, n) {
var i = this.gl,
o = this.store,
r = !1;
if (o) {
o.exist(t) ? this._hasChangedBuffer(t, e) && (r = !0) : o.set(t, this.createBuffer(t, e));
var a = o.get(t);
a.vertexPositions.bind(),
a.vertexPositions.pointToAttrib({
location: this.vertexPositions,
size: 2,
type: i.FLOAT
}),
I.
default.forIn(a,
function(t, n) {
if ("vertexPositions" !== t) {
var o = n.buffer,
a = n.location,
s = n.size,
l = n.type;
o.bind(),
r && (o.bufferData(e[t], {
usage: i.DYNAMIC_DRAW
}), n.data = e[t]),
"indices" !== t && (o.pointToAttrib({
location: a,
size: s,
type: l
}), i.vertexAttribDivisor(a, 1))
}
}),
i.drawArraysInstanced(n ? i.LINE_STRIP: i.TRIANGLE_FAN, 0, 4, e.elevations.length),
i.bindBuffer(i.ARRAY_BUFFER, null),
i.bindBuffer(i.ELEMENT_ARRAY_BUFFER, null),
i.vertexAttribDivisor(this.positions, 0),
i.vertexAttribDivisor(this.positions64xyLow, 0),
i.vertexAttribDivisor(this.elevations, 0),
i.vertexAttribDivisor(this.fillColors, 0),
i.vertexAttribDivisor(this.lineColors, 0),
i.vertexAttribDivisor(this.nextPositions, 0),
i.vertexAttribDivisor(this.nextPositions64xyLow, 0),
i.vertexAttribDivisor(this.pickingColors, 0),
i.vertexAttribDivisor(this.vertexValid, 0)
}
}
},
{
key: "_hasChangedBuffer",
value: function(t, e) {
var n = this.store.get(t);
for (var i in n) if (n.hasOwnProperty(i) && e[i] && "indices" !== i && n[i].data !== e[i]) return ! 0;
return ! 1
}
},
{
key: "createBuffer",
value: function(t, e) {
var n = this.gl;
if (e) {
var i = {},
o = {
elevations: {
location: this.elevations,
size: 1,
type: n.FLOAT
},
fillColors: {
location: this.fillColors,
size: 4,
type: n.UNSIGNED_BYTE
},
lineColors: {
location: this.lineColors,
size: 4,
type: n.UNSIGNED_BYTE
},
pickingColors: {
location: this.pickingColors,
size: 3,
type: n.UNSIGNED_BYTE
},
positions: {
location: this.positions,
size: 3,
type: n.FLOAT
},
positions64xyLow: {
location: this.positions64xyLow,
size: 2,
type: n.FLOAT
},
vertexValid: {
location: this.vertexValid,
size: 1,
type: n.UNSIGNED_BYTE
},
nextPositions: {
location: this.nextPositions,
size: 3,
type: n.FLOAT
},
nextPositions64xyLow: {
location: this.nextPositions64xyLow,
size: 2,
type: n.FLOAT
},
indices: {}
};
return this._vertPositions && (i.vertexPositions = new T.
default(n, {
data: this._vertPositions
})),
I.
default.forIn(o,
function(t, o) {
i[t] = (0, m.
default)({
data:
e[t],
buffer: new T.
default(n, {
target: "indices" === t ? n.ELEMENT_ARRAY_BUFFER: n.ARRAY_BUFFER,
data: e[t],
usage: n.DYNAMIC_DRAW
})
},
o)
}),
i
}
}
},
{
key: "destroy",
value: function() {
this._vertPositions = null,
(0, h.
default)(e.prototype.__proto__ || (0, r.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (y.
default);
e.
default = L
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(35),
p = i(v),
_ = n(4),
m = i(_),
g = n(211),
y = i(g),
x = n(601),
b = i(x),
S = n(600),
w = i(S),
E = n(110),
T = n(139),
A = n(212),
P = i(A),
I = n(219),
k = n(213),
L = i(k),
M = n(1048),
C = i(M),
R = n(10),
B = i(R),
N = n(388),
O = i(N),
D = n(47),
z = i(D),
F = !1,
V = new Image;
V.onload = function() {
F = !0
},
V.src = C.
default;
var Y = function(t) {
function e(t) { (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.store = new E.Store("buffer", 128, 16, I.deleteInstanceCacllback),
n.shaderSource = n.gl.isWebGL2 ? w.
default:
b.
default,
n.shaderParams = {
attributes: ["positions", "instanceStartPositions", "instanceEndPositions", "instanceLeftDeltas", "instanceRightDeltas", "instanceStartEndPositions64xyLow", "instanceWidths", "instanceColors", "instanceLineInfo", "instanceArrowInfo", "instanceArrowStartPositions", "instancePickingColors"],
uniforms: ["uMatrix", "uCenter", "uZoom", "uPixelsPerMeter", "uResolution", "uProject_uCommonUnitsPerWorldUnit", "uProject_uCommonUnitsPerWorldUnit2", "uProject_uDegreePerPixels", "picking_usePickingColor", "u_isBorder", "u_widthScale", "u_widthMinPixels", "u_widthMaxPixels", "u_enableGeodesic", "u_miterLimit", "u_lineJoin", "u_opacity", "u_arrowSampler"]
},
n.modelPositions = new Int16Array([0, 1, 0, -1, 1, 1, 1, -1]),
n.modelIndicies = new Uint8Array([0, 1, 2, 1, 3, 2]),
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "loadTexture",
value: function() {
F ? (this._arrowTex || (this._arrowTex = new L.
default(this.gl, {
pixels: V
}), this._arrowTex.upload({
flipY: !0
})), this._arrowTex.bind()) : (this.gl.activeTexture(this.gl.TEXTURE0), this.gl.bindTexture(this.gl.TEXTURE_2D, null))
}
},
{
key: "afterDraw",
value: function() {
this._arrowTex && this._arrowTex.unbind()
}
},
{
key: "draw",
value: function(t, e, n, i) {
var o = this.gl;
if (e && 0 !== n.count) {
var r = t.center,
a = t.zoom,
s = t.getDistanceRatio(),
l = i.distanceScales,
u = (0, T.splitLatLngNumber)(r.lat),
c = (0, T.splitLatLngNumber)(r.lng);
o.useProgram(o.program),
o.uniformMatrix4fv(this.uMatrix, !1, e.elements),
o.uniform4f(this.uCenter, c.high, u.high, c.low, u.low),
o.uniform1f(this.uZoom, a),
o.uniform3f(this.uPixelsPerMeter, s, s, s),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit, l.pixelsPerDegree[0], l.pixelsPerDegree[1], l.pixelsPerDegree[2]),
o.uniform2f(this.uProject_uDegreePerPixels, l.degreesPerPixel[0], l.degreesPerPixel[1]),
o.uniform3f(this.uProject_uCommonUnitsPerWorldUnit2, l.pixelsPerDegree2[0], l.pixelsPerDegree2[1], l.pixelsPerDegree2[2]),
o.uniform2f(this.uResolution, t.width, t.height),
o.uniform1f(this.picking_usePickingColor, i.usePicking ? 1 : 0),
o.uniform1f(this.u_isBorder, i.drawBorder ? 1 : 0),
o.uniform1f(this.u_widthScale, 1 / s),
o.uniform1f(this.u_widthMinPixels, 0),
o.uniform1f(this.u_widthMaxPixels, 1e3),
o.uniform1f(this.u_miterLimit, 150),
o.uniform1f(this.u_lineJoin, 1),
o.uniform1f(this.u_opacity, 1),
o.uniform1i(this.u_arrowSampler, 0),
o.uniform1f(this.u_enableGeodesic, n.enableGeodesic ? 1 : 0);
var f = this._calcArrowStratPosition(n, t);
n.instanceArrowStartPositionList = f,
this.drawTileInstance(n.uid, n, i.drawBorder)
}
}
},
{
key: "_calcArrowStratPosition",
value: function(t, e) {
var n = t.count,
i = t.instanceArrowInfoList;
if (0 === i[1]) return new Float32Array(n);
for (var o = t.instanceStartPositionList,
r = t.instanceEndPositionList,
a = t.instanceStartEndPostions64xyLowList,
s = e.getDistanceRatio(), l = i[1], u = l + i[2], c = 0, f = new Float32Array(n), d = 0; d < n; d++) {
var h = new z.
default(o[3 * d + 1] + a[4 * d + 1], o[3 * d] + a[4 * d]),
v = new z.
default(r[3 * d + 1] + a[4 * d + 3], r[3 * d] + a[4 * d + 2]),
p = (0, O.
default)(h, v),
_ = p * s;
if (c < l) f[d] = 0,
c = _ % u;
else {
var m = u - c;
_ < m ? (f[d] = -1, c += _) : (f[d] = m, c = (_ - m) % u)
}
}
return f
}
},
{
key: "drawTileInstance",
value: function(t, e, n) {
var i = this.gl,
o = this.store,
r = !1;
if (o) {
o.exist(t) ? this._hasChangedBuffer(t, e) && (r = !0) : o.set(t, this.createBuffer(t, e));
var a = o.get(t);
a.positions.bind(),
a.positions.pointToAttrib({
location: this.positions,
size: 2,
type: i.SHORT
}),
a.indices.bind(),
B.
default.forIn(a.instanceBuffers,
function(t, o) {
if (n) {
if ("instanceColorList" === t || "instanceWidthList" === t) return
} else if ("instanceBorderColorList" === t || "instanceBorderWidthList" === t) return;
var a = o.buffer,
s = o.location,
l = o.size,
u = o.type;
a.bind(),
r && (a.bufferData(e[t], {
usage: i.DYNAMIC_DRAW
}), o.data = e[t]),
a.pointToAttrib({
location: s,
size: l,
type: u
}),
i.vertexAttribDivisor(s, 1)
}),
i.drawElementsInstanced(i.TRIANGLES, this.modelIndicies.length, i.UNSIGNED_BYTE, 0, e.count),
i.bindBuffer(i.ARRAY_BUFFER, null),
i.bindBuffer(i.ELEMENT_ARRAY_BUFFER, null),
i.vertexAttribDivisor(this.instanceStartPositions, 0),
i.vertexAttribDivisor(this.instanceEndPositions, 0),
i.vertexAttribDivisor(this.instanceLeftDeltas, 0),
i.vertexAttribDivisor(this.instanceRightDeltas, 0),
i.vertexAttribDivisor(this.instanceStartEndPositions64xyLow, 0),
i.vertexAttribDivisor(this.instancePickingColors, 0),
i.vertexAttribDivisor(this.instanceColors, 0),
i.vertexAttribDivisor(this.instanceWidths, 0),
i.vertexAttribDivisor(this.instanceLineInfo, 0),
i.vertexAttribDivisor(this.instanceArrowInfo, 0),
i.vertexAttribDivisor(this.instanceArrowStartPositions, 0)
}
}
},
{
key: "_hasChangedBuffer",
value: function(t, e) {
var n = this.store.get(t),
i = n.instanceBuffers;
for (var o in i) if (i.hasOwnProperty(o) && e[o] && i[o].data !== e[o]) return ! 0;
return ! 1
}
},
{
key: "createBuffer",
value: function(t, e) {
var n = this.gl,
i = {
positions: null,
indices: null,
instanceBuffers: {}
};
if (this.modelPositions && (i.positions = new P.
default(n, {
data: this.modelPositions
})), this.modelIndicies && (i.indices = new P.
default(n, {
target: n.ELEMENT_ARRAY_BUFFER,
data: this.modelIndicies
})), e) {
var o = {
instanceStartPositionList: {
location: this.instanceStartPositions,
size: 3,
type: n.FLOAT
},
instanceEndPositionList: {
location: this.instanceEndPositions,
size: 3,
type: n.FLOAT
},
instanceLeftDeltaList: {
location: this.instanceLeftDeltas,
size: 3,
type: n.FLOAT
},
instanceRightDeltaList: {
location: this.instanceRightDeltas,
size: 3,
type: n.FLOAT
},
instanceStartEndPostions64xyLowList: {
location: this.instanceStartEndPositions64xyLow,
size: 4,
type: n.FLOAT
},
instanceColorList: {
location: this.instanceColors,
size: 4,
type: n.UNSIGNED_BYTE
},
instanceBorderColorList: {
location: this.instanceColors,
size: 4,
type: n.UNSIGNED_BYTE
},
instanceWidthList: {
location: this.instanceWidths,
size: 1,
type: n.FLOAT
},
instanceBorderWidthList: {
location: this.instanceWidths,
size: 1,
type: n.FLOAT
},
instanceLineInfoList: {
location: this.instanceLineInfo,
size: 4,
type: n.UNSIGNED_BYTE
},
instanceArrowInfoList: {
location: this.instanceArrowInfo,
size: 4,
type: n.UNSIGNED_BYTE
},
instancePickingColorList: {
location: this.instancePickingColors,
size: 3,
type: n.UNSIGNED_BYTE
},
instanceArrowStartPositionList: {
location: this.instanceArrowStartPositions,
size: 1,
type: n.FLOAT
}
};
B.
default.forIn(o,
function(t, o) {
e[t] && (i.instanceBuffers[t] = (0, r.
default)({
data:
e[t],
buffer: new P.
default(n, {
data: e[t],
usage: n.DYNAMIC_DRAW
})
},
o))
})
}
return i
}
},
{
key: "destroy",
value: function() {
this.modelIndicies = null,
this.modelPositions = null,
this._arrowTex && (this._arrowTex.delete(), this._arrowTex = null),
(0, p.
default)(e.prototype.__proto__ || (0, s.
default)(e.prototype), "destroy", this).call(this)
}
}]),
e
} (y.
default);
e.
default = Y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(211),
p = i(v),
_ = n(608),
m = i(_),
g = n(110),
y = n(219),
x = n(23),
b = i(x),
S = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.store = new g.Store("buffer", 1024, 128, y.deleteBuffersCallback),
n.shaderSource = m.
default,
n.shaderParams = {
attributes: ["a_Position", "a_Color", "a_Normal", "a_LineInfo", "a_LineDistance", "a_SideInfo", "a_PickingColor"],
uniforms: ["u_matrix", "u_modelMatrix", "u_SizeScale", "u_opacity"]
},
n.enableLight = !0,
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "draw",
value: function(t, e, n, i, o, r) {
var a = this.gl,
s = this.store,
l = t.vertices,
u = t.indeices,
c = "traffic_" + r + "_" + t.id + "_" + Math.round(i),
f = e.matrix,
d = e.modelMatrix,
h = void 0;
s.exist(c) ? (h = s.get(c), this.bindVertexBuffer(l, h.vertices), this.bindElementBuffer(u, h.indices)) : h = s.set(c, {
vertices: this.bindVertexBuffer(l),
indices: this.bindElementBuffer(u),
length: u.length
}),
a.uniformMatrix4fv(this.u_matrix, !1, f),
a.uniformMatrix4fv(this.u_modelMatrix, !1, d);
var v = ~~ (100 * (i - ~~i));
a.uniform1f(this.u_SizeScale, 1e3 * v + Math.min(Math.floor(100 * (n || 1)), 255)),
a.uniform1f(this.u_opacity, o);
var p = b.
default.batchRender ? a.UNSIGNED_INT: a.UNSIGNED_SHORT;
a.drawElements(a.TRIANGLES, h.length, p, 0),
this.unbindVertexBuffer(h.vertices, l.attributes)
}
}]),
e
} (p.
default);
e.
default = S
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(110),
m = n(219),
g = n(305),
y = i(g),
x = n(609),
b = n(212),
S = i(b),
w = n(10),
E = i(w),
T = function(t) {
function e(t) { (0, u.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t));
return n.shaderParams = {
attributes: ["instanceLinks", "instanceColors", "instanceParticles"],
uniforms: ["uMatrix", "uSampler", "uTexInfo", "uSubTexInfo", "uTick"]
},
n.shaderSource = x.defaultShader,
n.store = new _.Store("buffer", 128, 16, m.deleteInstanceCacllback),
n
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "draw",
value: function(t, e) {
var n = this.gl,
i = this.store,
o = e.matrix,
r = e.texInfo,
a = e.uid,
s = e.tick,
l = t.texSize,
u = t.pixelSpace,
c = t.count,
f = t.instance;
n.uniformMatrix4fv(this.uMatrix, !1, o.elements),
n.uniform1i(this.uSampler, 0),
n.uniform2f(this.uTexInfo, l, u),
n.uniform4f(this.uSubTexInfo, r.s, r.t, r.w, r.h),
n.uniform1f(this.uTick, s);
var d = !1;
if (i.exist(a)) {
var h = i.get(a).instanceBuffers;
this.isBufferChanged(h, f) && (d = !0)
} else i.set(a, this.createBuffer(a, f));
var v = i.get(a);
E.
default.forIn(v.instanceBuffers,
function(t, e) {
var i = e.buffer,
o = e.location,
r = e.size,
a = e.type;
i.bind(),
d && (i.bufferData(f[t], {
usage: n.DYNAMIC_DRAW
}), e.data = f[t]),
i.pointToAttrib({
location: o,
size: r,
type: a
}),
n.vertexAttribDivisor(o, 1)
}),
n.drawArraysInstanced(n.POINTS, 0, 1, c),
n.bindBuffer(n.ARRAY_BUFFER, null),
n.vertexAttribDivisor(this.instanceLinks, 0),
n.vertexAttribDivisor(this.instanceColors, 0),
n.vertexAttribDivisor(this.instanceParticles, 0)
}
},
{
key: "createBuffer",
value: function(t, e) {
var n = this.gl,
i = {
positions: null,
indices: null,
instanceBuffers: {}
};
if (this.modelPositions && (i.positions = new S.
default(n, {
data: this.modelPositions
})), e) {
var o = this.getInstanceConfig();
E.
default.forIn(o,
function(t, o) {
i.instanceBuffers[t] = (0, r.
default)({
data:
e[t],
buffer: new S.
default(n, {
data: e[t],
usage: n.DYNAMIC_DRAW
})
},
o)
})
}
return i
}
},
{
key: "getInstanceConfig",
value: function() {
var t = this.gl;
return {
instanceLinkList: {
location: this.instanceLinks,
size: 2,
type: t.UNSIGNED_SHORT
},
instanceColorList: {
location: this.instanceColors,
size: 4,
type: t.UNSIGNED_BYTE
},
instanceParticleList: {
location: this.instanceParticles,
size: 1,
type: t.UNSIGNED_BYTE
}
}
}
}]),
e
} (y.
default);
e.
default = T
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(211),
p = i(v),
_ = n(587),
m = i(_),
g = n(110),
y = n(219),
x = function(t) {
function e(t) { (0, s.
default)(this, e);
var n = (0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t));
return n.store = new g.Store("buffer", 1024, 128, y.deleteBuffersCallback),
n.shaderSource = m.
default,
n.shaderParams = {
attributes: ["a_Position", "a_Info"],
uniforms: ["u_matrix", "u_modelMatrix", "u_lightPVMatrix", "u_maskSampler", "u_maskScale"]
},
n
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "draw",
value: function(t, e) {
var n = this.gl,
i = this.store,
o = t.vertices,
r = t.indeices,
a = "build_" + t.id,
s = e.matrix,
l = e.modelMatrix,
u = e.lightPVMatrix,
c = e.maskScale || 1,
f = void 0;
i.exist(a) ? (f = i.get(a), this.bindVertexBuffer(o, f.vertices), this.bindElementBuffer(r, f.indices)) : f = i.set(a, {
vertices: this.bindVertexBuffer(o),
indices: this.bindElementBuffer(r),
length: r.length
}),
n.uniformMatrix4fv(this.u_matrix, !1, s),
n.uniformMatrix4fv(this.u_modelMatrix, !1, l),
n.uniformMatrix4fv(this.u_lightPVMatrix, !1, u),
n.uniform1i(this.u_maskSampler, 0),
n.uniform1f(this.u_maskScale, c),
n.drawElements(n.TRIANGLES, f.length, n.UNSIGNED_SHORT, 0)
}
}]),
e
} (p.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return !! jt(t) && t.some(function(t) {
return (0, vt.isOverlayLayer)(t.type)
})
}
function r(t) {
return !! jt(t) && t.some(function(t) {
return (0, vt.isGrayTileLayer)(t.type)
})
}
function a(t) {
return o(t) || t.some(function(t) {
return (0, vt.isGrayTileLayer)(t.type) || (0, vt.isTextureLayer)(t) || (0, vt.isIndoorLayer)(t) || t.type === vt.RENDER_LAYER_TYPE.mask || t.type === vt.RENDER_LAYER_TYPE.highlight
})
}
function s(t) {
t && t.stops && !t.isEmpty() || (t = {
stops: {
0 : "rgba(255, 255, 255,1)",
1 : "rgba(0,0,0, 1)"
}
});
var e = document.createElement("canvas"),
n = e.getContext("2d");
e.width = 256,
e.height = 1;
var i = n.createLinearGradient(0, 0, 256, 1);
for (var o in t.stops) t.stops[o] && i.addColorStop( + o, t.stops[o]);
return n.fillStyle = i,
n.fillRect(0, 0, 256, 1),
e
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var l = n(17),
u = i(l),
c = n(223),
f = i(c),
d = n(27),
h = i(d),
v = n(24),
p = i(v),
_ = n(0),
m = i(_),
g = n(1),
y = i(g),
x = n(792),
b = n(755),
S = i(b),
w = n(769),
E = i(w),
T = n(770),
A = i(T),
P = n(771),
I = i(P),
k = n(515),
L = i(k),
M = n(762),
C = i(M),
R = n(763),
B = i(R),
N = n(756),
O = i(N),
D = n(754),
z = i(D),
F = n(513),
V = i(F),
Y = n(757),
U = i(Y),
j = n(759),
G = i(j),
Z = n(761),
H = i(Z),
W = n(760),
X = i(W),
Q = n(758),
q = i(Q),
K = n(774),
J = i(K),
$ = n(764),
tt = i($),
et = n(28),
nt = i(et),
it = n(751),
ot = i(it),
rt = n(786),
at = i(rt),
st = n(782),
lt = i(st),
ut = n(781),
ct = i(ut),
ft = n(783),
dt = i(ft),
ht = n(496),
vt = n(66),
pt = n(516),
_t = i(pt),
mt = n(517),
gt = i(mt),
yt = n(780),
xt = n(776),
bt = i(xt),
St = n(143),
wt = n(301),
Et = n(777),
Tt = i(Et),
At = n(213),
Pt = i(At),
It = n(107),
kt = n(790),
Lt = i(kt),
Mt = n(752),
Ct = i(Mt),
Rt = n(768),
Bt = i(Rt),
Nt = n(778),
Ot = i(Nt),
Dt = n(773),
zt = i(Dt),
Ft = n(772),
Vt = i(Ft),
Yt = n(41),
Ut = i(Yt),
jt = Ut.
default.isArray,
Gt = n(10),
Zt = function() {
function t(e, n) { (0, m.
default)(this, t),
n = n || {};
var i = n.renderOptions || {},
o = i.preserveDrawingBuffer,
r = void 0 !== o && o,
a = i.disableAntialias,
s = void 0 !== a && a,
l = i.disableShadow,
u = void 0 !== l && l,
c = i.skyOptions,
f = void 0 === c ? {}: c,
d = i.fogOptions,
h = void 0 === d ? {}: d,
v = i.enableBloom,
p = void 0 !== v && v,
_ = i.disableWebGL2,
g = void 0 !== _ && _;
e.style.zIndex = 2,
this._destroyed = !1,
this.styleId = wt.STYLE_ID[n.mapStyleId],
this.isDefaultStyle = (0, wt.isDefaultStyle)(n.mapStyleId),
this.canvas = e,
this.maskScale = .5,
this.map = n.map;
var y = this.createContext(e, {
preserveDrawingBuffer: r,
disableWebGL2: g
});
this.textCache = this.isDefaultStyle ? new at.
default(this.gl):
null,
this.imageCaches = {},
this.grayCaches = {},
this.colorMapCanvas = {},
this.glyphManager = new ct.
default(this.gl),
this.markerManager = new dt.
default(this.gl),
this.lightManager = new Ct.
default,
this.painters = {
base: new S.
default({
gl:
y
}),
polygon: new E.
default({
gl:
y
}),
side: new A.
default({
gl:
y
}),
polyline: new I.
default({
gl:
y
}),
arrow: new z.
default({
gl:
y
}),
building: new O.
default({
gl:
y
}),
buildingShadow: new J.
default({
gl:
y
}),
marker: new B.
default({
gl:
y,
markerManager: this.markerManager
}),
symbol: new L.
default({
gl:
y,
textCache: this.textCache,
glyphManager: this.glyphManager,
markerManager: this.markerManager
}),
image: new V.
default({
gl:
y
}),
gray: new U.
default({
gl:
y
}),
label: new C.
default({
gl:
this.gl,
glyphManager: this.glyphManager
}),
mask: new tt.
default({
gl:
y
}),
indoorMask: new G.
default({
gl:
y
}),
indoorRegion: new H.
default({
gl:
y
}),
indoorPoi: new X.
default({
gl:
y,
glyphManager: this.glyphManager,
markerManager: this.markerManager
}),
indoorEscalator: new q.
default({
gl:
y
}),
highlight: new Bt.
default({
gl:
y
}),
trafficFlow: new zt.
default({
gl:
y
}),
trafficBase: new Vt.
default({
gl:
y
})
},
this.disableAntialias = nt.
default.isLowMobileDevice() || s,
this.disableShadow = nt.
default.isLowMobileDevice() || u,
this.enableBloom = p && y.isWebGL2,
this.createFrameBuffer({
skyOptions: f,
fogOptions: h
}),
this.resize(e.clientWidth, e.clientHeight),
this.camera = new ot.
default({
map:
this.map,
view: this.view,
look: [0, 0, 0, 0, 0, 0, 0, 1, 0],
scale: n.scale,
offset: n.offset
}),
this.camera.setRotate(n.pitch || 0, n.heading || 0),
this.camera.fogPitch = h.pitch || 45,
this.map.on("zoom_changed", nt.
default.throttle(this._checkBgColor.bind(this), 50)),
this._updateBgColor()
}
return (0, y.
default)(t, [{
key: "setDepth",
value: function(t, e) {
this.gl.depthRange(t, e)
}
},
{
key: "createContext",
value: function(t, e) {
var n = e.preserveDrawingBuffer,
i = void 0 !== n && n,
o = e.disableWebGL2,
r = void 0 !== o && o,
a = {
alpha: !0,
antialias: !1,
depth: !0,
failIfMajorPerformanceCaveat: !1,
powerPreference: (0, et.isPC)() ? "high-performance": "default",
preserveDrawingBuffer: i,
stencil: !1
},
s = null;
return r || (s = t.getContext("webgl2", a)),
s ? s.isWebGL2 = !0 : (s = t.getContext("webgl", a), s.isWebGL2 = !1),
s.id = Gt.uniqueId(),
s.clearColor.apply(s, Gt.rgbaToGLColor((0, ht.getBgColor)(this.styleId, this.transform && this.transform.zoom || 10))),
s.enable(s.BLEND),
s.disable(s.CULL_FACE),
s.disable(s.DEPTH_TEST),
s.blendFunc(s.ONE, s.ONE_MINUS_SRC_ALPHA),
this.gl = s,
this.getExtensions(),
s
}
},
{
key: "getExtensions",
value: function() {
var t = this.gl,
e = new yt.Extensions(t);
t.isWebGL2 ? (e.set("WEBGL_depth_texture", !0), e.set("OES_element_index_uint", !0)) : (e.get("WEBGL_depth_texture", "depth textures not supported"), e.get("OES_element_index_uint", "element_index_uint not supported"), e.get("WEBGL_draw_buffers", "draw buffers not supported"), e.extendWebGL1()),
e.get("WEBGL_debug_renderer_info", "WEBGL_debug_renderer_info not supported"),
t.extensions_TMAP = e
}
},
{
key: "createFrameBuffer",
value: function(t) {
var e = this.gl,
n = this.enableBloom,
i = {},
o = this.gl.extensions_TMAP.get("WEBGL_depth_texture");
i.mask = new _t.
default(e),
this.disableShadow || (i.shadow = new _t.
default(e, {
attachments: {
depth: o ? new Pt.
default(e, {
pixels: null,
internalformat: "DEPTH_COMPONENT24",
format: "DEPTH_COMPONENT",
type: "UNSIGNED_INT"
}) : new gt.
default(this.gl)
}
})),
i.main = new _t.
default(e, {
id: "fb-main",
attachments: {
color: n ? [new Pt.
default(e, {
pixels: null
}), new Pt.
default(e, {
pixels: null
})] : void 0,
depth: o ? new Pt.
default(e, {
tex: null,
internalformat: "DEPTH24_STENCIL8",
format: "DEPTH_STENCIL",
type: "UNSIGNED_INT_24_8"
}) : new gt.
default(this.gl)
}
}),
i.pass0 = new _t.
default(e, {
id: "fb-pass-1"
}),
i.pass1 = new _t.
default(e, {
id: "fb-pass-2"
}),
this.fxaaPass = new bt.
default(e),
this.fogPass = new Tt.
default(e, {
skyOptions: t.skyOptions,
fogColor: t.fogOptions.color,
fogRange: t.fogOptions.range
}),
n && (this.bloomBlurPass = new Ot.
default(e)),
this.frameBuffer = i
}
},
{
key: "onMapStyleUpdate",
value: function(t) {
if ("config" !== t && this.styleId === t) return void this._updateBgColor();
this.isDefaultStyle !== (0, wt.isDefaultStyle)(t) ? (this.isDefaultStyle = (0, wt.isDefaultStyle)(t), this.textCache = this.isDefaultStyle ? new at.
default(this.gl):
null, this.painters.symbol.destroy(), this.painters.symbol = null, this.painters.symbol = new L.
default({
gl:
this.gl,
textCache: this.textCache,
glyphManager: this.glyphManager,
markerManager: this.markerManager
})) : this.painters.symbol.clear(),
this.painters.base.clearStore(),
this.painters.building.clearStore(),
this.painters.arrow.clearStore(),
this.styleId = t,
this._updateBgColor()
}
},
{
key: "getDrawContainer",
value: function() {
return this.canvas
}
},
{
key: "resize",
value: function(t, e) {
var n = this;
this.view = {
left: -t / 2,
right: t / 2,
bottom: -e / 2,
top: e / 2,
near: -1,
far: 1e3
};
var i = nt.
default.devicePixelRatio;
this.canvas.width = t * i,
this.canvas.height = e * i,
this.gl.viewport(0, 0, t * i, e * i),
this.camera && this.camera.setView(this.view),
Gt.forIn(this.frameBuffer,
function(t, e) {
e && e.resize(n.canvas.width, n.canvas.height)
})
}
},
{
key: "setTilesMatrix",
value: function(t) {
var e = this,
n = {},
i = {},
o = this.view;
Gt.forIn(t,
function(t, r) {
var a = (0, x.getModelMatrix)({
view: o,
offset: r.offset,
scale: r.scale
});
n[t] = e.camera.pvMatrix.clone().multiply(a),
i[t] = a
}),
this.tilesMatrix = n,
this.tilesModelMatrix = i
}
},
{
key: "catcheTextTexture",
value: function(t, e) {
if (this.painters.symbol && (this.painters.symbol.preDraw({
iconsLoader: e
}), t && 0 !== t.length)) {
var n = this.textCache;
n.loadTexture();
for (var i, o = 0; i = t[o]; o++) i.features && "" !== i.features && n.add(i.id, i.features)
}
}
},
{
key: "clear",
value: function() {
var t = this.gl;
t.clear(t.COLOR_BUFFER_BIT | t.DEPTH_BUFFER_BIT | t.STENCIL_BUFFER_BIT)
}
},
{
key: "preRender",
value: function(t, e) {
t = t || this.transform;
var n = t && t.heading || 0,
i = t && t.pitch || 0,
o = t && t.roll || 0;
this.camera.setRotate(i, n, o),
this.setTilesMatrix(e)
}
},
{
key: "drawMask",
value: function(t) {
var e = this,
n = this.maskScale,
i = t.filter(function(t) {
return t.type === vt.RENDER_LAYER_TYPE.indoorRegion
}),
o = t.filter(function(t) {
return t.type === vt.RENDER_LAYER_TYPE.mask
});
this.frameBuffer.mask.bind();
var r = this.gl;
if (r.clearColor(0, 1, 0, 1), this.clear(), i.length || o.length) {
var a = this.transform,
s = (new It.Matrix4).scale(n, n, n).multiply(this.camera.pvMatrix);
this.painters.indoorMask.preDraw(),
i.forEach(function(t) {
var n = t.tiles && t.tiles[0];
if (n) {
var i = n.features,
o = i.center,
r = i.bounds,
l = i.floorIndex,
u = {
uid: t.id + "_" + l + "_bounds",
center: o,
position: r[0].top.position,
index: r[0].top.index
};
e.painters.indoorMask.draw(u, a, s, {
color: [1, 1, 1, 1]
})
}
}),
this.painters.mask.preDraw(),
o.forEach(function(t) {
if (!t.isMaskReverse) {
var n = t.tiles && t.tiles[0];
n && e.painters.mask.draw(a, s, n.features, {
color: [1, 1, 1, 1],
distanceScales: e.distanceScales
})
}
});
var l = t.filter(function(t) {
return t.type === vt.RENDER_LAYER_TYPE.mask && t.isMaskReverse
});
l && l.length >= 1 && (r.colorMask(!1, !0, !1, !1), r.clearColor(0, 0, 0, 1), this.clear(), l.forEach(function(t) {
var n = t.tiles && t.tiles[0];
n && e.painters.mask.draw(a, s, n.features, {
color: [0, 1, 0, 0],
distanceScales: e.distanceScales
})
}), r.colorMask(!0, !0, !0, !0))
}
r.clearColor.apply(r, Gt.rgbaToGLColor(this.background)),
this.frameBuffer.mask.unbind()
}
},
{
key: "drawShadow",
value: function(t) {
var e = this,
n = t.filter(function(t) {
return t.type === vt.RENDER_LAYER_TYPE.building3d
});
if (n.length) {
this.frameBuffer.shadow.bind();
var i = this.gl;
this.clear(),
i.enable(i.DEPTH_TEST),
i.enable(i.CULL_FACE),
i.colorMask(!1, !1, !1, !1);
var o = this.lightManager.getLightPVMatrix(this.view);
n.forEach(function(t) {
e.drawBuildingShadows(t, o)
}),
i.disable(i.DEPTH_TEST),
i.disable(i.CULL_FACE),
i.colorMask(!0, !0, !0, !0),
this.frameBuffer.shadow.unbind()
}
}
},
{
key: "drawBloom",
value: function() {
var t = this.gl,
e = 0,
n = "main",
i = "pass0",
o = !0;
t.clearColor(0, 0, 0, 0);
for (var r = 0; r < 9; r++) this.bloomBlurPass.setProps({
horizontal: o
}),
this.bloomBlurPass.render({
inputBuffer: this.frameBuffer[n],
outputBuffer: this.frameBuffer[i],
colorIndex: 0 === r ? 1 : 0
}),
n = "pass" + e,
i = "pass" + (1 - e),
e = 1 - e,
o = !o;
t.blendFunc(t.ONE, t.ONE),
this.bloomBlurPass.setProps({
horizontal: o
}),
this.bloomBlurPass.render({
inputBuffer: this.frameBuffer[n],
outputBuffer: this.frameBuffer.main,
preserve: !0
}),
t.blendFunc(t.ONE, t.ONE_MINUS_SRC_ALPHA),
t.clearColor.apply(t, (0, p.
default)(Gt.rgbaToGLColor(this.background)))
}
},
{
key: "clearBloomBuffer",
value: function() {
var t = this.gl;
this.frameBuffer.main.setDrawBuffers(["COLOR_ATTACHMENT0", "COLOR_ATTACHMENT1"]),
t.clearBufferfv(t.COLOR, 1, new Float32Array([0, 0, 0, 0])),
this.frameBuffer.main.setDrawBuffers(["COLOR_ATTACHMENT0"])
}
},
{
key: "render",
value: function(t, e, n, i) {
if (!this._destroyed) {
e = e || this.transform,
this.transform = e,
t = t || this.data,
this.data = t,
this.distanceScales = a(t) ? e.getDistanceScales() : null,
this.lightManager.update({
transform: e,
camera: this.camera,
view: this.view
}),
this.textCache && this.textCache.updateRenderTiles(this.tilesMatrix),
this.drawMask(t),
!this.disableShadow && this.lightManager.getShadowLight() && this.drawShadow(t);
var o = !(i.disableAntialias || this.disableAntialias),
r = this.camera.getFogEdge(),
s = this.gl.extensions_TMAP.get("WEBGL_depth_texture") && r[1] < 1 / 0,
l = [],
u = [];
if (t.forEach(function(t) {
t.rank >= (0, St.getNAALine)() ? u.push(t) : l.push(t)
}), this.frameBuffer.main.bind(), this.clear(), this.enableBloom && this.clearBloomBuffer(), this.draw(l, n, i), this.enableBloom && this.drawBloom(), this.fxaaPass.setProps({
enabled: o
}), this.fxaaPass.render({
inputBuffer: this.frameBuffer.main,
outputBuffer: null
}), s) {
var c = this.camera.pvMatrix.multiplyVector4({
elements: [0, 0, 0, 1]
}).elements;
this.fogPass.setProps({
fogEdge: r,
depthAtCenter: (c[2] / c[3] + 1) / 2,
depthTexture: this.frameBuffer.main.depth.texture,
heading: e.heading
}),
this.frameBuffer.pass0.copy(null),
this.fogPass.render({
inputBuffer: this.frameBuffer.pass0,
outputBuffer: null,
preserve: !0
})
}
this.draw(u, n, i)
}
}
},
{
key: "draw",
value: function(t, e, n) {
var i = this,
o = n.fadeChange,
r = n.iconsLoader;
t.forEach(function(n) {
switch (n.type) {
case vt.RENDER_LAYER_TYPE.text:
i.textCache && i.catcheTextTexture(n.tiles, r);
var a = t.filter(function(t) {
return t.type === vt.BASE_LAYER_TYPE.point
})[0],
s = t.filter(function(t) {
return t.type === vt.BASE_LAYER_TYPE.label
})[0];
i.baseTextOptions = {
placement: e,
fadeChange: o,
iconsLoader: r
},
i.drawBaseText(e, o, r, {
showPoint: !!a,
showLabel: !!s
});
break;
case vt.RENDER_LAYER_TYPE.base:
i.drawBase(n);
break;
case vt.RENDER_LAYER_TYPE.arrow:
i.drawArrows(n);
break;
case vt.RENDER_LAYER_TYPE.building3d:
i.drawBuildings(n, !0);
break;
case vt.RENDER_LAYER_TYPE.building2d:
i.drawBuildings(n, !1),
i.drawBase(n, !0);
break;
case vt.RENDER_LAYER_TYPE.circle:
case vt.RENDER_LAYER_TYPE.ellipse:
case vt.RENDER_LAYER_TYPE.rectangle:
case vt.RENDER_LAYER_TYPE.polygon:
i.drawPolygons(n, {
distanceScales: i.distanceScales,
usePicking: !1
});
break;
case vt.RENDER_LAYER_TYPE.polyline:
i.drawPolylines(n, {
distanceScales: i.distanceScales,
usePicking: !1
});
break;
case vt.RENDER_LAYER_TYPE.label:
i.drawLabels(n, {
distanceScales: i.distanceScales,
usePicking: !1
});
break;
case vt.RENDER_LAYER_TYPE.marker:
i.drawMarkers(n, {
distanceScales: i.distanceScales,
usePicking: !1
});
break;
case vt.RENDER_LAYER_TYPE.visualPlugin:
n.visualPlugin.draw(i.camera);
break;
case vt.RENDER_LAYER_TYPE.grayTile:
i.drawGrayTile(n);
break;
case vt.RENDER_LAYER_TYPE.imageTile:
i.drawImageTile(n);
break;
case vt.RENDER_LAYER_TYPE.canvasGround:
case vt.RENDER_LAYER_TYPE.imageGround:
i.drawGroundLayer(n);
break;
case vt.RENDER_LAYER_TYPE.indoorRegion:
i.drawIndoorRegions(n);
break;
case vt.RENDER_LAYER_TYPE.indoorPoi:
i.drawIndoorPois(n, {
fadeChange: o
});
break;
case vt.RENDER_LAYER_TYPE.indoorEscalator:
i.drawIndoorEscalators(n);
break;
case vt.RENDER_LAYER_TYPE.highlight:
i.drawHighlight(n, {
distanceScales: i.distanceScales,
usePicking: !1
});
break;
case vt.RENDER_LAYER_TYPE.trafficBase:
i.drawTrafficBaseTile(n);
break;
case vt.RENDER_LAYER_TYPE.trafficFlow:
i.drawTrafficFlowTile(n)
}
})
}
},
{
key: "hasPickableLayer",
value: function() {
return o(this.data) || r(this.data)
}
},
{
key: "isNeedColor",
value: function(t) {
return this.data.some(function(e) {
return (0, vt.isGrayTileLayer)(e.type) && e.id === t
})
}
},
{
key: "renderForPicking",
value: function(t) {
var e = this;
if (this.data) {
var n = this.data.filter(function(t) {
return (0, vt.isOverlayLayer)(t.type) || (0, vt.isGrayTileLayer)(t.type)
});
return n.length > 0 && this.distanceScales ? (n.forEach(function(n, i) {
switch (n.type) {
case vt.RENDER_LAYER_TYPE.rectangle:
case vt.RENDER_LAYER_TYPE.circle:
case vt.RENDER_LAYER_TYPE.ellipse:
case vt.RENDER_LAYER_TYPE.polygon:
t && t(i),
e.drawPolygons(n, {
distanceScales: e.distanceScales,
usePicking: !0,
picking_zindex: i
});
break;
case vt.RENDER_LAYER_TYPE.polyline:
t && t(i),
e.drawPolylines(n, {
distanceScales: e.distanceScales,
usePicking: !0,
picking_zindex: i
});
break;
case vt.RENDER_LAYER_TYPE.label:
t && t(i),
e.drawLabels(n, {
distanceScales: e.distanceScales,
usePicking: !0
});
break;
case vt.RENDER_LAYER_TYPE.marker:
t && t(i),
e.drawMarkers(n, {
distanceScales: e.distanceScales,
usePicking: !0
});
break;
case vt.RENDER_LAYER_TYPE.grayTile:
t && t(i),
e.drawGrayTile(n, {
usePicking: !0
})
}
}), n) : null
}
}
},
{
key: "renderForFeaturePicking",
value: function() {
if (this.data) {
var t = this.getTypeLayer(vt.BASE_LAYER_TYPE.base),
e = this.getTypeLayer(vt.BASE_LAYER_TYPE.point),
n = this.getTypeLayer(vt.BASE_LAYER_TYPE.label);
this.drawBase(t, !1, !0);
var i = this.baseTextOptions,
o = i.placement,
r = i.fadeChange,
a = i.iconsLoader;
o && r && a && this.drawBaseText(o, r, a, {
showPoint: !!e,
showLabel: !!n,
usePicking: !0
})
}
}
},
{
key: "getTypeLayer",
value: function(t) {
if (this.data) return this.data.filter(function(e) {
return e.type === t
})[0]
}
},
{
key: "drawBaseText",
value: function(t, e, n, i) {
t.setInUse(!0);
var o = this.painters,
r = this.maskScale,
a = this.gl;
o.symbol && (o.symbol.preDraw({
iconsLoader: n,
maskTexture: this.frameBuffer.mask.color
}), i.showLabel && t.calculateAlsoShowedLabel(this.tilesMatrix, this.camera, this.transform), o.symbol.draw(this.transform, this.tilesMatrix, t, {
showPoint: i.showPoint,
showLabel: i.showLabel,
asBackground: !1,
updateSubData: !0,
fadeChange: e,
iconsLoader: n,
maskScale: r,
usePicking: i.usePicking
}), o.symbol.afterDraw(), this.frameBuffer.mask.color.unbind(a, {
textureIndex: 3
}), t.setInUse(!1))
}
},
{
key: "drawBuildings",
value: function(t, e) {
var n = this,
i = t;
if (i && 0 !== i.tiles.length) {
var o = this.gl;
this._withBlendEliminationDraw(o,
function() {
var t = n.painters.building,
r = i.tiles;
t.preDraw({
lightUniforms: n.lightManager.uniforms,
shadowTexture: n.frameBuffer.shadow && n.frameBuffer.shadow.depth
}),
n.frameBuffer.mask.color.bind(o);
var a = !0,
s = !1,
l = void 0;
try {
for (var u, c = (0, h.
default)(r); ! (a = (u = c.next()).done); a = !0) {
var f = u.value,
d = f.features && f.features.buildings;
if (d) {
var v = {
zoom: n.transform.roundZoom,
matrix: n.tilesMatrix[f.id].elements,
modelMatrix: n.tilesModelMatrix[f.id].elements,
maskScale: n.maskScale
};
t.draw(d, v, {
scale: f.scale,
use3D: e
})
}
}
} catch(t) {
s = !0,
l = t
} finally {
try { ! a && c.
return && c.
return ()
} finally {
if (s) throw l
}
}
n.frameBuffer.mask.color.unbind(),
t.afterDraw()
},
{
useCullFace: !0
})
}
}
},
{
key: "drawArrows",
value: function(t) {
var e = t;
if (e && e.tiles && 0 !== e.tiles.length) {
var n = this.painters.arrow,
i = e.tiles;
n.preDraw();
var o = !0,
r = !1,
a = void 0;
try {
for (var s, l = (0, h.
default)(i); ! (o = (s = l.next()).done); o = !0) {
var u = s.value,
c = u.features;
if (c) {
var f = this.transform,
d = f.width,
v = f.height,
p = f.scale,
_ = {
matrix: this.tilesMatrix[u.id].elements,
width: d,
height: v,
scale: p
};
n.draw(c, _, {
tileId: u.id
})
}
}
} catch(t) {
r = !0,
a = t
} finally {
try { ! o && l.
return && l.
return ()
} finally {
if (r) throw a
}
}
n.afterDraw()
}
}
},
{
key: "drawBuildingShadows",
value: function(t, e) {
if (t && 0 !== t.tiles.length) {
var n = this.painters.buildingShadow;
n.preDraw(),
this.frameBuffer.mask.color.bind(this.gl);
var i = !0,
o = !1,
r = void 0;
try {
for (var a, s = (0, h.
default)(t.tiles); ! (i = (a = s.next()).done); i = !0) {
var l = a.value,
u = l.features;
if (u) {
var c = {
matrix: this.tilesMatrix[l.id].elements,
modelMatrix: this.tilesModelMatrix[l.id].elements,
lightPVMatrix: e.elements,
maskScale: this.maskScale
};
n.draw(u, c, {
scale: l.scale
})
}
}
} catch(t) {
o = !0,
r = t
} finally {
try { ! i && s.
return && s.
return ()
} finally {
if (o) throw r
}
}
this.frameBuffer.mask.color.unbind()
}
}
},
{
key: "drawBase",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] && arguments[1],
n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2];
if (t && 0 !== t.tiles.length) {
var i = this.painters.base,
o = t.tiles;
i.preDraw({
lightUniforms: this.lightManager.uniforms,
shadowTexture: this.frameBuffer.shadow && this.frameBuffer.shadow.depth
});
var r = !0,
a = !1,
s = void 0;
try {
for (var l, u = (0, h.
default)(o); ! (r = (l = u.next()).done); r = !0) {
var c = l.value,
f = e ? c.features && c.features.buildSideShapes: c.features;
if (f) {
var d = {
matrix: this.tilesMatrix[c.id].elements,
modelMatrix: this.tilesModelMatrix[c.id].elements
};
i.draw(f, d, c.scale, this.transform._zoom, t.id, n)
}
}
} catch(t) {
a = !0,
s = t
} finally {
try { ! r && u.
return && u.
return ()
} finally {
if (a) throw s
}
}
i.afterDraw()
}
}
},
{
key: "drawHighlight",
value: function(t, e) {
var n = this.gl,
i = t.tiles && t.tiles[0];
if (i && i.features) {
n.enable(n.DEPTH_TEST),
n.enable(n.STENCIL_TEST),
n.colorMask(!1, !1, !1, !1),
n.depthMask(!1),
n.enable(n.CULL_FACE),
n.stencilFunc(n.ALWAYS, 1, 255),
n.clearStencil(0),
n.clear(n.STENCIL_BUFFER_BIT);
var o = this.camera.getLookPosition().elements,
r = this.camera.getLightPosition().elements,
a = this.camera.pvMatrix;
e.noBorder = !0,
e.extruded = !0,
n.cullFace(n.FRONT),
n.stencilOp(n.KEEP, n.INCR, n.KEEP),
this._reallyDrawPolygon(a, i, o, r, e),
e.extruded = !1,
n.cullFace(n.BACK),
n.stencilOp(n.KEEP, n.INCR, n.INCR),
this._reallyDrawPolygon(a, i, o, r, e),
e.extruded = !0,
n.stencilOp(n.KEEP, n.DECR, n.KEEP),
this._reallyDrawPolygon(a, i, o, r, e),
n.disable(n.DEPTH_TEST),
n.colorMask(!0, !0, !0, !0),
n.stencilMask(0),
n.blendFuncSeparate(n.SRC_ALPHA, n.ONE_MINUS_SRC_ALPHA, n.ZERO, n.ONE);
var s = this.painters.highlight;
n.stencilFunc(n.EQUAL, 1, 255),
s.preDraw(),
s.draw({
color: i.features.highlightColor
}),
n.stencilFunc(n.EQUAL, 0, 255),
s.draw({
color: i.features.shadeColor
}),
n.disable(n.STENCIL_TEST),
n.disable(n.CULL_FACE),
n.cullFace(n.BACK),
n.depthMask(!0),
n.stencilMask(255),
n.blendFuncSeparate(n.ONE, n.ONE_MINUS_SRC_ALPHA, n.ONE, n.ONE_MINUS_SRC_ALPHA)
}
}
},
{
key: "drawPolygons",
value: function(t, e) {
var n = this.gl,
i = t.tiles && t.tiles[0];
if (i && i.features) {
var o = this.camera.getLookPosition().elements,
r = this.camera.getLightPosition().elements,
a = this.camera.pvMatrix;
e.usePicking || n.blendFuncSeparate(n.SRC_ALPHA, n.ONE_MINUS_SRC_ALPHA, n.ONE, n.ONE_MINUS_SRC_ALPHA),
n.enable(n.CULL_FACE),
n.enable(n.DEPTH_TEST),
n.colorMask(!1, !1, !1, !1),
this._reallyDrawPolygon(a, i, o, r, e),
n.disable(n.DEPTH_TEST),
n.colorMask(!0, !0, !0, !0),
this._reallyDrawPolygon(a, i, o, r, e),
n.disable(n.CULL_FACE),
e.usePicking || n.blendFuncSeparate(n.ONE, n.ONE_MINUS_SRC_ALPHA, n.ONE, n.ONE_MINUS_SRC_ALPHA)
}
}
},
{
key: "_reallyDrawPolygon",
value: function(t, e, n, i, o) {
this.painters.side.preDraw({
lightUniforms: this.lightManager.uniforms
}),
o.noBorder || this.painters.side.draw(this.transform, t, e.features, {
drawBorder: !0,
distanceScales: o.distanceScales,
usePicking: o.usePicking,
picking_zindex: o.picking_zindex,
cameraPosition: n,
lightPosition: i,
extruded: o.extruded
}),
this.painters.side.draw(this.transform, t, e.features, {
drawBorder: !1,
distanceScales: o.distanceScales,
usePicking: o.usePicking,
picking_zindex: o.picking_zindex,
cameraPosition: n,
lightPosition: i,
extruded: o.extruded
}),
this.painters.polygon.preDraw({
lightUniforms: this.lightManager.uniforms
}),
this.painters.polygon.draw(this.transform, t, e.features, {
distanceScales: o.distanceScales,
usePicking: o.usePicking,
picking_zindex: o.picking_zindex,
cameraPosition: n,
lightPosition: i,
extruded: o.extruded
})
}
},
{
key: "drawPolylines",
value: function(t, e) {
var n = this.gl;
this.painters.polyline.preDraw();
var i = t.tiles && t.tiles[0];
if (i && i.features) {
var o = this.camera.pvMatrix;
e.usePicking || (n.blendFunc(n.SRC_ALPHA, n.ONE_MINUS_SRC_ALPHA), this.enableBloom && n.frameBuffer.setDrawBuffers(["COLOR_ATTACHMENT0", "COLOR_ATTACHMENT1"])),
this.painters.polyline.draw(this.transform, o, i.features, {
drawBorder: !0,
distanceScales: e.distanceScales,
usePicking: e.usePicking,
picking_zindex: e.picking_zindex
}),
this.painters.polyline.draw(this.transform, o, i.features, {
drawBorder: !1,
distanceScales: e.distanceScales,
usePicking: e.usePicking,
picking_zindex: e.picking_zindex
}),
e.usePicking || (n.blendFunc(n.ONE, n.ONE_MINUS_SRC_ALPHA), this.enableBloom && n.frameBuffer.setDrawBuffers(["COLOR_ATTACHMENT0"]))
}
}
},
{
key: "drawGrayTile",
value: function(t, e) {
var n = this,
i = this.tilesMatrix,
o = this.painters,
r = this.grayCaches,
a = this.gl,
l = this.transform,
u = l.viewTransition,
c = l.zoom,
d = l.center,
h = l.width,
v = l.height;
r[t.id] || (r[t.id] = new lt.
default(a, {
itemWidth: t.tileSize,
config: {
magFilter: a.LINEAR
}
}));
var p = r[t.id];
t.tiles.forEach(function(t) {
p.addImage(t.id, t.features)
}),
p.loadTexture(),
this.colorMapCanvas[t.id] || (this.colorMapCanvas[t.id] = s(t.colorMap)),
this.colorMapTexture ? this.colorMapTexture.update(this.colorMapCanvas[t.id], {
textureIndex: 1,
width: 256,
height: 1
}) : this.colorMapTexture = new Pt.
default(this.map.renderEngine.gl, {
pixels: this.colorMapCanvas[t.id],
width: 256,
height: 1
});
var _ = o.gray;
_.preDraw({
hasColorMap: !!t.colorMap,
colorMapTexture: this.colorMapTexture,
rgbaFormatter: t.rgbaFormatter
}),
a.enable(a.CULL_FACE),
t.tiles.forEach(function(o) {
var r = p.getTexCoord(o.id);
r && _.draw((0, f.
default)({
viewTransition:
u,
mercator: [o.coordX * o.size, o.coordY * o.size, o.coordZ],
zoom: c,
center: d,
pvMatrix: n.camera.pvMatrix,
matrix: i[o.id],
size: {
width: t.tileSize,
height: t.tileSize
},
resolution: {
width: h,
height: v
},
texInfo: r,
opacity: t.opacity
},
e))
}),
a.disable(a.CULL_FACE),
_.afterDraw()
}
},
{
key: "drawImageTile",
value: function(t) {
var e = this,
n = this.tilesMatrix,
i = this.painters,
o = this.imageCaches,
r = this.gl,
a = this.transform,
s = a.isSphere,
l = a.viewTransition,
u = a.zoom,
c = a.center;
o[t.id] || (o[t.id] = new lt.
default(r, {
itemWidth: t.tileSize,
config: {
magFilter: r.NEAREST
}
}));
var f = o[t.id];
t.tiles.forEach(function(t) {
f.addImage(t.id, t.features)
}),
f.loadTexture();
var d = i.image;
d.preDraw({
isSphere: s
}),
r.enable(r.CULL_FACE),
t.tiles.forEach(function(i) {
var o = f.getTexCoord(i.id);
o && d.draw({
isSphere: s,
viewTransition: l,
mercator: [i.coordX * i.size, i.coordY * i.size, i.coordZ],
zoom: u,
center: c,
pvMatrix: e.camera.pvMatrix,
matrix: n[i.id],
size: {
width: t.tileSize,
height: t.tileSize
},
texInfo: o,
opacity: t.opacity
})
}),
r.disable(r.CULL_FACE),
d.afterDraw()
}
},
{
key: "drawTrafficBaseTile",
value: function(t) {
if (t && 0 !== t.tiles.length) {
var e = this.painters.trafficBase,
n = t.tiles;
e.preDraw({
lightUniforms: this.lightManager.uniforms,
shadowTexture: this.frameBuffer.shadow && this.frameBuffer.shadow.depth
});
var i = !0,
o = !1,
r = void 0;
try {
for (var a, s = (0, h.
default)(n); ! (i = (a = s.next()).done); i = !0) {
var l = a.value,
u = l.features.base;
if (u) {
var c = {
matrix: this.tilesMatrix[l.id].elements,
modelMatrix: this.tilesModelMatrix[l.id].elements
};
u.id = l.id + "_" + l.features.uid,
e.draw(u, c, l.scale, this.transform._zoom, t.opacity, t.id)
}
}
} catch(t) {
o = !0,
r = t
} finally {
try { ! i && s.
return && s.
return ()
} finally {
if (o) throw r
}
}
e.afterDraw()
}
}
},
{
key: "drawTrafficFlowTile",
value: function(t) {
var e = this,
n = this.tilesMatrix,
i = this.painters,
o = this.imageCaches,
r = this.gl;
o[t.id] || (o[t.id] = new lt.
default(r, {
itemWidth: 64,
width: 1024,
height: 1024,
config: {
minFilter: r.NEAREST,
magFilter: r.NEAREST,
flipY: !0
}
}));
var a = o[t.id];
t.tiles.forEach(function(t) {
a.addImage(t.id + "_" + t.features.uid, t.features.flow.pathImage)
}),
a.loadTexture();
var s = i.trafficFlow;
s.preDraw(),
this._startTick || (this._startTick = nt.
default.now()),
t.tiles.forEach(function(t) {
var i = a.getTexCoord(t.id + "_" + t.features.uid);
i && s.draw(t.features.flow, {
uid: t.uid + "_" + t.features.uid,
matrix: n[t.id],
texInfo: i,
tick: nt.
default.now() - e._startTick
})
}),
s.afterDraw()
}
},
{
key: "drawGroundLayer",
value: function(t) {
var e = this,
n = this.painters,
i = this.gl,
o = n.image;
o.preDraw(),
t.tiles.forEach(function(n) {
n.features.texture.bind(i);
var r = n.features.bounds,
a = e.transform.latLngToCenterLocalPixelByDistanceScales(r.getNorthEast(), {
distanceScales: e.distanceScales,
center: r.getSouthWest()
});
a.x = Math.abs(a.x),
a.y = Math.abs(a.y);
var s = e.transform.latLngToCenterLocalPixelByDistanceScales(n.features.center, {
distanceScales: e.distanceScales,
center: e.map.getCenter()
});
o.draw({
matrix: e.camera.pvMatrix.clone().translate(s.x - a.x / 2, s.y + a.y / 2, 0),
size: {
width: a.x,
height: a.y
},
texInfo: n.features.texInfo,
opacity: t.opacity
}),
n.features.texture.unbind(i)
}),
o.afterDraw()
}
},
{
key: "drawLabels",
value: function(t, e) {
var n = this.gl;
this.painters.label.preDraw();
var i = t.tiles && t.tiles[0];
if (i && i.features) {
e.usePicking || n.blendFuncSeparate(n.SRC_ALPHA, n.ONE_MINUS_SRC_ALPHA, n.ZERO, n.ONE);
var o = this.camera.pvMatrix;
t._enableCollision && this._LabelCalcCollisionCount > 0 && (i.features.instanceShowList = (0, Lt.
default)(i.features.labelInfoList, this.transform, this.camera, t.type), this._LabelCalcCollisionCount -= 1),
this.painters.label.draw(this.transform, o, i.features, {
distanceScales: e.distanceScales,
usePicking: e.usePicking,
picking_zindex: e.picking_zindex
}),
e.usePicking || n.blendFuncSeparate(n.ONE, n.ONE_MINUS_SRC_ALPHA, n.ONE, n.ONE_MINUS_SRC_ALPHA)
}
}
},
{
key: "updateLabel",
value: function(t) {
if (t) {
var e = 0;
t.forEach(function(t) {
"LABEL" !== t.type && "MARKER" !== t.type || (e += 1)
}),
this._LabelCalcCollisionCount = e
}
}
},
{
key: "drawMarkers",
value: function(t, e) {
var n = t.tiles && t.tiles[0];
if (n && n.features && n.features.count > 0) {
this.painters.marker.preDraw();
var i = this.camera.pvMatrix;
t._enableCollision && this._LabelCalcCollisionCount > 0 && (n.features.instanceShowList = (0, Lt.
default)(n.features.labelInfoList, this.transform, this.camera, t.type), this._LabelCalcCollisionCount -= 1),
this.painters.marker.draw(this.transform, i, n.features, {
distanceScales: e.distanceScales,
usePicking: e.usePicking,
picking_zindex: e.picking_zindex
})
}
}
},
{
key: "drawIndoorRegions",
value: function(t) {
var e = this,
n = this.gl,
i = t.tiles && t.tiles[0];
if (i) {
var o = i.features,
r = o.center,
a = o.regions,
s = o.floorIndex,
l = a[0],
u = this.camera.pvMatrix;
n.enable(n.DEPTH_TEST),
n.enable(n.CULL_FACE),
n.cullFace(n.BACK),
this.painters.indoorRegion.preDraw({
lightUniforms: this.lightManager.uniforms
}); ["sides", "top"].forEach(function(n) {
var i = {
uid: t.id + "_" + s + "_region_" + n,
center: r,
position: l[n].position,
color: l[n].color,
normal: l[n].normal,
index: l[n].index
},
o = {
distanceScales: e.distanceScales
};
e.painters.indoorRegion.draw(i, e.transform, u, o)
}),
n.disable(n.DEPTH_TEST),
n.disable(n.CULL_FACE)
}
}
},
{
key: "drawIndoorEscalators",
value: function(t) {
var e = this.gl,
n = t.tiles && t.tiles[0];
if (n) {
var i = n.features,
o = i.escalators[0];
if (o) {
o.uid = t.id,
o.center = i.center;
var r = this.camera.pvMatrix;
e.enable(e.DEPTH_TEST),
e.enable(e.CULL_FACE),
e.cullFace(e.BACK),
this.painters.indoorEscalator.preDraw({
lightUniforms: this.lightManager.uniforms
});
var a = {
distanceScales: this.distanceScales
};
this.painters.indoorEscalator.draw(o, this.transform, r, a),
e.disable(e.DEPTH_TEST),
e.disable(e.CULL_FACE)
}
}
}
},
{
key: "drawIndoorPois",
value: function(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = t.tiles && t.tiles[0];
if (n) {
var i = n.features,
o = Math.round(this.transform.zoom);
if (i.pois[o] && i.pois[o][0]) {
var r = i.pois[o][0].instance;
if (r.id = n.id + "_" + o, r.center = i.center, !r.count) return;
this.painters.indoorPoi.preDraw(),
this.painters.indoorPoi.draw(this.transform, this.camera.pvMatrix, r, {
showPoint: !0,
showLabel: !0,
distanceScales: this.distanceScales,
iconsLoader: {},
fadeChange: e.fadeChange,
updateSubData: !0
})
}
}
}
},
{
key: "_withBlendEliminationDraw",
value: function(t, e, n) {
t.enable(t.DEPTH_TEST),
n.useCullFace && t.enable(t.CULL_FACE),
t.colorMask(!1, !1, !1, !1),
e && e(),
t.depthFunc(t.LEQUAL),
t.colorMask(!0, !0, !0, !0),
e && e(),
t.disable(t.DEPTH_TEST),
n.useCullFace && t.disable(t.CULL_FACE)
}
},
{
key: "_updateBgColor",
value: function(t) {
if (!this._destroyed) {
var e = this.getBgColor(); (e !== this.background || t) && (this._disableUpdateClearColor || (this.background = e, this.gl.clearColor.apply(this.gl, Gt.rgbaToGLColor(e))), this.fogPass.setFogColor(Gt.rgbaToGLColor(e)), this.map && this.map.emit("bgcolor_change", e))
}
}
},
{
key: "getBgColor",
value: function() {
return (0, ht.getBgColor)(this.styleId, this.transform && this.transform.zoom || 10)
}
},
{
key: "_checkBgColor",
value: function() {
var t = (0, ht.getBgColor)(this.styleId, this.transform && this.transform.zoom || 10);
this.background !== t && this._updateBgColor()
}
},
{
key: "_setClearColor",
value: function(t) {
this.background = t,
this.gl.clearColor.apply(this.gl, Gt.rgbaToGLColor(t)),
this._disableUpdateClearColor = !0
}
},
{
key: "getImageCache",
value: function(t) {
return this.imageCaches[t]
}
},
{
key: "destroy",
value: function() {
var t = this;
if (!this._destroyed) {
this.camera.destroy(),
this.camera = null,
this.styleId = null,
this.isDefaultStyle = null,
this.canvas = null,
this.maskScale = null,
this.distanceScales = null,
this.map = null,
this.textCache && this.textCache.destroy(),
this.textCache = null,
Gt.forIn(this.imageCaches,
function(t, e) {
e.destroy()
}),
this.imageCaches = null,
this.glyphManager.destroy(),
this.glyphManager = null,
this.markerManager.destroy(),
this.markerManager = null,
this.fxaaPass && (this.fxaaPass.destroy(), this.fxaaPass = null),
this.fogPass && (this.fogPass.destroy(), this.fogPass = null),
(0, u.
default)(this.frameBuffer).keys(function(e) {
t.frameBuffer[e].delete()
}),
this.frameBuffer = null,
(0, u.
default)(this.painters).forEach(function(e) {
t.painters[e].destroy()
}),
this.painters = null;
var e = this.gl.extensions_TMAP.get("WEBGL_lose_context");
e && e.loseContext(),
this.gl.extensions_TMAP.destroy(),
delete this.gl.extensions_TMAP,
this.gl = null,
this._destroyed = !0
}
}
}]),
t
} ();
e.
default = Zt
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(395),
m = i(_),
g = n(765),
y = i(g),
x = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; (0, u.
default)(this, e),
void 0 === n.enabled && (n.enabled = !0);
var i = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t, (0, r.
default)({
id:
"fxaa-pass"
},
n)));
return i._painter = new y.
default({
gl:
t
}),
i
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "_renderPass",
value: function(t) {
var e = t.inputBuffer;
this._painter.preDraw(),
this._painter.draw({
resolution: [e.width, e.height],
enabled: this.props.enabled,
texture: e.texture
})
}
}]),
e
} (m.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(24),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(395),
m = i(_),
g = n(766),
y = i(g),
x = n(213),
b = i(x),
S = n(137),
w = n(227),
E = i(w),
T = 30 * Math.PI / 180,
A = 0,
P = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
i = n.fogColor,
o = n.skyOptions,
r = n.id,
a = void 0 === r ? "fog-pass": r,
l = n.fogRange,
c = void 0 === l ? [200, 400] : l,
f = n.heading,
d = void 0 === f ? 0 : f; (0, u.
default)(this, e);
var v = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t, {
id: a,
fogRange: c,
heading: d
}));
return v._painter = new y.
default({
gl:
t
}),
v._setSkyOptions(o),
i ? (v.setFogColor(new E.
default(i).toArray()), v._disableColorSetting = !0) : v.setFogColor(),
v
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "setFogColor",
value: function(t) {
this._disableColorSetting || this._painter.setFogColor(t)
}
},
{
key: "_setSkyOptions",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
n = e.width,
i = e.height,
o = e.src,
r = e.color,
a = e.horizontal,
s = void 0 === a ? S.IMAGE_DISPLAY.SCALE: a,
l = e.vertical,
u = void 0 === l ? S.IMAGE_DISPLAY.ORIGIN: l,
c = e.brightness,
f = void 0 === c ? 1 : c,
d = e.animated,
h = void 0 !== d && d;
if (this.skyTex = void 0, o) {
var v = new Image;
v.onload = function() {
t.skyTex = new b.
default(t.gl, {
pixels: v,
width: n,
height: i
}),
t.skyTex.upload({
flipY: !0
})
},
v.src = o
}
this._painter.setSkyColor(r ? new E.
default(r).toArray():
void 0),
this.skyDisplay = [s, u],
this.skyAnimated = h,
this._painter.setBrightness(f)
}
},
{
key: "_renderPass",
value: function(t) {
var e = t.inputBuffer,
n = this.props.fogRange.map(function(t) {
return 2 * t / e.height
}),
i = this.skyTex,
o = [0, 0, 0, 0];
i && (o = [i.width / e.width, i.height / e.height].concat((0, r.
default)(this.skyDisplay)));
var a = this._depthRange || [0, 1],
s = a[0] + (a[1] - a[0]) * this.props.depthAtCenter,
l = a[0] + (a[1] - a[0]) * (this.props.fogEdge[2] + 1) / 2;
this._painter.preDraw(),
this._painter.draw({
rangeList: n,
fogEdge: [this.props.fogEdge[1], l, s],
texture: e.texture,
depth: this.props.depthTexture,
skyTex: i,
skyInfo: o,
viewInfo: [this.props.heading * Math.PI / 180, Math.atan(e.width / e.height * Math.tan(T / 2)), this.skyAnimated, A += 3e-4]
})
}
},
{
key: "_onDestroy",
value: function() {
this.skyTex && this.skyTex.delete()
}
}]),
e
} (m.
default);
e.
default = P
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(3),
s = i(a),
l = n(0),
u = i(l),
c = n(1),
f = i(c),
d = n(5),
h = i(d),
v = n(4),
p = i(v),
_ = n(767),
m = i(_),
g = n(395),
y = i(g),
x = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; (0, u.
default)(this, e);
var i = (0, h.
default)(this, (e.__proto__ || (0, s.
default)(e)).call(this, t, (0, r.
default)({
id:
"gsblur-pass"
},
n)));
return i._painter = new m.
default({
gl:
t
}),
i
}
return (0, p.
default)(e, t),
(0, f.
default)(e, [{
key: "_renderPass",
value: function(t) {
var e = t.inputBuffer,
n = t.colorIndex;
this._painter.preDraw(),
this._painter.draw({
texture: e.getColorAttach(n),
horizontal: !!this.props.horizontal,
resolution: [e.width, e.height]
})
}
}]),
e
} (y.
default);
e.
default = x
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = t.deviceX,
n = t.deviceY,
i = t.deviceRadius,
o = t.deviceWidth,
r = t.deviceHeight;
if (! (e >= 0 && n >= 0 && e < o && n < r)) return null;
var a = Math.max(0, e - i),
s = Math.max(0, n - i);
return {
x: a,
y: s,
width: Math.min(o, e + i) - a + 1,
height: Math.min(r, n + i) - s + 1,
centerX: e,
centerY: n
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(16),
a = i(r),
s = n(82),
l = i(s),
u = n(24),
c = i(u),
f = n(0),
d = i(f),
h = n(1),
v = i(h),
p = n(240),
_ = n(28),
m = i(_),
g = n(516),
y = i(g),
x = function(t) {
return t.useDevicePixels && "undefined" != typeof window ? m.
default.devicePixelRatio:
1
},
b = function() {
function t(e) {
var n = this; (0, d.
default)(this, t),
this.map = e,
this.render = e.renderEngine,
this._eventHandlers = [],
this._fbo = this.createFBO(),
this._eventHandlers.push(m.
default.on(this.map, "resize",
function() {
n.updateFBO()
}))
}
return (0, v.
default)(t, [{
key: "createFBO",
value: function() {
var t = this.render.gl,
e = this.render.canvas.width,
n = this.render.canvas.height,
i = new y.
default(t, {
width: e,
height: n
});
return i.unbind(),
i
}
},
{
key: "updateFBO",
value: function() {
var t = this.render.canvas.width,
e = this.render.canvas.height;
this._fbo.resize(t, e)
}
},
{
key: "_getPickingFBO",
value: function() {
return (this._fbo || this.createFBO()).buffer
}
},
{
key: "pickObject",
value: function(t) {
var e = t.x,
n = t.y,
i = t.mode,
o = t.radius,
r = t.callback,
a = t.featurePicking,
s = void 0 !== a && a,
l = this._pickObject({
x: e,
y: n,
radius: o,
mode: i,
pickingFBO: this._getPickingFBO(),
lastPickedInfo: this._lastPickedInfo,
useDevicePixels: !0,
featurePicking: s
});
r && r(l)
}
},
{
key: "_pickObject",
value: function(t) {
var e = t.x,
n = t.y,
i = t.radius,
r = t.mode,
a = t.pickingFBO,
s = t.useDevicePixels,
l = t.viewport,
u = t.featurePicking;
if (this.render.hasPickableLayer() || u) {
var c = x({
useDevicePixels: s
}),
f = Math.round(e * c),
d = Math.round(this.render.canvas.height - n * c),
h = Math.round(i * c),
v = o({
deviceX: f,
deviceY: d,
deviceRadius: h,
deviceWidth: this.render.canvas.width,
deviceHeight: this.render.canvas.height
}),
_ = v && this._getPickedColorFromPickingFBO({
viewport: l,
useDevicePixels: s,
pickingFBO: a,
deviceRect: v,
mode: r,
deviceRadius: h,
featurePicking: u
});
if (_) {
var m = this.render.isNeedColor(_.layerId),
g = (0, p.decodePickingColor)(_.pickedColor),
y = {
objectIndex: m ? 0 : g,
layerId: _ && _.layerId,
pickColor: m ? _.pickedColor: null
};
if (u && _) {
var b = _ && (0, p.decodeStylePickingColor)(_.featurePickedColor);
y.featurePick = b
}
return y
}
}
}
},
{
key: "_getPickedColorFromPickingFBO",
value: function(t) {
var e = t.deviceRect,
n = t.deviceRadius,
i = t.featurePicking,
o = this.render.gl;
this._fbo.bind(),
o.enable(o.SCISSOR_TEST),
o.scissor(e.x, e.y, e.width, e.height),
o.clearColor(0, 0, 0, .001),
o.enable(o.BLEND),
o.blendFuncSeparate(o.ONE, o.ZERO, o.CONSTANT_ALPHA, o.ZERO),
o.blendEquationSeparate(o.FUNC_ADD, o.FUNC_ADD),
o.blendColor(0, 0, 0, 0),
o.colorMask(!0, !0, !0, !0);
var r = {},
s = null,
u = new Uint8Array(4);
if ((this.render.hasPickableLayer() || i) && (s = this.render.renderForPicking(function(t) {
o.blendColor(0, 0, 0, (t + 1) / 255)
}), o.readPixels(e.x + n, e.y + n, 1, 1, o.RGBA, o.UNSIGNED_BYTE, u), i)) {
var f = new Uint8Array(e.width * e.height * 4);
o.blendFuncSeparate(o.ONE, o.ZERO, o.ONE, o.ZERO),
o.clearColor(0, 0, 0, 0),
this.render.renderForFeaturePicking(),
o.readPixels(e.x, e.y, e.width, e.height, o.RGBA, o.UNSIGNED_BYTE, f),
r.featurePickedColor = [].concat((0, c.
default)((0, l.
default)(f)))
}
return this._fbo.unbind(),
o.disable(o.SCISSOR_TEST),
o.blendFuncSeparate(o.ONE, o.ONE_MINUS_SRC_ALPHA, o.ONE, o.ONE_MINUS_SRC_ALPHA),
this.render._updateBgColor(!0),
(0, a.
default)(r, {
layerId: s && s[u[3] - 1] && s[u[3] - 1].id,
pickedColor: u
})
}
},
{
key: "destroy",
value: function() {
this._eventHandlers.forEach(function(t) {
t && t.remove && t.remove()
}),
this._fbo && this._fbo.delete(),
this.render = null,
this.map = null
}
}]),
t
} ();
e.
default = b
},
function(t, e, n) {
"use strict";
function i(t, e) {
var n = t.getExtension(e);
if (!n) return null;
var i = e.split("_")[0],
o = "_" + i;
for (var r in n) {
var a = n[r],
s = "function" == typeof a,
l = s ? i: o,
u = r;
r.endsWith(l) && (u = r.substring(0, r.length - l.length)),
void 0 !== t[u] ? s || t[u] === a || console.warn("conflict:", u, t[u], a, r) : t[u] = s ?
function(t) {
return function() {
return t.apply(n, arguments)
}
} (a) : a
}
return n
}
Object.defineProperty(e, "__esModule", {
value: !0
});
e.Extensions = function(t) {
var e = {};
return {
get: function(n, i) {
if (void 0 !== e[n]) return e[n];
var o = void 0;
switch (n) {
case "WEBGL_depth_texture":
o = t.getExtension("WEBGL_depth_texture") || t.getExtension("MOZ_WEBGL_depth_texture") || t.getExtension("WEBKIT_WEBGL_depth_texture");
break;
case "EXT_texture_filter_anisotropic":
o = t.getExtension("EXT_texture_filter_anisotropic") || t.getExtension("MOZ_EXT_texture_filter_anisotropic") || t.getExtension("WEBKIT_EXT_texture_filter_anisotropic");
break;
case "WEBGL_compressed_texture_s3tc":
o = t.getExtension("WEBGL_compressed_texture_s3tc") || t.getExtension("MOZ_WEBGL_compressed_texture_s3tc") || t.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");
break;
case "WEBGL_compressed_texture_pvrtc":
o = t.getExtension("WEBGL_compressed_texture_pvrtc") || t.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");
break;
default:
o = t.getExtension(n)
}
return ! o && i && console.error(i),
e[n] = o,
o
},
set: function(t, n) {
e[t] = n
},
extendWebGL1: function() {
t.DEPTH_COMPONENT24 = t.DEPTH_COMPONENT,
t.DEPTH24_STENCIL8 = t.DEPTH_STENCIL,
i(t, "OES_vertex_array_object"),
i(t, "ANGLE_instanced_arrays"),
i(t, "WEBGL_depth_texture"),
i(t, "WEBGL_draw_buffers")
},
destroy: function() {
e = null
}
}
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = t.glyphList,
n = t.getGlyphWidth,
i = t.fontSize,
o = t.fontWeight,
r = t.glyphHeight,
s = t.buffer,
l = t.maxCanvasWidth,
u = t.mapping,
c = void 0 === u ? {}: u,
f = t.xOffset,
d = void 0 === f ? 0 : f,
h = t.yOffset,
v = void 0 === h ? 0 : h,
_ = 0,
m = d; (0, a.
default)(e).forEach(function(t, e) {
if (!c[t] || c[t] && c[t].fontWeight !== o) {
var a = n(t, e);
m + a + 2 * s > l && (m = 0, _ += 1),
c[t] = {
x: m,
y: v + _ * (r + 2 * s),
fontSize: i,
fontWeight: o,
width: a + 2 * s,
height: r + 2 * s,
mask: !0
},
m += a + 2 * s
}
});
var g = r + 2 * s;
return {
mapping: c,
xOffset: m,
yOffset: v + _ * g,
canvasHeight: (0, p.getPowerOf2)(v + (_ + 1) * g)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(82),
a = i(r),
s = n(16),
l = i(s),
u = n(0),
c = i(u),
f = n(1),
d = i(f);
e.buildMapping = o;
var h = n(518),
v = i(h),
p = n(396),
_ = n(213),
m = i(_),
g = n(28),
y = '"SF Pro SC","SF Pro Display","SF Pro Icons","PingFang SC","Helvetica Neue","Helvetica","Arial", "Microsoft YaHei",sans-serif',
x = "normal",
b = 24,
S = 2,
w = .25,
E = 10,
T = 1024 * ((0, g.isPC)() ? 4 : 2),
A = function() {
function t(e) { (0, c.
default)(this, t),
this.setting = {
fontFamily: y,
fontWeight: x,
fontSize: b,
useSdf: !0,
buffer: S,
cutoff: w,
radius: E
},
this.gl = e,
this._debounceTimeId = null,
this.debug = !1
}
return (0, d.
default)(t, [{
key: "updateTextStyle",
value: function(t, e, n, i) {
t.font = i + " " + n + "px " + e,
t.fillStyle = "#000",
t.textBaseline = "baseline",
t.textAlign = "left"
}
},
{
key: "generateAtlas",
value: function(t, e) {
var n = this,
i = {}; (0, l.
default)(i, this.setting, e);
var r = i.fontFamily,
a = i.fontWeight,
s = i.fontSize,
u = i.buffer,
c = i.useSdf,
f = i.radius,
d = i.cutoff;
this.canvas || (this.canvas = document.createElement("canvas"), this.canvas.width = T, this.canvas.height = T / 8, this.glyphTexture = new m.
default(this.gl, {
pixels: this.canvas
}), this.debug && (this.canvas.style.position = "fixed", this.canvas.style.top = 0, this.canvas.style.left = 0, document.body.appendChild(this.canvas))),
this.lastAtlas || (this.lastAtlas = {
mapping: {},
xOffset: 0,
yOffset: 0
});
var h = this.canvas.getContext("2d");
this.updateTextStyle(h, r, s, a);
var p = t.filter(function(t) {
return ! n.lastAtlas.mapping[t] || n.lastAtlas.mapping[t] && n.lastAtlas.mapping[t].fontWeight !== a
}),
_ = o({
glyphList: t,
getGlyphWidth: function(t) {
return h.measureText(t).width
},
fontSize: s,
fontWeight: a,
glyphHeight: 1 * s,
buffer: u,
maxCanvasWidth: T,
mapping: this.lastAtlas.mapping,
xOffset: this.lastAtlas.xOffset,
yOffset: this.lastAtlas.yOffset
});
if (this.canvas.height < _.canvasHeight) {
var g = h.getImageData(0, 0, this.canvas.width, this.canvas.height);
this.canvas.height = _.canvasHeight,
h.putImageData(g, 0, 0)
}
if (this.updateTextStyle(h, r, s, a), p.length > 0) {
if (c) {
var y = new v.
default(s, u, f, d, r, a),
x = h.createImageData(y.size, y.size);
p.forEach(function(t) {
n.makeRGBAImageData(y.draw(t), x),
h.putImageData(x, _.mapping[t].x, _.mapping[t].y)
})
} else p.forEach(function(t) {
h.fillText(t, _.mapping[t].x, _.mapping[t].y + .9 * s)
});
this.canvasUpdated = !0
}
this.lastAtlas = _;
var b = {};
return t.forEach(function(t) {
b[t] = _.mapping[t]
}),
{
xOffset: _.xOffset,
yOffset: _.yOffset,
mapping: b,
data: this.canvas,
width: this.canvas.width,
height: this.canvas.height
}
}
},
{
key: "uploadToGPU",
value: function(t) {
if (t.force || this.canvasUpdated) {
var e = this.canvas,
n = e.width,
i = e.height,
o = this.canvas.getContext("2d").getImageData(0, 0, n, i);
this.glyphTexture.update(o, t)
} else this.glyphTexture.upload(t);
this.canvasUpdated = !1
}
},
{
key: "makeRGBAImageData",
value: function(t, e) {
for (var n = 0; n < t.length; n++) e.data[4 * n + 0] = t[n],
e.data[4 * n + 1] = t[n],
e.data[4 * n + 2] = t[n],
e.data[4 * n + 3] = t[n]
}
},
{
key: "destroy",
value: function() {
this.glyphTexture && this.glyphTexture.destroy(),
this.canvas && (this.canvas.width = 1, this.canvas.height = 1, this.canvas = null),
this.setting = null,
this.gl = null
}
}]),
t
} ();
e.
default = A
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(28),
f = i(c),
d = n(213),
h = i(d),
v = n(10),
p = i(v),
_ = f.
default.isPC() ? 8192 : 4096,
m = function() {
function t(e, n) { (0, s.
default)(this, t),
this.gl = e,
this.width = n.width || _,
this.height = n.height || _ / 2,
this.itemWidth = n.itemWidth || 512,
this.next = {
x: 0,
y: 0
},
this.images = {},
this.config = n.config || {},
this.debug = n.debug || !1,
this.debug && (this.canvas = this.createCanvas(this.width, this.height), this.debugShow())
}
return (0, u.
default)(t, [{
key: "getTexCoord",
value: function(t) {
var e = this.images[t];
if (e) {
var n = this.width,
i = this.height;
return {
s: (e.x + .5) / n,
t: (e.y + .5) / i,
w: (e.w - 1) / n,
h: (e.h - 1) / i
}
}
return null
}
},
{
key: "addImage",
value: function(t, e) {
return t in this.images || this.updateSubImg(t, e),
this.images[t]
}
},
{
key: "removeImage",
value: function(t) {
delete this.images[t]
}
},
{
key: "updateSubImg",
value: function(t, e) {
var n = this.images,
i = this.next,
o = this.itemWidth,
a = this.width,
s = this.height;
if (this.loadTexture(), !(t in n)) {
var l = e.height,
u = e.width,
c = i.x,
f = i.y;
f + l > s && (c += o, f = 0),
c >= a && (c = 0),
this.removeOldImages(c, f, l),
n[t] = {
x: c,
y: f,
h: l,
w: u
},
this.texture.updateSub(e, (0, r.
default)({
xOffset:
c,
yOffset: f
},
this.config)),
i.x = c,
i.y = f + l,
this.debug && this.canvas.ctx.drawImage(e, c, f)
}
}
},
{
key: "loadTexture",
value: function() {
var t = this.gl;
if (this.texture) this.texture.bind();
else {
var e = new h.
default(t);
e.resize(this.width, this.height, this.config),
this.texture = e
}
}
},
{
key: "removeOldImages",
value: function(t, e, n) {
var i = this.images,
o = [];
p.
default.forIn(i,
function(i, r) {
r.x !== t || r.y >= e + n || r.y + r.h <= e || o.push(i)
}),
o.forEach(function(t) {
delete i[t]
}),
o = void 0
}
},
{
key: "clear",
value: function() {
this.images = {},
this.next = {
x: 0,
y: 0
}
}
},
{
key: "createCanvas",
value: function(t, e) {
var n = document.createElement("canvas");
return n.width = t,
n.height = e,
n.ctx = n.getContext("2d"),
this.debug && document.body.appendChild(n),
n
}
},
{
key: "debugShow",
value: function() {
this.debug && (this.canvas.style.position = "absolute", this.canvas.style.zIndex = "10000", this.canvas.style.border = "1px solid red", this.canvas.style.width = "1200px", this.canvas.style.height = "1200px", this.canvas.style.left = "0", this.canvas.style.top = "0", this.canvas.style.pointerEvents = "none", this.canvas.id = "ImageCache", document.body.appendChild(this.canvas))
}
},
{
key: "destroy",
value: function() {
this.texture && (this.texture.destroy(), this.texture = null),
this.width = null,
this.height = null,
this.itemWidth = null,
this.next = null,
this.images = null,
this.debug = null,
this.canvas = null,
this.gl = null
}
}]),
t
} ();
e.
default = m
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
var e = t.markers,
n = t.getMarkerWidth,
i = t.rowHeight,
o = t.buffer,
a = t.maxCanvasWidth,
s = t.mapping,
l = void 0 === s ? {}: s,
u = t.xOffset,
f = void 0 === u ? 0 : u,
h = t.yOffset,
p = void 0 === h ? 0 : h,
_ = t.lastRowHeight,
m = void 0 === _ ? 0 : _,
g = t.lastXSpareSet,
y = void 0 === g ? {}: g,
x = t.lastYSpare,
S = void 0 === x ? 0 : x,
w = 0,
E = f,
T = i + 2 * o,
A = p + w * T,
P = (0, v.
default)({},
y); (0, d.
default)(e).forEach(function(t, e) {
if (!l[t.src]) {
var s = n(t, e);
if (E + s + 2 * o > a) {
w++,
A = p + w * T;
var u = r(P, A);
E = u < 0 ? 0 : a - u
}
l[t.src] = {
x: E + o,
y: A + o,
width: s,
height: Math.min(t.height, i),
mask: !0
},
E += s + 2 * o
}
});
var I = a - E,
k = S + p - A,
L = A + i;
if (i > m) P = (0, c.
default)({},
L, I);
else {
for (var M in P) P.hasOwnProperty(M) && M <= L && delete P[M];
P[L] = I
}
return {
mapping: l,
xOffset: E,
yOffset: A,
spareRowHeight: Math.max(i, m),
xSpareSet: P,
ySpare: i > m ? A + i - p: k > 0 ? k: i,
canvasHeight: (0, b.getPowerOf2)(p + (w + 1) * T)
}
}
function r(t, e) {
for (var n = (0, l.
default)(t).map(function(t) {
return Number(t)
}).sort(function(t, e) {
return t - e
}), i = 0; i < n.length; i++) if (e <= n[i]) return t[n[i]];
return - 1
}
function a(t) {
var e = t.glyphList,
n = t.getGlyphWidth,
i = t.fontSize,
o = t.glyphHeight,
a = t.buffer,
s = t.maxCanvasWidth,
l = t.mapping,
u = void 0 === l ? {}: l,
f = t.xOffset,
h = void 0 === f ? 0 : f,
p = t.yOffset,
_ = void 0 === p ? 0 : p,
m = t.lastRowHeight,
g = void 0 === m ? 0 : m,
y = t.lastXSpareSet,
x = void 0 === y ? {}: y,
S = t.lastYSpare,
w = void 0 === S ? 0 : S,
E = 0,
T = h,
A = o + 2 * a,
P = _,
I = (0, v.
default)({},
x); (0, d.
default)(e).forEach(function(t, e) {
if (!u[t]) {
var l = n(t, e);
if (T + l + 2 * a > s) {
E++,
P = _ + E * A;
var c = r(I, P);
T = c < 0 ? 0 : s - c
}
u[t] = {
x: T + a,
y: P + a,
fontSize: i,
width: l + 2 * a,
height: o + 2 * a,
mask: !0
},
T += l + 2 * a
}
});
var k = s - T,
L = w + _ - P,
M = P + o;
if (o > g) I = (0, c.
default)({},
M, k);
else {
for (var C in I) I.hasOwnProperty(C) && C <= M && delete I[C];
I[M] = k
}
return {
mapping: u,
xOffset: T,
yOffset: P,
spareRowHeight: Math.max(o, g),
xSpareSet: I,
ySpare: o > g ? P + o - _: L > 0 ? L: o,
canvasHeight: (0, b.getPowerOf2)(_ + (E + 1) * A)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(17),
l = i(s),
u = n(222),
c = i(u),
f = n(82),
d = i(f),
h = n(223),
v = i(h),
p = n(25),
_ = i(p),
m = n(0),
g = i(m),
y = n(1),
x = i(y);
e.buildAtlas = o;
var b = n(396),
S = n(213),
w = i(S),
E = n(28),
T = n(518),
A = i(T),
P = '"SF Pro SC","SF Pro Display","SF Pro Icons","PingFang SC","Helvetica Neue","Helvetica","Arial", "Microsoft YaHei",sans-serif',
I = "normal",
k = 24,
L = 2,
M = .25,
C = 10,
R = 1024 * ((0, E.isPC)() ? 2 : 1),
B = function() {
function t(e) {
var n = this; (0, g.
default)(this, t),
this._reUpdateCanvas = (0, E.debounce)(function() {
n.canvasUpdated = !0
},
5e3),
this.setting = {
fontFamily: P,
fontWeight: I,
fontSize: k,
useSdf: !0,
buffer: L,
cutoff: M,
radius: C
},
this.queuePromise = null,
this.gl = e,
this.debug = !1,
this._destroyed = !1
}
return (0, x.
default)(t, [{
key: "updateTextStyle",
value: function(t, e, n, i) {
t.font = i + " " + n + "px " + e,
t.fillStyle = "#000",
t.textBaseline = "baseline",
t.textAlign = "left"
}
},
{
key: "generateAtlas",
value: function(t, e) {
var n = this,
i = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
r = this.setting,
s = r.fontFamily,
l = r.fontWeight,
u = r.fontSize,
c = r.buffer,
f = r.useSdf,
d = r.radius,
h = r.cutoff;
this.canvas || (this.canvas = document.createElement("canvas"), this.canvas.width = R, this.canvas.height = R / 2, this.markerTexture = new w.
default(this.gl, {
pixels: this.canvas
}), this.debug && (this.canvas.style.position = "fixed", this.canvas.style.top = 0, this.canvas.style.left = 0, document.body.appendChild(this.canvas))),
this.lastAtlas || (this.lastAtlas = {
mapping: {},
xOffset: 0,
yOffset: 0
});
var v = this.canvas.getContext("2d");
if (e && e.length > 0) {
this.updateTextStyle(v, s, u, l);
var p = e.filter(function(t) {
return ! n.lastAtlas.mapping[t]
}),
m = a({
glyphList: e,
getGlyphWidth: function(t) {
return v.measureText(t).width
},
fontSize: u,
glyphHeight: 1 * u,
buffer: c,
maxCanvasWidth: R,
mapping: this.lastAtlas.mapping,
xOffset: this.lastAtlas.xOffset,
yOffset: this.lastAtlas.yOffset,
lastRowHeight: this.lastAtlas.spareRowHeight,
lastXSpareSet: this.lastAtlas.xSpareSet,
lastYSpare: this.lastAtlas.ySpare
});
if (p.length > 0) {
if (f) {
var g = new A.
default(u, c, d, h, s, l),
y = v.createImageData(g.size, g.size);
p.forEach(function(t) {
n.makeRGBAImageData(g.draw(t), y),
v.putImageData(y, m.mapping[t].x, m.mapping[t].y)
})
} else p.forEach(function(t) {
v.fillText(t, m.mapping[t].x, m.mapping[t].y + .9 * u)
});
this.canvasUpdated = !0
}
this.lastAtlas = m
}
var x = null,
b = t.filter(function(t) {
return ! n.lastAtlas.mapping[t]
}).map(function(t) {
if (i.tileId) {
if (!x) {
var e = [];
"string" == typeof i.tileImage64 ? e.push(i.tileImage64) : e = i.tileImage64,
x = _.
default.all(e.map(function(t, e) {
return new _.
default(function(n, o) {
if (t) {
var r = new Image;
r.onload = function() {
n(r)
},
r.onerror = function() {
console.error("Image加载失败: " + i.tileId + "-" + e),
n(null)
},
r.src = "data:image/png;base64," + t
} else n(null)
})
}))
}
return x.then(function(e) {
var n = i.billboardData.filter(function(e) {
return e.text === t
})[0],
o = n && n.bounds,
r = n && n.cidx;
return e[r] ? {
tileImage: e[r],
isSimulate: !0,
src: t,
width: o[2],
height: o[3],
bounds: o
}: null
})
}
return new _.
default(function(e, n) {
var i = new Image;
/^data:/.test(t) || (i.crossOrigin = "anonymous"),
i.onload = function() {
e(i)
},
i.onerror = function() {
console.error("Image加载失败: " + t),
e(null)
},
i.src = t
})
}),
S = _.
default.all(b);
return this.queuePromise = (null === this.queuePromise ? S: this.queuePromise.then(function() {
return S
},
function(t) {
return console.error(t),
S
})).then(function(r) {
if (!n._destroyed) {
r = r.filter(function(t) {
return !! t
});
var a = o({
markers: r,
getMarkerWidth: function(t) {
return t.height > 128 ? 128 * t.width / t.height: t.width
},
rowHeight: i.tileId ? 30 : Math.min(128, r.reduce(function(t, e) {
return Math.max(t, e.height)
},
0)),
buffer: 4,
maxCanvasWidth: R,
mapping: n.lastAtlas.mapping,
xOffset: n.lastAtlas.xOffset,
yOffset: n.lastAtlas.yOffset,
lastRowHeight: n.lastAtlas.spareRowHeight,
lastXSpareSet: n.lastAtlas.xSpareSet,
lastYSpare: n.lastAtlas.ySpare
});
if (n.canvas.height < a.canvasHeight) {
var s = v.getImageData(0, 0, n.canvas.width, n.canvas.height);
n.canvas.height = a.canvasHeight,
v.putImageData(s, 0, 0)
}
r.forEach(function(t) {
var e = a.mapping[t.src];
if (!e.isFilled) {
if (t.isSimulate) {
var n = t.bounds;
v.drawImage(t.tileImage, n[0], n[1], n[2], n[3], e.x, e.y, e.width, e.height)
} else v.drawImage(t, e.x, e.y, e.width, e.height);
e.isFilled = !0
}
}),
n.lastAtlas = a,
n.canvasUpdated = n.canvasUpdated || r.length > 0;
var l = {};
return t.forEach(function(t) {
l[t] = a.mapping[t]
}),
e && e.length > 0 && e.forEach(function(t) {
l[t] = a.mapping[t]
}),
n.canvasUpdated && n._reUpdateCanvas(),
l
}
}),
this.queuePromise
}
},
{
key: "uploadToGPU",
value: function(t) {
if (t.force || this.canvasUpdated) {
var e = this.canvas,
n = e.width,
i = e.height,
o = this.canvas.getContext("2d").getImageData(0, 0, n, i);
this.markerTexture.update(o, t)
} else this.markerTexture.upload(t);
this.canvasUpdated = !1
}
},
{
key: "makeRGBAImageData",
value: function(t, e) {
for (var n = 0; n < t.length; n++) e.data[4 * n + 0] = t[n],
e.data[4 * n + 1] = t[n],
e.data[4 * n + 2] = t[n],
e.data[4 * n + 3] = t[n]
}
},
{
key: "destroy",
value: function() {
this._destroyed || (this.markerTexture && (this.markerTexture.destroy(), this.markerTexture = null), this.canvas && (this.canvas.width = 1, this.canvas.height = 1, this.canvas = null), this.queuePromise = null, this.gl = null, this._destroyed = !0)
}
}]),
t
} ();
e.
default = B
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(280),
p = i(v),
_ = n(785),
m = i(_),
g = {
attributes: "getAttribLocation",
uniforms: "getUniformLocation"
},
y = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_onCreate",
value: function() {
return this.gl.createProgram()
}
},
{
key: "_onDelete",
value: function(t) {
t || (this._vShader.delete(), this._fShader.delete()),
this.gl.deleteProgram(this._object)
}
},
{
key: "_initialize",
value: function(t) {
var e = t.vShader,
n = t.fShader;
this.attachShader(e, n)
}
},
{
key: "attachShader",
value: function(t, e) {
var n = arguments.length > 2 && void 0 !== arguments[2] && arguments[2],
i = this.gl;
"string" == typeof t && (t = new m.
default(i, {
type: i.VERTEX_SHADER,
source: t
})),
"string" == typeof e && (e = new m.
default(i, {
type: i.FRAGMENT_SHADER,
source: e
})),
n && this._vShader && this._fShader && (i.detachShader(this._object, this._vShader.shader), i.detachShader(this._object, this._fShader.shader)),
i.attachShader(this._object, t.shader),
i.attachShader(this._object, e.shader),
this._vShader = t,
this._fShader = e,
i.linkProgram(this._object),
this.check()
}
},
{
key: "enable",
value: function() {
this.gl.useProgram(this._object),
this.gl.program = this._object
}
},
{
key: "check",
value: function() {
var t = this.gl;
this.getParameter(t.LINK_STATUS) || (console.error(t.getProgramInfoLog(this._object)), console.log(this._source))
}
},
{
key: "getParameter",
value: function(t) {
return this.gl.getProgramParameter(this._object, t)
}
},
{
key: "getLocations",
value: function(t, e) {
var n = this,
i = {},
o = g[t];
return o && e.forEach(function(t) {
i[t] = n.gl[o](n._object, t)
}),
i
}
},
{
key: "program",
get: function() {
return this._object
}
}]),
e
} (p.
default);
e.
default = y
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(3),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(5),
f = i(c),
d = n(4),
h = i(d),
v = n(280),
p = i(v),
_ = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return (0, s.
default)(this, e),
(0, f.
default)(this, (e.__proto__ || (0, r.
default)(e)).call(this, t, n))
}
return (0, h.
default)(e, t),
(0, u.
default)(e, [{
key: "_onCreate",
value: function(t) {
var e = t.type;
return this.gl.createShader(e)
}
},
{
key: "_onDelete",
value: function() {
this.gl.deleteShader(this._object)
}
},
{
key: "_initialize",
value: function(t) {
var e = t.source;
e && this.setSource(e)
}
},
{
key: "setSource",
value: function(t) {
this._source = t,
this.gl.shaderSource(this._object, t),
this.compile(),
this.check()
}
},
{
key: "compile",
value: function() {
this.gl.compileShader(this._object)
}
},
{
key: "check",
value: function() {
var t = this.gl;
this.getParameter(t.COMPILE_STATUS) || (console.error(t.getShaderInfoLog(this._object)), console.log(this._source))
}
},
{
key: "getParameter",
value: function(t) {
return this.gl.getShaderParameter(this._object, t)
}
},
{
key: "shader",
get: function() {
return this._object
}
}]),
e
} (p.
default);
e.
default = _
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
r = i(o),
a = n(1),
s = i(a),
l = n(28),
u = i(l),
c = n(213),
f = i(c),
d = n(10),
h = i(d),
v = u.
default.isPC() ? 8192 : 4096,
p = function() {
function t(e) { (0, r.
default)(this, t),
this.gl = e,
this.width = v,
this.height = this.width,
this.itemWidth = 512,
this.scale = 2,
this.next = {
x: 0,
y: 0
},
this.tiles = {},
this.tilePositions = {},
this._renderTiles = null,
this.debug = 0,
this.debug && (this.canvas = this.createCanvas(this.width, this.height), this.debugShow())
}
return (0, s.
default)(t, [{
key: "updateRenderTiles",
value: function(t) {
this._renderTiles = t
}
},
{
key: "getTexCoord",
value: function(t, e) {
var n = this.tiles[t];
if (!n) return null;
var i = this.scale;
return {
x: (n.x + e[0]) / this.width,
y: (this.height - (n.y + e[1])) / this.height,
w: e[2] / this.width,
h: e[3] / this.height,
fontSize: {
w: e[2] / i,
h: e[3] / i
}
}
}
},
{
key: "addImage",
value: function(t, e, n) {
if (t in this.tiles || !e) return void(n && n());
this.updateTextSubImg(e, t),
n && n()
}
},
{
key: "add",
value: function(t, e, n) {
var i = this.tiles;
if (t in i) return void(n && n());
this.createItem(e,
function(e) {
this.updateTextSubImg(e, t),
n && n()
}.bind(this))
}
},
{
key: "updateTextSubImg",
value: function(t, e) {
this.loadTexture();
var n = this.tiles;
if (! (e in n)) {
var i = this.tilePositions,
o = this.next,
r = t.height,
a = o.x,
s = o.y;
s + r > this.height && (a += this.itemWidth, s = 0),
a >= this.width && (a = 0),
this.removeOldTiles(a, s, r);
var l = a + "-" + s;
n[e] = {
x: a,
y: s,
height: r
},
i[l] = e,
this.texture.updateSub(t, {
flipY: !0,
premultiply: !0,
xOffset: a,
yOffset: this.height - s - r
}),
o.x = a,
o.y = s + r,
this.debug && this.canvas.ctx.drawImage(t, a, s)
}
}
},
{
key: "loadTexture",
value: function() {
var t = this.gl;
if (this.texture) this.texture.bind();
else {
var e = new f.
default(t);
e.resize(this.width, this.height, {
flipY: !0,
premultiply: !0
}),
this.texture = e
}
}
},
{
key: "removeOldTiles",
value: function(t, e, n) {
var i = this.tiles,
o = this.tilePositions,
r = [];
h.
default.forIn(i,
function(i, a) {
if (! (a.x !== t || a.y >= e + n || a.y + a.height <= e)) {
var s = a.x + "-" + a.y;
delete o[s],
r.push(i)
}
});
for (var a = 0,
s = r.length; a < s; a++) delete i[r[a]];
r = void 0
}
},
{
key: "createItem",
value: function(t, e) {
var n = new Image;
n.onload = function() {
"function" == typeof e && e(n, n.width, n.height)
}.bind(this),
n.src = t
}
},
{
key: "createCanvas",
value: function(t, e) {
var n = document.createElement("canvas");
return n.width = t,
n.height = e,
n.ctx = n.getContext("2d"),
this.debug && document.body.appendChild(n),
n
}
},
{
key: "debugShow",
value: function() {
this.debug && (document.getElementById("TextCache") || (console.info(232), this.canvas.style.position = "absolute", this.canvas.style.zIndex = "10000", this.canvas.style.border = "1px solid red", this.canvas.style.width = "8192px", this.canvas.style.height = "8192px", this.canvas.style.left = "0", this.canvas.style.top = "0", this.canvas.style.pointerEvents = "none", this.canvas.id = "TextCache", document.body.appendChild(this.canvas)))
}
},
{
key: "destroy",
value: function() {
this.texture && (this.texture.destroy(), this.texture = null),
this.width = null,
this.height = null,
this.itemWidth = null,
this.scale = null,
this.next = null,
this.tiles = null,
this.tilePositions = null,
this._renderTiles = null,
this.debug = 0,
this.canvas = null,
this.gl = null
}
}]),
t
} ();
e.
default = p
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t) {
return new a.
default(function(e) {
if (l.
default.support()) {
var n = c.
default.QMAPI_poi_icon_json + t;
l.
default.get(n,
function(n) {
if (n) {
var i = JSON.parse(n).data;
e(i)
} else(0, h.loadPoiIconIndexFile)(t, d.
default.iconIndexSrc).then(function(t) {
e(t)
},
function(t) {
console.error(t),
e(null)
})
})
} else(0, h.loadPoiIconIndexFile)(t, d.
default.iconIndexSrc).then(function(t) {
e(t)
},
function(t) {
console.error(t),
e(null)
})
})
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(25),
a = i(r),
s = n(89),
l = i(s),
u = n(137),
c = i(u),
f = n(23),
d = i(f),
h = n(498);
e.
default = o
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(25),
r = i(o),
a = n(0),
s = i(a),
l = n(1),
u = i(l),
c = n(789),
f = i(c),
d = function() {
function t() { (0, s.
default)(this, t),
this.img = null,
this.w = 0,
this.h = 0,
this.scale = 2
}
return (0, u.
default)(t, [{
key: "load",
value: function(t) {
var e = this;
return new r.
default(function(n) {
function i(t) {
t.img && (t.ready = !0, n())
} (0, f.
default)(t,
function(t) {
e.w = t.originalWidth,
e.h = t.originalHeight,
e.img = t.pixels,
i(e, e.w, e.h)
})
})
}
}]),
t
} ();
e.
default = d
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e) {
if ("function" == typeof e) {
if (t in r.textures) return void e(r.textures[t]);
var n = new Image;
/^data:/.test(t) || (n.crossOrigin = "anonymous"),
n.onload = function() {
if (r.textures[t]) return void e(r.textures[t]);
var i = u.
default.extendCanvasToPow2(n, 1);
r.textures[t] = new s.
default(null, {
pixels: i,
originalWidth: n.width,
originalHeight: n.height,
width: i.width,
height: i.height
}),
e(r.textures[t])
}.bind(this),
n.src = t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(110),
a = n(213),
s = i(a),
l = n(396),
u = i(l);
e.
default = o
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n, i) {
var o = null;
o = "LABEL" === i ? r(t, e, n, i) : s(t, e, n, i);
var a = l(o),
u = [];
return a.forEach(function(t) {
u = t.isShow ? u.concat(Array(Number(t.lettersCount)).fill(1)) : u.concat(Array(Number(t.lettersCount)).fill(0))
}),
new Uint8ClampedArray(u)
}
function r(t, e, n, i) {
var o = [],
r = !0,
s = !1,
l = void 0;
try {
for (var u, c = (0, m.
default)(t); ! (r = (u = c.next()).done); r = !0) {
var f = u.value,
d = f.geometry.position,
h = e.latLngToCenterLocalPixel(d),
v = new g.Vector4(h.x, h.y, 0, 1),
p = n.pvMatrix.multiplyVector4(v),
_ = p.elements[0] / p.elements[3],
y = p.elements[1] / p.elements[3],
x = (1 + _) / 2 * e.width,
b = (1 - y) / 2 * e.height,
S = f.style.size / f.fontSize * f.widthSum * e.scale,
w = f.style.size / f.fontSize * f.heightSum * e.scale,
E = S / 2,
T = w / 2,
A = {
x: x,
y: b
},
P = f.style,
I = P.alignment,
k = P.verticalAlignment,
L = P.angle;
o[f.geometryIndex] = {
leftTop: a({
x: x - E + I * E,
y: b - T + k * T
},
A, f.style, i),
rightTop: a({
x: x + E + I * E,
y: b - T + k * T
},
A, f.style, i),
rightBottom: a({
x: x + E + I * E,
y: b + T + k * T
},
A, f.style, i),
leftBottom: a({
x: x - E + I * E,
y: b + T + k * T
},
A, f.style, i),
width: S,
height: w,
angle: L,
lettersCount: f.lettersCount,
rank: void 0 === f.geometry.rank ? -1 / 0 : f.geometry.rank,
geometryIndex: f.geometryIndex
}
}
} catch(t) {
s = !0,
l = t
} finally {
try { ! r && c.
return && c.
return ()
} finally {
if (s) throw l
}
}
return o
}
function a(t, e, n, i) {
var o = t.x - e.x,
r = t.y - e.y,
a = new g.Vector4(o, r, 0, 1),
s = 0;
s = "LABEL" === i ? n.angle || 0 : n.rotate || 0;
var l = (new g.Matrix4).setRotate( - s, 0, 0, 1),
u = l.multiplyVector4(a);
return "LABEL" === i ? {
x: u.elements[0] + e.x + n.offset.x,
y: u.elements[1] + e.y + n.offset.y
}: {
x: u.elements[0] + e.x,
y: u.elements[1] + e.y
}
}
function s(t, e, n, i) {
var o = [],
r = !0,
s = !1,
l = void 0;
try {
for (var u, c = (0, m.
default)(t); ! (r = (u = c.next()).done); r = !0) {
var f = u.value,
d = f.geometry.position,
h = e.latLngToCenterLocalPixel(d),
v = new g.Vector4(h.x, h.y, 0, 1),
p = n.pvMatrix.multiplyVector4(v),
_ = p.elements[0] / p.elements[3],
y = p.elements[1] / p.elements[3],
x = (1 + _) / 2 * e.width,
b = (1 - y) / 2 * e.height,
S = {
x: x,
y: b
},
w = null,
E = null;
f.labelWidthSum < 1 ? (w = 0, E = 0) : (w = f.style.size / f.fontSize * f.labelWidthSum * e.scale, E = f.style.size * e.scale);
var T = f.style.width * e.scale,
A = f.style.height * e.scale,
P = w / 2,
I = E / 2,
k = {
leftTop: a({
x: x - f.style.anchor.x,
y: b - f.style.anchor.y
},
S, f.style, i),
rightTop: a({
x: x + T - f.style.anchor.x,
y: b - f.style.anchor.y
},
S, f.style, i),
rightBottom: a({
x: x + T - f.style.anchor.x,
y: b + A - f.style.anchor.y
},
S, f.style, i),
leftBottom: a({
x: x - f.style.anchor.x,
y: b + A - f.style.anchor.y
},
S, f.style, i)
},
L = Math.min(k.leftTop.x, k.rightTop.x, k.rightBottom.x, k.leftBottom.x),
M = Math.min(k.leftTop.y, k.rightTop.y, k.rightBottom.y, k.leftBottom.y),
C = Math.max(k.leftTop.x, k.rightTop.x, k.rightBottom.x, k.leftBottom.x),
R = M,
B = C,
N = Math.max(k.leftTop.y, k.rightTop.y, k.rightBottom.y, k.leftBottom.y),
O = L,
D = N;
if (f.labelWidthSum > 1) {
var z = Math.min(L, C, O, B),
F = Math.max(L, C, O, B),
V = Math.min(M, R, D, N),
Y = Math.max(M, R, D, N),
U = {
x: (z + F) / 2,
y: (V + Y) / 2
},
j = {
leftTop: {
x: U.x - P + f.offsetToMarkerCenter.x,
y: U.y - I + f.offsetToMarkerCenter.y
},
rightTop: {
x: U.x + P + f.offsetToMarkerCenter.x,
y: U.y - I + f.offsetToMarkerCenter.y
},
rightBottom: {
x: U.x + P + f.offsetToMarkerCenter.x,
y: U.y + I + f.offsetToMarkerCenter.y
},
leftBottom: {
x: U.x - P + f.offsetToMarkerCenter.x,
y: U.y + I + f.offsetToMarkerCenter.y
}
};
L = Math.min(L, j.leftTop.x),
M = Math.min(M, j.leftTop.y),
C = Math.max(C, j.rightTop.x),
R = Math.min(R, j.rightTop.y),
B = Math.max(B, j.rightBottom.x),
N = Math.max(N, j.rightBottom.y),
O = Math.min(O, j.leftBottom.x),
D = Math.max(D, j.leftBottom.y)
}
o[f.geometryIndex] = {
leftTop: {
x: L,
y: M
},
rightTop: {
x: C,
y: R
},
rightBottom: {
x: B,
y: N
},
leftBottom: {
x: O,
y: D
},
width: C - L,
height: N - R,
angle: 0,
lettersCount: f.lettersCount,
rank: void 0 === f.geometry.rank ? -1 / 0 : f.geometry.rank,
geometryIndex: f.geometryIndex
}
}
} catch(t) {
s = !0,
l = t
} finally {
try { ! r && c.
return && c.
return ()
} finally {
if (s) throw l
}
}
return o
}
function l(t) {
var e = t.map(function(t) {
return {
isShow: !0,
lettersCount: t.lettersCount
}
}),
n = !0,
i = !1,
o = void 0;
try {
for (var r, a = (0, m.
default)(t.entries()); ! (n = (r = a.next()).done); n = !0) {
var s = (0, p.
default)(r.value, 2),
l = s[0],
c = s[1],
f = t.slice(l + 1);
if (e[c.geometryIndex].isShow) {
var d = !0,
h = !1,
v = void 0;
try {
for (var _, g = (0, m.
default)(f); ! (d = (_ = g.next()).done); d = !0) {
var y = _.value;
if (e[y.geometryIndex].isShow) {
var x = u(c, y),
b = !0;
x && (b = c.rank === y.rank ? y.geometryIndex > c.geometryIndex: y.rank > c.rank, b ? e[c.geometryIndex].isShow = !1 : e[y.geometryIndex].isShow = !1)
}
}
} catch(t) {
h = !0,
v = t
} finally {
try { ! d && g.
return && g.
return ()
} finally {
if (h) throw v
}
}
}
}
} catch(t) {
i = !0,
o = t
} finally {
try { ! n && a.
return && a.
return ()
} finally {
if (i) throw o
}
}
return e
}
function u(t, e) {
var n = new y(t),
i = new y(e);
return n.isCollision(i)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var c = n(0),
f = i(c),
d = n(1),
h = i(d),
v = n(32),
p = i(v),
_ = n(27),
m = i(_),
g = n(107),
y = function() {
function t(e) { (0, f.
default)(this, t),
this.centerPoint = [(e.leftTop.x + e.rightBottom.x) / 2, (e.leftTop.y + e.rightBottom.y) / 2],
this.halfHeight = e.height / 2,
this.halfWidth = e.width / 2,
this.setRotation(e.angle)
}
return (0, h.
default)(t, [{
key: "getProjectionRadius",
value: function(t) {
var e = this.dot(t, this.axisX),
n = this.dot(t, this.axisY);
return this.halfWidth * e + this.halfHeight * n
}
},
{
key: "dot",
value: function(t, e) {
return Math.abs(t[0] * e[0] + t[1] * e[1])
}
},
{
key: "setRotation",
value: function(t) {
var e = t / 180 * Math.PI;
return this.axisX = [Math.cos(e), -Math.sin(e)],
this.axisY = [Math.sin(e), Math.cos(e)],
this
}
},
{
key: "isCollision",
value: function(t) {
for (var e = [this.centerPoint[0] - t.centerPoint[0], this.centerPoint[1] - t.centerPoint[1]], n = [this.axisX, this.axisY, t.axisX, t.axisY], i = 0, o = n.length; i < o; i++) if (this.getProjectionRadius(n[i]) + t.getProjectionRadius(n[i]) <= this.dot(e, n[i])) return ! 1;
return ! 0
}
}]),
t
} ();
e.
default = o
},
function(t, e, n) {
"use strict";
function i(t) {
var e = t.extensions_TMAP.get("WEBGL_debug_renderer_info");
return e ? {
vendor: t.getParameter(e.UNMASKED_VENDOR_WEBGL),
renderer: t.getParameter(e.UNMASKED_RENDERER_WEBGL)
}: null
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.getGraphicHardwareInfo = i
},
function(t, e, n) {
"use strict";
function i(t, e, n, i) {
i = i || 1;
var o = new r.Matrix4,
a = new r.Matrix4;
return a.scale(i, i, i),
o = o.multiply(e),
o = o.multiply(a),
o = o.multiply(function(t, e) {
var n = new r.Matrix4,
i = t.x + e.left,
o = e.top - t.y;
return n.setTranslate(i, o, 0),
n
} (n, t))
}
function o(t) {
var e = t.view,
n = t.offset,
i = t.scale,
o = void 0 === i ? 1 : i,
a = new r.Matrix4;
return a.scale(o, o, o).translate(n.x + e.left, e.top - n.y, 0),
a
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.mixMatrix = i,
e.getModelMatrix = o;
var r = n(107)
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n) {
n(),
a(t, e)
}
function r(t, e) {
var n = {};
return e.forEach(function(e) {
var i = v[e];
n[e] = i ? i(t, t[e]) : t.getParameter(t[e])
}),
n
}
function a(t, e) {
t.blendFuncSeparate(e.BLEND_SRC_RGB, e.BLEND_DST_RGB, e.BLEND_SRC_ALPHA, e.BLEND_DST_ALPHA),
(0, c.
default)(e).forEach(function(e) {
var n = (0, l.
default)(e, 2),
i = n[0],
o = n[1],
r = m[i];
r && r(t, o, t[i])
})
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(32),
l = i(s),
u = n(115),
c = i(u),
f = n(24),
d = i(f);
e.preserveParameters = o,
e.getParameters = r;
var h = function(t, e) {
return t.isEnabled(e)
},
v = {
BLEND: h,
CULL_FACE: h,
DEPTH_TEST: h,
DITHER: h,
POLYGON_OFFSET_FILL: h,
SAMPLE_ALPHA_TO_COVERAGE: h,
SAMPLE_COVERAGE: h,
SCISSOR_TEST: h,
STENCIL_TEST: h,
RASTERIZER_DISCARD: h
},
p = function(t, e, n) {
return e ? t.enable(n) : t.disable(n)
},
_ = function(t, e, n) {
return t.pixelStorei(n, e)
},
m = {
BLEND: p,
CULL_FACE: p,
DEPTH_TEST: p,
COLOR_CLEAR_VALUE: function(t, e) {
return t.clearColor.apply(t, (0, d.
default)(e))
},
VIEWPORT: function(t, e) {
return t.viewport.apply(t, (0, d.
default)(e))
},
UNPACK_FLIP_Y_WEBGL: _,
UNPACK_PREMULTIPLY_ALPHA_WEBGL: _
}
},
function(t, e, n) {
"use strict";
function i(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function o(t, e, n, i) { (i < 270 && i > 90 && t.getLng() > e.getLng() || i > 270 && i < 90 && t.getLng() < e.getLng()) && (n.getLng() >= 0 ? t.lng = 180 : e.lng = -179.9999)
}
function r(t) {
var e = D.degreeToRadian(t.getLat()),
n = D.degreeToRadian(t.getLng());
return new L.Vector4(Math.cos(e) * Math.sin(n), Math.sin(e), Math.cos(e) * Math.cos(n), 1)
}
function a(t) {
var e = (0, c.
default)(t.elements, 3),
n = e[0],
i = e[1],
o = e[2],
r = Math.asin(i),
a = void 0,
s = Math.cos(r);
return 0 === s ? a = 0 : (a = Math.asin(D.clamp(n / s, -1, 1)), a = o / s > 0 ? a: Math.PI - a),
new N(D.radianToDegree(r), D.radianToDegree(a), !0)
}
function s(t, e) {
var n = t.getLat(),
i = -t.getLng(),
o = l(e);
return (new L.Matrix4).translate(0, 0, -o).scale(o, o, o).rotate(n, 1, 0, 0).rotate(i, 0, 1, 0)
}
function l(t) {
return 256 * Math.pow(2, t) / (2 * Math.PI)
}
var u = n(32),
c = i(u),
f = n(16),
d = i(f),
h = n(3),
v = i(h),
p = n(0),
_ = i(p),
m = n(1),
g = i(m),
y = n(5),
x = i(y),
b = n(4),
S = i(b),
w = n(23),
E = i(w),
T = n(247),
A = i(T),
P = n(300),
I = i(P),
k = n(137),
L = n(107),
M = n(112),
C = n(376),
R = n(475),
B = i(R),
N = n(47),
O = n(74),
D = n(10),
z = n(209),
F = n(397),
V = n(106),
Y = E.
default.tileSize,
U = Math.PI,
j = U / 180,
G = A.
default[1],
Z = function(t) {
function e(t, n) { (0, _.
default)(this, e);
var i = (0, x.
default)(this, (e.__proto__ || (0, v.
default)(e)).call(this));
return i._minZoom = t.minZoom || E.
default.mainZoom,
i._maxZoom = t.maxZoom || E.
default.maxZoom,
i._minPitch = t.minPitch || E.
default.minPitch,
i._maxPitch = t.maxPitch || E.
default.maxPitch,
i._fov = t.fov || .6435011087932844,
i.width = t.width || 0,
i.height = t.height || 0,
i.zoom = t.zoom || 10,
i.tileZoom = Math.floor(i._zoom),
i._center = N.convert(t.center) || new N(39.908782, 116.3974),
i.heading = t.heading || 0,
i._pitch = t.pitch || 0,
i._roll = t.roll || 0,
i._scale = t.scale || 1,
i.viewTransition = t.viewMode === k.VIEW_MODE.SPHERE ? 1 : 0,
i._boundary = t.boundary || null,
i.projection = new F,
i.renderEngine = n,
(0, d.
default)(i, C.easableMixin),
i
}
return (0, S.
default)(e, t),
(0, g.
default)(e, [{
key: "_isCameraReady",
value: function() {
var t = this.renderEngine && this.renderEngine.camera && this.renderEngine.camera.resolution;
return t && null !== t.width && null !== t.height
}
},
{
key: "resize",
value: function(t, e) {
this.width = t,
this.height = e,
this._isCameraReady() && this._fire("bounds_changed", {
bounds: this.getBounds()
},
!0),
this._fire("input_change"),
this._constrain()
}
},
{
key: "transitTo",
value: function(t) {
var e = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
this._stopEase(),
n = (0, d.
default)({
duration:
500,
easing: D.ease
},
n);
var i = this.viewTransition,
o = t === k.VIEW_MODE.SPHERE ? 1 : 0;
this._fire("transit_start"),
this._ease(function(t) {
e.viewTransition = D.mix(i, o, t)
},
function() {
e._fire("transit_end")
},
function() {
e.viewTransition = o
},
n)
}
},
{
key: "_constrain",
value: function() {
if (this._boundary && !this._boundary.isEmpty()) {
if (this._unmodify) return void(this._unmodify = !1);
var t = this.width,
e = this.height,
n = this.center,
i = t / this._scale,
o = e / this._scale,
r = this.latLngToCoord(this._boundary.getSouthWest()),
a = this.latLngToCoord(this._boundary.getNorthEast()),
s = this.latLngToCoord(n),
l = [r.x, a.x],
u = [a.y, r.y];
if (Math.round(l[0]) !== Math.round(l[1]) && Math.round(u[0]) !== Math.round(u[1])) {
var c = void 0,
f = void 0,
d = l && l[1] - l[0] < i ? i / (l[1] - l[0]) : 0,
h = u && u[1] - u[0] < o ? o / (u[1] - u[0]) : 0,
v = Math.max(d, h);
if (v) {
c = d ? (l[0] + l[1]) / 2 : s.x,
f = h ? (u[0] + u[1]) / 2 : s.y;
var p = this.coordToLatLng({
x: c,
y: f
});
this._unmodify = !0,
this.zoom += this.scaleZoom(v),
this.center = p
} else if (s.x - i / 2 < l[0] && (c = l[0] + i / 2), s.x + i / 2 > l[1] && (c = l[1] - i / 2), s.y - o / 2 < u[0] && (f = u[0] + o / 2), s.y + o / 2 > u[1] && (f = u[1] - o / 2), void 0 !== c || void 0 !== f) {
var _ = this.coordToLatLng({
x: void 0 !== c ? c: s.x,
y: void 0 !== f ? f: s.y
});
if (_.lat === this._center.lat && _.lng === this._center.lng) return;
this._unmodify = !0,
this.center = _
}
}
}
}
},
{
key: "zoomScale",
value: function(t) {
return Math.pow(2, t)
}
},
{
key: "scaleZoom",
value: function(t) {
return Math.log(t) / Math.LN2
}
},
{
key: "calCoordsScale",
value: function(t) {
return this.scrollScale / this.zoomScale(t)
}
},
{
key: "latLngToCoord",
value: function(t, e) {
return this.projection.latLngToCoord(t, e || this.zoom)
}
},
{
key: "coordToLatLng",
value: function(t, e) {
return this.projection.coordToLatLng(t, e || this.zoom)
}
},
{
key: "latLngToCenterLocalPixel",
value: function(t) {
var e = this.latLngToCoord(this.center, this.zoom),
n = this.latLngToCoord(t, this.zoom);
return new B.
default(n.x - e.x, e.y - n.y, n.z - e.z)
}
},
{
key: "centerLocalPixelToLatLng",
value: function(t) {
var e = this.latLngToCoord(this.center, this.zoom),
n = new O(e.x + t.x, e.y - t.y);
return this.coordToLatLng(n, this.zoom)
}
},
{
key: "latLngToCenterLocalPixelByDistanceScales",
value: function(t, e) {
var n = e.distanceScales || this.getDistanceScales(),
i = e.center || this.center,
o = e.offsetMercator,
r = new N(t.lat - i.lat, t.lng - i.lng),
a = D.clamp(r.lat, -1, 1),
s = [n.pixelsPerDegree[0], n.pixelsPerDegree[1] + n.pixelsPerDegree2[1] * a],
l = new O(r.lng * s[0], r.lat * s[1]);
return o && (l.x += o.x * e.pixelsPerMeter, l.y += o.y * e.pixelsPerMeter),
l
}
},
{
key: "projectionTopLeft",
value: function(t) {
var e = this.latLngToCoord(this.center, t);
return new O(e.x - this.width / 2, e.y - this.height / 2)
}
},
{
key: "latLngToWorldCoord",
value: function(t) {
if (this.isSphere) {
var e = r(t);
return s(this.center, this.zoom).multiplyVector4(e)
}
var n = this.latLngToCenterLocalPixel(t),
i = n.x,
o = n.y,
a = n.z;
return new L.Vector4(i, o, a, 1)
}
},
{
key: "worldCoordToLatLng",
value: function(t) {
if (this.isSphere) {
return a(s(this.center, this.zoom).invert().multiplyVector4(t))
}
var e = (0, c.
default)(t.elements, 2),
n = e[0],
i = e[1];
return this.centerLocalPixelToLatLng(new O(n, i))
}
},
{
key: "screenToLatLng",
value: function(t) {
var e = this.renderEngine.camera,
n = (0, M.fromScreenToNdc)(t.x, t.y, e.resolution),
i = void 0;
if (this.isSphere) {
var o = l(this.zoom),
r = (0, M.getSphereCoordsByCustomMatrix)(e.pvMatrix, n, o);
if (!r) return null;
var a = r.x,
s = r.y,
u = r.z;
i = new L.Vector4(a, s, u, 1)
} else {
var c = (0, M.getZPlaneCoordsByCustomMatrix)(e.pvMatrix, n),
f = c.x,
d = c.y;
i = new L.Vector4(f, d, 0, 1)
}
return this.worldCoordToLatLng(i)
}
},
{
key: "latLngToScreen",
value: function(t) {
var e = this.latLngToWorldCoord(t),
n = this.renderEngine.camera,
i = n.pvMatrix,
o = n.resolution,
r = (0, c.
default)((0, M.getNdcCoordsByCustomMatrix)(i, e).elements, 2),
a = r[0],
s = r[1];
return (0, M.fromNdcToScreen)(a, s, o)
}
},
{
key: "latLngToTileCoord",
value: function(t, e) {
return this.latLngToCoord(t, e || this.zoom).div(Y)
}
},
{
key: "tileCoordToLatLng",
value: function(t, e) {
return this.coordToLatLng(t.mult(Y), e || this.zoom)
}
},
{
key: "setLocationAtPoint",
value: function(t, e) {
var n = this.latLngToTileCoord(t),
i = this.latLngToTileCoord(this.center),
o = this.screenToLatLng(e),
r = this.latLngToTileCoord(o),
a = r.sub(i),
s = n.sub(a);
this.center = this.tileCoordToLatLng(s)
}
},
{
key: "getBounds",
value: function() {
if (this.isSphere) return new z(new N( - 90, -180), new N(90, 180));
var t = new z,
e = Math.min(this.renderEngine.camera.getFogEdge()[1], 1),
n = (1 - e) / 2 * this.height,
i = this.screenToLatLng(new O(0, n)),
r = this.screenToLatLng(new O(this.width, n)),
a = this.screenToLatLng(new O(0, this.height)),
s = this.screenToLatLng(new O(this.width, this.height));
return o(r, i, this.center, this.heading),
o(s, a, this.center, this.heading),
t.extend(i).extend(r).extend(a).extend(s),
t
}
},
{
key: "coveringTiles",
value: function(t) {
var e = this.isSphere,
n = t.round,
i = t.pixelGeo,
o = t.minZoom,
r = t.maxZoom,
a = t.zoom,
s = void 0 === a ? this.zoom: a;
s = D.clamp(s, o, r);
var l = e ? 3 : n ? Math.round(s) : Math.floor(s);
if (!this.width || !this.height) return [];
if (i) {
return [new I.
default(l, 0, 0, 0, Y)]
}
return e ? this.coveringTilesOnSphere(l, t) : this.coveringTilesOnPlane(l, 1)
}
},
{
key: "coveringTilesOnSphere",
value: function(t) {
var e = I.
default.coverAll(t);
return this._sortTiles(e, Y)
}
},
{
key: "coveringTilesOnPlane",
value: function(t, e) {
e = e || 1;
var n = this.calCoordsScale(t),
i = this.renderEngine.camera.getBounds(n);
D.forIn(i,
function(t, n) {
n.x *= e,
n.y *= e
});
var o = this.latLngToCoord(this.center, t),
r = [{
column: ~~ (o.x + i.leftTop.x) / Y,
row: ~~ (o.y - i.leftTop.y) / Y
},
{
column: ~~ (o.x + i.rightTop.x) / Y,
row: ~~ (o.y - i.rightTop.y) / Y
},
{
column: ~~ (o.x + i.rightBottom.x) / Y,
row: ~~ (o.y - i.rightBottom.y) / Y
},
{
column: ~~ (o.x + i.leftBottom.x) / Y,
row: ~~ (o.y - i.leftBottom.y) / Y
}],
a = I.
default.cover(t, r);
return this._sortTiles(a, Y)
}
},
{
key: "_sortTiles",
value: function(t, e) {
for (var n = 0,
i = t.length; n < i; n++) {
var o = t[n],
r = this.projectionTopLeft(o.z),
a = o.x * e - r.x + e / 2,
s = o.y * e - r.y + e / 2,
l = Math.pow(a - this.centerPoint.x, 2) + Math.pow(s - this.centerPoint.y, 2);
o.ds = Math.sqrt(l)
}
return D.bubbleSort(t, "ds"),
t
}
},
{
key: "getDistanceRatio",
value: function(t) {
var e = 256 * this.zoomScale(t || this.zoom),
n = this.center;
return e / (G * Math.abs(Math.cos(n.lat * j)))
}
},
{
key: "getDistanceScales",
value: function(t) {
var e = this.center,
n = e.lat,
i = this.zoomScale(t || this.zoom),
o = {},
r = Y * i,
a = Math.cos(n * j),
s = r / 360,
l = s / a,
u = r / G / a;
o.pixelsPerMeter = [u, u, u],
o.metersPerPixel = [1 / u, 1 / u, 1 / u],
o.pixelsPerDegree = [s, l, u],
o.degreesPerPixel = [1 / s, 1 / l, 1 / u];
var c = j * Math.tan(n * j) / a,
f = s * c / 2,
d = r / G * c,
h = d / l * u;
return o.pixelsPerDegree2 = [0, f, d],
o.pixelsPerMeter2 = [h, 0, h],
o
}
},
{
key: "getInput",
value: function() {
return {
height: this.height,
width: this.width,
center: this._center,
zoom: this._zoom,
heading: this._heading,
pitch: this._pitch
}
}
},
{
key: "isSphere",
get: function() {
return this.viewTransition > 0
}
},
{
key: "size",
get: function() {
return new O(this.width, this.height)
}
},
{
key: "minZoom",
get: function() {
return this._minZoom
},
set: function(t) {
t = Math.max(t, E.
default.minZoom),
this._minZoom !== t && (this._minZoom = t, this.zoom = Math.max(this.zoom, t))
}
},
{
key: "maxZoom",
get: function() {
return this._maxZoom
},
set: function(t) {
t = Math.min(t, E.
default.maxZoom),
this._maxZoom !== t && (this._maxZoom = t, this.zoom = Math.min(this.zoom, t))
}
},
{
key: "maxPitch",
get: function() {
return this._maxPitch
},
set: function(t) {
t = Math.min(t, E.
default.maxPitch),
this._maxPitch !== t && (this._maxPitch = t, this.pitch = Math.min(this.pitch, t))
}
},
{
key: "zoom",
get: function() {
return this._zoom
},
set: function(t) {
var e = Math.min(Math.max(t, this.minZoom), this.maxZoom);
this._zoom !== e && (this._isCameraReady() && this._fire("bounds_changed", {
bounds: this.getBounds()
},
!0), this.renderEngine && this._zoom !== e && this.renderEngine.camera.updateVersion(), this._zoom = e, this._fire("zoom_changed", {
zoom: this._zoom
},
!0), this._scrollScale = this.zoomScale(e), this.tileZoom = Math.floor(e), this.zoomFraction = e - this.tileZoom, this._fire("input_change"), this._constrain())
}
},
{
key: "roundZoom",
get: function() {
return Math.round(this._zoom)
}
},
{
key: "scrollScale",
get: function() {
return this._scrollScale
}
},
{
key: "center",
get: function() {
return this._center
},
set: function(t) {
t.lat === this._center.lat && t.lng === this._center.lng || (this.renderEngine && this._center && t && (this._center.lat !== t.lat || this._center.lng !== t.lng) && this.renderEngine.camera.updateVersion(), this._center = t, this._fire("center_changed", {
center: this._center
},
!0), this._isCameraReady() && this._fire("bounds_changed", {
bounds: this.getBounds()
},
!0), this._fire("input_change"), this._constrain())
}
},
{
key: "centerPoint",
get: function() {
return new O(this.width / 2, this.height / 2)
}
},
{
key: "heading",
get: function() {
return this._heading / Math.PI * 180
},
set: function(t) {
if (!isNaN(t)) {
var e = D.wrap(t, 0, 360) * Math.PI / 180;
this._heading !== e && (this._heading = e, this._isCameraReady() && this._fire("bounds_changed", {
bounds: this.getBounds()
},
!0), this._fire("input_change"))
}
}
},
{
key: "pitch",
get: function() {
return this._pitch / Math.PI * 180
},
set: function(t) {
if (!isNaN(t)) {
var e = D.clamp(t, this._minPitch, this._maxPitch) / 180 * Math.PI;
this._pitch !== e && (this._pitch = e, this._isCameraReady() && this._fire("bounds_changed", {
bounds: this.getBounds()
},
!0), this._fire("input_change"))
}
}
},
{
key: "roll",
get: function() {
return this._roll / Math.PI * 180
},
set: function(t) {
if (!isNaN(t)) {
var e = D.clamp(t, -90, 90) / 180 * Math.PI;
this._roll !== e && (this._roll = e, this._isCameraReady() && this._fire("bounds_changed", {
bounds: this.getBounds()
},
!0), this._fire("input_change"))
}
}
},
{
key: "fov",
get: function() {
return this._fov / Math.PI * 180
},
set: function(t) {
t = Math.max(.01, Math.min(60, t)),
this._fov !== t && (this._fov = t / 180 * Math.PI)
}
},
{
key: "scale",
get: function() {
return this._scale
},
set: function(t) {
this._scale !== t && (this._scale = t, this.renderEngine.camera.setScale(t), this._fire("scale_changed", {
scale: this._scale
},
!0), this._isCameraReady() && this._fire("bounds_changed", {
bounds: this.getBounds()
},
!0), this._fire("input_change"), this._constrain())
}
},
{
key: "boundary",
get: function() {
return this._boundary || null
},
set: function(t) {
t instanceof z && (this._boundary = t, this._constrain())
}
}]),
e
} (V);
t.exports = Z
},
function(t, e, n) {
"use strict";
var i = n(32),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.create = function() {
var t = new Float32Array(3);
return t[0] = 0,
t[1] = 0,
t[2] = 0,
t
},
e.clone = function(t) {
var e = new Float32Array(3);
return e[0] = t[0],
e[1] = t[1],
e[2] = t[2],
e
},
e.fromValues = function(t, e, n) {
var i = new Float32Array(3);
return i[0] = t,
i[1] = e,
i[2] = n,
i
},
e.copy = function(t, e) {
return t[0] = e[0],
t[1] = e[1],
t[2] = e[2],
t
},
e.set = function(t, e, n, i) {
return t[0] = e,
t[1] = n,
t[2] = i,
t
},
e.add = function(t, e, n) {
return t[0] = e[0] + n[0],
t[1] = e[1] + n[1],
t[2] = e[2] + n[2],
t
},
e.subtract = function(t, e, n) {
return t[0] = e[0] - n[0],
t[1] = e[1] - n[1],
t[2] = e[2] - n[2],
t
},
e.multiply = function(t, e, n) {
return t[0] = e[0] * n[0],
t[1] = e[1] * n[1],
t[2] = e[2] * n[2],
t
},
e.divide = function(t, e, n) {
return t[0] = e[0] / n[0],
t[1] = e[1] / n[1],
t[2] = e[2] / n[2],
t
},
e.ceil = function(t, e) {
return t[0] = Math.ceil(e[0]),
t[1] = Math.ceil(e[1]),
t[2] = Math.ceil(e[2]),
t
},
e.floor = function(t, e) {
return t[0] = Math.floor(e[0]),
t[1] = Math.floor(e[1]),
t[2] = Math.floor(e[2]),
t
},
e.min = function(t, e, n) {
return t[0] = Math.min(e[0], n[0]),
t[1] = Math.min(e[1], n[1]),
t[2] = Math.min(e[2], n[2]),
t
},
e.max = function(t, e, n) {
return t[0] = Math.max(e[0], n[0]),
t[1] = Math.max(e[1], n[1]),
t[2] = Math.max(e[2], n[2]),
t
},
e.round = function(t, e) {
return t[0] = Math.round(e[0]),
t[1] = Math.round(e[1]),
t[2] = Math.round(e[2]),
t
},
e.scale = function(t, e, n) {
return t[0] = e[0] * n,
t[1] = e[1] * n,
t[2] = e[2] * n,
t
},
e.scaleAndAdd = function(t, e, n, i) {
return t[0] = e[0] + n[0] * i,
t[1] = e[1] + n[1] * i,
t[2] = e[2] + n[2] * i,
t
},
e.distance = function(t, e) {
var n = e[0] - t[0],
i = e[1] - t[1],
o = e[2] - t[2];
return Math.sqrt(n * n + i * i + o * o)
},
e.squaredDistance = function(t, e) {
var n = e[0] - t[0],
i = e[1] - t[1],
o = e[2] - t[2];
return n * n + i * i + o * o
},
e.length = function(t) {
var e = (0, o.
default)(t, 3),
n = e[0],
i = e[1],
r = e[2];
return Math.sqrt(n * n + i * i + r * r)
},
e.squaredLength = function(t) {
var e = (0, o.
default)(t, 3),
n = e[0],
i = e[1],
r = e[2];
return n * n + i * i + r * r
},
e.negate = function(t, e) {
return t[0] = -e[0],
t[1] = -e[1],
t[2] = -e[2],
t
},
e.inverse = function(t, e) {
return t[0] = 1 / e[0],
t[1] = 1 / e[1],
t[2] = 1 / e[2],
t
},
e.normalize = function(t, e) {
var n = (0, o.
default)(e, 3),
i = n[0],
r = n[1],
a = n[2],
s = i * i + r * r + a * a;
return s > 0 && (s = 1 / Math.sqrt(s), t[0] = e[0] * s, t[1] = e[1] * s, t[2] = e[2] * s),
t
},
e.dot = function(t, e) {
return t[0] * e[0] + t[1] * e[1] + t[2] * e[2]
},
e.cross = function(t, e, n) {
var i = (0, o.
default)(e, 3),
r = i[0],
a = i[1],
s = i[2],
l = (0, o.
default)(n, 3),
u = l[0],
c = l[1],
f = l[2];
return t[0] = a * f - s * c,
t[1] = s * u - r * f,
t[2] = r * c - a * u,
t
},
e.lerp = function(t, e, n, i) {
var r = (0, o.
default)(e, 3),
a = r[0],
s = r[1],
l = r[2];
return t[0] = a + i * (n[0] - a),
t[1] = s + i * (n[1] - s),
t[2] = l + i * (n[2] - l),
t
},
e.hermite = function(t, e, n, i, o, r) {
var a = r * r,
s = a * (2 * r - 3) + 1,
l = a * (r - 2) + r,
u = a * (r - 1),
c = a * (3 - 2 * r);
return t[0] = e[0] * s + n[0] * l + i[0] * u + o[0] * c,
t[1] = e[1] * s + n[1] * l + i[1] * u + o[1] * c,
t[2] = e[2] * s + n[2] * l + i[2] * u + o[2] * c,
t
},
e.bezier = function(t, e, n, i, o, r) {
var a = 1 - r,
s = a * a,
l = r * r,
u = s * a,
c = 3 * r * s,
f = 3 * l * a,
d = l * r;
return t[0] = e[0] * u + n[0] * c + i[0] * f + o[0] * d,
t[1] = e[1] * u + n[1] * c + i[1] * f + o[1] * d,
t[2] = e[2] * u + n[2] * c + i[2] * f + o[2] * d,
t
},
e.random = function(t, e) {
e = e || 1;
var n = 2 * Math.random() * Math.PI,
i = 2 * Math.random() - 1,
o = Math.sqrt(1 - i * i) * e;
return t[0] = Math.cos(n) * o,
t[1] = Math.sin(n) * o,
t[2] = i * e,
t
},
e.transformMat4 = function(t, e, n) {
var i = (0, o.
default)(e, 3),
r = i[0],
a = i[1],
s = i[2],
l = n[3] * r + n[7] * a + n[11] * s + n[15] || 1;
return t[0] = (n[0] * r + n[4] * a + n[8] * s + n[12]) / l,
t[1] = (n[1] * r + n[5] * a + n[9] * s + n[13]) / l,
t[2] = (n[2] * r + n[6] * a + n[10] * s + n[14]) / l,
t
},
e.transformMat3 = function(t, e, n) {
var i = (0, o.
default)(e, 3),
r = i[0],
a = i[1],
s = i[2];
return t[0] = r * n[0] + a * n[3] + s * n[6],
t[1] = r * n[1] + a * n[4] + s * n[7],
t[2] = r * n[2] + a * n[5] + s * n[8],
t
},
e.transformQuat = function(t, e, n) {
var i = (0, o.
default)(e, 3),
r = i[0],
a = i[1],
s = i[2],
l = (0, o.
default)(n, 4),
u = l[0],
c = l[1],
f = l[2],
d = l[3],
h = d * r + c * s - f * a,
v = d * a + f * r - u * s,
p = d * s + u * a - c * r,
_ = -u * r - c * a - f * s;
return t[0] = h * d + _ * -u + v * -f - p * -c,
t[1] = v * d + _ * -c + p * -u - h * -f,
t[2] = p * d + _ * -f + h * -c - v * -u,
t
},
e.rotateX = function(t, e, n, i) {
var o = [],
r = [];
return o[0] = e[0] - n[0],
o[1] = e[1] - n[1],
o[2] = e[2] - n[2],
r[0] = o[0],
r[1] = o[1] * Math.cos(i) - o[2] * Math.sin(i),
r[2] = o[1] * Math.sin(i) + o[2] * Math.cos(i),
t[0] = r[0] + n[0],
t[1] = r[1] + n[1],
t[2] = r[2] + n[2],
t
},
e.rotateY = function(t, e, n, i) {
var o = [],
r = [];
return o[0] = e[0] - n[0],
o[1] = e[1] - n[1],
o[2] = e[2] - n[2],
r[0] = o[2] * Math.sin(i) + o[0] * Math.cos(i),
r[1] = o[1],
r[2] = o[2] * Math.cos(i) - o[0] * Math.sin(i),
t[0] = r[0] + n[0],
t[1] = r[1] + n[1],
t[2] = r[2] + n[2],
t
},
e.rotateZ = function(t, e, n, i) {
var o = [],
r = [];
return o[0] = e[0] - n[0],
o[1] = e[1] - n[1],
o[2] = e[2] - n[2],
r[0] = o[0] * Math.cos(i) - o[1] * Math.sin(i),
r[1] = o[0] * Math.sin(i) + o[1] * Math.cos(i),
r[2] = o[2],
t[0] = r[0] + n[0],
t[1] = r[1] + n[1],
t[2] = r[2] + n[2],
t
},
e.forEach = function(t, e, n, i, o, r) {
var a = void 0,
s = void 0;
for (e || (e = 3), n || (n = 0), s = i ? Math.min(i * e + n, t.length) : t.length, a = n; a < s; a += e) vec[0] = t[a],
vec[1] = t[a + 1],
vec[2] = t[a + 2],
o(vec, vec, r),
t[a] = vec[0],
t[a + 1] = vec[1],
t[a + 2] = vec[2];
return t
},
e.angle = function(t, e) {
var n = fromValues(t[0], t[1], t[2]),
i = fromValues(e[0], e[1], e[2]);
normalize(n, n),
normalize(i, i);
var o = dot(n, i);
return o > 1 ? 0 : o < -1 ? Math.PI: Math.acos(o)
},
e.str = function(t) {
return "vec3(" + t[0] + ", " + t[1] + ", " + t[2] + ")"
},
e.equals = function(t, e) {
return t[0] === e[0] && t[1] === e[1] && t[2] === e[2]
}
},
function(t, e, n) {
"use strict";
function i(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return new s.
default(function(n, i) {
var o = window.URL.createObjectURL(t),
r = new Image(e.width, e.height);
r.src = o,
r.onload = function() {
n(r)
},
r.onerror = function() {
i(new Error("blob to image failed"))
}
})
}
function o(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = e.width || t.width,
i = e.height || t.height,
o = document.createElement("canvas");
return o.width = n,
o.height = i,
o.getContext("2d").drawImage(t, 0, 0, n, i),
o
}
function r(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};
return new s.
default(function(n, i) {
var o = new Image(e.width, e.height);
o.src = t.toDataURL("image/png"),
o.onload = function() {
n(o)
},
o.onerror = function() {
i()
}
})
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(25),
s = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (a);
e.blobToImage = i,
e.imageToCanvas = o,
e.canvasToImage = r
},
, , , ,
function(t, e, n) {
n(954),
n(893),
n(895),
n(894),
n(897),
n(899),
n(904),
n(898),
n(896),
n(906),
n(905),
n(901),
n(902),
n(900),
n(892),
n(903),
n(907),
n(908),
n(859),
n(861),
n(860),
n(910),
n(909),
n(880),
n(890),
n(891),
n(881),
n(882),
n(883),
n(884),
n(885),
n(886),
n(887),
n(888),
n(889),
n(863),
n(864),
n(865),
n(866),
n(867),
n(868),
n(869),
n(870),
n(871),
n(872),
n(873),
n(874),
n(875),
n(876),
n(877),
n(878),
n(879),
n(941),
n(946),
n(953),
n(944),
n(936),
n(937),
n(942),
n(947),
n(949),
n(932),
n(933),
n(934),
n(935),
n(938),
n(939),
n(940),
n(943),
n(945),
n(948),
n(950),
n(951),
n(952),
n(854),
n(856),
n(855),
n(858),
n(857),
n(843),
n(841),
n(847),
n(844),
n(850),
n(852),
n(840),
n(846),
n(837),
n(851),
n(835),
n(849),
n(848),
n(842),
n(845),
n(834),
n(836),
n(839),
n(838),
n(853),
n(444),
n(925),
n(548),
n(930),
n(549),
n(926),
n(927),
n(928),
n(929),
n(547),
n(862),
n(931),
n(966),
n(967),
n(955),
n(956),
n(961),
n(964),
n(965),
n(959),
n(962),
n(960),
n(963),
n(957),
n(958),
n(911),
n(912),
n(913),
n(914),
n(915),
n(918),
n(916),
n(917),
n(919),
n(920),
n(921),
n(922),
n(924),
n(923),
t.exports = n(102)
},
function(t, e, n) {
n(968),
t.exports = n(102).Array.flatMap
},
function(t, e, n) {
n(969),
t.exports = n(102).Array.includes
},
function(t, e, n) {
n(970),
t.exports = n(102).Object.entries
},
function(t, e, n) {
n(971),
t.exports = n(102).Object.getOwnPropertyDescriptors
},
function(t, e, n) {
n(972),
t.exports = n(102).Object.values
},
function(t, e, n) {
"use strict";
n(547),
n(973),
t.exports = n(102).Promise.
finally
},
function(t, e, n) {
n(974),
t.exports = n(102).String.padEnd
},
function(t, e, n) {
n(975),
t.exports = n(102).String.padStart
},
function(t, e, n) {
n(977),
t.exports = n(102).String.trimRight
},
function(t, e, n) {
n(976),
t.exports = n(102).String.trimLeft
},
function(t, e, n) {
n(978),
t.exports = n(442).f("asyncIterator")
},
, , , , , , , , , , , ,
function(t, e, n) {
var i = n(63),
o = n(349),
r = n(78)("species");
t.exports = function(t) {
var e;
return o(t) && (e = t.constructor, "function" != typeof e || e !== Array && !o(e.prototype) || (e = void 0), i(e) && null === (e = e[r]) && (e = void 0)),
void 0 === e ? Array: e
}
},
function(t, e, n) {
"use strict";
var i = n(61),
o = Date.prototype.getTime,
r = Date.prototype.toISOString,
a = function(t) {
return t > 9 ? t: "0" + t
};
t.exports = i(function() {
return "0385-07-25T07:06:39.999Z" != r.call(new Date( - 5e13 - 1))
}) || !i(function() {
r.call(new Date(NaN))
}) ?
function() {
if (!isFinite(o.call(this))) throw RangeError("Invalid time value");
var t = this,
e = t.getUTCFullYear(),
n = t.getUTCMilliseconds(),
i = e < 0 ? "-": e > 9999 ? "+": "";
return i + ("00000" + Math.abs(e)).slice(i ? -6 : -4) + "-" + a(t.getUTCMonth() + 1) + "-" + a(t.getUTCDate()) + "T" + a(t.getUTCHours()) + ":" + a(t.getUTCMinutes()) + ":" + a(t.getUTCSeconds()) + "." + (n > 99 ? n: "0" + a(n)) + "Z"
}: r
},
function(t, e, n) {
"use strict";
var i = n(60),
o = n(254);
t.exports = function(t) {
if ("string" !== t && "number" !== t && "default" !== t) throw TypeError("Incorrect hint");
return o(i(this), "number" != t)
}
},
function(t, e, n) {
var i = n(267),
o = n(351),
r = n(322);
t.exports = function(t) {
var e = i(t),
n = o.f;
if (n) for (var a, s = n(t), l = r.f, u = 0; s.length > u;) l.call(t, a = s[u++]) && e.push(a);
return e
}
},
function(t, e, n) {
"use strict";
function i(t, e, n, u, c, f, d, h) {
for (var v, p, _ = c,
m = 0,
g = !!d && s(d, h, 3); m < u;) {
if (m in n) {
if (v = g ? g(n[m], m, e) : n[m], p = !1, r(v) && (p = v[l], p = void 0 !== p ? !!p: o(v)), p && f > 0) _ = i(t, e, v, a(v.length), _, f - 1) - 1;
else {
if (_ >= 9007199254740991) throw TypeError();
t[_] = v
}
_++
}
m++
}
return _
}
var o = n(349),
r = n(63),
a = n(88),
s = n(231),
l = n(78)("isConcatSpreadable");
t.exports = i
},
function(t, e, n) {
t.exports = n(353)("native-function-to-string", Function.toString)
},
function(t, e, n) {
var i = n(432),
o = Math.pow,
r = o(2, -52),
a = o(2, -23),
s = o(2, 127) * (2 - a),
l = o(2, -126),
u = function(t) {
return t + 1 / r - 1 / r
};
t.exports = Math.fround ||
function(t) {
var e, n, o = Math.abs(t),
c = i(t);
return o < l ? c * u(o / l / a) * l * a: (e = (1 + a / r) * o, n = e - (e - o), n > s || n != n ? c * (1 / 0) : c * n)
}
},
function(t, e, n) {
var i = n(62),
o = n(440).set,
r = i.MutationObserver || i.WebKitMutationObserver,
a = i.process,
s = i.Promise,
l = "process" == n(244)(a);
t.exports = function() {
var t, e, n, u = function() {
var i, o;
for (l && (i = a.domain) && i.exit(); t;) {
o = t.fn,
t = t.next;
try {
o()
} catch(i) {
throw t ? n() : e = void 0,
i
}
}
e = void 0,
i && i.enter()
};
if (l) n = function() {
a.nextTick(u)
};
else if (!r || i.navigator && i.navigator.standalone) if (s && s.resolve) {
var c = s.resolve(void 0);
n = function() {
c.then(u)
}
} else n = function() {
o.call(i, u)
};
else {
var f = !0,
d = document.createTextNode("");
new r(u).observe(d, {
characterData: !0
}),
n = function() {
d.data = f = !f
}
}
return function(i) {
var o = {
fn: i,
next: void 0
};
e && (e.next = o),
t || (t = o, n()),
e = o
}
}
},
function(t, e) {
t.exports = function(t) {
try {
return {
e: !1,
v: t()
}
} catch(t) {
return {
e: !0,
v: t
}
}
}
},
function(t, e, n) {
var i = n(11);
i(i.P, "Array", {
copyWithin: n(520)
}),
n(262)("copyWithin")
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(230)(4);
i(i.P + i.F * !n(226)([].every, !0), "Array", {
every: function(t) {
return o(this, t, arguments[1])
}
})
},
function(t, e, n) {
var i = n(11);
i(i.P, "Array", {
fill: n(421)
}),
n(262)("fill")
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(230)(2);
i(i.P + i.F * !n(226)([].filter, !0), "Array", {
filter: function(t) {
return o(this, t, arguments[1])
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(230)(6),
r = "findIndex",
a = !0;
r in [] && Array(1)[r](function() {
a = !1
}),
i(i.P + i.F * a, "Array", {
findIndex: function(t) {
return o(this, t, arguments.length > 1 ? arguments[1] : void 0)
}
}),
n(262)(r)
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(230)(5),
r = !0;
"find" in [] && Array(1).find(function() {
r = !1
}),
i(i.P + i.F * r, "Array", {
find: function(t) {
return o(this, t, arguments.length > 1 ? arguments[1] : void 0)
}
}),
n(262)("find")
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(230)(0),
r = n(226)([].forEach, !0);
i(i.P + i.F * !r, "Array", {
forEach: function(t) {
return o(this, t, arguments[1])
}
})
},
function(t, e, n) {
"use strict";
var i = n(231),
o = n(11),
r = n(136),
a = n(529),
s = n(428),
l = n(88),
u = n(422),
c = n(443);
o(o.S + o.F * !n(350)(function(t) {
Array.from(t)
}), "Array", {
from: function(t) {
var e, n, o, f, d = r(t),
h = "function" == typeof this ? this: Array,
v = arguments.length,
p = v > 1 ? arguments[1] : void 0,
_ = void 0 !== p,
m = 0,
g = c(d);
if (_ && (p = i(p, v > 2 ? arguments[2] : void 0, 2)), void 0 == g || h == Array && s(g)) for (e = l(d.length), n = new h(e); e > m; m++) u(n, m, _ ? p(d[m], m) : d[m]);
else for (f = g.call(d), n = new h; ! (o = f.next()).done; m++) u(n, m, _ ? a(f, p, [o.value, m], !0) : o.value);
return n.length = m,
n
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(344)(!1),
r = [].indexOf,
a = !!r && 1 / [1].indexOf(1, -0) < 0;
i(i.P + i.F * (a || !n(226)(r)), "Array", {
indexOf: function(t) {
return a ? r.apply(this, arguments) || 0 : o(this, t, arguments[1])
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Array", {
isArray: n(349)
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(216),
r = [].join;
i(i.P + i.F * (n(321) != Object || !n(226)(r)), "Array", {
join: function(t) {
return r.call(o(this), void 0 === t ? ",": t)
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(216),
r = n(234),
a = n(88),
s = [].lastIndexOf,
l = !!s && 1 / [1].lastIndexOf(1, -0) < 0;
i(i.P + i.F * (l || !n(226)(s)), "Array", {
lastIndexOf: function(t) {
if (l) return s.apply(this, arguments) || 0;
var e = o(this),
n = a(e.length),
i = n - 1;
for (arguments.length > 1 && (i = Math.min(i, r(arguments[1]))), i < 0 && (i = n + i); i >= 0; i--) if (i in e && e[i] === t) return i || 0;
return - 1
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(230)(1);
i(i.P + i.F * !n(226)([].map, !0), "Array", {
map: function(t) {
return o(this, t, arguments[1])
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(422);
i(i.S + i.F * n(61)(function() {
function t() {}
return ! (Array.of.call(t) instanceof t)
}), "Array", {
of: function() {
for (var t = 0,
e = arguments.length,
n = new("function" == typeof this ? this: Array)(e); e > t;) o(n, t, arguments[t++]);
return n.length = e,
n
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(521);
i(i.P + i.F * !n(226)([].reduceRight, !0), "Array", {
reduceRight: function(t) {
return o(this, t, arguments.length, arguments[1], !0)
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(521);
i(i.P + i.F * !n(226)([].reduce, !0), "Array", {
reduce: function(t) {
return o(this, t, arguments.length, arguments[1], !1)
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(426),
r = n(244),
a = n(269),
s = n(88),
l = [].slice;
i(i.P + i.F * n(61)(function() {
o && l.call(o)
}), "Array", {
slice: function(t, e) {
var n = s(this.length),
i = r(this);
if (e = void 0 === e ? n: e, "Array" == i) return l.call(this, t, e);
for (var o = a(t, n), u = a(e, n), c = s(u - o), f = new Array(c), d = 0; d < c; d++) f[d] = "String" == i ? this.charAt(o + d) : this[o + d];
return f
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(230)(3);
i(i.P + i.F * !n(226)([].some, !0), "Array", {
some: function(t) {
return o(this, t, arguments[1])
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(229),
r = n(136),
a = n(61),
s = [].sort,
l = [1, 2, 3];
i(i.P + i.F * (a(function() {
l.sort(void 0)
}) || !a(function() {
l.sort(null)
}) || !n(226)(s)), "Array", {
sort: function(t) {
return void 0 === t ? s.call(r(this)) : s.call(r(this), o(t))
}
})
},
function(t, e, n) {
n(287)("Array")
},
function(t, e, n) {
var i = n(11);
i(i.S, "Date", {
now: function() {
return (new Date).getTime()
}
})
},
function(t, e, n) {
var i = n(11),
o = n(826);
i(i.P + i.F * (Date.prototype.toISOString !== o), "Date", {
toISOString: o
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(136),
r = n(254);
i(i.P + i.F * n(61)(function() {
return null !== new Date(NaN).toJSON() || 1 !== Date.prototype.toJSON.call({
toISOString: function() {
return 1
}
})
}), "Date", {
toJSON: function(t) {
var e = o(this),
n = r(e);
return "number" != typeof n || isFinite(n) ? e.toISOString() : null
}
})
},
function(t, e, n) {
var i = n(78)("toPrimitive"),
o = Date.prototype;
i in o || n(215)(o, i, n(827))
},
function(t, e, n) {
var i = Date.prototype,
o = i.toString,
r = i.getTime;
new Date(NaN) + "" != "Invalid Date" && n(206)(i, "toString",
function() {
var t = r.call(this);
return t === t ? o.call(this) : "Invalid Date"
})
},
function(t, e, n) {
var i = n(11);
i(i.P, "Function", {
bind: n(523)
})
},
function(t, e, n) {
"use strict";
var i = n(63),
o = n(266),
r = n(78)("hasInstance"),
a = Function.prototype;
r in a || n(104).f(a, r, {
value: function(t) {
if ("function" != typeof this || !i(t)) return ! 1;
if (!i(this.prototype)) return t instanceof this;
for (; t = o(t);) if (this.prototype === t) return ! 0;
return ! 1
}
})
},
function(t, e, n) {
var i = n(104).f,
o = Function.prototype,
r = /^\s*function ([^ (]*)/;
"name" in o || n(103) && i(o, "name", {
configurable: !0,
get: function() {
try {
return ("" + this).match(r)[1]
} catch(t) {
return ""
}
}
})
},
function(t, e, n) {
"use strict";
var i = n(524),
o = n(271);
t.exports = n(345)("Map",
function(t) {
return function() {
return t(this, arguments.length > 0 ? arguments[0] : void 0)
}
},
{
get: function(t) {
var e = i.getEntry(o(this, "Map"), t);
return e && e.v
},
set: function(t, e) {
return i.def(o(this, "Map"), 0 === t ? 0 : t, e)
}
},
i, !0)
},
function(t, e, n) {
var i = n(11),
o = n(532),
r = Math.sqrt,
a = Math.acosh;
i(i.S + i.F * !(a && 710 == Math.floor(a(Number.MAX_VALUE)) && a(1 / 0) == 1 / 0), "Math", {
acosh: function(t) {
return (t = +t) < 1 ? NaN: t > 94906265.62425156 ? Math.log(t) + Math.LN2: o(t - 1 + r(t - 1) * r(t + 1))
}
})
},
function(t, e, n) {
function i(t) {
return isFinite(t = +t) && 0 != t ? t < 0 ? -i( - t) : Math.log(t + Math.sqrt(t * t + 1)) : t
}
var o = n(11),
r = Math.asinh;
o(o.S + o.F * !(r && 1 / r(0) > 0), "Math", {
asinh: i
})
},
function(t, e, n) {
var i = n(11),
o = Math.atanh;
i(i.S + i.F * !(o && 1 / o( - 0) < 0), "Math", {
atanh: function(t) {
return 0 == (t = +t) ? t: Math.log((1 + t) / (1 - t)) / 2
}
})
},
function(t, e, n) {
var i = n(11),
o = n(432);
i(i.S, "Math", {
cbrt: function(t) {
return o(t = +t) * Math.pow(Math.abs(t), 1 / 3)
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Math", {
clz32: function(t) {
return (t >>>= 0) ? 31 - Math.floor(Math.log(t + .5) * Math.LOG2E) : 32
}
})
},
function(t, e, n) {
var i = n(11),
o = Math.exp;
i(i.S, "Math", {
cosh: function(t) {
return (o(t = +t) + o( - t)) / 2
}
})
},
function(t, e, n) {
var i = n(11),
o = n(431);
i(i.S + i.F * (o != Math.expm1), "Math", {
expm1: o
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Math", {
fround: n(831)
})
},
function(t, e, n) {
var i = n(11),
o = Math.abs;
i(i.S, "Math", {
hypot: function(t, e) {
for (var n, i, r = 0,
a = 0,
s = arguments.length,
l = 0; a < s;) n = o(arguments[a++]),
l < n ? (i = l / n, r = r * i * i + 1, l = n) : n > 0 ? (i = n / l, r += i * i) : r += n;
return l === 1 / 0 ? 1 / 0 : l * Math.sqrt(r)
}
})
},
function(t, e, n) {
var i = n(11),
o = Math.imul;
i(i.S + i.F * n(61)(function() {
return - 5 != o(4294967295, 5) || 2 != o.length
}), "Math", {
imul: function(t, e) {
var n = +t,
i = +e,
o = 65535 & n,
r = 65535 & i;
return 0 | o * r + ((65535 & n >>> 16) * r + o * (65535 & i >>> 16) << 16 >>> 0)
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Math", {
log10: function(t) {
return Math.log(t) * Math.LOG10E
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Math", {
log1p: n(532)
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Math", {
log2: function(t) {
return Math.log(t) / Math.LN2
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Math", {
sign: n(432)
})
},
function(t, e, n) {
var i = n(11),
o = n(431),
r = Math.exp;
i(i.S + i.F * n(61)(function() {
return - 2e-17 != !Math.sinh( - 2e-17)
}), "Math", {
sinh: function(t) {
return Math.abs(t = +t) < 1 ? (o(t) - o( - t)) / 2 : (r(t - 1) - r( - t - 1)) * (Math.E / 2)
}
})
},
function(t, e, n) {
var i = n(11),
o = n(431),
r = Math.exp;
i(i.S, "Math", {
tanh: function(t) {
var e = o(t = +t),
n = o( - t);
return e == 1 / 0 ? 1 : n == 1 / 0 ? -1 : (e - n) / (r(t) + r( - t))
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Math", {
trunc: function(t) {
return (t > 0 ? Math.floor: Math.ceil)(t)
}
})
},
function(t, e, n) {
"use strict";
var i = n(62),
o = n(214),
r = n(244),
a = n(427),
s = n(254),
l = n(61),
u = n(265).f,
c = n(232).f,
f = n(104).f,
d = n(289).trim,
h = i.Number,
v = h,
p = h.prototype,
_ = "Number" == r(n(264)(p)),
m = "trim" in String.prototype,
g = function(t) {
var e = s(t, !1);
if ("string" == typeof e && e.length > 2) {
e = m ? e.trim() : d(e, 3);
var n, i, o, r = e.charCodeAt(0);
if (43 === r || 45 === r) {
if (88 === (n = e.charCodeAt(2)) || 120 === n) return NaN
} else if (48 === r) {
switch (e.charCodeAt(1)) {
case 66:
case 98:
i = 2,
o = 49;
break;
case 79:
case 111:
i = 8,
o = 55;
break;
default:
return + e
}
for (var a, l = e.slice(2), u = 0, c = l.length; u < c; u++) if ((a = l.charCodeAt(u)) < 48 || a > o) return NaN;
return parseInt(l, i)
}
}
return + e
};
if (!h(" 0o1") || !h("0b1") || h("+0x1")) {
h = function(t) {
var e = arguments.length < 1 ? 0 : t,
n = this;
return n instanceof h && (_ ? l(function() {
p.valueOf.call(n)
}) : "Number" != r(n)) ? a(new v(g(e)), n, h) : g(e)
};
for (var y, x = n(103) ? u(v) : "MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","), b = 0; x.length > b; b++) o(v, y = x[b]) && !o(h, y) && f(h, y, c(v, y));
h.prototype = p,
p.constructor = h,
n(206)(i, "Number", h)
}
},
function(t, e, n) {
var i = n(11);
i(i.S, "Number", {
EPSILON: Math.pow(2, -52)
})
},
function(t, e, n) {
var i = n(11),
o = n(62).isFinite;
i(i.S, "Number", {
isFinite: function(t) {
return "number" == typeof t && o(t)
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Number", {
isInteger: n(528)
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Number", {
isNaN: function(t) {
return t != t
}
})
},
function(t, e, n) {
var i = n(11),
o = n(528),
r = Math.abs;
i(i.S, "Number", {
isSafeInteger: function(t) {
return o(t) && r(t) <= 9007199254740991
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Number", {
MAX_SAFE_INTEGER: 9007199254740991
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Number", {
MIN_SAFE_INTEGER: -9007199254740991
})
},
function(t, e, n) {
var i = n(11),
o = n(540);
i(i.S + i.F * (Number.parseFloat != o), "Number", {
parseFloat: o
})
},
function(t, e, n) {
var i = n(11),
o = n(541);
i(i.S + i.F * (Number.parseInt != o), "Number", {
parseInt: o
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(234),
r = n(519),
a = n(438),
s = 1..toFixed,
l = Math.floor,
u = [0, 0, 0, 0, 0, 0],
c = "Number.toFixed: incorrect invocation!",
f = function(t, e) {
for (var n = -1,
i = e; ++n < 6;) i += t * u[n],
u[n] = i % 1e7,
i = l(i / 1e7)
},
d = function(t) {
for (var e = 6,
n = 0; --e >= 0;) n += u[e],
u[e] = l(n / t),
n = n % t * 1e7
},
h = function() {
for (var t = 6,
e = ""; --t >= 0;) if ("" !== e || 0 === t || 0 !== u[t]) {
var n = String(u[t]);
e = "" === e ? n: e + a.call("0", 7 - n.length) + n
}
return e
},
v = function(t, e, n) {
return 0 === e ? n: e % 2 == 1 ? v(t, e - 1, n * t) : v(t * t, e / 2, n)
},
p = function(t) {
for (var e = 0,
n = t; n >= 4096;) e += 12,
n /= 4096;
for (; n >= 2;) e += 1,
n /= 2;
return e
};
i(i.P + i.F * ( !! s && ("0.000" !== 8e-5.toFixed(3) || "1" !== .9.toFixed(0) || "1.25" !== 1.255.toFixed(2) || "1000000000000000128" !== (0xde0b6b3a7640080).toFixed(0)) || !n(61)(function() {
s.call({})
})), "Number", {
toFixed: function(t) {
var e, n, i, s, l = r(this, c),
u = o(t),
_ = "",
m = "0";
if (u < 0 || u > 20) throw RangeError(c);
if (l != l) return "NaN";
if (l <= -1e21 || l >= 1e21) return String(l);
if (l < 0 && (_ = "-", l = -l), l > 1e-21) if (e = p(l * v(2, 69, 1)) - 69, n = e < 0 ? l * v(2, -e, 1) : l / v(2, e, 1), n *= 4503599627370496, (e = 52 - e) > 0) {
for (f(0, n), i = u; i >= 7;) f(1e7, 0),
i -= 7;
for (f(v(10, i, 1), 0), i = e - 1; i >= 23;) d(1 << 23),
i -= 23;
d(1 << i),
f(1, 1),
d(2),
m = h()
} else f(0, n),
f(1 << -e, 0),
m = h() + a.call("0", u);
return u > 0 ? (s = m.length, m = _ + (s <= u ? "0." + a.call("0", u - s) + m: m.slice(0, s - u) + "." + m.slice(s - u))) : m = _ + m,
m
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(61),
r = n(519),
a = 1..toPrecision;
i(i.P + i.F * (o(function() {
return "1" !== a.call(1, void 0)
}) || !o(function() {
a.call({})
})), "Number", {
toPrecision: function(t) {
var e = r(this, "Number#toPrecision: incorrect invocation!");
return void 0 === t ? a.call(e) : a.call(e, t)
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S + i.F, "Object", {
assign: n(534)
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Object", {
create: n(264)
})
},
function(t, e, n) {
var i = n(11);
i(i.S + i.F * !n(103), "Object", {
defineProperties: n(535)
})
},
function(t, e, n) {
var i = n(11);
i(i.S + i.F * !n(103), "Object", {
defineProperty: n(104).f
})
},
function(t, e, n) {
var i = n(63),
o = n(253).onFreeze;
n(233)("freeze",
function(t) {
return function(e) {
return t && i(e) ? t(o(e)) : e
}
})
},
function(t, e, n) {
var i = n(216),
o = n(232).f;
n(233)("getOwnPropertyDescriptor",
function() {
return function(t, e) {
return o(i(t), e)
}
})
},
function(t, e, n) {
n(233)("getOwnPropertyNames",
function() {
return n(536).f
})
},
function(t, e, n) {
var i = n(136),
o = n(266);
n(233)("getPrototypeOf",
function() {
return function(t) {
return o(i(t))
}
})
},
function(t, e, n) {
var i = n(63);
n(233)("isExtensible",
function(t) {
return function(e) {
return !! i(e) && (!t || t(e))
}
})
},
function(t, e, n) {
var i = n(63);
n(233)("isFrozen",
function(t) {
return function(e) {
return ! i(e) || !!t && t(e)
}
})
},
function(t, e, n) {
var i = n(63);
n(233)("isSealed",
function(t) {
return function(e) {
return ! i(e) || !!t && t(e)
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Object", {
is: n(543)
})
},
function(t, e, n) {
var i = n(136),
o = n(267);
n(233)("keys",
function() {
return function(t) {
return o(i(t))
}
})
},
function(t, e, n) {
var i = n(63),
o = n(253).onFreeze;
n(233)("preventExtensions",
function(t) {
return function(e) {
return t && i(e) ? t(o(e)) : e
}
})
},
function(t, e, n) {
var i = n(63),
o = n(253).onFreeze;
n(233)("seal",
function(t) {
return function(e) {
return t && i(e) ? t(o(e)) : e
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Object", {
setPrototypeOf: n(434).set
})
},
function(t, e, n) {
"use strict";
var i = n(320),
o = {};
o[n(78)("toStringTag")] = "z",
o + "" != "[object z]" && n(206)(Object.prototype, "toString",
function() {
return "[object " + i(this) + "]"
},
!0)
},
function(t, e, n) {
var i = n(11),
o = n(540);
i(i.G + i.F * (parseFloat != o), {
parseFloat: o
})
},
function(t, e, n) {
var i = n(11),
o = n(541);
i(i.G + i.F * (parseInt != o), {
parseInt: o
})
},
function(t, e, n) {
var i = n(11),
o = n(229),
r = n(60),
a = (n(62).Reflect || {}).apply,
s = Function.apply;
i(i.S + i.F * !n(61)(function() {
a(function() {})
}), "Reflect", {
apply: function(t, e, n) {
var i = o(t),
l = r(n);
return a ? a(i, e, l) : s.call(i, e, l)
}
})
},
function(t, e, n) {
var i = n(11),
o = n(264),
r = n(229),
a = n(60),
s = n(63),
l = n(61),
u = n(523),
c = (n(62).Reflect || {}).construct,
f = l(function() {
function t() {}
return ! (c(function() {},
[], t) instanceof t)
}),
d = !l(function() {
c(function() {})
});
i(i.S + i.F * (f || d), "Reflect", {
construct: function(t, e) {
r(t),
a(e);
var n = arguments.length < 3 ? t: r(arguments[2]);
if (d && !f) return c(t, e, n);
if (t == n) {
switch (e.length) {
case 0:
return new t;
case 1:
return new t(e[0]);
case 2:
return new t(e[0], e[1]);
case 3:
return new t(e[0], e[1], e[2]);
case 4:
return new t(e[0], e[1], e[2], e[3])
}
var i = [null];
return i.push.apply(i, e),
new(u.apply(t, i))
}
var l = n.prototype,
h = o(s(l) ? l: Object.prototype),
v = Function.apply.call(t, h, e);
return s(v) ? v: h
}
})
},
function(t, e, n) {
var i = n(104),
o = n(11),
r = n(60),
a = n(254);
o(o.S + o.F * n(61)(function() {
Reflect.defineProperty(i.f({},
1, {
value: 1
}), 1, {
value: 2
})
}), "Reflect", {
defineProperty: function(t, e, n) {
r(t),
e = a(e, !0),
r(n);
try {
return i.f(t, e, n),
!0
} catch(t) {
return ! 1
}
}
})
},
function(t, e, n) {
var i = n(11),
o = n(232).f,
r = n(60);
i(i.S, "Reflect", {
deleteProperty: function(t, e) {
var n = o(r(t), e);
return ! (n && !n.configurable) && delete t[e]
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(60),
r = function(t) {
this._t = o(t),
this._i = 0;
var e, n = this._k = [];
for (e in t) n.push(e)
};
n(530)(r, "Object",
function() {
var t, e = this,
n = e._k;
do {
if (e._i >= n.length) return {
value: void 0,
done: !0
}
} while (!(( t = n [ e . _i ++]) in e._t));
return {
value: t,
done: !1
}
}),
i(i.S, "Reflect", {
enumerate: function(t) {
return new r(t)
}
})
},
function(t, e, n) {
var i = n(232),
o = n(11),
r = n(60);
o(o.S, "Reflect", {
getOwnPropertyDescriptor: function(t, e) {
return i.f(r(t), e)
}
})
},
function(t, e, n) {
var i = n(11),
o = n(266),
r = n(60);
i(i.S, "Reflect", {
getPrototypeOf: function(t) {
return o(r(t))
}
})
},
function(t, e, n) {
function i(t, e) {
var n, s, c = arguments.length < 3 ? t: arguments[2];
return u(t) === c ? t[e] : (n = o.f(t, e)) ? a(n, "value") ? n.value: void 0 !== n.get ? n.get.call(c) : void 0 : l(s = r(t)) ? i(s, e, c) : void 0
}
var o = n(232),
r = n(266),
a = n(214),
s = n(11),
l = n(63),
u = n(60);
s(s.S, "Reflect", {
get: i
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Reflect", {
has: function(t, e) {
return e in t
}
})
},
function(t, e, n) {
var i = n(11),
o = n(60),
r = Object.isExtensible;
i(i.S, "Reflect", {
isExtensible: function(t) {
return o(t),
!r || r(t)
}
})
},
function(t, e, n) {
var i = n(11);
i(i.S, "Reflect", {
ownKeys: n(539)
})
},
function(t, e, n) {
var i = n(11),
o = n(60),
r = Object.preventExtensions;
i(i.S, "Reflect", {
preventExtensions: function(t) {
o(t);
try {
return r && r(t),
!0
} catch(t) {
return ! 1
}
}
})
},
function(t, e, n) {
var i = n(11),
o = n(434);
o && i(i.S, "Reflect", {
setPrototypeOf: function(t, e) {
o.check(t, e);
try {
return o.set(t, e),
!0
} catch(t) {
return ! 1
}
}
})
},
function(t, e, n) {
function i(t, e, n) {
var l, d, h = arguments.length < 4 ? t: arguments[3],
v = r.f(c(t), e);
if (!v) {
if (f(d = a(t))) return i(d, e, n, h);
v = u(0)
}
if (s(v, "value")) {
if (!1 === v.writable || !f(h)) return ! 1;
if (l = r.f(h, e)) {
if (l.get || l.set || !1 === l.writable) return ! 1;
l.value = n,
o.f(h, e, l)
} else o.f(h, e, u(0, n));
return ! 0
}
return void 0 !== v.set && (v.set.call(h, n), !0)
}
var o = n(104),
r = n(232),
a = n(266),
s = n(214),
l = n(11),
u = n(268),
c = n(60),
f = n(63);
l(l.S, "Reflect", {
set: i
})
},
function(t, e, n) {
var i = n(62),
o = n(427),
r = n(104).f,
a = n(265).f,
s = n(429),
l = n(347),
u = i.RegExp,
c = u,
f = u.prototype,
d = /a/g,
h = /a/g,
v = new u(d) !== d;
if (n(103) && (!v || n(61)(function() {
return h[n(78)("match")] = !1,
u(d) != d || u(h) == h || "/a/i" != u(d, "i")
}))) {
u = function(t, e) {
var n = this instanceof u,
i = s(t),
r = void 0 === e;
return ! n && i && t.constructor === u && r ? t: o(v ? new c(i && !r ? t.source: t, e) : c((i = t instanceof u) ? t.source: t, i && r ? l.call(t) : e), n ? this: f, u)
};
for (var p = a(c), _ = 0; p.length > _;) !
function(t) {
t in u || r(u, t, {
configurable: !0,
get: function() {
return c[t]
},
set: function(e) {
c[t] = e
}
})
} (p[_++]);
f.constructor = u,
u.prototype = f,
n(206)(i, "RegExp", u)
}
n(287)("RegExp")
},
function(t, e, n) {
"use strict";
var i = n(60),
o = n(88),
r = n(420),
a = n(352);
n(346)("match", 1,
function(t, e, n, s) {
return [function(n) {
var i = t(this),
o = void 0 == n ? void 0 : n[e];
return void 0 !== o ? o.call(n, i) : new RegExp(n)[e](String(i))
},
function(t) {
var e = s(n, t, this);
if (e.done) return e.value;
var l = i(t),
u = String(this);
if (!l.global) return a(l, u);
var c = l.unicode;
l.lastIndex = 0;
for (var f, d = [], h = 0; null !== (f = a(l, u));) {
var v = String(f[0]);
d[h] = v,
"" === v && (l.lastIndex = r(u, o(l.lastIndex), c)),
h++
}
return 0 === h ? null: d
}]
})
},
function(t, e, n) {
"use strict";
var i = n(60),
o = n(136),
r = n(88),
a = n(234),
s = n(420),
l = n(352),
u = Math.max,
c = Math.min,
f = Math.floor,
d = /\$([$&`']|\d\d?|<[^>]*>)/g,
h = /\$([$&`']|\d\d?)/g,
v = function(t) {
return void 0 === t ? t: String(t)
};
n(346)("replace", 2,
function(t, e, n, p) {
function _(t, e, i, r, a, s) {
var l = i + t.length,
u = r.length,
c = h;
return void 0 !== a && (a = o(a), c = d),
n.call(s, c,
function(n, o) {
var s;
switch (o.charAt(0)) {
case "$":
return "$";
case "&":
return t;
case "`":
return e.slice(0, i);
case "'":
return e.slice(l);
case "<":
s = a[o.slice(1, -1)];
break;
default:
var c = +o;
if (0 === c) return n;
if (c > u) {
var d = f(c / 10);
return 0 === d ? n: d <= u ? void 0 === r[d - 1] ? o.charAt(1) : r[d - 1] + o.charAt(1) : n
}
s = r[c - 1]
}
return void 0 === s ? "": s
})
}
return [function(i, o) {
var r = t(this),
a = void 0 == i ? void 0 : i[e];
return void 0 !== a ? a.call(i, r, o) : n.call(String(r), i, o)
},
function(t, e) {
var o = p(n, t, this, e);
if (o.done) return o.value;
var f = i(t),
d = String(this),
h = "function" == typeof e;
h || (e = String(e));
var m = f.global;
if (m) {
var g = f.unicode;
f.lastIndex = 0
}
for (var y = [];;) {
var x = l(f, d);
if (null === x) break;
if (y.push(x), !m) break;
"" === String(x[0]) && (f.lastIndex = s(d, r(f.lastIndex), g))
}
for (var b = "",
S = 0,
w = 0; w < y.length; w++) {
x = y[w];
for (var E = String(x[0]), T = u(c(a(x.index), d.length), 0), A = [], P = 1; P < x.length; P++) A.push(v(x[P]));
var I = x.groups;
if (h) {
var k = [E].concat(A, T, d);
void 0 !== I && k.push(I);
var L = String(e.apply(void 0, k))
} else L = _(E, d, T, A, I, e);
T >= S && (b += d.slice(S, T) + L, S = T + E.length)
}
return b + d.slice(S)
}]
})
},
function(t, e, n) {
"use strict";
var i = n(60),
o = n(543),
r = n(352);
n(346)("search", 1,
function(t, e, n, a) {
return [function(n) {
var i = t(this),
o = void 0 == n ? void 0 : n[e];
return void 0 !== o ? o.call(n, i) : new RegExp(n)[e](String(i))
},
function(t) {
var e = a(n, t, this);
if (e.done) return e.value;
var s = i(t),
l = String(this),
u = s.lastIndex;
o(u, 0) || (s.lastIndex = 0);
var c = r(s, l);
return o(s.lastIndex, u) || (s.lastIndex = u),
null === c ? -1 : c.index
}]
})
},
function(t, e, n) {
"use strict";
var i = n(429),
o = n(60),
r = n(323),
a = n(420),
s = n(88),
l = n(352),
u = n(433),
c = n(61),
f = Math.min,
d = [].push,
h = "length",
v = !c(function() {
RegExp(4294967295, "y")
});
n(346)("split", 2,
function(t, e, n, c) {
var p;
return p = "c" == "abbc".split(/(b)*/)[1] || 4 != "test".split(/(?:)/, -1)[h] || 2 != "ab".split(/(?:ab)*/)[h] || 4 != ".".split(/(.?)(.?)/)[h] || ".".split(/()()/)[h] > 1 || "".split(/.?/)[h] ?
function(t, e) {
var o = String(this);
if (void 0 === t && 0 === e) return [];
if (!i(t)) return n.call(o, t, e);
for (var r, a, s, l = [], c = (t.ignoreCase ? "i": "") + (t.multiline ? "m": "") + (t.unicode ? "u": "") + (t.sticky ? "y": ""), f = 0, v = void 0 === e ? 4294967295 : e >>> 0, p = new RegExp(t.source, c + "g"); (r = u.call(p, o)) && !((a = p.lastIndex) > f && (l.push(o.slice(f, r.index)), r[h] > 1 && r.index < o[h] && d.apply(l, r.slice(1)), s = r[0][h], f = a, l[h] >= v));) p.lastIndex === r.index && p.lastIndex++;
return f === o[h] ? !s && p.test("") || l.push("") : l.push(o.slice(f)),
l[h] > v ? l.slice(0, v) : l
}: "0".split(void 0, 0)[h] ?
function(t, e) {
return void 0 === t && 0 === e ? [] : n.call(this, t, e)
}: n,
[function(n, i) {
var o = t(this),
r = void 0 == n ? void 0 : n[e];
return void 0 !== r ? r.call(n, o, i) : p.call(String(o), n, i)
},
function(t, e) {
var i = c(p, t, this, e, p !== n);
if (i.done) return i.value;
var u = o(t),
d = String(this),
h = r(u, RegExp),
_ = u.unicode,
m = (u.ignoreCase ? "i": "") + (u.multiline ? "m": "") + (u.unicode ? "u": "") + (v ? "y": "g"),
g = new h(v ? u: "^(?:" + u.source + ")", m),
y = void 0 === e ? 4294967295 : e >>> 0;
if (0 === y) return [];
if (0 === d.length) return null === l(g, d) ? [d] : [];
for (var x = 0,
b = 0,
S = []; b < d.length;) {
g.lastIndex = v ? b: 0;
var w, E = l(g, v ? d: d.slice(b));
if (null === E || (w = f(s(g.lastIndex + (v ? 0 : b)), d.length)) === x) b = a(d, b, _);
else {
if (S.push(d.slice(x, b)), S.length === y) return S;
for (var T = 1; T <= E.length - 1; T++) if (S.push(E[T]), S.length === y) return S;
b = x = w
}
}
return S.push(d.slice(x)),
S
}]
})
},
function(t, e, n) {
"use strict";
n(549);
var i = n(60),
o = n(347),
r = n(103),
a = /./.toString,
s = function(t) {
n(206)(RegExp.prototype, "toString", t, !0)
};
n(61)(function() {
return "/a/b" != a.call({
source: "a",
flags: "b"
})
}) ? s(function() {
var t = i(this);
return "/".concat(t.source, "/", "flags" in t ? t.flags: !r && t instanceof RegExp ? o.call(t) : void 0)
}) : "toString" != a.name && s(function() {
return a.call(this)
})
},
function(t, e, n) {
"use strict";
var i = n(524),
o = n(271);
t.exports = n(345)("Set",
function(t) {
return function() {
return t(this, arguments.length > 0 ? arguments[0] : void 0)
}
},
{
add: function(t) {
return i.def(o(this, "Set"), t = 0 === t ? 0 : t, t)
}
},
i)
},
function(t, e, n) {
"use strict";
n(207)("anchor",
function(t) {
return function(e) {
return t(this, "a", "name", e)
}
})
},
function(t, e, n) {
"use strict";
n(207)("big",
function(t) {
return function() {
return t(this, "big", "", "")
}
})
},
function(t, e, n) {
"use strict";
n(207)("blink",
function(t) {
return function() {
return t(this, "blink", "", "")
}
})
},
function(t, e, n) {
"use strict";
n(207)("bold",
function(t) {
return function() {
return t(this, "b", "", "")
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(436)(!1);
i(i.P, "String", {
codePointAt: function(t) {
return o(this, t)
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(88),
r = n(437),
a = "".endsWith;
i(i.P + i.F * n(425)("endsWith"), "String", {
endsWith: function(t) {
var e = r(this, t, "endsWith"),
n = arguments.length > 1 ? arguments[1] : void 0,
i = o(e.length),
s = void 0 === n ? i: Math.min(o(n), i),
l = String(t);
return a ? a.call(e, l, s) : e.slice(s - l.length, s) === l
}
})
},
function(t, e, n) {
"use strict";
n(207)("fixed",
function(t) {
return function() {
return t(this, "tt", "", "")
}
})
},
function(t, e, n) {
"use strict";
n(207)("fontcolor",
function(t) {
return function(e) {
return t(this, "font", "color", e)
}
})
},
function(t, e, n) {
"use strict";
n(207)("fontsize",
function(t) {
return function(e) {
return t(this, "font", "size", e)
}
})
},
function(t, e, n) {
var i = n(11),
o = n(269),
r = String.fromCharCode,
a = String.fromCodePoint;
i(i.S + i.F * ( !! a && 1 != a.length), "String", {
fromCodePoint: function(t) {
for (var e, n = [], i = arguments.length, a = 0; i > a;) {
if (e = +arguments[a++], o(e, 1114111) !== e) throw RangeError(e + " is not a valid code point");
n.push(e < 65536 ? r(e) : r(55296 + ((e -= 65536) >> 10), e % 1024 + 56320))
}
return n.join("")
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(437);
i(i.P + i.F * n(425)("includes"), "String", {
includes: function(t) {
return !! ~o(this, t, "includes").indexOf(t, arguments.length > 1 ? arguments[1] : void 0)
}
})
},
function(t, e, n) {
"use strict";
n(207)("italics",
function(t) {
return function() {
return t(this, "i", "", "")
}
})
},
function(t, e, n) {
"use strict";
var i = n(436)(!0);
n(430)(String, "String",
function(t) {
this._t = String(t),
this._i = 0
},
function() {
var t, e = this._t,
n = this._i;
return n >= e.length ? {
value: void 0,
done: !0
}: (t = i(e, n), this._i += t.length, {
value: t,
done: !1
})
})
},
function(t, e, n) {
"use strict";
n(207)("link",
function(t) {
return function(e) {
return t(this, "a", "href", e)
}
})
},
function(t, e, n) {
var i = n(11),
o = n(216),
r = n(88);
i(i.S, "String", {
raw: function(t) {
for (var e = o(t.raw), n = r(e.length), i = arguments.length, a = [], s = 0; n > s;) a.push(String(e[s++])),
s < i && a.push(String(arguments[s]));
return a.join("")
}
})
},
function(t, e, n) {
var i = n(11);
i(i.P, "String", {
repeat: n(438)
})
},
function(t, e, n) {
"use strict";
n(207)("small",
function(t) {
return function() {
return t(this, "small", "", "")
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(88),
r = n(437),
a = "".startsWith;
i(i.P + i.F * n(425)("startsWith"), "String", {
startsWith: function(t) {
var e = r(this, t, "startsWith"),
n = o(Math.min(arguments.length > 1 ? arguments[1] : void 0, e.length)),
i = String(t);
return a ? a.call(e, i, n) : e.slice(n, n + i.length) === i
}
})
},
function(t, e, n) {
"use strict";
n(207)("strike",
function(t) {
return function() {
return t(this, "strike", "", "")
}
})
},
function(t, e, n) {
"use strict";
n(207)("sub",
function(t) {
return function() {
return t(this, "sub", "", "")
}
})
},
function(t, e, n) {
"use strict";
n(207)("sup",
function(t) {
return function() {
return t(this, "sup", "", "")
}
})
},
function(t, e, n) {
"use strict";
n(289)("trim",
function(t) {
return function() {
return t(this, 3)
}
})
},
function(t, e, n) {
"use strict";
var i = n(62),
o = n(214),
r = n(103),
a = n(11),
s = n(206),
l = n(253).KEY,
u = n(61),
c = n(353),
f = n(288),
d = n(270),
h = n(78),
v = n(442),
p = n(546),
_ = n(828),
m = n(349),
g = n(60),
y = n(63),
x = n(136),
b = n(216),
S = n(254),
w = n(268),
E = n(264),
T = n(536),
A = n(232),
P = n(351),
I = n(104),
k = n(267),
L = A.f,
M = I.f,
C = T.f,
R = i.Symbol,
B = i.JSON,
N = B && B.stringify,
O = h("_hidden"),
D = h("toPrimitive"),
z = {}.propertyIsEnumerable,
F = c("symbol-registry"),
V = c("symbols"),
Y = c("op-symbols"),
U = Object.prototype,
j = "function" == typeof R && !!P.f,
G = i.QObject,
Z = !G || !G.prototype || !G.prototype.findChild,
H = r && u(function() {
return 7 != E(M({},
"a", {
get: function() {
return M(this, "a", {
value: 7
}).a
}
})).a
}) ?
function(t, e, n) {
var i = L(U, e);
i && delete U[e],
M(t, e, n),
i && t !== U && M(U, e, i)
}: M,
W = function(t) {
var e = V[t] = E(R.prototype);
return e._k = t,
e
},
X = j && "symbol" == typeof R.iterator ?
function(t) {
return "symbol" == typeof t
}: function(t) {
return t instanceof R
},
Q = function(t, e, n) {
return t === U && Q(Y, e, n),
g(t),
e = S(e, !0),
g(n),
o(V, e) ? (n.enumerable ? (o(t, O) && t[O][e] && (t[O][e] = !1), n = E(n, {
enumerable: w(0, !1)
})) : (o(t, O) || M(t, O, w(1, {})), t[O][e] = !0), H(t, e, n)) : M(t, e, n)
},
q = function(t, e) {
g(t);
for (var n, i = _(e = b(e)), o = 0, r = i.length; r > o;) Q(t, n = i[o++], e[n]);
return t
},
K = function(t, e) {
return void 0 === e ? E(t) : q(E(t), e)
},
J = function(t) {
var e = z.call(this, t = S(t, !0));
return ! (this === U && o(V, t) && !o(Y, t)) && (!(e || !o(this, t) || !o(V, t) || o(this, O) && this[O][t]) || e)
},
$ = function(t, e) {
if (t = b(t), e = S(e, !0), t !== U || !o(V, e) || o(Y, e)) {
var n = L(t, e);
return ! n || !o(V, e) || o(t, O) && t[O][e] || (n.enumerable = !0),
n
}
},
tt = function(t) {
for (var e, n = C(b(t)), i = [], r = 0; n.length > r;) o(V, e = n[r++]) || e == O || e == l || i.push(e);
return i
},
et = function(t) {
for (var e, n = t === U,
i = C(n ? Y: b(t)), r = [], a = 0; i.length > a;) ! o(V, e = i[a++]) || n && !o(U, e) || r.push(V[e]);
return r
};
j || (R = function() {
if (this instanceof R) throw TypeError("Symbol is not a constructor!");
var t = d(arguments.length > 0 ? arguments[0] : void 0),
e = function(n) {
this === U && e.call(Y, n),
o(this, O) && o(this[O], t) && (this[O][t] = !1),
H(this, t, w(1, n))
};
return r && Z && H(U, t, {
configurable: !0,
set: e
}),
W(t)
},
s(R.prototype, "toString",
function() {
return this._k
}), A.f = $, I.f = Q, n(265).f = T.f = tt, n(322).f = J, P.f = et, r && !n(263) && s(U, "propertyIsEnumerable", J, !0), v.f = function(t) {
return W(h(t))
}),
a(a.G + a.W + a.F * !j, {
Symbol: R
});
for (var nt = "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), it = 0; nt.length > it;) h(nt[it++]);
for (var ot = k(h.store), rt = 0; ot.length > rt;) p(ot[rt++]);
a(a.S + a.F * !j, "Symbol", {
for: function(t) {
return o(F, t += "") ? F[t] : F[t] = R(t)
},
keyFor: function(t) {
if (!X(t)) throw TypeError(t + " is not a symbol!");
for (var e in F) if (F[e] === t) return e
},
useSetter: function() {
Z = !0
},
useSimple: function() {
Z = !1
}
}),
a(a.S + a.F * !j, "Object", {
create: K,
defineProperty: Q,
defineProperties: q,
getOwnPropertyDescriptor: $,
getOwnPropertyNames: tt,
getOwnPropertySymbols: et
});
var at = u(function() {
P.f(1)
});
a(a.S + a.F * at, "Object", {
getOwnPropertySymbols: function(t) {
return P.f(x(t))
}
}),
B && a(a.S + a.F * (!j || u(function() {
var t = R();
return "[null]" != N([t]) || "{}" != N({
a: t
}) || "{}" != N(Object(t))
})), "JSON", {
stringify: function(t) {
for (var e, n, i = [t], o = 1; arguments.length > o;) i.push(arguments[o++]);
if (n = e = i[1], (y(e) || void 0 !== t) && !X(t)) return m(e) || (e = function(t, e) {
if ("function" == typeof n && (e = n.call(this, t, e)), !X(e)) return e
}),
i[1] = e,
N.apply(B, i)
}
}),
R.prototype[D] || n(215)(R.prototype, D, R.prototype.valueOf),
f(R, "Symbol"),
f(Math, "Math", !0),
f(i.JSON, "JSON", !0)
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(354),
r = n(441),
a = n(60),
s = n(269),
l = n(88),
u = n(63),
c = n(62).ArrayBuffer,
f = n(323),
d = r.ArrayBuffer,
h = r.DataView,
v = o.ABV && c.isView,
p = d.prototype.slice,
_ = o.VIEW;
i(i.G + i.W + i.F * (c !== d), {
ArrayBuffer: d
}),
i(i.S + i.F * !o.CONSTR, "ArrayBuffer", {
isView: function(t) {
return v && v(t) || u(t) && _ in t
}
}),
i(i.P + i.U + i.F * n(61)(function() {
return ! new d(2).slice(1, void 0).byteLength
}), "ArrayBuffer", {
slice: function(t, e) {
if (void 0 !== p && void 0 === e) return p.call(a(this), t);
for (var n = a(this).byteLength, i = s(t, n), o = s(void 0 === e ? n: e, n), r = new(f(this, d))(l(o - i)), u = new h(this), c = new h(r), v = 0; i < o;) c.setUint8(v++, u.getUint8(i++));
return r
}
}),
n(287)("ArrayBuffer")
},
function(t, e, n) {
var i = n(11);
i(i.G + i.W + i.F * !n(354).ABV, {
DataView: n(441).DataView
})
},
function(t, e, n) {
n(246)("Float32", 4,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
})
},
function(t, e, n) {
n(246)("Float64", 8,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
})
},
function(t, e, n) {
n(246)("Int16", 2,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
})
},
function(t, e, n) {
n(246)("Int32", 4,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
})
},
function(t, e, n) {
n(246)("Int8", 1,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
})
},
function(t, e, n) {
n(246)("Uint16", 2,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
})
},
function(t, e, n) {
n(246)("Uint32", 4,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
})
},
function(t, e, n) {
n(246)("Uint8", 1,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
})
},
function(t, e, n) {
n(246)("Uint8", 1,
function(t) {
return function(e, n, i) {
return t(this, e, n, i)
}
},
!0)
},
function(t, e, n) {
"use strict";
var i, o = n(62),
r = n(230)(0),
a = n(206),
s = n(253),
l = n(534),
u = n(525),
c = n(63),
f = n(271),
d = n(271),
h = !o.ActiveXObject && "ActiveXObject" in o,
v = s.getWeak,
p = Object.isExtensible,
_ = u.ufstore,
m = function(t) {
return function() {
return t(this, arguments.length > 0 ? arguments[0] : void 0)
}
},
g = {
get: function(t) {
if (c(t)) {
var e = v(t);
return ! 0 === e ? _(f(this, "WeakMap")).get(t) : e ? e[this._i] : void 0
}
},
set: function(t, e) {
return u.def(f(this, "WeakMap"), t, e)
}
},
y = t.exports = n(345)("WeakMap", m, g, u, !0, !0);
d && h && (i = u.getConstructor(m, "WeakMap"), l(i.prototype, g), s.NEED = !0, r(["delete", "has", "get", "set"],
function(t) {
var e = y.prototype,
n = e[t];
a(e, t,
function(e, o) {
if (c(e) && !p(e)) {
this._f || (this._f = new i);
var r = this._f[t](e, o);
return "set" == t ? this: r
}
return n.call(this, e, o)
})
}))
},
function(t, e, n) {
"use strict";
var i = n(525),
o = n(271);
n(345)("WeakSet",
function(t) {
return function() {
return t(this, arguments.length > 0 ? arguments[0] : void 0)
}
},
{
add: function(t) {
return i.def(o(this, "WeakSet"), t, !0)
}
},
i, !1, !0)
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(829),
r = n(136),
a = n(88),
s = n(229),
l = n(522);
i(i.P, "Array", {
flatMap: function(t) {
var e, n, i = r(this);
return s(t),
e = a(i.length),
n = l(i, 0),
o(n, i, i, e, 0, 1, t, arguments[1]),
n
}
}),
n(262)("flatMap")
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(344)(!0);
i(i.P, "Array", {
includes: function(t) {
return o(this, t, arguments.length > 1 ? arguments[1] : void 0)
}
}),
n(262)("includes")
},
function(t, e, n) {
var i = n(11),
o = n(538)(!0);
i(i.S, "Object", {
entries: function(t) {
return o(t)
}
})
},
function(t, e, n) {
var i = n(11),
o = n(539),
r = n(216),
a = n(232),
s = n(422);
i(i.S, "Object", {
getOwnPropertyDescriptors: function(t) {
for (var e, n, i = r(t), l = a.f, u = o(i), c = {},
f = 0; u.length > f;) void 0 !== (n = l(i, e = u[f++])) && s(c, e, n);
return c
}
})
},
function(t, e, n) {
var i = n(11),
o = n(538)(!1);
i(i.S, "Object", {
values: function(t) {
return o(t)
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(102),
r = n(62),
a = n(323),
s = n(542);
i(i.P + i.R, "Promise", {
finally: function(t) {
var e = a(this, o.Promise || r.Promise),
n = "function" == typeof t;
return this.then(n ?
function(n) {
return s(e, t()).then(function() {
return n
})
}: t, n ?
function(n) {
return s(e, t()).then(function() {
throw n
})
}: t)
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(544),
r = n(355),
a = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(r);
i(i.P + i.F * a, "String", {
padEnd: function(t) {
return o(this, t, arguments.length > 1 ? arguments[1] : void 0, !1)
}
})
},
function(t, e, n) {
"use strict";
var i = n(11),
o = n(544),
r = n(355),
a = /Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(r);
i(i.P + i.F * a, "String", {
padStart: function(t) {
return o(this, t, arguments.length > 1 ? arguments[1] : void 0, !0)
}
})
},
function(t, e, n) {
"use strict";
n(289)("trimLeft",
function(t) {
return function() {
return t(this, 1)
}
},
"trimStart")
},
function(t, e, n) {
"use strict";
n(289)("trimRight",
function(t) {
return function() {
return t(this, 2)
}
},
"trimEnd")
},
function(t, e, n) {
n(546)("asyncIterator")
},
function(t, e, n) {
for (var i = n(444), o = n(267), r = n(206), a = n(62), s = n(215), l = n(285), u = n(78), c = u("iterator"), f = u("toStringTag"), d = l.Array, h = {
CSSRuleList: !0,
CSSStyleDeclaration: !1,
CSSValueList: !1,
ClientRectList: !1,
DOMRectList: !1,
DOMStringList: !1,
DOMTokenList: !0,
DataTransferItemList: !1,
FileList: !1,
HTMLAllCollection: !1,
HTMLCollection: !1,
HTMLFormElement: !1,
HTMLSelectElement: !1,
MediaList: !0,
MimeTypeArray: !1,
NamedNodeMap: !1,
NodeList: !0,
PaintRequestList: !1,
Plugin: !1,
PluginArray: !1,
SVGLengthList: !1,
SVGNumberList: !1,
SVGPathSegList: !1,
SVGPointList: !1,
SVGStringList: !1,
SVGTransformList: !1,
SourceBufferList: !1,
StyleSheetList: !0,
TextTrackCueList: !1,
TextTrackList: !1,
TouchList: !1
},
v = o(h), p = 0; p < v.length; p++) {
var _, m = v[p],
g = h[m],
y = a[m],
x = y && y.prototype;
if (x && (x[c] || s(x, c, d), x[f] || s(x, f, m), l[m] = d, g)) for (_ in i) x[_] || r(x, _, i[_], !0)
}
},
function(t, e, n) {
var i = n(11),
o = n(440);
i(i.G + i.B, {
setImmediate: o.set,
clearImmediate: o.clear
})
},
function(t, e, n) {
var i = n(62),
o = n(11),
r = n(355),
a = [].slice,
s = /MSIE .\./.test(r),
l = function(t) {
return function(e, n) {
var i = arguments.length > 2,
o = !!i && a.call(arguments, 2);
return t(i ?
function() { ("function" == typeof e ? e: Function(e)).apply(this, o)
}: e, n)
}
};
o(o.G + o.B + o.F * s, {
setTimeout: l(i.setTimeout),
setInterval: l(i.setInterval)
})
},
function(t, e, n) {
n(981),
n(980),
n(979),
t.exports = n(102)
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(290), n(291), n(272), n(111))
} (0,
function(t) {
return function() {
var e = t,
n = e.lib,
i = n.BlockCipher,
o = e.algo,
r = [],
a = [],
s = [],
l = [],
u = [],
c = [],
f = [],
d = [],
h = [],
v = []; !
function() {
for (var t = [], e = 0; e < 256; e++) t[e] = e < 128 ? e << 1 : e << 1 ^ 283;
for (var n = 0,
i = 0,
e = 0; e < 256; e++) {
var o = i ^ i << 1 ^ i << 2 ^ i << 3 ^ i << 4;
o = o >>> 8 ^ 255 & o ^ 99,
r[n] = o,
a[o] = n;
var p = t[n],
_ = t[p],
m = t[_],
g = 257 * t[o] ^ 16843008 * o;
s[n] = g << 24 | g >>> 8,
l[n] = g << 16 | g >>> 16,
u[n] = g << 8 | g >>> 24,
c[n] = g;
var g = 16843009 * m ^ 65537 * _ ^ 257 * p ^ 16843008 * n;
f[o] = g << 24 | g >>> 8,
d[o] = g << 16 | g >>> 16,
h[o] = g << 8 | g >>> 24,
v[o] = g,
n ? (n = p ^ t[t[t[m ^ p]]], i ^= t[t[i]]) : n = i = 1
}
} ();
var p = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54],
_ = o.AES = i.extend({
_doReset: function() {
if (!this._nRounds || this._keyPriorReset !== this._key) {
for (var t = this._keyPriorReset = this._key,
e = t.words,
n = t.sigBytes / 4,
i = this._nRounds = n + 6,
o = 4 * (i + 1), a = this._keySchedule = [], s = 0; s < o; s++) if (s < n) a[s] = e[s];
else {
var l = a[s - 1];
s % n ? n > 6 && s % n == 4 && (l = r[l >>> 24] << 24 | r[l >>> 16 & 255] << 16 | r[l >>> 8 & 255] << 8 | r[255 & l]) : (l = l << 8 | l >>> 24, l = r[l >>> 24] << 24 | r[l >>> 16 & 255] << 16 | r[l >>> 8 & 255] << 8 | r[255 & l], l ^= p[s / n | 0] << 24),
a[s] = a[s - n] ^ l
}
for (var u = this._invKeySchedule = [], c = 0; c < o; c++) {
var s = o - c;
if (c % 4) var l = a[s];
else var l = a[s - 4];
u[c] = c < 4 || s <= 4 ? l: f[r[l >>> 24]] ^ d[r[l >>> 16 & 255]] ^ h[r[l >>> 8 & 255]] ^ v[r[255 & l]]
}
}
},
encryptBlock: function(t, e) {
this._doCryptBlock(t, e, this._keySchedule, s, l, u, c, r)
},
decryptBlock: function(t, e) {
var n = t[e + 1];
t[e + 1] = t[e + 3],
t[e + 3] = n,
this._doCryptBlock(t, e, this._invKeySchedule, f, d, h, v, a);
var n = t[e + 1];
t[e + 1] = t[e + 3],
t[e + 3] = n
},
_doCryptBlock: function(t, e, n, i, o, r, a, s) {
for (var l = this._nRounds,
u = t[e] ^ n[0], c = t[e + 1] ^ n[1], f = t[e + 2] ^ n[2], d = t[e + 3] ^ n[3], h = 4, v = 1; v < l; v++) {
var p = i[u >>> 24] ^ o[c >>> 16 & 255] ^ r[f >>> 8 & 255] ^ a[255 & d] ^ n[h++],
_ = i[c >>> 24] ^ o[f >>> 16 & 255] ^ r[d >>> 8 & 255] ^ a[255 & u] ^ n[h++],
m = i[f >>> 24] ^ o[d >>> 16 & 255] ^ r[u >>> 8 & 255] ^ a[255 & c] ^ n[h++],
g = i[d >>> 24] ^ o[u >>> 16 & 255] ^ r[c >>> 8 & 255] ^ a[255 & f] ^ n[h++];
u = p,
c = _,
f = m,
d = g
}
var p = (s[u >>> 24] << 24 | s[c >>> 16 & 255] << 16 | s[f >>> 8 & 255] << 8 | s[255 & d]) ^ n[h++],
_ = (s[c >>> 24] << 24 | s[f >>> 16 & 255] << 16 | s[d >>> 8 & 255] << 8 | s[255 & u]) ^ n[h++],
m = (s[f >>> 24] << 24 | s[d >>> 16 & 255] << 16 | s[u >>> 8 & 255] << 8 | s[255 & c]) ^ n[h++],
g = (s[d >>> 24] << 24 | s[u >>> 16 & 255] << 16 | s[c >>> 8 & 255] << 8 | s[255 & f]) ^ n[h++];
t[e] = p,
t[e + 1] = _,
t[e + 2] = m,
t[e + 3] = g
},
keySize: 8
});
e.AES = i._createHelper(_)
} (),
t.AES
})
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) {
return function() {
function e(t) {
return t << 8 & 4278255360 | t >>> 8 & 16711935
}
var n = t,
i = n.lib,
o = i.WordArray,
r = n.enc;
r.Utf16 = r.Utf16BE = {
stringify: function(t) {
for (var e = t.words,
n = t.sigBytes,
i = [], o = 0; o < n; o += 2) {
var r = e[o >>> 2] >>> 16 - o % 4 * 8 & 65535;
i.push(String.fromCharCode(r))
}
return i.join("")
},
parse: function(t) {
for (var e = t.length,
n = [], i = 0; i < e; i++) n[i >>> 1] |= t.charCodeAt(i) << 16 - i % 2 * 16;
return o.create(n, 2 * e)
}
};
r.Utf16LE = {
stringify: function(t) {
for (var n = t.words,
i = t.sigBytes,
o = [], r = 0; r < i; r += 2) {
var a = e(n[r >>> 2] >>> 16 - r % 4 * 8 & 65535);
o.push(String.fromCharCode(a))
}
return o.join("")
},
parse: function(t) {
for (var n = t.length,
i = [], r = 0; r < n; r++) i[r >>> 1] |= e(t.charCodeAt(r) << 16 - r % 2 * 16);
return o.create(i, 2 * n)
}
}
} (),
t.enc.Utf16
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return function(e) {
var n = t,
i = n.lib,
o = i.CipherParams,
r = n.enc,
a = r.Hex,
s = n.format;
s.Hex = {
stringify: function(t) {
return t.ciphertext.toString(a)
},
parse: function(t) {
var e = a.parse(t);
return o.create({
ciphertext: e
})
}
}
} (),
t.format.Hex
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(356), n(987), n(984), n(290), n(291), n(446), n(550), n(1003), n(551), n(1005), n(1004), n(1002), n(445), n(998), n(272), n(111), n(988), n(990), n(989), n(992), n(991), n(993), n(994), n(995), n(997), n(996), n(985), n(983), n(1006), n(1001), n(1e3), n(999))
} (0,
function(t) {
return t
})
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) {
return function() {
if ("function" == typeof ArrayBuffer) {
var e = t,
n = e.lib,
i = n.WordArray,
o = i.init; (i.init = function(t) {
if (t instanceof ArrayBuffer && (t = new Uint8Array(t)), (t instanceof Int8Array || "undefined" != typeof Uint8ClampedArray && t instanceof Uint8ClampedArray || t instanceof Int16Array || t instanceof Uint16Array || t instanceof Int32Array || t instanceof Uint32Array || t instanceof Float32Array || t instanceof Float64Array) && (t = new Uint8Array(t.buffer, t.byteOffset, t.byteLength)), t instanceof Uint8Array) {
for (var e = t.byteLength,
n = [], i = 0; i < e; i++) n[i >>> 2] |= t[i] << 24 - i % 4 * 8;
o.call(this, n, e)
} else o.apply(this, arguments)
}).prototype = i
}
} (),
t.lib.WordArray
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.mode.CFB = function() {
function e(t, e, n, i) {
var o = this._iv;
if (o) {
var r = o.slice(0);
this._iv = void 0
} else var r = this._prevBlock;
i.encryptBlock(r, 0);
for (var a = 0; a < n; a++) t[e + a] ^= r[a]
}
var n = t.lib.BlockCipherMode.extend();
return n.Encryptor = n.extend({
processBlock: function(t, n) {
var i = this._cipher,
o = i.blockSize;
e.call(this, t, n, o, i),
this._prevBlock = t.slice(n, n + o)
}
}),
n.Decryptor = n.extend({
processBlock: function(t, n) {
var i = this._cipher,
o = i.blockSize,
r = t.slice(n, n + o);
e.call(this, t, n, o, i),
this._prevBlock = r
}
}),
n
} (),
t.mode.CFB
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
/** @preserve
* Counter block mode compatible with Dr Brian Gladman fileenc.c
* derived from CryptoJS.mode.CTR
* Jan Hruby jhruby.web@gmail.com
*/
return t.mode.CTRGladman = function() {
function e(t) {
if (255 == (t >> 24 & 255)) {
var e = t >> 16 & 255,
n = t >> 8 & 255,
i = 255 & t;
255 === e ? (e = 0, 255 === n ? (n = 0, 255 === i ? i = 0 : ++i) : ++n) : ++e,
t = 0,
t += e << 16,
t += n << 8,
t += i
} else t += 1 << 24;
return t
}
function n(t) {
return 0 === (t[0] = e(t[0])) && (t[1] = e(t[1])),
t
}
var i = t.lib.BlockCipherMode.extend(),
o = i.Encryptor = i.extend({
processBlock: function(t, e) {
var i = this._cipher,
o = i.blockSize,
r = this._iv,
a = this._counter;
r && (a = this._counter = r.slice(0), this._iv = void 0),
n(a);
var s = a.slice(0);
i.encryptBlock(s, 0);
for (var l = 0; l < o; l++) t[e + l] ^= s[l]
}
});
return i.Decryptor = o,
i
} (),
t.mode.CTRGladman
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.mode.CTR = function() {
var e = t.lib.BlockCipherMode.extend(),
n = e.Encryptor = e.extend({
processBlock: function(t, e) {
var n = this._cipher,
i = n.blockSize,
o = this._iv,
r = this._counter;
o && (r = this._counter = o.slice(0), this._iv = void 0);
var a = r.slice(0);
n.encryptBlock(a, 0),
r[i - 1] = r[i - 1] + 1 | 0;
for (var s = 0; s < i; s++) t[e + s] ^= a[s]
}
});
return e.Decryptor = n,
e
} (),
t.mode.CTR
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.mode.ECB = function() {
var e = t.lib.BlockCipherMode.extend();
return e.Encryptor = e.extend({
processBlock: function(t, e) {
this._cipher.encryptBlock(t, e)
}
}),
e.Decryptor = e.extend({
processBlock: function(t, e) {
this._cipher.decryptBlock(t, e)
}
}),
e
} (),
t.mode.ECB
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.mode.OFB = function() {
var e = t.lib.BlockCipherMode.extend(),
n = e.Encryptor = e.extend({
processBlock: function(t, e) {
var n = this._cipher,
i = n.blockSize,
o = this._iv,
r = this._keystream;
o && (r = this._keystream = o.slice(0), this._iv = void 0),
n.encryptBlock(r, 0);
for (var a = 0; a < i; a++) t[e + a] ^= r[a]
}
});
return e.Decryptor = n,
e
} (),
t.mode.OFB
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.pad.AnsiX923 = {
pad: function(t, e) {
var n = t.sigBytes,
i = 4 * e,
o = i - n % i,
r = n + o - 1;
t.clamp(),
t.words[r >>> 2] |= o << 24 - r % 4 * 8,
t.sigBytes += o
},
unpad: function(t) {
var e = 255 & t.words[t.sigBytes - 1 >>> 2];
t.sigBytes -= e
}
},
t.pad.Ansix923
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.pad.Iso10126 = {
pad: function(e, n) {
var i = 4 * n,
o = i - e.sigBytes % i;
e.concat(t.lib.WordArray.random(o - 1)).concat(t.lib.WordArray.create([o << 24], 1))
},
unpad: function(t) {
var e = 255 & t.words[t.sigBytes - 1 >>> 2];
t.sigBytes -= e
}
},
t.pad.Iso10126
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.pad.Iso97971 = {
pad: function(e, n) {
e.concat(t.lib.WordArray.create([2147483648], 1)),
t.pad.ZeroPadding.pad(e, n)
},
unpad: function(e) {
t.pad.ZeroPadding.unpad(e),
e.sigBytes--
}
},
t.pad.Iso97971
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.pad.NoPadding = {
pad: function() {},
unpad: function() {}
},
t.pad.NoPadding
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(111))
} (0,
function(t) {
return t.pad.ZeroPadding = {
pad: function(t, e) {
var n = 4 * e;
t.clamp(),
t.sigBytes += n - (t.sigBytes % n || n)
},
unpad: function(t) {
for (var e = t.words,
n = t.sigBytes - 1; ! (e[n >>> 2] >>> 24 - n % 4 * 8 & 255);) n--;
t.sigBytes = n + 1
}
},
t.pad.ZeroPadding
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(446), n(445))
} (0,
function(t) {
return function() {
var e = t,
n = e.lib,
i = n.Base,
o = n.WordArray,
r = e.algo,
a = r.SHA1,
s = r.HMAC,
l = r.PBKDF2 = i.extend({
cfg: i.extend({
keySize: 4,
hasher: a,
iterations: 1
}),
init: function(t) {
this.cfg = this.cfg.extend(t)
},
compute: function(t, e) {
for (var n = this.cfg,
i = s.create(n.hasher, t), r = o.create(), a = o.create([1]), l = r.words, u = a.words, c = n.keySize, f = n.iterations; l.length < c;) {
var d = i.update(e).finalize(a);
i.reset();
for (var h = d.words,
v = h.length,
p = d,
_ = 1; _ < f; _++) {
p = i.finalize(p),
i.reset();
for (var m = p.words,
g = 0; g < v; g++) h[g] ^= m[g]
}
r.concat(d),
u[0]++
}
return r.sigBytes = 4 * c,
r
}
});
e.PBKDF2 = function(t, e, n) {
return l.create(n).compute(t, e)
}
} (),
t.PBKDF2
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(290), n(291), n(272), n(111))
} (0,
function(t) {
return function() {
function e() {
for (var t = this._X,
e = this._C,
n = 0; n < 8; n++) s[n] = e[n];
e[0] = e[0] + 1295307597 + this._b | 0,
e[1] = e[1] + 3545052371 + (e[0] >>> 0 < s[0] >>> 0 ? 1 : 0) | 0,
e[2] = e[2] + 886263092 + (e[1] >>> 0 < s[1] >>> 0 ? 1 : 0) | 0,
e[3] = e[3] + 1295307597 + (e[2] >>> 0 < s[2] >>> 0 ? 1 : 0) | 0,
e[4] = e[4] + 3545052371 + (e[3] >>> 0 < s[3] >>> 0 ? 1 : 0) | 0,
e[5] = e[5] + 886263092 + (e[4] >>> 0 < s[4] >>> 0 ? 1 : 0) | 0,
e[6] = e[6] + 1295307597 + (e[5] >>> 0 < s[5] >>> 0 ? 1 : 0) | 0,
e[7] = e[7] + 3545052371 + (e[6] >>> 0 < s[6] >>> 0 ? 1 : 0) | 0,
this._b = e[7] >>> 0 < s[7] >>> 0 ? 1 : 0;
for (var n = 0; n < 8; n++) {
var i = t[n] + e[n],
o = 65535 & i,
r = i >>> 16,
a = ((o * o >>> 17) + o * r >>> 15) + r * r,
u = ((4294901760 & i) * i | 0) + ((65535 & i) * i | 0);
l[n] = a ^ u
}
t[0] = l[0] + (l[7] << 16 | l[7] >>> 16) + (l[6] << 16 | l[6] >>> 16) | 0,
t[1] = l[1] + (l[0] << 8 | l[0] >>> 24) + l[7] | 0,
t[2] = l[2] + (l[1] << 16 | l[1] >>> 16) + (l[0] << 16 | l[0] >>> 16) | 0,
t[3] = l[3] + (l[2] << 8 | l[2] >>> 24) + l[1] | 0,
t[4] = l[4] + (l[3] << 16 | l[3] >>> 16) + (l[2] << 16 | l[2] >>> 16) | 0,
t[5] = l[5] + (l[4] << 8 | l[4] >>> 24) + l[3] | 0,
t[6] = l[6] + (l[5] << 16 | l[5] >>> 16) + (l[4] << 16 | l[4] >>> 16) | 0,
t[7] = l[7] + (l[6] << 8 | l[6] >>> 24) + l[5] | 0
}
var n = t,
i = n.lib,
o = i.StreamCipher,
r = n.algo,
a = [],
s = [],
l = [],
u = r.RabbitLegacy = o.extend({
_doReset: function() {
var t = this._key.words,
n = this.cfg.iv,
i = this._X = [t[0], t[3] << 16 | t[2] >>> 16, t[1], t[0] << 16 | t[3] >>> 16, t[2], t[1] << 16 | t[0] >>> 16, t[3], t[2] << 16 | t[1] >>> 16],
o = this._C = [t[2] << 16 | t[2] >>> 16, 4294901760 & t[0] | 65535 & t[1], t[3] << 16 | t[3] >>> 16, 4294901760 & t[1] | 65535 & t[2], t[0] << 16 | t[0] >>> 16, 4294901760 & t[2] | 65535 & t[3], t[1] << 16 | t[1] >>> 16, 4294901760 & t[3] | 65535 & t[0]];
this._b = 0;
for (var r = 0; r < 4; r++) e.call(this);
for (var r = 0; r < 8; r++) o[r] ^= i[r + 4 & 7];
if (n) {
var a = n.words,
s = a[0],
l = a[1],
u = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8),
c = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8),
f = u >>> 16 | 4294901760 & c,
d = c << 16 | 65535 & u;
o[0] ^= u,
o[1] ^= f,
o[2] ^= c,
o[3] ^= d,
o[4] ^= u,
o[5] ^= f,
o[6] ^= c,
o[7] ^= d;
for (var r = 0; r < 4; r++) e.call(this)
}
},
_doProcessBlock: function(t, n) {
var i = this._X;
e.call(this),
a[0] = i[0] ^ i[5] >>> 16 ^ i[3] << 16,
a[1] = i[2] ^ i[7] >>> 16 ^ i[5] << 16,
a[2] = i[4] ^ i[1] >>> 16 ^ i[7] << 16,
a[3] = i[6] ^ i[3] >>> 16 ^ i[1] << 16;
for (var o = 0; o < 4; o++) a[o] = 16711935 & (a[o] << 8 | a[o] >>> 24) | 4278255360 & (a[o] << 24 | a[o] >>> 8),
t[n + o] ^= a[o]
},
blockSize: 4,
ivSize: 2
});
n.RabbitLegacy = o._createHelper(u)
} (),
t.RabbitLegacy
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(290), n(291), n(272), n(111))
} (0,
function(t) {
return function() {
function e() {
for (var t = this._X,
e = this._C,
n = 0; n < 8; n++) s[n] = e[n];
e[0] = e[0] + 1295307597 + this._b | 0,
e[1] = e[1] + 3545052371 + (e[0] >>> 0 < s[0] >>> 0 ? 1 : 0) | 0,
e[2] = e[2] + 886263092 + (e[1] >>> 0 < s[1] >>> 0 ? 1 : 0) | 0,
e[3] = e[3] + 1295307597 + (e[2] >>> 0 < s[2] >>> 0 ? 1 : 0) | 0,
e[4] = e[4] + 3545052371 + (e[3] >>> 0 < s[3] >>> 0 ? 1 : 0) | 0,
e[5] = e[5] + 886263092 + (e[4] >>> 0 < s[4] >>> 0 ? 1 : 0) | 0,
e[6] = e[6] + 1295307597 + (e[5] >>> 0 < s[5] >>> 0 ? 1 : 0) | 0,
e[7] = e[7] + 3545052371 + (e[6] >>> 0 < s[6] >>> 0 ? 1 : 0) | 0,
this._b = e[7] >>> 0 < s[7] >>> 0 ? 1 : 0;
for (var n = 0; n < 8; n++) {
var i = t[n] + e[n],
o = 65535 & i,
r = i >>> 16,
a = ((o * o >>> 17) + o * r >>> 15) + r * r,
u = ((4294901760 & i) * i | 0) + ((65535 & i) * i | 0);
l[n] = a ^ u
}
t[0] = l[0] + (l[7] << 16 | l[7] >>> 16) + (l[6] << 16 | l[6] >>> 16) | 0,
t[1] = l[1] + (l[0] << 8 | l[0] >>> 24) + l[7] | 0,
t[2] = l[2] + (l[1] << 16 | l[1] >>> 16) + (l[0] << 16 | l[0] >>> 16) | 0,
t[3] = l[3] + (l[2] << 8 | l[2] >>> 24) + l[1] | 0,
t[4] = l[4] + (l[3] << 16 | l[3] >>> 16) + (l[2] << 16 | l[2] >>> 16) | 0,
t[5] = l[5] + (l[4] << 8 | l[4] >>> 24) + l[3] | 0,
t[6] = l[6] + (l[5] << 16 | l[5] >>> 16) + (l[4] << 16 | l[4] >>> 16) | 0,
t[7] = l[7] + (l[6] << 8 | l[6] >>> 24) + l[5] | 0
}
var n = t,
i = n.lib,
o = i.StreamCipher,
r = n.algo,
a = [],
s = [],
l = [],
u = r.Rabbit = o.extend({
_doReset: function() {
for (var t = this._key.words,
n = this.cfg.iv,
i = 0; i < 4; i++) t[i] = 16711935 & (t[i] << 8 | t[i] >>> 24) | 4278255360 & (t[i] << 24 | t[i] >>> 8);
var o = this._X = [t[0], t[3] << 16 | t[2] >>> 16, t[1], t[0] << 16 | t[3] >>> 16, t[2], t[1] << 16 | t[0] >>> 16, t[3], t[2] << 16 | t[1] >>> 16],
r = this._C = [t[2] << 16 | t[2] >>> 16, 4294901760 & t[0] | 65535 & t[1], t[3] << 16 | t[3] >>> 16, 4294901760 & t[1] | 65535 & t[2], t[0] << 16 | t[0] >>> 16, 4294901760 & t[2] | 65535 & t[3], t[1] << 16 | t[1] >>> 16, 4294901760 & t[3] | 65535 & t[0]];
this._b = 0;
for (var i = 0; i < 4; i++) e.call(this);
for (var i = 0; i < 8; i++) r[i] ^= o[i + 4 & 7];
if (n) {
var a = n.words,
s = a[0],
l = a[1],
u = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8),
c = 16711935 & (l << 8 | l >>> 24) | 4278255360 & (l << 24 | l >>> 8),
f = u >>> 16 | 4294901760 & c,
d = c << 16 | 65535 & u;
r[0] ^= u,
r[1] ^= f,
r[2] ^= c,
r[3] ^= d,
r[4] ^= u,
r[5] ^= f,
r[6] ^= c,
r[7] ^= d;
for (var i = 0; i < 4; i++) e.call(this)
}
},
_doProcessBlock: function(t, n) {
var i = this._X;
e.call(this),
a[0] = i[0] ^ i[5] >>> 16 ^ i[3] << 16,
a[1] = i[2] ^ i[7] >>> 16 ^ i[5] << 16,
a[2] = i[4] ^ i[1] >>> 16 ^ i[7] << 16,
a[3] = i[6] ^ i[3] >>> 16 ^ i[1] << 16;
for (var o = 0; o < 4; o++) a[o] = 16711935 & (a[o] << 8 | a[o] >>> 24) | 4278255360 & (a[o] << 24 | a[o] >>> 8),
t[n + o] ^= a[o]
},
blockSize: 4,
ivSize: 2
});
n.Rabbit = o._createHelper(u)
} (),
t.Rabbit
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(290), n(291), n(272), n(111))
} (0,
function(t) {
return function() {
function e() {
for (var t = this._S,
e = this._i,
n = this._j,
i = 0,
o = 0; o < 4; o++) {
e = (e + 1) % 256,
n = (n + t[e]) % 256;
var r = t[e];
t[e] = t[n],
t[n] = r,
i |= t[(t[e] + t[n]) % 256] << 24 - 8 * o
}
return this._i = e,
this._j = n,
i
}
var n = t,
i = n.lib,
o = i.StreamCipher,
r = n.algo,
a = r.RC4 = o.extend({
_doReset: function() {
for (var t = this._key,
e = t.words,
n = t.sigBytes,
i = this._S = [], o = 0; o < 256; o++) i[o] = o;
for (var o = 0,
r = 0; o < 256; o++) {
var a = o % n,
s = e[a >>> 2] >>> 24 - a % 4 * 8 & 255;
r = (r + i[o] + s) % 256;
var l = i[o];
i[o] = i[r],
i[r] = l
}
this._i = this._j = 0
},
_doProcessBlock: function(t, n) {
t[n] ^= e.call(this)
},
keySize: 8,
ivSize: 0
});
n.RC4 = o._createHelper(a);
var s = r.RC4Drop = a.extend({
cfg: a.cfg.extend({
drop: 192
}),
_doReset: function() {
a._doReset.call(this);
for (var t = this.cfg.drop; t > 0; t--) e.call(this)
}
});
n.RC4Drop = o._createHelper(s)
} (),
t.RC4
})
},
function(t, e, n) { !
function(i, o) {
t.exports = e = o(n(50))
} (0,
function(t) {
/** @preserve
(c) 2012 by Cédric Mesnil. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
return function(e) {
function n(t, e, n) {
return t ^ e ^ n
}
function i(t, e, n) {
return t & e | ~t & n
}
function o(t, e, n) {
return (t | ~e) ^ n
}
function r(t, e, n) {
return t & n | e & ~n
}
function a(t, e, n) {
return t ^ (e | ~n)
}
function s(t, e) {
return t << e | t >>> 32 - e
}
var l = t,
u = l.lib,
c = u.WordArray,
f = u.Hasher,
d = l.algo,
h = c.create([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12, 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2, 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13]),
v = c.create([5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12, 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2, 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13, 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14, 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11]),
p = c.create([11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8, 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12, 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5, 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12, 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6]),
_ = c.create([8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6, 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11, 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5, 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8, 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11]),
m = c.create([0, 1518500249, 1859775393, 2400959708, 2840853838]),
g = c.create([1352829926, 1548603684, 1836072691, 2053994217, 0]),
y = d.RIPEMD160 = f.extend({
_doReset: function() {
this._hash = c.create([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
},
_doProcessBlock: function(t, e) {
for (var l = 0; l < 16; l++) {
var u = e + l,
c = t[u];
t[u] = 16711935 & (c << 8 | c >>> 24) | 4278255360 & (c << 24 | c >>> 8)
}
var f, d, y, x, b, S, w, E, T, A, P = this._hash.words,
I = m.words,
k = g.words,
L = h.words,
M = v.words,
C = p.words,
R = _.words;
S = f = P[0],
w = d = P[1],
E = y = P[2],
T = x = P[3],
A = b = P[4];
for (var B, l = 0; l < 80; l += 1) B = f + t[e + L[l]] | 0,
B += l < 16 ? n(d, y, x) + I[0] : l < 32 ? i(d, y, x) + I[1] : l < 48 ? o(d, y, x) + I[2] : l < 64 ? r(d, y, x) + I[3] : a(d, y, x) + I[4],
B |= 0,
B = s(B, C[l]),
B = B + b | 0,
f = b,
b = x,
x = s(y, 10),
y = d,
d = B,
B = S + t[e + M[l]] | 0,
B += l < 16 ? a(w, E, T) + k[0] : l < 32 ? r(w, E, T) + k[1] : l < 48 ? o(w, E, T) + k[2] : l < 64 ? i(w, E, T) + k[3] : n(w, E, T) + k[4],
B |= 0,
B = s(B, R[l]),
B = B + A | 0,
S = A,
A = T,
T = s(E, 10),
E = w,
w = B;
B = P[1] + y + T | 0,
P[1] = P[2] + x + A | 0,
P[2] = P[3] + b + S | 0,
P[3] = P[4] + f + w | 0,
P[4] = P[0] + d + E | 0,
P[0] = B
},
_doFinalize: function() {
var t = this._data,
e = t.words,
n = 8 * this._nDataBytes,
i = 8 * t.sigBytes;
e[i >>> 5] |= 128 << 24 - i % 32,
e[14 + (i + 64 >>> 9 << 4)] = 16711935 & (n << 8 | n >>> 24) | 4278255360 & (n << 24 | n >>> 8),
t.sigBytes = 4 * (e.length + 1),
this._process();
for (var o = this._hash,
r = o.words,
a = 0; a < 5; a++) {
var s = r[a];
r[a] = 16711935 & (s << 8 | s >>> 24) | 4278255360 & (s << 24 | s >>> 8)
}
return o
},
clone: function() {
var t = f.clone.call(this);
return t._hash = this._hash.clone(),
t
}
});
l.RIPEMD160 = f._createHelper(y),
l.HmacRIPEMD160 = f._createHmacHelper(y)
} (Math),
t.RIPEMD160
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(550))
} (0,
function(t) {
return function() {
var e = t,
n = e.lib,
i = n.WordArray,
o = e.algo,
r = o.SHA256,
a = o.SHA224 = r.extend({
_doReset: function() {
this._hash = new i.init([3238371032, 914150663, 812702999, 4144912697, 4290775857, 1750603025, 1694076839, 3204075428])
},
_doFinalize: function() {
var t = r._doFinalize.call(this);
return t.sigBytes -= 4,
t
}
});
e.SHA224 = r._createHelper(a),
e.HmacSHA224 = r._createHmacHelper(a)
} (),
t.SHA224
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(356))
} (0,
function(t) {
return function(e) {
var n = t,
i = n.lib,
o = i.WordArray,
r = i.Hasher,
a = n.x64,
s = a.Word,
l = n.algo,
u = [],
c = [],
f = []; !
function() {
for (var t = 1,
e = 0,
n = 0; n < 24; n++) {
u[t + 5 * e] = (n + 1) * (n + 2) / 2 % 64;
var i = e % 5,
o = (2 * t + 3 * e) % 5;
t = i,
e = o
}
for (var t = 0; t < 5; t++) for (var e = 0; e < 5; e++) c[t + 5 * e] = e + (2 * t + 3 * e) % 5 * 5;
for (var r = 1,
a = 0; a < 24; a++) {
for (var l = 0,
d = 0,
h = 0; h < 7; h++) {
if (1 & r) {
var v = (1 << h) - 1;
v < 32 ? d ^= 1 << v: l ^= 1 << v - 32
}
128 & r ? r = r << 1 ^ 113 : r <<= 1
}
f[a] = s.create(l, d)
}
} ();
var d = []; !
function() {
for (var t = 0; t < 25; t++) d[t] = s.create()
} ();
var h = l.SHA3 = r.extend({
cfg: r.cfg.extend({
outputLength: 512
}),
_doReset: function() {
for (var t = this._state = [], e = 0; e < 25; e++) t[e] = new s.init;
this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32
},
_doProcessBlock: function(t, e) {
for (var n = this._state,
i = this.blockSize / 2,
o = 0; o < i; o++) {
var r = t[e + 2 * o],
a = t[e + 2 * o + 1];
r = 16711935 & (r << 8 | r >>> 24) | 4278255360 & (r << 24 | r >>> 8),
a = 16711935 & (a << 8 | a >>> 24) | 4278255360 & (a << 24 | a >>> 8);
var s = n[o];
s.high ^= a,
s.low ^= r
}
for (var l = 0; l < 24; l++) {
for (var h = 0; h < 5; h++) {
for (var v = 0,
p = 0,
_ = 0; _ < 5; _++) {
var s = n[h + 5 * _];
v ^= s.high,
p ^= s.low
}
var m = d[h];
m.high = v,
m.low = p
}
for (var h = 0; h < 5; h++) for (var g = d[(h + 4) % 5], y = d[(h + 1) % 5], x = y.high, b = y.low, v = g.high ^ (x << 1 | b >>> 31), p = g.low ^ (b << 1 | x >>> 31), _ = 0; _ < 5; _++) {
var s = n[h + 5 * _];
s.high ^= v,
s.low ^= p
}
for (var S = 1; S < 25; S++) {
var s = n[S],
w = s.high,
E = s.low,
T = u[S];
if (T < 32) var v = w << T | E >>> 32 - T,
p = E << T | w >>> 32 - T;
else var v = E << T - 32 | w >>> 64 - T,
p = w << T - 32 | E >>> 64 - T;
var A = d[c[S]];
A.high = v,
A.low = p
}
var P = d[0],
I = n[0];
P.high = I.high,
P.low = I.low;
for (var h = 0; h < 5; h++) for (var _ = 0; _ < 5; _++) {
var S = h + 5 * _,
s = n[S],
k = d[S],
L = d[(h + 1) % 5 + 5 * _],
M = d[(h + 2) % 5 + 5 * _];
s.high = k.high ^ ~L.high & M.high,
s.low = k.low ^ ~L.low & M.low
}
var s = n[0],
C = f[l];
s.high ^= C.high,
s.low ^= C.low
}
},
_doFinalize: function() {
var t = this._data,
n = t.words,
i = (this._nDataBytes, 8 * t.sigBytes),
r = 32 * this.blockSize;
n[i >>> 5] |= 1 << 24 - i % 32,
n[(e.ceil((i + 1) / r) * r >>> 5) - 1] |= 128,
t.sigBytes = 4 * n.length,
this._process();
for (var a = this._state,
s = this.cfg.outputLength / 8,
l = s / 8,
u = [], c = 0; c < l; c++) {
var f = a[c],
d = f.high,
h = f.low;
d = 16711935 & (d << 8 | d >>> 24) | 4278255360 & (d << 24 | d >>> 8),
h = 16711935 & (h << 8 | h >>> 24) | 4278255360 & (h << 24 | h >>> 8),
u.push(h),
u.push(d)
}
return new o.init(u, s)
},
clone: function() {
for (var t = r.clone.call(this), e = t._state = this._state.slice(0), n = 0; n < 25; n++) e[n] = e[n].clone();
return t
}
});
n.SHA3 = r._createHelper(h),
n.HmacSHA3 = r._createHmacHelper(h)
} (Math),
t.SHA3
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(356), n(551))
} (0,
function(t) {
return function() {
var e = t,
n = e.x64,
i = n.Word,
o = n.WordArray,
r = e.algo,
a = r.SHA512,
s = r.SHA384 = a.extend({
_doReset: function() {
this._hash = new o.init([new i.init(3418070365, 3238371032), new i.init(1654270250, 914150663), new i.init(2438529370, 812702999), new i.init(355462360, 4144912697), new i.init(1731405415, 4290775857), new i.init(2394180231, 1750603025), new i.init(3675008525, 1694076839), new i.init(1203062813, 3204075428)])
},
_doFinalize: function() {
var t = a._doFinalize.call(this);
return t.sigBytes -= 16,
t
}
});
e.SHA384 = a._createHelper(s),
e.HmacSHA384 = a._createHmacHelper(s)
} (),
t.SHA384
})
},
function(t, e, n) { !
function(i, o, r) {
t.exports = e = o(n(50), n(290), n(291), n(272), n(111))
} (0,
function(t) {
return function() {
function e(t, e) {
var n = (this._lBlock >>> t ^ this._rBlock) & e;
this._rBlock ^= n,
this._lBlock ^= n << t
}
function n(t, e) {
var n = (this._rBlock >>> t ^ this._lBlock) & e;
this._lBlock ^= n,
this._rBlock ^= n << t
}
var i = t,
o = i.lib,
r = o.WordArray,
a = o.BlockCipher,
s = i.algo,
l = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],
u = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],
c = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],
f = [{
0 : 8421888,
268435456 : 32768,
536870912 : 8421378,
805306368 : 2,
1073741824 : 512,
1342177280 : 8421890,
1610612736 : 8389122,
1879048192 : 8388608,
2147483648 : 514,
2415919104 : 8389120,
2684354560 : 33280,
2952790016 : 8421376,
3221225472 : 32770,
3489660928 : 8388610,
3758096384 : 0,
4026531840 : 33282,
134217728 : 0,
402653184 : 8421890,
671088640 : 33282,
939524096 : 32768,
1207959552 : 8421888,
1476395008 : 512,
1744830464 : 8421378,
2013265920 : 2,
2281701376 : 8389120,
2550136832 : 33280,
2818572288 : 8421376,
3087007744 : 8389122,
3355443200 : 8388610,
3623878656 : 32770,
3892314112 : 514,
4160749568 : 8388608,
1 : 32768,
268435457 : 2,
536870913 : 8421888,
805306369 : 8388608,
1073741825 : 8421378,
1342177281 : 33280,
1610612737 : 512,
1879048193 : 8389122,
2147483649 : 8421890,
2415919105 : 8421376,
2684354561 : 8388610,
2952790017 : 33282,
3221225473 : 514,
3489660929 : 8389120,
3758096385 : 32770,
4026531841 : 0,
134217729 : 8421890,
402653185 : 8421376,
671088641 : 8388608,
939524097 : 512,
1207959553 : 32768,
1476395009 : 8388610,
1744830465 : 2,
2013265921 : 33282,
2281701377 : 32770,
2550136833 : 8389122,
2818572289 : 514,
3087007745 : 8421888,
3355443201 : 8389120,
3623878657 : 0,
3892314113 : 33280,
4160749569 : 8421378
},
{
0 : 1074282512,
16777216 : 16384,
33554432 : 524288,
50331648 : 1074266128,
67108864 : 1073741840,
83886080 : 1074282496,
100663296 : 1073758208,
117440512 : 16,
134217728 : 540672,
150994944 : 1073758224,
167772160 : 1073741824,
184549376 : 540688,
201326592 : 524304,
218103808 : 0,
234881024 : 16400,
251658240 : 1074266112,
8388608 : 1073758208,
25165824 : 540688,
41943040 : 16,
58720256 : 1073758224,
75497472 : 1074282512,
92274688 : 1073741824,
109051904 : 524288,
125829120 : 1074266128,
142606336 : 524304,
159383552 : 0,
176160768 : 16384,
192937984 : 1074266112,
209715200 : 1073741840,
226492416 : 540672,
243269632 : 1074282496,
260046848 : 16400,
268435456 : 0,
285212672 : 1074266128,
301989888 : 1073758224,
318767104 : 1074282496,
335544320 : 1074266112,
352321536 : 16,
369098752 : 540688,
385875968 : 16384,
402653184 : 16400,
419430400 : 524288,
436207616 : 524304,
452984832 : 1073741840,
469762048 : 540672,
486539264 : 1073758208,
503316480 : 1073741824,
520093696 : 1074282512,
276824064 : 540688,
293601280 : 524288,
310378496 : 1074266112,
327155712 : 16384,
343932928 : 1073758208,
360710144 : 1074282512,
377487360 : 16,
394264576 : 1073741824,
411041792 : 1074282496,
427819008 : 1073741840,
444596224 : 1073758224,
461373440 : 524304,
478150656 : 0,
494927872 : 16400,
511705088 : 1074266128,
528482304 : 540672
},
{
0 : 260,
1048576 : 0,
2097152 : 67109120,
3145728 : 65796,
4194304 : 65540,
5242880 : 67108868,
6291456 : 67174660,
7340032 : 67174400,
8388608 : 67108864,
9437184 : 67174656,
10485760 : 65792,
11534336 : 67174404,
12582912 : 67109124,
13631488 : 65536,
14680064 : 4,
15728640 : 256,
524288 : 67174656,
1572864 : 67174404,
2621440 : 0,
3670016 : 67109120,
4718592 : 67108868,
5767168 : 65536,
6815744 : 65540,
7864320 : 260,
8912896 : 4,
9961472 : 256,
11010048 : 67174400,
12058624 : 65796,
13107200 : 65792,
14155776 : 67109124,
15204352 : 67174660,
16252928 : 67108864,
16777216 : 67174656,
17825792 : 65540,
18874368 : 65536,
19922944 : 67109120,
20971520 : 256,
22020096 : 67174660,
23068672 : 67108868,
24117248 : 0,
25165824 : 67109124,
26214400 : 67108864,
27262976 : 4,
28311552 : 65792,
29360128 : 67174400,
30408704 : 260,
31457280 : 65796,
32505856 : 67174404,
17301504 : 67108864,
18350080 : 260,
19398656 : 67174656,
20447232 : 0,
21495808 : 65540,
22544384 : 67109120,
23592960 : 256,
24641536 : 67174404,
25690112 : 65536,
26738688 : 67174660,
27787264 : 65796,
28835840 : 67108868,
29884416 : 67109124,
30932992 : 67174400,
31981568 : 4,
33030144 : 65792
},
{
0 : 2151682048,
65536 : 2147487808,
131072 : 4198464,
196608 : 2151677952,
262144 : 0,
327680 : 4198400,
393216 : 2147483712,
458752 : 4194368,
524288 : 2147483648,
589824 : 4194304,
655360 : 64,
720896 : 2147487744,
786432 : 2151678016,
851968 : 4160,
917504 : 4096,
983040 : 2151682112,
32768 : 2147487808,
98304 : 64,
163840 : 2151678016,
229376 : 2147487744,
294912 : 4198400,
360448 : 2151682112,
425984 : 0,
491520 : 2151677952,
557056 : 4096,
622592 : 2151682048,
688128 : 4194304,
753664 : 4160,
819200 : 2147483648,
884736 : 4194368,
950272 : 4198464,
1015808 : 2147483712,
1048576 : 4194368,
1114112 : 4198400,
1179648 : 2147483712,
1245184 : 0,
1310720 : 4160,
1376256 : 2151678016,
1441792 : 2151682048,
1507328 : 2147487808,
1572864 : 2151682112,
1638400 : 2147483648,
1703936 : 2151677952,
1769472 : 4198464,
1835008 : 2147487744,
1900544 : 4194304,
1966080 : 64,
2031616 : 4096,
1081344 : 2151677952,
1146880 : 2151682112,
1212416 : 0,
1277952 : 4198400,
1343488 : 4194368,
1409024 : 2147483648,
1474560 : 2147487808,
1540096 : 64,
1605632 : 2147483712,
1671168 : 4096,
1736704 : 2147487744,
1802240 : 2151678016,
1867776 : 4160,
1933312 : 2151682048,
1998848 : 4194304,
2064384 : 4198464
},
{
0 : 128,
4096 : 17039360,
8192 : 262144,
12288 : 536870912,
16384 : 537133184,
20480 : 16777344,
24576 : 553648256,
28672 : 262272,
32768 : 16777216,
36864 : 537133056,
40960 : 536871040,
45056 : 553910400,
49152 : 553910272,
53248 : 0,
57344 : 17039488,
61440 : 553648128,
2048 : 17039488,
6144 : 553648256,
10240 : 128,
14336 : 17039360,
18432 : 262144,
22528 : 537133184,
26624 : 553910272,
30720 : 536870912,
34816 : 537133056,
38912 : 0,
43008 : 553910400,
47104 : 16777344,
51200 : 536871040,
55296 : 553648128,
59392 : 16777216,
63488 : 262272,
65536 : 262144,
69632 : 128,
73728 : 536870912,
77824 : 553648256,
81920 : 16777344,
86016 : 553910272,
90112 : 537133184,
94208 : 16777216,
98304 : 553910400,
102400 : 553648128,
106496 : 17039360,
110592 : 537133056,
114688 : 262272,
118784 : 536871040,
122880 : 0,
126976 : 17039488,
67584 : 553648256,
71680 : 16777216,
75776 : 17039360,
79872 : 537133184,
83968 : 536870912,
88064 : 17039488,
92160 : 128,
96256 : 553910272,
100352 : 262272,
104448 : 553910400,
108544 : 0,
112640 : 553648128,
116736 : 16777344,
120832 : 262144,
124928 : 537133056,
129024 : 536871040
},
{
0 : 268435464,
256 : 8192,
512 : 270532608,
768 : 270540808,
1024 : 268443648,
1280 : 2097152,
1536 : 2097160,
1792 : 268435456,
2048 : 0,
2304 : 268443656,
2560 : 2105344,
2816 : 8,
3072 : 270532616,
3328 : 2105352,
3584 : 8200,
3840 : 270540800,
128 : 270532608,
384 : 270540808,
640 : 8,
896 : 2097152,
1152 : 2105352,
1408 : 268435464,
1664 : 268443648,
1920 : 8200,
2176 : 2097160,
2432 : 8192,
2688 : 268443656,
2944 : 270532616,
3200 : 0,
3456 : 270540800,
3712 : 2105344,
3968 : 268435456,
4096 : 268443648,
4352 : 270532616,
4608 : 270540808,
4864 : 8200,
5120 : 2097152,
5376 : 268435456,
5632 : 268435464,
5888 : 2105344,
6144 : 2105352,
6400 : 0,
6656 : 8,
6912 : 270532608,
7168 : 8192,
7424 : 268443656,
7680 : 270540800,
7936 : 2097160,
4224 : 8,
4480 : 2105344,
4736 : 2097152,
4992 : 268435464,
5248 : 268443648,
5504 : 8200,
5760 : 270540808,
6016 : 270532608,
6272 : 270540800,
6528 : 270532616,
6784 : 8192,
7040 : 2105352,
7296 : 2097160,
7552 : 0,
7808 : 268435456,
8064 : 268443656
},
{
0 : 1048576,
16 : 33555457,
32 : 1024,
48 : 1049601,
64 : 34604033,
80 : 0,
96 : 1,
112 : 34603009,
128 : 33555456,
144 : 1048577,
160 : 33554433,
176 : 34604032,
192 : 34603008,
208 : 1025,
224 : 1049600,
240 : 33554432,
8 : 34603009,
24 : 0,
40 : 33555457,
56 : 34604032,
72 : 1048576,
88 : 33554433,
104 : 33554432,
120 : 1025,
136 : 1049601,
152 : 33555456,
168 : 34603008,
184 : 1048577,
200 : 1024,
216 : 34604033,
232 : 1,
248 : 1049600,
256 : 33554432,
272 : 1048576,
288 : 33555457,
304 : 34603009,
320 : 1048577,
336 : 33555456,
352 : 34604032,
368 : 1049601,
384 : 1025,
400 : 34604033,
416 : 1049600,
432 : 1,
448 : 0,
464 : 34603008,
480 : 33554433,
496 : 1024,
264 : 1049600,
280 : 33555457,
296 : 34603009,
312 : 1,
328 : 33554432,
344 : 1048576,
360 : 1025,
376 : 34604032,
392 : 33554433,
408 : 34603008,
424 : 0,
440 : 34604033,
456 : 1049601,
472 : 1024,
488 : 33555456,
504 : 1048577
},
{
0 : 134219808,
1 : 131072,
2 : 134217728,
3 : 32,
4 : 131104,
5 : 134350880,
6 : 134350848,
7 : 2048,
8 : 134348800,
9 : 134219776,
10 : 133120,
11 : 134348832,
12 : 2080,
13 : 0,
14 : 134217760,
15 : 133152,
2147483648 : 2048,
2147483649 : 134350880,
2147483650 : 134219808,
2147483651 : 134217728,
2147483652 : 134348800,
2147483653 : 133120,
2147483654 : 133152,
2147483655 : 32,
2147483656 : 134217760,
2147483657 : 2080,
2147483658 : 131104,
2147483659 : 134350848,
2147483660 : 0,
2147483661 : 134348832,
2147483662 : 134219776,
2147483663 : 131072,
16 : 133152,
17 : 134350848,
18 : 32,
19 : 2048,
20 : 134219776,
21 : 134217760,
22 : 134348832,
23 : 131072,
24 : 0,
25 : 131104,
26 : 134348800,
27 : 134219808,
28 : 134350880,
29 : 133120,
30 : 2080,
31 : 134217728,
2147483664 : 131072,
2147483665 : 2048,
2147483666 : 134348832,
2147483667 : 133152,
2147483668 : 32,
2147483669 : 134348800,
2147483670 : 134217728,
2147483671 : 134219808,
2147483672 : 134350880,
2147483673 : 134217760,
2147483674 : 134219776,
2147483675 : 0,
2147483676 : 133120,
2147483677 : 2080,
2147483678 : 131104,
2147483679 : 134350848
}],
d = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],
h = s.DES = a.extend({
_doReset: function() {
for (var t = this._key,
e = t.words,
n = [], i = 0; i < 56; i++) {
var o = l[i] - 1;
n[i] = e[o >>> 5] >>> 31 - o % 32 & 1
}
for (var r = this._subKeys = [], a = 0; a < 16; a++) {
for (var s = r[a] = [], f = c[a], i = 0; i < 24; i++) s[i / 6 | 0] |= n[(u[i] - 1 + f) % 28] << 31 - i % 6,
s[4 + (i / 6 | 0)] |= n[28 + (u[i + 24] - 1 + f) % 28] << 31 - i % 6;
s[0] = s[0] << 1 | s[0] >>> 31;
for (var i = 1; i < 7; i++) s[i] = s[i] >>> 4 * (i - 1) + 3;
s[7] = s[7] << 5 | s[7] >>> 27
}
for (var d = this._invSubKeys = [], i = 0; i < 16; i++) d[i] = r[15 - i]
},
encryptBlock: function(t, e) {
this._doCryptBlock(t, e, this._subKeys)
},
decryptBlock: function(t, e) {
this._doCryptBlock(t, e, this._invSubKeys)
},
_doCryptBlock: function(t, i, o) {
this._lBlock = t[i],
this._rBlock = t[i + 1],
e.call(this, 4, 252645135),
e.call(this, 16, 65535),
n.call(this, 2, 858993459),
n.call(this, 8, 16711935),
e.call(this, 1, 1431655765);
for (var r = 0; r < 16; r++) {
for (var a = o[r], s = this._lBlock, l = this._rBlock, u = 0, c = 0; c < 8; c++) u |= f[c][((l ^ a[c]) & d[c]) >>> 0];
this._lBlock = l,
this._rBlock = s ^ u
}
var h = this._lBlock;
this._lBlock = this._rBlock,
this._rBlock = h,
e.call(this, 1, 1431655765),
n.call(this, 8, 16711935),
n.call(this, 2, 858993459),
e.call(this, 16, 65535),
e.call(this, 4, 252645135),
t[i] = this._lBlock,
t[i + 1] = this._rBlock
},
keySize: 2,
ivSize: 2,
blockSize: 2
});
i.DES = a._createHelper(h);
var v = s.TripleDES = a.extend({
_doReset: function() {
var t = this._key,
e = t.words;
this._des1 = h.createEncryptor(r.create(e.slice(0, 2))),
this._des2 = h.createEncryptor(r.create(e.slice(2, 4))),
this._des3 = h.createEncryptor(r.create(e.slice(4, 6)))
},
encryptBlock: function(t, e) {
this._des1.encryptBlock(t, e),
this._des2.decryptBlock(t, e),
this._des3.encryptBlock(t, e)
},
decryptBlock: function(t, e) {
this._des3.decryptBlock(t, e),
this._des2.encryptBlock(t, e),
this._des1.decryptBlock(t, e)
},
keySize: 6,
ivSize: 2,
blockSize: 2
});
i.TripleDES = a._createHelper(v)
} (),
t.TripleDES
})
},
function(t, e, n) {
e = t.exports = n(273)(),
e.push([t.i, '.floor-control{font-size:15px;color:#646464;height:180px;width:38px;background:#fff;position:relative;bottom:83px!important;margin-left:31px;margin-right:30px;border-radius:40px;webkit-user-select:none;ms-user-select:none;moz-user-select:none;apple-user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:10}.floor-control:after{position:absolute;top:0;left:0;width:200%;height:200%;transform:scale(.5);transform-origin:left top;border-radius:40px;z-index:1000000;box-shadow:0 0 1px 1px rgba(0,0,0,.12)}.floor-control ul{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:0;padding-inline-end:0;-webkit-margin-before:0;margin-block-start:0;-webkit-margin-after:0;margin-block-end:0}.floor-control .arr-top{width:38px;position:absolute;z-index:100;top:-2px}.floor-control .arr-bottom{width:38px;position:absolute;z-index:100;bottom:-2px}.floor-control .floor-control-wrapper{overflow:hidden;height:160px;width:100%;position:absolute;top:10px}.floor-control .floor-control-wrapper .floor-control-list{font-size:12px;list-style-type:none;margin:0}.floor-control .floor-control-wrapper .floor-control-list .floor-control-item{position:relative;display:block;text-align:center;text-decoration:none;width:38px;height:40px;line-height:40px;transition:color .3s ease-in}.floor-control .floor-control-wrapper .floor-control-list .floor-control-item:after{content:"";position:absolute;width:26px;height:26px;border-radius:30px;z-index:-10;pointer-events:none;left:0;right:0;top:0;bottom:0;margin:auto;opacity:0;transition:opacity .2s ease-out;background-color:#4875fd}.floor-control .floor-control-wrapper .floor-control-list .selected-item{color:#fff!important;opacity:1!important}.floor-control .floor-control-wrapper .floor-control-list .selected-item:after{opacity:1}.floor-control .floor-control-wrapper.freezing .floor-control-list .floor-control-item{color:#4d4d4d;opacity:.4}.floor-control-moveup{bottom:83px!important}', ""])
},
function(t, e, n) {
e = t.exports = n(273)(),
e.push([t.i, ".rotate-circle{position:relative;width:60px;height:60px;padding:20px 20px 7px}.rotate-circle,.rotate-circle *{box-sizing:content-box}.rotate-circle .rotate-panel{position:relative;left:0;top:-60px;font-size:16px;line-height:normal;font-family:auto}.rotate-circle .rotate-left{top:15px;left:-6px;transform:rotate(-45deg)}.rotate-circle .rotate-left,.rotate-circle .rotate-top{position:absolute;width:30px;height:30px;border-radius:30px 0 0 0;background:#fff}.rotate-circle .rotate-top{left:15px;top:-6px;transform:rotate(45deg)}.rotate-circle .rotate-right{left:36px;top:15px;border-radius:0 30px 0 0}.rotate-circle .rotate-bottom,.rotate-circle .rotate-right{position:absolute;width:30px;height:30px;background:#fff;transform:rotate(45deg)}.rotate-circle .rotate-bottom{left:15px;top:36px;border-radius:0 0 30px 0}.rotate-circle .compass-circle{width:28px;height:28px;background:#fff;border:1px solid rgba(0,20,51,.1);border-radius:50%;position:relative;left:15px;top:-15px;z-index:100}.rotate-circle .compass-img{height:28px;left:30%;position:relative;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.rotate-circle .compass-circle-background{width:28px;height:28px;background:#e7eaef;border:1px solid rgba(0,20,51,.1);border-radius:50%;position:relative;left:15px;top:15px;z-index:50}.rotate-circle .rotate-left-img{transform:scaleY(-1) rotate(-45deg)}.rotate-circle .rotate-left-img,.rotate-circle .rotate-right-img{width:6px;height:17px;position:relative;left:12px;top:5px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;vertical-align:baseline}.rotate-circle .rotate-right-img{transform:rotate(135deg)}.rotate-circle .rotate-top-img{transform:rotate(-45deg);left:10px;top:-1px}.rotate-circle .rotate-bottom-img,.rotate-circle .rotate-top-img{width:8px;height:4px;position:relative;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;vertical-align:baseline}.rotate-circle .rotate-bottom-img{transform:rotate(135deg);left:13px;top:2px}.rotate-circle .unclickable-rotate-bottom .rotate-bottom-img,.rotate-circle .unclickable-rotate-left .rotate-left-img,.rotate-circle .unclickable-rotate-right .rotate-right-img,.rotate-circle .unclickable-rotate-top .rotate-top-img{opacity:.3}.rotate-circle .clickable-rotate-bottom:hover,.rotate-circle .clickable-rotate-left:hover,.rotate-circle .clickable-rotate-right:hover,.rotate-circle .clickable-rotate-top:hover{background:#f2f4f8}.rotate-circle .clickable-rotate-bottom:active,.rotate-circle .clickable-rotate-left:active,.rotate-circle .clickable-rotate-right:active,.rotate-circle .clickable-rotate-top:active{background:#e7eaef}", ""])
},
function(t, e, n) {
e = t.exports = n(273)(),
e.push([t.i, ".tmap-zoom-control{margin:10px 30px 20px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;position:relative;width:40px;height:80px;background:#fff;box-shadow:0 8px 19px rgba(41,64,102,.12);border-radius:4px}.tmap-zoom-control .tmap-zoom-content{-ms-flex:auto;flex:auto;-ms-flex-order:1;order:1;-ms-flex-positive:0;flex-grow:0;margin:8px 0}.tmap-zoom-control .tmap-zoom-in{position:absolute;width:24px;height:24px;left:8px;top:8px}.tmap-zoom-control .tmap-zoom-out{position:absolute;width:24px;height:24px;left:8px;top:48px}.tmap-zoom-control .tmap-zoom-spliter{height:1px;width:40px;background-color:#dee2e8;margin:auto}.tmap-zoom-control .tmap-zoom-number{display:inline;height:22px;top:40px;text-align:center;font-size:14px;font-weight:600;font-style:medium;font-family:Microsoft YaHei,PingFang SC;color:#000;line-height:22px}", ""])
},
, ,
function(t, e) {
"function" == typeof Object.create ? t.exports = function(t, e) {
t.super_ = e,
t.prototype = Object.create(e.prototype, {
constructor: {
value: t,
enumerable: !1,
writable: !0,
configurable: !0
}
})
}: t.exports = function(t, e) {
t.super_ = e;
var n = function() {};
n.prototype = e.prototype,
t.prototype = new n,
t.prototype.constructor = t
}
},
function(t, e, n) {
"use strict"; (function(e) {
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
* @license MIT
*/
function i(t, e) {
if (t === e) return 0;
for (var n = t.length,
i = e.length,
o = 0,
r = Math.min(n, i); o < r; ++o) if (t[o] !== e[o]) {
n = t[o],
i = e[o];
break
}
return n < i ? -1 : i < n ? 1 : 0
}
function o(t) {
return e.Buffer && "function" == typeof e.Buffer.isBuffer ? e.Buffer.isBuffer(t) : !(null == t || !t._isBuffer)
}
function r(t) {
return Object.prototype.toString.call(t)
}
function a(t) {
return ! o(t) && ("function" == typeof e.ArrayBuffer && ("function" == typeof ArrayBuffer.isView ? ArrayBuffer.isView(t) : !!t && (t instanceof DataView || !!(t.buffer && t.buffer instanceof ArrayBuffer))))
}
function s(t) {
if (S.isFunction(t)) {
if (T) return t.name;
var e = t.toString(),
n = e.match(P);
return n && n[1]
}
}
function l(t, e) {
return "string" == typeof t ? t.length < e ? t: t.slice(0, e) : t
}
function u(t) {
if (T || !S.isFunction(t)) return S.inspect(t);
var e = s(t);
return "[Function" + (e ? ": " + e: "") + "]"
}
function c(t) {
return l(u(t.actual), 128) + " " + t.operator + " " + l(u(t.expected), 128)
}
function f(t, e, n, i, o) {
throw new A.AssertionError({
message: n,
actual: t,
expected: e,
operator: i,
stackStartFunction: o
})
}
function d(t, e) {
t || f(t, !0, e, "==", A.ok)
}
function h(t, e, n, s) {
if (t === e) return ! 0;
if (o(t) && o(e)) return 0 === i(t, e);
if (S.isDate(t) && S.isDate(e)) return t.getTime() === e.getTime();
if (S.isRegExp(t) && S.isRegExp(e)) return t.source === e.source && t.global === e.global && t.multiline === e.multiline && t.lastIndex === e.lastIndex && t.ignoreCase === e.ignoreCase;
if (null !== t && "object" == typeof t || null !== e && "object" == typeof e) {
if (a(t) && a(e) && r(t) === r(e) && !(t instanceof Float32Array || t instanceof Float64Array)) return 0 === i(new Uint8Array(t.buffer), new Uint8Array(e.buffer));
if (o(t) !== o(e)) return ! 1;
s = s || {
actual: [],
expected: []
};
var l = s.actual.indexOf(t);
return - 1 !== l && l === s.expected.indexOf(e) || (s.actual.push(t), s.expected.push(e), p(t, e, n, s))
}
return n ? t === e: t == e
}
function v(t) {
return "[object Arguments]" == Object.prototype.toString.call(t)
}
function p(t, e, n, i) {
if (null === t || void 0 === t || null === e || void 0 === e) return ! 1;
if (S.isPrimitive(t) || S.isPrimitive(e)) return t === e;
if (n && Object.getPrototypeOf(t) !== Object.getPrototypeOf(e)) return ! 1;
var o = v(t),
r = v(e);
if (o && !r || !o && r) return ! 1;
if (o) return t = E.call(t),
e = E.call(e),
h(t, e, n);
var a, s, l = I(t),
u = I(e);
if (l.length !== u.length) return ! 1;
for (l.sort(), u.sort(), s = l.length - 1; s >= 0; s--) if (l[s] !== u[s]) return ! 1;
for (s = l.length - 1; s >= 0; s--) if (a = l[s], !h(t[a], e[a], n, i)) return ! 1;
return ! 0
}
function _(t, e, n) {
h(t, e, !0) && f(t, e, n, "notDeepStrictEqual", _)
}
function m(t, e) {
if (!t || !e) return ! 1;
if ("[object RegExp]" == Object.prototype.toString.call(e)) return e.test(t);
try {
if (t instanceof e) return ! 0
} catch(t) {}
return ! Error.isPrototypeOf(e) && !0 === e.call({},
t)
}
function g(t) {
var e;
try {
t()
} catch(t) {
e = t
}
return e
}
function y(t, e, n, i) {
var o;
if ("function" != typeof e) throw new TypeError('"block" argument must be a function');
"string" == typeof n && (i = n, n = null),
o = g(e),
i = (n && n.name ? " (" + n.name + ").": ".") + (i ? " " + i: "."),
t && !o && f(o, n, "Missing expected exception" + i);
var r = "string" == typeof i,
a = !t && S.isError(o),
s = !t && o && !n;
if ((a && r && m(o, n) || s) && f(o, n, "Got unwanted exception" + i), t && o && n && !m(o, n) || !t && o) throw o
}
function x(t, e) {
t || f(t, !0, e, "==", x)
}
var b = n(1014),
S = n(1051),
w = Object.prototype.hasOwnProperty,
E = Array.prototype.slice,
T = function() {
return "foo" ===
function() {}.name
} (),
A = t.exports = d,
P = /\s*function\s+([^\(\s]*)\s*/;
A.AssertionError = function(t) {
this.name = "AssertionError",
this.actual = t.actual,
this.expected = t.expected,
this.operator = t.operator,
t.message ? (this.message = t.message, this.generatedMessage = !1) : (this.message = c(this), this.generatedMessage = !0);
var e = t.stackStartFunction || f;
if (Error.captureStackTrace) Error.captureStackTrace(this, e);
else {
var n = new Error;
if (n.stack) {
var i = n.stack,
o = s(e),
r = i.indexOf("\n" + o);
if (r >= 0) {
var a = i.indexOf("\n", r + 1);
i = i.substring(a + 1)
}
this.stack = i
}
}
},
S.inherits(A.AssertionError, Error),
A.fail = f,
A.ok = d,
A.equal = function(t, e, n) {
t != e && f(t, e, n, "==", A.equal)
},
A.notEqual = function(t, e, n) {
t == e && f(t, e, n, "!=", A.notEqual)
},
A.deepEqual = function(t, e, n) {
h(t, e, !1) || f(t, e, n, "deepEqual", A.deepEqual)
},
A.deepStrictEqual = function(t, e, n) {
h(t, e, !0) || f(t, e, n, "deepStrictEqual", A.deepStrictEqual)
},
A.notDeepEqual = function(t, e, n) {
h(t, e, !1) && f(t, e, n, "notDeepEqual", A.notDeepEqual)
},
A.notDeepStrictEqual = _,
A.strictEqual = function(t, e, n) {
t !== e && f(t, e, n, "===", A.strictEqual)
},
A.notStrictEqual = function(t, e, n) {
t === e && f(t, e, n, "!==", A.notStrictEqual)
},
A.throws = function(t, e, n) {
y(!0, t, e, n)
},
A.doesNotThrow = function(t, e, n) {
y(!1, t, e, n)
},
A.ifError = function(t) {
if (t) throw t
},
A.strict = b(x, A, {
equal: A.strictEqual,
deepEqual: A.deepStrictEqual,
notEqual: A.notStrictEqual,
notDeepEqual: A.notDeepStrictEqual
}),
A.strict.strict = A.strict;
var I = Object.keys ||
function(t) {
var e = [];
for (var n in t) w.call(t, n) && e.push(n);
return e
}
}).call(e, n(142))
},
function(t, e, n) {
"use strict";
function i(t) {
if (null === t || void 0 === t) throw new TypeError("Object.assign cannot be called with null or undefined");
return Object(t)
}
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/
var o = Object.getOwnPropertySymbols,
r = Object.prototype.hasOwnProperty,
a = Object.prototype.propertyIsEnumerable;
t.exports = function() {
try {
if (!Object.assign) return ! 1;
var t = new String("abc");
if (t[5] = "de", "5" === Object.getOwnPropertyNames(t)[0]) return ! 1;
for (var e = {},
n = 0; n < 10; n++) e["_" + String.fromCharCode(n)] = n;
if ("0123456789" !== Object.getOwnPropertyNames(e).map(function(t) {
return e[t]
}).join("")) return ! 1;
var i = {};
return "abcdefghijklmnopqrst".split("").forEach(function(t) {
i[t] = t
}),
"abcdefghijklmnopqrst" === Object.keys(Object.assign({},
i)).join("")
} catch(t) {
return ! 1
}
} () ? Object.assign: function(t, e) {
for (var n, s, l = i(t), u = 1; u < arguments.length; u++) {
n = Object(arguments[u]);
for (var c in n) r.call(n, c) && (l[c] = n[c]);
if (o) {
s = o(n);
for (var f = 0; f < s.length; f++) a.call(n, s[f]) && (l[s[f]] = n[s[f]])
}
}
return l
}
},
function(t, e, n) {
"use strict";
function i(t) {
if (! (this instanceof i)) return new i(t);
this.options = l.assign({
level: v,
method: _,
chunkSize: 16384,
windowBits: 15,
memLevel: 8,
strategy: p,
to: ""
},
t || {});
var e = this.options;
e.raw && e.windowBits > 0 ? e.windowBits = -e.windowBits: e.gzip && e.windowBits > 0 && e.windowBits < 16 && (e.windowBits += 16),
this.err = 0,
this.msg = "",
this.ended = !1,
this.chunks = [],
this.strm = new f,
this.strm.avail_out = 0;
var n = s.deflateInit2(this.strm, e.level, e.method, e.windowBits, e.memLevel, e.strategy);
if (n !== h) throw new Error(c[n]);
if (e.header && s.deflateSetHeader(this.strm, e.header), e.dictionary) {
var o;
if (o = "string" == typeof e.dictionary ? u.string2buf(e.dictionary) : "[object ArrayBuffer]" === d.call(e.dictionary) ? new Uint8Array(e.dictionary) : e.dictionary, (n = s.deflateSetDictionary(this.strm, o)) !== h) throw new Error(c[n]);
this._dict_set = !0
}
}
function o(t, e) {
var n = new i(e);
if (n.push(t, !0), n.err) throw n.msg || c[n.err];
return n.result
}
function r(t, e) {
return e = e || {},
e.raw = !0,
o(t, e)
}
function a(t, e) {
return e = e || {},
e.gzip = !0,
o(t, e)
}
var s = n(1017),
l = n(255),
u = n(553),
c = n(451),
f = n(557),
d = Object.prototype.toString,
h = 0,
v = -1,
p = 0,
_ = 8;
i.prototype.push = function(t, e) {
var n, i, o = this.strm,
r = this.options.chunkSize;
if (this.ended) return ! 1;
i = e === ~~e ? e: !0 === e ? 4 : 0,
"string" == typeof t ? o.input = u.string2buf(t) : "[object ArrayBuffer]" === d.call(t) ? o.input = new Uint8Array(t) : o.input = t,
o.next_in = 0,
o.avail_in = o.input.length;
do {
if (0 === o.avail_out && (o.output = new l.Buf8(r), o.next_out = 0, o.avail_out = r), 1 !== (n = s.deflate(o, i)) && n !== h) return this.onEnd(n), this.ended = !0, !1;
0 !== o.avail_out && (0 !== o.avail_in || 4 !== i && 2 !== i) || ("string" === this.options.to ? this.onData(u.buf2binstring(l.shrinkBuf(o.output, o.next_out))) : this.onData(l.shrinkBuf(o.output, o.next_out)))
} while (( o . avail_in > 0 || 0 === o . avail_out ) && 1 !== n);
return 4 === i ? (n = s.deflateEnd(this.strm), this.onEnd(n), this.ended = !0, n === h) : 2 !== i || (this.onEnd(h), o.avail_out = 0, !0)
},
i.prototype.onData = function(t) {
this.chunks.push(t)
},
i.prototype.onEnd = function(t) {
t === h && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = l.flattenChunks(this.chunks)),
this.chunks = [],
this.err = t,
this.msg = this.strm.msg
},
e.Deflate = i,
e.deflate = o,
e.deflateRaw = r,
e.gzip = a
},
function(t, e, n) {
"use strict";
function i(t) {
if (! (this instanceof i)) return new i(t);
this.options = s.assign({
chunkSize: 16384,
windowBits: 0,
to: ""
},
t || {});
var e = this.options;
e.raw && e.windowBits >= 0 && e.windowBits < 16 && (e.windowBits = -e.windowBits, 0 === e.windowBits && (e.windowBits = -15)),
!(e.windowBits >= 0 && e.windowBits < 16) || t && t.windowBits || (e.windowBits += 32),
e.windowBits > 15 && e.windowBits < 48 && 0 == (15 & e.windowBits) && (e.windowBits |= 15),
this.err = 0,
this.msg = "",
this.ended = !1,
this.chunks = [],
this.strm = new f,
this.strm.avail_out = 0;
var n = a.inflateInit2(this.strm, e.windowBits);
if (n !== u.Z_OK) throw new Error(c[n]);
if (this.header = new d, a.inflateGetHeader(this.strm, this.header), e.dictionary && ("string" == typeof e.dictionary ? e.dictionary = l.string2buf(e.dictionary) : "[object ArrayBuffer]" === h.call(e.dictionary) && (e.dictionary = new Uint8Array(e.dictionary)), e.raw && (n = a.inflateSetDictionary(this.strm, e.dictionary)) !== u.Z_OK)) throw new Error(c[n])
}
function o(t, e) {
var n = new i(e);
if (n.push(t, !0), n.err) throw n.msg || c[n.err];
return n.result
}
function r(t, e) {
return e = e || {},
e.raw = !0,
o(t, e)
}
var a = n(1020),
s = n(255),
l = n(553),
u = n(555),
c = n(451),
f = n(557),
d = n(1018),
h = Object.prototype.toString;
i.prototype.push = function(t, e) {
var n, i, o, r, c, f = this.strm,
d = this.options.chunkSize,
v = this.options.dictionary,
p = !1;
if (this.ended) return ! 1;
i = e === ~~e ? e: !0 === e ? u.Z_FINISH: u.Z_NO_FLUSH,
"string" == typeof t ? f.input = l.binstring2buf(t) : "[object ArrayBuffer]" === h.call(t) ? f.input = new Uint8Array(t) : f.input = t,
f.next_in = 0,
f.avail_in = f.input.length;
do {
if (0 === f.avail_out && (f.output = new s.Buf8(d), f.next_out = 0, f.avail_out = d), n = a.inflate(f, u.Z_NO_FLUSH), n === u.Z_NEED_DICT && v && (n = a.inflateSetDictionary(this.strm, v)), n === u.Z_BUF_ERROR && !0 === p && (n = u.Z_OK, p = !1), n !== u.Z_STREAM_END && n !== u.Z_OK) return this.onEnd(n), this.ended = !0, !1;
f.next_out && (0 !== f.avail_out && n !== u.Z_STREAM_END && (0 !== f.avail_in || i !== u.Z_FINISH && i !== u.Z_SYNC_FLUSH) || ("string" === this.options.to ? (o = l.utf8border(f.output, f.next_out), r = f.next_out - o, c = l.buf2string(f.output, o), f.next_out = r, f.avail_out = d - r, r && s.arraySet(f.output, f.output, o, r, 0), this.onData(c)) : this.onData(s.shrinkBuf(f.output, f.next_out)))), 0 === f.avail_in && 0 === f.avail_out && (p = !0)
} while (( f . avail_in > 0 || 0 === f . avail_out ) && n !== u.Z_STREAM_END);
return n === u.Z_STREAM_END && (i = u.Z_FINISH),
i === u.Z_FINISH ? (n = a.inflateEnd(this.strm), this.onEnd(n), this.ended = !0, n === u.Z_OK) : i !== u.Z_SYNC_FLUSH || (this.onEnd(u.Z_OK), f.avail_out = 0, !0)
},
i.prototype.onData = function(t) {
this.chunks.push(t)
},
i.prototype.onEnd = function(t) {
t === u.Z_OK && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = s.flattenChunks(this.chunks)),
this.chunks = [],
this.err = t,
this.msg = this.strm.msg
},
e.Inflate = i,
e.inflate = o,
e.inflateRaw = r,
e.ungzip = o
},
function(t, e, n) {
"use strict";
function i(t, e) {
return t.msg = B[e],
e
}
function o(t) {
return (t << 1) - (t > 4 ? 9 : 0)
}
function r(t) {
for (var e = t.length; --e >= 0;) t[e] = 0
}
function a(t) {
var e = t.state,
n = e.pending;
n > t.avail_out && (n = t.avail_out),
0 !== n && (L.arraySet(t.output, e.pending_buf, e.pending_out, n, t.next_out), t.next_out += n, e.pending_out += n, t.total_out += n, t.avail_out -= n, e.pending -= n, 0 === e.pending && (e.pending_out = 0))
}
function s(t, e) {
M._tr_flush_block(t, t.block_start >= 0 ? t.block_start: -1, t.strstart - t.block_start, e),
t.block_start = t.strstart,
a(t.strm)
}
function l(t, e) {
t.pending_buf[t.pending++] = e
}
function u(t, e) {
t.pending_buf[t.pending++] = e >>> 8 & 255,
t.pending_buf[t.pending++] = 255 & e
}
function c(t, e, n, i) {
var o = t.avail_in;
return o > i && (o = i),
0 === o ? 0 : (t.avail_in -= o, L.arraySet(e, t.input, t.next_in, o, n), 1 === t.state.wrap ? t.adler = C(t.adler, e, o, n) : 2 === t.state.wrap && (t.adler = R(t.adler, e, o, n)), t.next_in += o, t.total_in += o, o)
}
function f(t, e) {
var n, i, o = t.max_chain_length,
r = t.strstart,
a = t.prev_length,
s = t.nice_match,
l = t.strstart > t.w_size - ut ? t.strstart - (t.w_size - ut) : 0,
u = t.window,
c = t.w_mask,
f = t.prev,
d = t.strstart + lt,
h = u[r + a - 1],
v = u[r + a];
t.prev_length >= t.good_match && (o >>= 2),
s > t.lookahead && (s = t.lookahead);
do {
if (n = e, u[n + a] === v && u[n + a - 1] === h && u[n] === u[r] && u[++n] === u[r + 1]) {
r += 2,
n++;
do {} while ( u [++ r ] === u[++n] && u[++r] === u[++n] && u[++r] === u[++n] && u[++r] === u[++n] && u[++r] === u[++n] && u[++r] === u[++n] && u[++r] === u[++n] && u[++r] === u[++n] && r < d);
if (i = lt - (d - r), r = d - lt, i > a) {
if (t.match_start = e, a = i, i >= s) break;
h = u[r + a - 1],
v = u[r + a]
}
}
} while (( e = f [ e & c ]) > l && 0 != --o);
return a <= t.lookahead ? a: t.lookahead
}
function d(t) {
var e, n, i, o, r, a = t.w_size;
do {
if (o = t.window_size - t.lookahead - t.strstart, t.strstart >= a + (a - ut)) {
L.arraySet(t.window, t.window, a, a, 0),
t.match_start -= a,
t.strstart -= a,
t.block_start -= a,
n = t.hash_size,
e = n;
do {
i = t.head[--e], t.head[e] = i >= a ? i - a: 0
} while (-- n );
n = a,
e = n;
do {
i = t.prev[--e], t.prev[e] = i >= a ? i - a: 0
} while (-- n );
o += a
}
if (0 === t.strm.avail_in) break;
if (n = c(t.strm, t.window, t.strstart + t.lookahead, o), t.lookahead += n, t.lookahead + t.insert >= st) for (r = t.strstart - t.insert, t.ins_h = t.window[r], t.ins_h = (t.ins_h << t.hash_shift ^ t.window[r + 1]) & t.hash_mask; t.insert && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[r + st - 1]) & t.hash_mask, t.prev[r & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = r, r++, t.insert--, !(t.lookahead + t.insert < st)););
} while ( t . lookahead < ut && 0 !== t . strm . avail_in )
}
function h(t, e) {
var n = 65535;
for (n > t.pending_buf_size - 5 && (n = t.pending_buf_size - 5);;) {
if (t.lookahead <= 1) {
if (d(t), 0 === t.lookahead && e === N) return gt;
if (0 === t.lookahead) break
}
t.strstart += t.lookahead,
t.lookahead = 0;
var i = t.block_start + n;
if ((0 === t.strstart || t.strstart >= i) && (t.lookahead = t.strstart - i, t.strstart = i, s(t, !1), 0 === t.strm.avail_out)) return gt;
if (t.strstart - t.block_start >= t.w_size - ut && (s(t, !1), 0 === t.strm.avail_out)) return gt
}
return t.insert = 0,
e === z ? (s(t, !0), 0 === t.strm.avail_out ? xt: bt) : (t.strstart > t.block_start && (s(t, !1), t.strm.avail_out), gt)
}
function v(t, e) {
for (var n, i;;) {
if (t.lookahead < ut) {
if (d(t), t.lookahead < ut && e === N) return gt;
if (0 === t.lookahead) break
}
if (n = 0, t.lookahead >= st && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + st - 1]) & t.hash_mask, n = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), 0 !== n && t.strstart - n <= t.w_size - ut && (t.match_length = f(t, n)), t.match_length >= st) if (i = M._tr_tally(t, t.strstart - t.match_start, t.match_length - st), t.lookahead -= t.match_length, t.match_length <= t.max_lazy_match && t.lookahead >= st) {
t.match_length--;
do {
t.strstart++, t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + st - 1]) & t.hash_mask, n = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart
} while ( 0 != -- t . match_length );
t.strstart++
} else t.strstart += t.match_length,
t.match_length = 0,
t.ins_h = t.window[t.strstart],
t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + 1]) & t.hash_mask;
else i = M._tr_tally(t, 0, t.window[t.strstart]),
t.lookahead--,
t.strstart++;
if (i && (s(t, !1), 0 === t.strm.avail_out)) return gt
}
return t.insert = t.strstart < st - 1 ? t.strstart: st - 1,
e === z ? (s(t, !0), 0 === t.strm.avail_out ? xt: bt) : t.last_lit && (s(t, !1), 0 === t.strm.avail_out) ? gt: yt
}
function p(t, e) {
for (var n, i, o;;) {
if (t.lookahead < ut) {
if (d(t), t.lookahead < ut && e === N) return gt;
if (0 === t.lookahead) break
}
if (n = 0, t.lookahead >= st && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + st - 1]) & t.hash_mask, n = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart), t.prev_length = t.match_length, t.prev_match = t.match_start, t.match_length = st - 1, 0 !== n && t.prev_length < t.max_lazy_match && t.strstart - n <= t.w_size - ut && (t.match_length = f(t, n), t.match_length <= 5 && (t.strategy === H || t.match_length === st && t.strstart - t.match_start > 4096) && (t.match_length = st - 1)), t.prev_length >= st && t.match_length <= t.prev_length) {
o = t.strstart + t.lookahead - st,
i = M._tr_tally(t, t.strstart - 1 - t.prev_match, t.prev_length - st),
t.lookahead -= t.prev_length - 1,
t.prev_length -= 2;
do {++t.strstart <= o && (t.ins_h = (t.ins_h << t.hash_shift ^ t.window[t.strstart + st - 1]) & t.hash_mask, n = t.prev[t.strstart & t.w_mask] = t.head[t.ins_h], t.head[t.ins_h] = t.strstart)
} while ( 0 != -- t . prev_length );
if (t.match_available = 0, t.match_length = st - 1, t.strstart++, i && (s(t, !1), 0 === t.strm.avail_out)) return gt
} else if (t.match_available) {
if (i = M._tr_tally(t, 0, t.window[t.strstart - 1]), i && s(t, !1), t.strstart++, t.lookahead--, 0 === t.strm.avail_out) return gt
} else t.match_available = 1,
t.strstart++,
t.lookahead--
}
return t.match_available && (i = M._tr_tally(t, 0, t.window[t.strstart - 1]), t.match_available = 0),
t.insert = t.strstart < st - 1 ? t.strstart: st - 1,
e === z ? (s(t, !0), 0 === t.strm.avail_out ? xt: bt) : t.last_lit && (s(t, !1), 0 === t.strm.avail_out) ? gt: yt
}
function _(t, e) {
for (var n, i, o, r, a = t.window;;) {
if (t.lookahead <= lt) {
if (d(t), t.lookahead <= lt && e === N) return gt;
if (0 === t.lookahead) break
}
if (t.match_length = 0, t.lookahead >= st && t.strstart > 0 && (o = t.strstart - 1, (i = a[o]) === a[++o] && i === a[++o] && i === a[++o])) {
r = t.strstart + lt;
do {} while ( i === a [++ o ] && i === a[++o] && i === a[++o] && i === a[++o] && i === a[++o] && i === a[++o] && i === a[++o] && i === a[++o] && o < r);
t.match_length = lt - (r - o),
t.match_length > t.lookahead && (t.match_length = t.lookahead)
}
if (t.match_length >= st ? (n = M._tr_tally(t, 1, t.match_length - st), t.lookahead -= t.match_length, t.strstart += t.match_length, t.match_length = 0) : (n = M._tr_tally(t, 0, t.window[t.strstart]), t.lookahead--, t.strstart++), n && (s(t, !1), 0 === t.strm.avail_out)) return gt
}
return t.insert = 0,
e === z ? (s(t, !0), 0 === t.strm.avail_out ? xt: bt) : t.last_lit && (s(t, !1), 0 === t.strm.avail_out) ? gt: yt
}
function m(t, e) {
for (var n;;) {
if (0 === t.lookahead && (d(t), 0 === t.lookahead)) {
if (e === N) return gt;
break
}
if (t.match_length = 0, n = M._tr_tally(t, 0, t.window[t.strstart]), t.lookahead--, t.strstart++, n && (s(t, !1), 0 === t.strm.avail_out)) return gt
}
return t.insert = 0,
e === z ? (s(t, !0), 0 === t.strm.avail_out ? xt: bt) : t.last_lit && (s(t, !1), 0 === t.strm.avail_out) ? gt: yt
}
function g(t, e, n, i, o) {
this.good_length = t,
this.max_lazy = e,
this.nice_length = n,
this.max_chain = i,
this.func = o
}
function y(t) {
t.window_size = 2 * t.w_size,
r(t.head),
t.max_lazy_match = k[t.level].max_lazy,
t.good_match = k[t.level].good_length,
t.nice_match = k[t.level].nice_length,
t.max_chain_length = k[t.level].max_chain,
t.strstart = 0,
t.block_start = 0,
t.lookahead = 0,
t.insert = 0,
t.match_length = t.prev_length = st - 1,
t.match_available = 0,
t.ins_h = 0
}
function x() {
this.strm = null,
this.status = 0,
this.pending_buf = null,
this.pending_buf_size = 0,
this.pending_out = 0,
this.pending = 0,
this.wrap = 0,
this.gzhead = null,
this.gzindex = 0,
this.method = J,
this.last_flush = -1,
this.w_size = 0,
this.w_bits = 0,
this.w_mask = 0,
this.window = null,
this.window_size = 0,
this.prev = null,
this.head = null,
this.ins_h = 0,
this.hash_size = 0,
this.hash_bits = 0,
this.hash_mask = 0,
this.hash_shift = 0,
this.block_start = 0,
this.match_length = 0,
this.prev_match = 0,
this.match_available = 0,
this.strstart = 0,
this.match_start = 0,
this.lookahead = 0,
this.prev_length = 0,
this.max_chain_length = 0,
this.max_lazy_match = 0,
this.level = 0,
this.strategy = 0,
this.good_match = 0,
this.nice_match = 0,
this.dyn_ltree = new L.Buf16(2 * rt),
this.dyn_dtree = new L.Buf16(2 * (2 * it + 1)),
this.bl_tree = new L.Buf16(2 * (2 * ot + 1)),
r(this.dyn_ltree),
r(this.dyn_dtree),
r(this.bl_tree),
this.l_desc = null,
this.d_desc = null,
this.bl_desc = null,
this.bl_count = new L.Buf16(at + 1),
this.heap = new L.Buf16(2 * nt + 1),
r(this.heap),
this.heap_len = 0,
this.heap_max = 0,
this.depth = new L.Buf16(2 * nt + 1),
r(this.depth),
this.l_buf = 0,
this.lit_bufsize = 0,
this.last_lit = 0,
this.d_buf = 0,
this.opt_len = 0,
this.static_len = 0,
this.matches = 0,
this.insert = 0,
this.bi_buf = 0,
this.bi_valid = 0
}
function b(t) {
var e;
return t && t.state ? (t.total_in = t.total_out = 0, t.data_type = K, e = t.state, e.pending = 0, e.pending_out = 0, e.wrap < 0 && (e.wrap = -e.wrap), e.status = e.wrap ? ft: _t, t.adler = 2 === e.wrap ? 0 : 1, e.last_flush = N, M._tr_init(e), V) : i(t, U)
}
function S(t) {
var e = b(t);
return e === V && y(t.state),
e
}
function w(t, e) {
return t && t.state ? 2 !== t.state.wrap ? U: (t.state.gzhead = e, V) : U
}
function E(t, e, n, o, r, a) {
if (!t) return U;
var s = 1;
if (e === Z && (e = 6), o < 0 ? (s = 0, o = -o) : o > 15 && (s = 2, o -= 16), r < 1 || r > $ || n !== J || o < 8 || o > 15 || e < 0 || e > 9 || a < 0 || a > Q) return i(t, U);
8 === o && (o = 9);
var l = new x;
return t.state = l,
l.strm = t,
l.wrap = s,
l.gzhead = null,
l.w_bits = o,
l.w_size = 1 << l.w_bits,
l.w_mask = l.w_size - 1,
l.hash_bits = r + 7,
l.hash_size = 1 << l.hash_bits,
l.hash_mask = l.hash_size - 1,
l.hash_shift = ~~ ((l.hash_bits + st - 1) / st),
l.window = new L.Buf8(2 * l.w_size),
l.head = new L.Buf16(l.hash_size),
l.prev = new L.Buf16(l.w_size),
l.lit_bufsize = 1 << r + 6,
l.pending_buf_size = 4 * l.lit_bufsize,
l.pending_buf = new L.Buf8(l.pending_buf_size),
l.d_buf = 1 * l.lit_bufsize,
l.l_buf = 3 * l.lit_bufsize,
l.level = e,
l.strategy = a,
l.method = n,
S(t)
}
function T(t, e) {
return E(t, e, J, tt, et, q)
}
function A(t, e) {
var n, s, c, f;
if (!t || !t.state || e > F || e < 0) return t ? i(t, U) : U;
if (s = t.state, !t.output || !t.input && 0 !== t.avail_in || s.status === mt && e !== z) return i(t, 0 === t.avail_out ? G: U);
if (s.strm = t, n = s.last_flush, s.last_flush = e, s.status === ft) if (2 === s.wrap) t.adler = 0,
l(s, 31),
l(s, 139),
l(s, 8),
s.gzhead ? (l(s, (s.gzhead.text ? 1 : 0) + (s.gzhead.hcrc ? 2 : 0) + (s.gzhead.extra ? 4 : 0) + (s.gzhead.name ? 8 : 0) + (s.gzhead.comment ? 16 : 0)), l(s, 255 & s.gzhead.time), l(s, s.gzhead.time >> 8 & 255), l(s, s.gzhead.time >> 16 & 255), l(s, s.gzhead.time >> 24 & 255), l(s, 9 === s.level ? 2 : s.strategy >= W || s.level < 2 ? 4 : 0), l(s, 255 & s.gzhead.os), s.gzhead.extra && s.gzhead.extra.length && (l(s, 255 & s.gzhead.extra.length), l(s, s.gzhead.extra.length >> 8 & 255)), s.gzhead.hcrc && (t.adler = R(t.adler, s.pending_buf, s.pending, 0)), s.gzindex = 0, s.status = dt) : (l(s, 0), l(s, 0), l(s, 0), l(s, 0), l(s, 0), l(s, 9 === s.level ? 2 : s.strategy >= W || s.level < 2 ? 4 : 0), l(s, St), s.status = _t);
else {
var d = J + (s.w_bits - 8 << 4) << 8,
h = -1;
h = s.strategy >= W || s.level < 2 ? 0 : s.level < 6 ? 1 : 6 === s.level ? 2 : 3,
d |= h << 6,
0 !== s.strstart && (d |= ct),
d += 31 - d % 31,
s.status = _t,
u(s, d),
0 !== s.strstart && (u(s, t.adler >>> 16), u(s, 65535 & t.adler)),
t.adler = 1
}
if (s.status === dt) if (s.gzhead.extra) {
for (c = s.pending; s.gzindex < (65535 & s.gzhead.extra.length) && (s.pending !== s.pending_buf_size || (s.gzhead.hcrc && s.pending > c && (t.adler = R(t.adler, s.pending_buf, s.pending - c, c)), a(t), c = s.pending, s.pending !== s.pending_buf_size));) l(s, 255 & s.gzhead.extra[s.gzindex]),
s.gzindex++;
s.gzhead.hcrc && s.pending > c && (t.adler = R(t.adler, s.pending_buf, s.pending - c, c)),
s.gzindex === s.gzhead.extra.length && (s.gzindex = 0, s.status = ht)
} else s.status = ht;
if (s.status === ht) if (s.gzhead.name) {
c = s.pending;
do {
if (s.pending === s.pending_buf_size && (s.gzhead.hcrc && s.pending > c && (t.adler = R(t.adler, s.pending_buf, s.pending - c, c)), a(t), c = s.pending, s.pending === s.pending_buf_size)) {
f = 1;
break
}
f = s.gzindex < s.gzhead.name.length ? 255 & s.gzhead.name.charCodeAt(s.gzindex++) : 0, l(s, f)
} while ( 0 !== f );
s.gzhead.hcrc && s.pending > c && (t.adler = R(t.adler, s.pending_buf, s.pending - c, c)),
0 === f && (s.gzindex = 0, s.status = vt)
} else s.status = vt;
if (s.status === vt) if (s.gzhead.comment) {
c = s.pending;
do {
if (s.pending === s.pending_buf_size && (s.gzhead.hcrc && s.pending > c && (t.adler = R(t.adler, s.pending_buf, s.pending - c, c)), a(t), c = s.pending, s.pending === s.pending_buf_size)) {
f = 1;
break
}
f = s.gzindex < s.gzhead.comment.length ? 255 & s.gzhead.comment.charCodeAt(s.gzindex++) : 0, l(s, f)
} while ( 0 !== f );
s.gzhead.hcrc && s.pending > c && (t.adler = R(t.adler, s.pending_buf, s.pending - c, c)),
0 === f && (s.status = pt)
} else s.status = pt;
if (s.status === pt && (s.gzhead.hcrc ? (s.pending + 2 > s.pending_buf_size && a(t), s.pending + 2 <= s.pending_buf_size && (l(s, 255 & t.adler), l(s, t.adler >> 8 & 255), t.adler = 0, s.status = _t)) : s.status = _t), 0 !== s.pending) {
if (a(t), 0 === t.avail_out) return s.last_flush = -1,
V
} else if (0 === t.avail_in && o(e) <= o(n) && e !== z) return i(t, G);
if (s.status === mt && 0 !== t.avail_in) return i(t, G);
if (0 !== t.avail_in || 0 !== s.lookahead || e !== N && s.status !== mt) {
var v = s.strategy === W ? m(s, e) : s.strategy === X ? _(s, e) : k[s.level].func(s, e);
if (v !== xt && v !== bt || (s.status = mt), v === gt || v === xt) return 0 === t.avail_out && (s.last_flush = -1),
V;
if (v === yt && (e === O ? M._tr_align(s) : e !== F && (M._tr_stored_block(s, 0, 0, !1), e === D && (r(s.head), 0 === s.lookahead && (s.strstart = 0, s.block_start = 0, s.insert = 0))), a(t), 0 === t.avail_out)) return s.last_flush = -1,
V
}
return e !== z ? V: s.wrap <= 0 ? Y: (2 === s.wrap ? (l(s, 255 & t.adler), l(s, t.adler >> 8 & 255), l(s, t.adler >> 16 & 255), l(s, t.adler >> 24 & 255), l(s, 255 & t.total_in), l(s, t.total_in >> 8 & 255), l(s, t.total_in >> 16 & 255), l(s, t.total_in >> 24 & 255)) : (u(s, t.adler >>> 16), u(s, 65535 & t.adler)), a(t), s.wrap > 0 && (s.wrap = -s.wrap), 0 !== s.pending ? V: Y)
}
function P(t) {
var e;
return t && t.state ? (e = t.state.status) !== ft && e !== dt && e !== ht && e !== vt && e !== pt && e !== _t && e !== mt ? i(t, U) : (t.state = null, e === _t ? i(t, j) : V) : U
}
function I(t, e) {
var n, i, o, a, s, l, u, c, f = e.length;
if (!t || !t.state) return U;
if (n = t.state, 2 === (a = n.wrap) || 1 === a && n.status !== ft || n.lookahead) return U;
for (1 === a && (t.adler = C(t.adler, e, f, 0)), n.wrap = 0, f >= n.w_size && (0 === a && (r(n.head), n.strstart = 0, n.block_start = 0, n.insert = 0), c = new L.Buf8(n.w_size), L.arraySet(c, e, f - n.w_size, n.w_size, 0), e = c, f = n.w_size), s = t.avail_in, l = t.next_in, u = t.input, t.avail_in = f, t.next_in = 0, t.input = e, d(n); n.lookahead >= st;) {
i = n.strstart,
o = n.lookahead - (st - 1);
do {
n.ins_h = (n.ins_h << n.hash_shift ^ n.window[i + st - 1]) & n.hash_mask, n.prev[i & n.w_mask] = n.head[n.ins_h], n.head[n.ins_h] = i, i++
} while (-- o );
n.strstart = i,
n.lookahead = st - 1,
d(n)
}
return n.strstart += n.lookahead,
n.block_start = n.strstart,
n.insert = n.lookahead,
n.lookahead = 0,
n.match_length = n.prev_length = st - 1,
n.match_available = 0,
t.next_in = l,
t.input = u,
t.avail_in = s,
n.wrap = a,
V
}
var k, L = n(255),
M = n(1022),
C = n(554),
R = n(556),
B = n(451),
N = 0,
O = 1,
D = 3,
z = 4,
F = 5,
V = 0,
Y = 1,
U = -2,
j = -3,
G = -5,
Z = -1,
H = 1,
W = 2,
X = 3,
Q = 4,
q = 0,
K = 2,
J = 8,
$ = 9,
tt = 15,
et = 8,
nt = 286,
it = 30,
ot = 19,
rt = 2 * nt + 1,
at = 15,
st = 3,
lt = 258,
ut = lt + st + 1,
ct = 32,
ft = 42,
dt = 69,
ht = 73,
vt = 91,
pt = 103,
_t = 113,
mt = 666,
gt = 1,
yt = 2,
xt = 3,
bt = 4,
St = 3;
k = [new g(0, 0, 0, 0, h), new g(4, 4, 8, 4, v), new g(4, 5, 16, 8, v), new g(4, 6, 32, 32, v), new g(4, 4, 16, 16, p), new g(8, 16, 32, 32, p), new g(8, 16, 128, 128, p), new g(8, 32, 128, 256, p), new g(32, 128, 258, 1024, p), new g(32, 258, 258, 4096, p)],
e.deflateInit = T,
e.deflateInit2 = E,
e.deflateReset = S,
e.deflateResetKeep = b,
e.deflateSetHeader = w,
e.deflate = A,
e.deflateEnd = P,
e.deflateSetDictionary = I,
e.deflateInfo = "pako deflate (from Nodeca project)"
},
function(t, e, n) {
"use strict";
function i() {
this.text = 0,
this.time = 0,
this.xflags = 0,
this.os = 0,
this.extra = null,
this.extra_len = 0,
this.name = "",
this.comment = "",
this.hcrc = 0,
this.done = !1
}
t.exports = i
},
function(t, e, n) {
"use strict";
t.exports = function(t, e) {
var n, i, o, r, a, s, l, u, c, f, d, h, v, p, _, m, g, y, x, b, S, w, E, T, A;
n = t.state,
i = t.next_in,
T = t.input,
o = i + (t.avail_in - 5),
r = t.next_out,
A = t.output,
a = r - (e - t.avail_out),
s = r + (t.avail_out - 257),
l = n.dmax,
u = n.wsize,
c = n.whave,
f = n.wnext,
d = n.window,
h = n.hold,
v = n.bits,
p = n.lencode,
_ = n.distcode,
m = (1 << n.lenbits) - 1,
g = (1 << n.distbits) - 1;
t: do {
v < 15 && (h += T[i++] << v, v += 8, h += T[i++] << v, v += 8), y = p[h & m];
e: for (;;) {
if (x = y >>> 24, h >>>= x, v -= x, 0 === (x = y >>> 16 & 255)) A[r++] = 65535 & y;
else {
if (! (16 & x)) {
if (0 == (64 & x)) {
y = p[(65535 & y) + (h & (1 << x) - 1)];
continue e
}
if (32 & x) {
n.mode = 12;
break t
}
t.msg = "invalid literal/length code",
n.mode = 30;
break t
}
b = 65535 & y,
x &= 15,
x && (v < x && (h += T[i++] << v, v += 8), b += h & (1 << x) - 1, h >>>= x, v -= x),
v < 15 && (h += T[i++] << v, v += 8, h += T[i++] << v, v += 8),
y = _[h & g];
n: for (;;) {
if (x = y >>> 24, h >>>= x, v -= x, !(16 & (x = y >>> 16 & 255))) {
if (0 == (64 & x)) {
y = _[(65535 & y) + (h & (1 << x) - 1)];
continue n
}
t.msg = "invalid distance code",
n.mode = 30;
break t
}
if (S = 65535 & y, x &= 15, v < x && (h += T[i++] << v, (v += 8) < x && (h += T[i++] << v, v += 8)), (S += h & (1 << x) - 1) > l) {
t.msg = "invalid distance too far back",
n.mode = 30;
break t
}
if (h >>>= x, v -= x, x = r - a, S > x) {
if ((x = S - x) > c && n.sane) {
t.msg = "invalid distance too far back",
n.mode = 30;
break t
}
if (w = 0, E = d, 0 === f) {
if (w += u - x, x < b) {
b -= x;
do {
A[r++] = d[w++]
} while (-- x );
w = r - S,
E = A
}
} else if (f < x) {
if (w += u + f - x, (x -= f) < b) {
b -= x;
do {
A[r++] = d[w++]
} while (-- x );
if (w = 0, f < b) {
x = f,
b -= x;
do {
A[r++] = d[w++]
} while (-- x );
w = r - S,
E = A
}
}
} else if (w += f - x, x < b) {
b -= x;
do {
A[r++] = d[w++]
} while (-- x );
w = r - S,
E = A
}
for (; b > 2;) A[r++] = E[w++],
A[r++] = E[w++],
A[r++] = E[w++],
b -= 3;
b && (A[r++] = E[w++], b > 1 && (A[r++] = E[w++]))
} else {
w = r - S;
do {
A[r++] = A[w++], A[r++] = A[w++], A[r++] = A[w++], b -= 3
} while ( b > 2 );
b && (A[r++] = A[w++], b > 1 && (A[r++] = A[w++]))
}
break
}
}
break
}
} while ( i < o && r < s );
b = v >> 3,
i -= b,
v -= b << 3,
h &= (1 << v) - 1,
t.next_in = i,
t.next_out = r,
t.avail_in = i < o ? o - i + 5 : 5 - (i - o),
t.avail_out = r < s ? s - r + 257 : 257 - (r - s),
n.hold = h,
n.bits = v
}
},
function(t, e, n) {
"use strict";
function i(t) {
return (t >>> 24 & 255) + (t >>> 8 & 65280) + ((65280 & t) << 8) + ((255 & t) << 24)
}
function o() {
this.mode = 0,
this.last = !1,
this.wrap = 0,
this.havedict = !1,
this.flags = 0,
this.dmax = 0,
this.check = 0,
this.total = 0,
this.head = null,
this.wbits = 0,
this.wsize = 0,
this.whave = 0,
this.wnext = 0,
this.window = null,
this.hold = 0,
this.bits = 0,
this.length = 0,
this.offset = 0,
this.extra = 0,
this.lencode = null,
this.distcode = null,
this.lenbits = 0,
this.distbits = 0,
this.ncode = 0,
this.nlen = 0,
this.ndist = 0,
this.have = 0,
this.next = null,
this.lens = new g.Buf16(320),
this.work = new g.Buf16(288),
this.lendyn = null,
this.distdyn = null,
this.sane = 0,
this.back = 0,
this.was = 0
}
function r(t) {
var e;
return t && t.state ? (e = t.state, t.total_in = t.total_out = e.total = 0, t.msg = "", e.wrap && (t.adler = 1 & e.wrap), e.mode = D, e.last = 0, e.havedict = 0, e.dmax = 32768, e.head = null, e.hold = 0, e.bits = 0, e.lencode = e.lendyn = new g.Buf32(pt), e.distcode = e.distdyn = new g.Buf32(_t), e.sane = 1, e.back = -1, k) : C
}
function a(t) {
var e;
return t && t.state ? (e = t.state, e.wsize = 0, e.whave = 0, e.wnext = 0, r(t)) : C
}
function s(t, e) {
var n, i;
return t && t.state ? (i = t.state, e < 0 ? (n = 0, e = -e) : (n = 1 + (e >> 4), e < 48 && (e &= 15)), e && (e < 8 || e > 15) ? C: (null !== i.window && i.wbits !== e && (i.window = null), i.wrap = n, i.wbits = e, a(t))) : C
}
function l(t, e) {
var n, i;
return t ? (i = new o, t.state = i, i.window = null, n = s(t, e), n !== k && (t.state = null), n) : C
}
function u(t) {
return l(t, mt)
}
function c(t) {
if (gt) {
var e;
for (_ = new g.Buf32(512), m = new g.Buf32(32), e = 0; e < 144;) t.lens[e++] = 8;
for (; e < 256;) t.lens[e++] = 9;
for (; e < 280;) t.lens[e++] = 7;
for (; e < 288;) t.lens[e++] = 8;
for (S(E, t.lens, 0, 288, _, 0, t.work, {
bits: 9
}), e = 0; e < 32;) t.lens[e++] = 5;
S(T, t.lens, 0, 32, m, 0, t.work, {
bits: 5
}),
gt = !1
}
t.lencode = _,
t.lenbits = 9,
t.distcode = m,
t.distbits = 5
}
function f(t, e, n, i) {
var o, r = t.state;
return null === r.window && (r.wsize = 1 << r.wbits, r.wnext = 0, r.whave = 0, r.window = new g.Buf8(r.wsize)),
i >= r.wsize ? (g.arraySet(r.window, e, n - r.wsize, r.wsize, 0), r.wnext = 0, r.whave = r.wsize) : (o = r.wsize - r.wnext, o > i && (o = i), g.arraySet(r.window, e, n - i, o, r.wnext), i -= o, i ? (g.arraySet(r.window, e, n - i, i, 0), r.wnext = i, r.whave = r.wsize) : (r.wnext += o, r.wnext === r.wsize && (r.wnext = 0), r.whave < r.wsize && (r.whave += o))),
0
}
function d(t, e) {
var n, o, r, a, s, l, u, d, h, v, p, _, m, pt, _t, mt, gt, yt, xt, bt, St, wt, Et, Tt, At = 0,
Pt = new g.Buf8(4),
It = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];
if (!t || !t.state || !t.output || !t.input && 0 !== t.avail_in) return C;
n = t.state,
n.mode === X && (n.mode = Q),
s = t.next_out,
r = t.output,
u = t.avail_out,
a = t.next_in,
o = t.input,
l = t.avail_in,
d = n.hold,
h = n.bits,
v = l,
p = u,
wt = k;
t: for (;;) switch (n.mode) {
case D:
if (0 === n.wrap) {
n.mode = Q;
break
}
for (; h < 16;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (2 & n.wrap && 35615 === d) {
n.check = 0,
Pt[0] = 255 & d,
Pt[1] = d >>> 8 & 255,
n.check = x(n.check, Pt, 2, 0),
d = 0,
h = 0,
n.mode = z;
break
}
if (n.flags = 0, n.head && (n.head.done = !1), !(1 & n.wrap) || (((255 & d) << 8) + (d >> 8)) % 31) {
t.msg = "incorrect header check",
n.mode = dt;
break
}
if ((15 & d) !== O) {
t.msg = "unknown compression method",
n.mode = dt;
break
}
if (d >>>= 4, h -= 4, St = 8 + (15 & d), 0 === n.wbits) n.wbits = St;
else if (St > n.wbits) {
t.msg = "invalid window size",
n.mode = dt;
break
}
n.dmax = 1 << St,
t.adler = n.check = 1,
n.mode = 512 & d ? H: X,
d = 0,
h = 0;
break;
case z:
for (; h < 16;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (n.flags = d, (255 & n.flags) !== O) {
t.msg = "unknown compression method",
n.mode = dt;
break
}
if (57344 & n.flags) {
t.msg = "unknown header flags set",
n.mode = dt;
break
}
n.head && (n.head.text = d >> 8 & 1),
512 & n.flags && (Pt[0] = 255 & d, Pt[1] = d >>> 8 & 255, n.check = x(n.check, Pt, 2, 0)),
d = 0,
h = 0,
n.mode = F;
case F:
for (; h < 32;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
n.head && (n.head.time = d),
512 & n.flags && (Pt[0] = 255 & d, Pt[1] = d >>> 8 & 255, Pt[2] = d >>> 16 & 255, Pt[3] = d >>> 24 & 255, n.check = x(n.check, Pt, 4, 0)),
d = 0,
h = 0,
n.mode = V;
case V:
for (; h < 16;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
n.head && (n.head.xflags = 255 & d, n.head.os = d >> 8),
512 & n.flags && (Pt[0] = 255 & d, Pt[1] = d >>> 8 & 255, n.check = x(n.check, Pt, 2, 0)),
d = 0,
h = 0,
n.mode = Y;
case Y:
if (1024 & n.flags) {
for (; h < 16;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
n.length = d,
n.head && (n.head.extra_len = d),
512 & n.flags && (Pt[0] = 255 & d, Pt[1] = d >>> 8 & 255, n.check = x(n.check, Pt, 2, 0)),
d = 0,
h = 0
} else n.head && (n.head.extra = null);
n.mode = U;
case U:
if (1024 & n.flags && (_ = n.length, _ > l && (_ = l), _ && (n.head && (St = n.head.extra_len - n.length, n.head.extra || (n.head.extra = new Array(n.head.extra_len)), g.arraySet(n.head.extra, o, a, _, St)), 512 & n.flags && (n.check = x(n.check, o, _, a)), l -= _, a += _, n.length -= _), n.length)) break t;
n.length = 0,
n.mode = j;
case j:
if (2048 & n.flags) {
if (0 === l) break t;
_ = 0;
do {
St = o[a + _++], n.head && St && n.length < 65536 && (n.head.name += String.fromCharCode(St))
} while ( St && _ < l );
if (512 & n.flags && (n.check = x(n.check, o, _, a)), l -= _, a += _, St) break t
} else n.head && (n.head.name = null);
n.length = 0,
n.mode = G;
case G:
if (4096 & n.flags) {
if (0 === l) break t;
_ = 0;
do {
St = o[a + _++], n.head && St && n.length < 65536 && (n.head.comment += String.fromCharCode(St))
} while ( St && _ < l );
if (512 & n.flags && (n.check = x(n.check, o, _, a)), l -= _, a += _, St) break t
} else n.head && (n.head.comment = null);
n.mode = Z;
case Z:
if (512 & n.flags) {
for (; h < 16;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (d !== (65535 & n.check)) {
t.msg = "header crc mismatch",
n.mode = dt;
break
}
d = 0,
h = 0
}
n.head && (n.head.hcrc = n.flags >> 9 & 1, n.head.done = !0),
t.adler = n.check = 0,
n.mode = X;
break;
case H:
for (; h < 32;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
t.adler = n.check = i(d),
d = 0,
h = 0,
n.mode = W;
case W:
if (0 === n.havedict) return t.next_out = s,
t.avail_out = u,
t.next_in = a,
t.avail_in = l,
n.hold = d,
n.bits = h,
M;
t.adler = n.check = 1,
n.mode = X;
case X:
if (e === P || e === I) break t;
case Q:
if (n.last) {
d >>>= 7 & h,
h -= 7 & h,
n.mode = ut;
break
}
for (; h < 3;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
switch (n.last = 1 & d, d >>>= 1, h -= 1, 3 & d) {
case 0:
n.mode = q;
break;
case 1:
if (c(n), n.mode = nt, e === I) {
d >>>= 2,
h -= 2;
break t
}
break;
case 2:
n.mode = $;
break;
case 3:
t.msg = "invalid block type",
n.mode = dt
}
d >>>= 2,
h -= 2;
break;
case q:
for (d >>>= 7 & h, h -= 7 & h; h < 32;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if ((65535 & d) != (d >>> 16 ^ 65535)) {
t.msg = "invalid stored block lengths",
n.mode = dt;
break
}
if (n.length = 65535 & d, d = 0, h = 0, n.mode = K, e === I) break t;
case K:
n.mode = J;
case J:
if (_ = n.length) {
if (_ > l && (_ = l), _ > u && (_ = u), 0 === _) break t;
g.arraySet(r, o, a, _, s),
l -= _,
a += _,
u -= _,
s += _,
n.length -= _;
break
}
n.mode = X;
break;
case $:
for (; h < 14;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (n.nlen = 257 + (31 & d), d >>>= 5, h -= 5, n.ndist = 1 + (31 & d), d >>>= 5, h -= 5, n.ncode = 4 + (15 & d), d >>>= 4, h -= 4, n.nlen > 286 || n.ndist > 30) {
t.msg = "too many length or distance symbols",
n.mode = dt;
break
}
n.have = 0,
n.mode = tt;
case tt:
for (; n.have < n.ncode;) {
for (; h < 3;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
n.lens[It[n.have++]] = 7 & d,
d >>>= 3,
h -= 3
}
for (; n.have < 19;) n.lens[It[n.have++]] = 0;
if (n.lencode = n.lendyn, n.lenbits = 7, Et = {
bits: n.lenbits
},
wt = S(w, n.lens, 0, 19, n.lencode, 0, n.work, Et), n.lenbits = Et.bits, wt) {
t.msg = "invalid code lengths set",
n.mode = dt;
break
}
n.have = 0,
n.mode = et;
case et:
for (; n.have < n.nlen + n.ndist;) {
for (; At = n.lencode[d & (1 << n.lenbits) - 1], _t = At >>> 24, mt = At >>> 16 & 255, gt = 65535 & At, !(_t <= h);) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (gt < 16) d >>>= _t,
h -= _t,
n.lens[n.have++] = gt;
else {
if (16 === gt) {
for (Tt = _t + 2; h < Tt;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (d >>>= _t, h -= _t, 0 === n.have) {
t.msg = "invalid bit length repeat",
n.mode = dt;
break
}
St = n.lens[n.have - 1],
_ = 3 + (3 & d),
d >>>= 2,
h -= 2
} else if (17 === gt) {
for (Tt = _t + 3; h < Tt;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
d >>>= _t,
h -= _t,
St = 0,
_ = 3 + (7 & d),
d >>>= 3,
h -= 3
} else {
for (Tt = _t + 7; h < Tt;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
d >>>= _t,
h -= _t,
St = 0,
_ = 11 + (127 & d),
d >>>= 7,
h -= 7
}
if (n.have + _ > n.nlen + n.ndist) {
t.msg = "invalid bit length repeat",
n.mode = dt;
break
}
for (; _--;) n.lens[n.have++] = St
}
}
if (n.mode === dt) break;
if (0 === n.lens[256]) {
t.msg = "invalid code -- missing end-of-block",
n.mode = dt;
break
}
if (n.lenbits = 9, Et = {
bits: n.lenbits
},
wt = S(E, n.lens, 0, n.nlen, n.lencode, 0, n.work, Et), n.lenbits = Et.bits, wt) {
t.msg = "invalid literal/lengths set",
n.mode = dt;
break
}
if (n.distbits = 6, n.distcode = n.distdyn, Et = {
bits: n.distbits
},
wt = S(T, n.lens, n.nlen, n.ndist, n.distcode, 0, n.work, Et), n.distbits = Et.bits, wt) {
t.msg = "invalid distances set",
n.mode = dt;
break
}
if (n.mode = nt, e === I) break t;
case nt:
n.mode = it;
case it:
if (l >= 6 && u >= 258) {
t.next_out = s,
t.avail_out = u,
t.next_in = a,
t.avail_in = l,
n.hold = d,
n.bits = h,
b(t, p),
s = t.next_out,
r = t.output,
u = t.avail_out,
a = t.next_in,
o = t.input,
l = t.avail_in,
d = n.hold,
h = n.bits,
n.mode === X && (n.back = -1);
break
}
for (n.back = 0; At = n.lencode[d & (1 << n.lenbits) - 1], _t = At >>> 24, mt = At >>> 16 & 255, gt = 65535 & At, !(_t <= h);) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (mt && 0 == (240 & mt)) {
for (yt = _t, xt = mt, bt = gt; At = n.lencode[bt + ((d & (1 << yt + xt) - 1) >> yt)], _t = At >>> 24, mt = At >>> 16 & 255, gt = 65535 & At, !(yt + _t <= h);) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
d >>>= yt,
h -= yt,
n.back += yt
}
if (d >>>= _t, h -= _t, n.back += _t, n.length = gt, 0 === mt) {
n.mode = lt;
break
}
if (32 & mt) {
n.back = -1,
n.mode = X;
break
}
if (64 & mt) {
t.msg = "invalid literal/length code",
n.mode = dt;
break
}
n.extra = 15 & mt,
n.mode = ot;
case ot:
if (n.extra) {
for (Tt = n.extra; h < Tt;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
n.length += d & (1 << n.extra) - 1,
d >>>= n.extra,
h -= n.extra,
n.back += n.extra
}
n.was = n.length,
n.mode = rt;
case rt:
for (; At = n.distcode[d & (1 << n.distbits) - 1], _t = At >>> 24, mt = At >>> 16 & 255, gt = 65535 & At, !(_t <= h);) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (0 == (240 & mt)) {
for (yt = _t, xt = mt, bt = gt; At = n.distcode[bt + ((d & (1 << yt + xt) - 1) >> yt)], _t = At >>> 24, mt = At >>> 16 & 255, gt = 65535 & At, !(yt + _t <= h);) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
d >>>= yt,
h -= yt,
n.back += yt
}
if (d >>>= _t, h -= _t, n.back += _t, 64 & mt) {
t.msg = "invalid distance code",
n.mode = dt;
break
}
n.offset = gt,
n.extra = 15 & mt,
n.mode = at;
case at:
if (n.extra) {
for (Tt = n.extra; h < Tt;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
n.offset += d & (1 << n.extra) - 1,
d >>>= n.extra,
h -= n.extra,
n.back += n.extra
}
if (n.offset > n.dmax) {
t.msg = "invalid distance too far back",
n.mode = dt;
break
}
n.mode = st;
case st:
if (0 === u) break t;
if (_ = p - u, n.offset > _) {
if ((_ = n.offset - _) > n.whave && n.sane) {
t.msg = "invalid distance too far back",
n.mode = dt;
break
}
_ > n.wnext ? (_ -= n.wnext, m = n.wsize - _) : m = n.wnext - _,
_ > n.length && (_ = n.length),
pt = n.window
} else pt = r,
m = s - n.offset,
_ = n.length;
_ > u && (_ = u),
u -= _,
n.length -= _;
do {
r[s++] = pt[m++]
} while (-- _ );
0 === n.length && (n.mode = it);
break;
case lt:
if (0 === u) break t;
r[s++] = n.length,
u--,
n.mode = it;
break;
case ut:
if (n.wrap) {
for (; h < 32;) {
if (0 === l) break t;
l--,
d |= o[a++] << h,
h += 8
}
if (p -= u, t.total_out += p, n.total += p, p && (t.adler = n.check = n.flags ? x(n.check, r, p, s - p) : y(n.check, r, p, s - p)), p = u, (n.flags ? d: i(d)) !== n.check) {
t.msg = "incorrect data check",
n.mode = dt;
break
}
d = 0,
h = 0
}
n.mode = ct;
case ct:
if (n.wrap && n.flags) {
for (; h < 32;) {
if (0 === l) break t;
l--,
d += o[a++] << h,
h += 8
}
if (d !== (4294967295 & n.total)) {
t.msg = "incorrect length check",
n.mode = dt;
break
}
d = 0,
h = 0
}
n.mode = ft;
case ft:
wt = L;
break t;
case dt:
wt = R;
break t;
case ht:
return B;
case vt:
default:
return C
}
return t.next_out = s,
t.avail_out = u,
t.next_in = a,
t.avail_in = l,
n.hold = d,
n.bits = h,
(n.wsize || p !== t.avail_out && n.mode < dt && (n.mode < ut || e !== A)) && f(t, t.output, t.next_out, p - t.avail_out) ? (n.mode = ht, B) : (v -= t.avail_in, p -= t.avail_out, t.total_in += v, t.total_out += p, n.total += p, n.wrap && p && (t.adler = n.check = n.flags ? x(n.check, r, p, t.next_out - p) : y(n.check, r, p, t.next_out - p)), t.data_type = n.bits + (n.last ? 64 : 0) + (n.mode === X ? 128 : 0) + (n.mode === nt || n.mode === K ? 256 : 0), (0 === v && 0 === p || e === A) && wt === k && (wt = N), wt)
}
function h(t) {
if (!t || !t.state) return C;
var e = t.state;
return e.window && (e.window = null),
t.state = null,
k
}
function v(t, e) {
var n;
return t && t.state ? (n = t.state, 0 == (2 & n.wrap) ? C: (n.head = e, e.done = !1, k)) : C
}
function p(t, e) {
var n, i, o = e.length;
return t && t.state ? (n = t.state, 0 !== n.wrap && n.mode !== W ? C: n.mode === W && (i = 1, (i = y(i, e, o, 0)) !== n.check) ? R: f(t, e, o, o) ? (n.mode = ht, B) : (n.havedict = 1, k)) : C
}
var _, m, g = n(255),
y = n(554),
x = n(556),
b = n(1019),
S = n(1021),
w = 0,
E = 1,
T = 2,
A = 4,
P = 5,
I = 6,
k = 0,
L = 1,
M = 2,
C = -2,
R = -3,
B = -4,
N = -5,
O = 8,
D = 1,
z = 2,
F = 3,
V = 4,
Y = 5,
U = 6,
j = 7,
G = 8,
Z = 9,
H = 10,
W = 11,
X = 12,
Q = 13,
q = 14,
K = 15,
J = 16,
$ = 17,
tt = 18,
et = 19,
nt = 20,
it = 21,
ot = 22,
rt = 23,
at = 24,
st = 25,
lt = 26,
ut = 27,
ct = 28,
ft = 29,
dt = 30,
ht = 31,
vt = 32,
pt = 852,
_t = 592,
mt = 15,
gt = !0;
e.inflateReset = a,
e.inflateReset2 = s,
e.inflateResetKeep = r,
e.inflateInit = u,
e.inflateInit2 = l,
e.inflate = d,
e.inflateEnd = h,
e.inflateGetHeader = v,
e.inflateSetDictionary = p,
e.inflateInfo = "pako inflate (from Nodeca project)"
},
function(t, e, n) {
"use strict";
var i = n(255),
o = [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0],
r = [16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78],
a = [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0],
s = [16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64];
t.exports = function(t, e, n, l, u, c, f, d) {
var h, v, p, _, m, g, y, x, b, S = d.bits,
w = 0,
E = 0,
T = 0,
A = 0,
P = 0,
I = 0,
k = 0,
L = 0,
M = 0,
C = 0,
R = null,
B = 0,
N = new i.Buf16(16),
O = new i.Buf16(16),
D = null,
z = 0;
for (w = 0; w <= 15; w++) N[w] = 0;
for (E = 0; E < l; E++) N[e[n + E]]++;
for (P = S, A = 15; A >= 1 && 0 === N[A]; A--);
if (P > A && (P = A), 0 === A) return u[c++] = 20971520,
u[c++] = 20971520,
d.bits = 1,
0;
for (T = 1; T < A && 0 === N[T]; T++);
for (P < T && (P = T), L = 1, w = 1; w <= 15; w++) if (L <<= 1, (L -= N[w]) < 0) return - 1;
if (L > 0 && (0 === t || 1 !== A)) return - 1;
for (O[1] = 0, w = 1; w < 15; w++) O[w + 1] = O[w] + N[w];
for (E = 0; E < l; E++) 0 !== e[n + E] && (f[O[e[n + E]]++] = E);
if (0 === t ? (R = D = f, g = 19) : 1 === t ? (R = o, B -= 257, D = r, z -= 257, g = 256) : (R = a, D = s, g = -1), C = 0, E = 0, w = T, m = c, I = P, k = 0, p = -1, M = 1 << P, _ = M - 1, 1 === t && M > 852 || 2 === t && M > 592) return 1;
for (;;) {
y = w - k,
f[E] < g ? (x = 0, b = f[E]) : f[E] > g ? (x = D[z + f[E]], b = R[B + f[E]]) : (x = 96, b = 0),
h = 1 << w - k,
v = 1 << I,
T = v;
do {
v -= h, u[m + (C >> k) + v] = y << 24 | x << 16 | b | 0
} while ( 0 !== v );
for (h = 1 << w - 1; C & h;) h >>= 1;
if (0 !== h ? (C &= h - 1, C += h) : C = 0, E++, 0 == --N[w]) {
if (w === A) break;
w = e[n + f[E]]
}
if (w > P && (C & _) !== p) {
for (0 === k && (k = P), m += T, I = w - k, L = 1 << I; I + k < A && !((L -= N[I + k]) <= 0);) I++,
L <<= 1;
if (M += 1 << I, 1 === t && M > 852 || 2 === t && M > 592) return 1;
p = C & _,
u[p] = P << 24 | I << 16 | m - c | 0
}
}
return 0 !== C && (u[m + C] = w - k << 24 | 64 << 16 | 0),
d.bits = P,
0
}
},
function(t, e, n) {
"use strict";
function i(t) {
for (var e = t.length; --e >= 0;) t[e] = 0
}
function o(t, e, n, i, o) {
this.static_tree = t,
this.extra_bits = e,
this.extra_base = n,
this.elems = i,
this.max_length = o,
this.has_stree = t && t.length
}
function r(t, e) {
this.dyn_tree = t,
this.max_code = 0,
this.stat_desc = e
}
function a(t) {
return t < 256 ? rt[t] : rt[256 + (t >>> 7)]
}
function s(t, e) {
t.pending_buf[t.pending++] = 255 & e,
t.pending_buf[t.pending++] = e >>> 8 & 255
}
function l(t, e, n) {
t.bi_valid > W - n ? (t.bi_buf |= e << t.bi_valid & 65535, s(t, t.bi_buf), t.bi_buf = e >> W - t.bi_valid, t.bi_valid += n - W) : (t.bi_buf |= e << t.bi_valid & 65535, t.bi_valid += n)
}
function u(t, e, n) {
l(t, n[2 * e], n[2 * e + 1])
}
function c(t, e) {
var n = 0;
do {
n |= 1 & t, t >>>= 1, n <<= 1
} while (-- e > 0 );
return n >>> 1
}
function f(t) {
16 === t.bi_valid ? (s(t, t.bi_buf), t.bi_buf = 0, t.bi_valid = 0) : t.bi_valid >= 8 && (t.pending_buf[t.pending++] = 255 & t.bi_buf, t.bi_buf >>= 8, t.bi_valid -= 8)
}
function d(t, e) {
var n, i, o, r, a, s, l = e.dyn_tree,
u = e.max_code,
c = e.stat_desc.static_tree,
f = e.stat_desc.has_stree,
d = e.stat_desc.extra_bits,
h = e.stat_desc.extra_base,
v = e.stat_desc.max_length,
p = 0;
for (r = 0; r <= H; r++) t.bl_count[r] = 0;
for (l[2 * t.heap[t.heap_max] + 1] = 0, n = t.heap_max + 1; n < Z; n++) i = t.heap[n],
r = l[2 * l[2 * i + 1] + 1] + 1,
r > v && (r = v, p++),
l[2 * i + 1] = r,
i > u || (t.bl_count[r]++, a = 0, i >= h && (a = d[i - h]), s = l[2 * i], t.opt_len += s * (r + a), f && (t.static_len += s * (c[2 * i + 1] + a)));
if (0 !== p) {
do {
for (r = v - 1; 0 === t.bl_count[r];) r--;
t.bl_count[r]--, t.bl_count[r + 1] += 2, t.bl_count[v]--, p -= 2
} while ( p > 0 );
for (r = v; 0 !== r; r--) for (i = t.bl_count[r]; 0 !== i;)(o = t.heap[--n]) > u || (l[2 * o + 1] !== r && (t.opt_len += (r - l[2 * o + 1]) * l[2 * o], l[2 * o + 1] = r), i--)
}
}
function h(t, e, n) {
var i, o, r = new Array(H + 1),
a = 0;
for (i = 1; i <= H; i++) r[i] = a = a + n[i - 1] << 1;
for (o = 0; o <= e; o++) {
var s = t[2 * o + 1];
0 !== s && (t[2 * o] = c(r[s]++, s))
}
}
function v() {
var t, e, n, i, r, a = new Array(H + 1);
for (n = 0, i = 0; i < V - 1; i++) for (st[i] = n, t = 0; t < 1 << $[i]; t++) at[n++] = i;
for (at[n - 1] = i, r = 0, i = 0; i < 16; i++) for (lt[i] = r, t = 0; t < 1 << tt[i]; t++) rt[r++] = i;
for (r >>= 7; i < j; i++) for (lt[i] = r << 7, t = 0; t < 1 << tt[i] - 7; t++) rt[256 + r++] = i;
for (e = 0; e <= H; e++) a[e] = 0;
for (t = 0; t <= 143;) it[2 * t + 1] = 8,
t++,
a[8]++;
for (; t <= 255;) it[2 * t + 1] = 9,
t++,
a[9]++;
for (; t <= 279;) it[2 * t + 1] = 7,
t++,
a[7]++;
for (; t <= 287;) it[2 * t + 1] = 8,
t++,
a[8]++;
for (h(it, U + 1, a), t = 0; t < j; t++) ot[2 * t + 1] = 5,
ot[2 * t] = c(t, 5);
ut = new o(it, $, Y + 1, U, H),
ct = new o(ot, tt, 0, j, H),
ft = new o(new Array(0), et, 0, G, X)
}
function p(t) {
var e;
for (e = 0; e < U; e++) t.dyn_ltree[2 * e] = 0;
for (e = 0; e < j; e++) t.dyn_dtree[2 * e] = 0;
for (e = 0; e < G; e++) t.bl_tree[2 * e] = 0;
t.dyn_ltree[2 * Q] = 1,
t.opt_len = t.static_len = 0,
t.last_lit = t.matches = 0
}
function _(t) {
t.bi_valid > 8 ? s(t, t.bi_buf) : t.bi_valid > 0 && (t.pending_buf[t.pending++] = t.bi_buf),
t.bi_buf = 0,
t.bi_valid = 0
}
function m(t, e, n, i) {
_(t),
i && (s(t, n), s(t, ~n)),
C.arraySet(t.pending_buf, t.window, e, n, t.pending),
t.pending += n
}
function g(t, e, n, i) {
var o = 2 * e,
r = 2 * n;
return t[o] < t[r] || t[o] === t[r] && i[e] <= i[n]
}
function y(t, e, n) {
for (var i = t.heap[n], o = n << 1; o <= t.heap_len && (o < t.heap_len && g(e, t.heap[o + 1], t.heap[o], t.depth) && o++, !g(e, i, t.heap[o], t.depth));) t.heap[n] = t.heap[o],
n = o,
o <<= 1;
t.heap[n] = i
}
function x(t, e, n) {
var i, o, r, s, c = 0;
if (0 !== t.last_lit) do {
i = t.pending_buf[t.d_buf + 2 * c] << 8 | t.pending_buf[t.d_buf + 2 * c + 1], o = t.pending_buf[t.l_buf + c], c++, 0 === i ? u(t, o, e) : (r = at[o], u(t, r + Y + 1, e), s = $[r], 0 !== s && (o -= st[r], l(t, o, s)), i--, r = a(i), u(t, r, n), 0 !== (s = tt[r]) && (i -= lt[r], l(t, i, s)))
} while ( c < t . last_lit );
u(t, Q, e)
}
function b(t, e) {
var n, i, o, r = e.dyn_tree,
a = e.stat_desc.static_tree,
s = e.stat_desc.has_stree,
l = e.stat_desc.elems,
u = -1;
for (t.heap_len = 0, t.heap_max = Z, n = 0; n < l; n++) 0 !== r[2 * n] ? (t.heap[++t.heap_len] = u = n, t.depth[n] = 0) : r[2 * n + 1] = 0;
for (; t.heap_len < 2;) o = t.heap[++t.heap_len] = u < 2 ? ++u: 0,
r[2 * o] = 1,
t.depth[o] = 0,
t.opt_len--,
s && (t.static_len -= a[2 * o + 1]);
for (e.max_code = u, n = t.heap_len >> 1; n >= 1; n--) y(t, r, n);
o = l;
do {
n = t.heap[1], t.heap[1] = t.heap[t.heap_len--], y(t, r, 1), i = t.heap[1], t.heap[--t.heap_max] = n, t.heap[--t.heap_max] = i, r[2 * o] = r[2 * n] + r[2 * i], t.depth[o] = (t.depth[n] >= t.depth[i] ? t.depth[n] : t.depth[i]) + 1, r[2 * n + 1] = r[2 * i + 1] = o, t.heap[1] = o++, y(t, r, 1)
} while ( t . heap_len >= 2 );
t.heap[--t.heap_max] = t.heap[1],
d(t, e),
h(r, u, t.bl_count)
}
function S(t, e, n) {
var i, o, r = -1,
a = e[1],
s = 0,
l = 7,
u = 4;
for (0 === a && (l = 138, u = 3), e[2 * (n + 1) + 1] = 65535, i = 0; i <= n; i++) o = a,
a = e[2 * (i + 1) + 1],
++s < l && o === a || (s < u ? t.bl_tree[2 * o] += s: 0 !== o ? (o !== r && t.bl_tree[2 * o]++, t.bl_tree[2 * q]++) : s <= 10 ? t.bl_tree[2 * K]++:t.bl_tree[2 * J]++, s = 0, r = o, 0 === a ? (l = 138, u = 3) : o === a ? (l = 6, u = 3) : (l = 7, u = 4))
}
function w(t, e, n) {
var i, o, r = -1,
a = e[1],
s = 0,
c = 7,
f = 4;
for (0 === a && (c = 138, f = 3), i = 0; i <= n; i++) if (o = a, a = e[2 * (i + 1) + 1], !(++s < c && o === a)) {
if (s < f) do {
u(t, o, t.bl_tree)
} while ( 0 != -- s );
else 0 !== o ? (o !== r && (u(t, o, t.bl_tree), s--), u(t, q, t.bl_tree), l(t, s - 3, 2)) : s <= 10 ? (u(t, K, t.bl_tree), l(t, s - 3, 3)) : (u(t, J, t.bl_tree), l(t, s - 11, 7));
s = 0,
r = o,
0 === a ? (c = 138, f = 3) : o === a ? (c = 6, f = 3) : (c = 7, f = 4)
}
}
function E(t) {
var e;
for (S(t, t.dyn_ltree, t.l_desc.max_code), S(t, t.dyn_dtree, t.d_desc.max_code), b(t, t.bl_desc), e = G - 1; e >= 3 && 0 === t.bl_tree[2 * nt[e] + 1]; e--);
return t.opt_len += 3 * (e + 1) + 5 + 5 + 4,
e
}
function T(t, e, n, i) {
var o;
for (l(t, e - 257, 5), l(t, n - 1, 5), l(t, i - 4, 4), o = 0; o < i; o++) l(t, t.bl_tree[2 * nt[o] + 1], 3);
w(t, t.dyn_ltree, e - 1),
w(t, t.dyn_dtree, n - 1)
}
function A(t) {
var e, n = 4093624447;
for (e = 0; e <= 31; e++, n >>>= 1) if (1 & n && 0 !== t.dyn_ltree[2 * e]) return B;
if (0 !== t.dyn_ltree[18] || 0 !== t.dyn_ltree[20] || 0 !== t.dyn_ltree[26]) return N;
for (e = 32; e < Y; e++) if (0 !== t.dyn_ltree[2 * e]) return N;
return B
}
function P(t) {
dt || (v(), dt = !0),
t.l_desc = new r(t.dyn_ltree, ut),
t.d_desc = new r(t.dyn_dtree, ct),
t.bl_desc = new r(t.bl_tree, ft),
t.bi_buf = 0,
t.bi_valid = 0,
p(t)
}
function I(t, e, n, i) {
l(t, (D << 1) + (i ? 1 : 0), 3),
m(t, e, n, !0)
}
function k(t) {
l(t, z << 1, 3),
u(t, Q, it),
f(t)
}
function L(t, e, n, i) {
var o, r, a = 0;
t.level > 0 ? (t.strm.data_type === O && (t.strm.data_type = A(t)), b(t, t.l_desc), b(t, t.d_desc), a = E(t), o = t.opt_len + 3 + 7 >>> 3, (r = t.static_len + 3 + 7 >>> 3) <= o && (o = r)) : o = r = n + 5,
n + 4 <= o && -1 !== e ? I(t, e, n, i) : t.strategy === R || r === o ? (l(t, (z << 1) + (i ? 1 : 0), 3), x(t, it, ot)) : (l(t, (F << 1) + (i ? 1 : 0), 3), T(t, t.l_desc.max_code + 1, t.d_desc.max_code + 1, a + 1), x(t, t.dyn_ltree, t.dyn_dtree)),
p(t),
i && _(t)
}
function M(t, e, n) {
return t.pending_buf[t.d_buf + 2 * t.last_lit] = e >>> 8 & 255,
t.pending_buf[t.d_buf + 2 * t.last_lit + 1] = 255 & e,
t.pending_buf[t.l_buf + t.last_lit] = 255 & n,
t.last_lit++,
0 === e ? t.dyn_ltree[2 * n]++:(t.matches++, e--, t.dyn_ltree[2 * (at[n] + Y + 1)]++, t.dyn_dtree[2 * a(e)]++),
t.last_lit === t.lit_bufsize - 1
}
var C = n(255),
R = 4,
B = 0,
N = 1,
O = 2,
D = 0,
z = 1,
F = 2,
V = 29,
Y = 256,
U = Y + 1 + V,
j = 30,
G = 19,
Z = 2 * U + 1,
H = 15,
W = 16,
X = 7,
Q = 256,
q = 16,
K = 17,
J = 18,
$ = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0],
tt = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13],
et = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7],
nt = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15],
it = new Array(2 * (U + 2));
i(it);
var ot = new Array(2 * j);
i(ot);
var rt = new Array(512);
i(rt);
var at = new Array(256);
i(at);
var st = new Array(V);
i(st);
var lt = new Array(j);
i(lt);
var ut, ct, ft, dt = !1;
e._tr_init = P,
e._tr_stored_block = I,
e._tr_flush_block = L,
e._tr_tally = M,
e._tr_align = k
},
function(t, e) {
function n() {
throw new Error("setTimeout has not been defined")
}
function i() {
throw new Error("clearTimeout has not been defined")
}
function o(t) {
if (c === setTimeout) return setTimeout(t, 0);
if ((c === n || !c) && setTimeout) return c = setTimeout,
setTimeout(t, 0);
try {
return c(t, 0)
} catch(e) {
try {
return c.call(null, t, 0)
} catch(e) {
return c.call(this, t, 0)
}
}
}
function r(t) {
if (f === clearTimeout) return clearTimeout(t);
if ((f === i || !f) && clearTimeout) return f = clearTimeout,
clearTimeout(t);
try {
return f(t)
} catch(e) {
try {
return f.call(null, t)
} catch(e) {
return f.call(this, t)
}
}
}
function a() {
p && h && (p = !1, h.length ? v = h.concat(v) : _ = -1, v.length && s())
}
function s() {
if (!p) {
var t = o(a);
p = !0;
for (var e = v.length; e;) {
for (h = v, v = []; ++_ < e;) h && h[_].run();
_ = -1,
e = v.length
}
h = null,
p = !1,
r(t)
}
}
function l(t, e) {
this.fun = t,
this.array = e
}
function u() {}
var c, f, d = t.exports = {}; !
function() {
try {
c = "function" == typeof setTimeout ? setTimeout: n
} catch(t) {
c = n
}
try {
f = "function" == typeof clearTimeout ? clearTimeout: i
} catch(t) {
f = i
}
} ();
var h, v = [],
p = !1,
_ = -1;
d.nextTick = function(t) {
var e = new Array(arguments.length - 1);
if (arguments.length > 1) for (var n = 1; n < arguments.length; n++) e[n - 1] = arguments[n];
v.push(new l(t, e)),
1 !== v.length || p || o(s)
},
l.prototype.run = function() {
this.fun.apply(null, this.array)
},
d.title = "browser",
d.browser = !0,
d.env = {},
d.argv = [],
d.version = "",
d.versions = {},
d.on = u,
d.addListener = u,
d.once = u,
d.off = u,
d.removeListener = u,
d.removeAllListeners = u,
d.emit = u,
d.prependListener = u,
d.prependOnceListener = u,
d.listeners = function(t) {
return []
},
d.binding = function(t) {
throw new Error("process.binding is not supported")
},
d.cwd = function() {
return "/"
},
d.chdir = function(t) {
throw new Error("process.chdir is not supported")
},
d.umask = function() {
return 0
}
},
function(t, e) {
t.exports = "# WaveFront *.obj file (generated by CINEMA 4D)\n\nmtllib ./escalator.mtl\n\nv -10.38787460327148 3.49382448196411 0.05786377936602\nv -10.38787460327148 2.83549332618713 0.05786377936602\nv 8.37319946289062 3.49382448196411 15.20390701293945\nv 8.37319946289062 2.83549332618713 15.20390701293945\nv -15.11080265045166 2.83549332618713 4.95054340362549\nv -15.11080265045166 3.49382448196411 4.95054340362549\nv -17.63106727600098 3.49382448196411 2.51569700241089\nv -17.63106727600098 2.83549332618713 2.51569700241089\nv -15.63636589050293 2.83549332618713 4.89701271057129\nv -16.17062377929688 2.83549332618713 4.72479200363159\nv -16.67029190063477 2.83549332618713 4.42842483520508\nv -17.09063148498535 2.83549332618713 4.02233219146729\nv -17.39739608764648 2.83549332618713 3.53959894180298\nv -17.57565879821777 2.83549332618713 3.02344822883606\nv -15.63636589050293 3.49382448196411 4.89701271057129\nv -16.17062377929688 3.49382448196411 4.72479200363159\nv -16.67029190063477 3.49382448196411 4.42842483520508\nv -17.09063148498535 3.49382448196411 4.02233219146729\nv -17.39739608764648 3.49382448196411 3.53959894180298\nv -17.57565879821777 3.49382448196411 3.02344822883606\nv -15.11080265045166 3.49382448196411 0.05786377936602\nv -15.11080265045166 2.83549332618713 0.05786377936602\nv -17.63106727600098 3.49382448196411 2.49271011352539\nv -17.63106727600098 2.83549332618713 2.49271011352539\nv -15.63636589050293 3.49382448196411 0.11139420419931\nv -16.17062377929688 3.49382448196411 0.28361487388611\nv -16.67029190063477 3.49382448196411 0.57998245954514\nv -17.09063148498535 3.49382448196411 0.9860748052597\nv -17.39739608764648 3.49382448196411 1.4688081741333\nv -17.57565879821777 3.49382448196411 1.98495888710022\nv -15.63636589050293 2.83549332618713 0.11139420419931\nv -16.17062377929688 2.83549332618713 0.28361487388611\nv -16.67029190063477 2.83549332618713 0.57998245954514\nv -17.09063148498535 2.83549332618713 0.9860748052597\nv -17.39739608764648 2.83549332618713 1.4688081741333\nv -17.57565879821777 2.83549332618713 1.98495888710022\nv 13.17253494262695 3.49382448196411 20.09658622741699\nv 13.17253494262695 2.83549332618713 20.09658622741699\nv 15.69279861450195 2.83549332618713 17.66173934936523\nv 15.69279861450195 3.49382448196411 17.66173934936523\nv 13.69809818267822 3.49382448196411 20.04305648803711\nv 14.23235607147217 3.49382448196411 19.87083435058594\nv 14.73202419281006 3.49382448196411 19.5744686126709\nv 15.15236282348633 3.49382448196411 19.16837501525879\nv 15.45912742614746 3.49382448196411 18.68564224243164\nv 15.63739013671875 3.49382448196411 18.16949081420898\nv 13.69809818267822 2.83549332618713 20.04305648803711\nv 14.23235607147217 2.83549332618713 19.87083435058594\nv 14.73202419281006 2.83549332618713 19.5744686126709\nv 15.15236282348633 2.83549332618713 19.16837501525879\nv 15.45912742614746 2.83549332618713 18.68564224243164\nv 15.63739013671875 2.83549332618713 18.16949081420898\nv 13.17253494262695 2.83549332618713 15.20390701293945\nv 13.17253494262695 3.49382448196411 15.20390701293945\nv 15.69279861450195 2.83549332618713 17.63875389099121\nv 15.69279861450195 3.49382448196411 17.63875389099121\nv 13.69809818267822 2.83549332618713 15.25743770599365\nv 14.23235607147217 2.83549332618713 15.42965793609619\nv 14.73202419281006 2.83549332618713 15.72602558135986\nv 15.15236282348633 2.83549332618713 16.13211822509766\nv 15.45912742614746 2.83549332618713 16.6148509979248\nv 15.63739013671875 2.83549332618713 17.13100242614746\nv 13.69809818267822 3.49382448196411 15.25743770599365\nv 14.23235607147217 3.49382448196411 15.42965793609619\nv 14.73202419281006 3.49382448196411 15.72602558135986\nv 15.15236282348633 3.49382448196411 16.13211822509766\nv 15.45912742614746 3.49382448196411 16.6148509979248\nv 15.63739013671875 3.49382448196411 17.13100242614746\nv -10.38787460327148 2.83549332618713 4.22026777267456\nv -9.80783653259277 2.83549332618713 5.41881465911865\nv -9.80783653259277 3.49382448196411 5.41881465911865\nv -11.14376926422119 2.83549332618713 4.95054340362549\nv -11.14376926422119 3.49382448196411 4.95054340362549\nv -10.38787460327148 3.49382448196411 4.22026777267456\nv -10.93948745727539 2.83549332618713 4.96024227142334\nv -10.7346715927124 2.83549332618713 4.98972845077515\nv -10.53240394592285 2.83549332618713 5.03915452957153\nv -10.33578205108643 2.83549332618713 5.10807466506958\nv -10.14776611328125 2.83549332618713 5.19545078277588\nv -9.97102928161621 2.83549332618713 5.29970645904541\nv -9.97102928161621 3.49382448196411 5.29970645904541\nv -10.14776611328125 3.49382448196411 5.19545078277588\nv -10.33578205108643 3.49382448196411 5.10807466506958\nv -10.53240394592285 3.49382448196411 5.03915452957153\nv -10.7346715927124 3.49382448196411 4.98972845077515\nv -10.93948745727539 3.49382448196411 4.96024227142334\nv 8.37319946289062 2.83549332618713 19.37121200561523\nv 7.79705476760864 2.83549332618713 19.6314582824707\nv 7.79705476760864 3.49382448196411 19.6314582824707\nv 9.12402153015137 3.49382448196411 20.09658622741699\nv 9.12402153015137 2.83549332618713 20.09658622741699\nv 8.37319946289062 3.49382448196411 19.37121200561523\nv 7.95915222167969 2.83549332618713 19.7497673034668\nv 8.13470268249512 2.83549332618713 19.85332298278809\nv 8.32145690917969 2.83549332618713 19.94011306762695\nv 8.51675891876221 2.83549332618713 20.00856971740723\nv 8.71766948699951 2.83549332618713 20.05766487121582\nv 8.92111110687256 2.83549332618713 20.08695220947266\nv 8.92111110687256 3.49382448196411 20.08695220947266\nv 8.71766948699951 3.49382448196411 20.05766487121582\nv 8.51675891876221 3.49382448196411 20.00856971740723\nv 8.32145690917969 3.49382448196411 19.94011306762695\nv 8.13470268249512 3.49382448196411 19.85332298278809\nv 7.95915222167969 3.49382448196411 19.7497673034668\n# 104 vertices\n\nvn 0 0 1\nvn 0 0 0\nvn 1 0 0\nvn 0 0 -1\nvn -1 0 0\nvn 0 1 0\nvn 0.33310228586197 -0.94289070367813 0\nvn 0 -1 0\nvn -0.62815809249878 0.77808576822281 0\nvn -0.1013290733099 0.99485296010971 0\nvn -0.20520241558552 0.97871953248978 0\nvn -0.41104024648666 0.91161721944809 0\nvn -0.6065838932991 0.7950194478035 0\nvn -0.77482038736343 0.63218140602112 0\nvn -0.90074276924133 0.43435296416283 0\nvn -0.97576230764389 0.21883322298527 0\nvn -0.99409872293472 0.10847935080528 0\nvn -0.10132952034473 -0.99485290050507 0\nvn -0.20520263910294 -0.97871953248978 0\nvn -0.41104024648666 -0.91161721944809 0\nvn -0.6065838932991 -0.7950194478035 0\nvn -0.77482026815414 -0.63218152523041 0\nvn -0.90074276924133 -0.43435296416283 0\nvn -0.97576230764389 -0.21883311867714 0\nvn -0.99409866333008 -0.10847944766283 0\nvn 0.10132952034473 0.99485290050507 0\nvn 0.20520223677158 0.97871959209442 0\nvn 0.41103982925415 0.91161739826202 0\nvn 0.60658365488052 0.79501962661743 0\nvn 0.77482026815414 0.63218152523041 0\nvn 0.90074348449707 0.43435138463974 0\nvn 0.97576242685318 0.21883250772953 0\nvn 0.99409848451614 0.10848119109869 0\nvn 0.10132862627506 -0.99485301971436 0\nvn 0.20520259439945 -0.97871953248978 0\nvn 0.41104060411453 -0.91161704063416 0\nvn 0.60658323764801 -0.7950199842453 0\nvn 0.77481991052628 -0.63218206167221 0\nvn 0.90074348449707 -0.43435138463974 0\nvn 0.97576242685318 -0.21883250772953 0\nvn 0.99409848451614 -0.10848119109869 0\nvn -0.58953845500946 0.80774033069611 0\nvn -0.54946291446686 0.83551812171936 0\nvn -0.46531841158867 0.88514333963394 0\nvn -0.37656545639038 0.92638999223709 0\nvn -0.28441932797432 0.95870000123978 0\nvn -0.19015780091286 0.98175352811813 0\nvn -0.09506894648075 0.99547070264816 0\nvn -0.04742458090186 0.99887484312058 0\nvn -0.04742596670985 0.99887478351593 0\nvn -0.09506894648075 0.99547070264816 0\nvn -0.19015677273273 0.98175370693207 0\nvn -0.28441941738129 0.95869994163513 0\nvn -0.37656646966934 0.92638963460922 0\nvn -0.46531823277473 0.88514345884323 0\nvn -0.54946219921112 0.83551859855652 0\n# 56 normals\n\nvt 1 0 0\nvt 0.81572288274765 0 0\nvt 1 1 0\nvt 0 0.49765086174011 0\nvt 0 0.50234913825989 0\nvt 1 0.50234913825989 0\nvt 1 0.49765086174011 0\nvt 0 1 0\nvt 0.8346254825592 1 0\nvt 0.9365501999855 1 0\nvt 0.9365501999855 0 0\nvt 0.8346254825592 0 0\nvt 0.81572288274765 1 0\nvt 0.13769590854645 0 0\nvt 0.05349377542734 0 0\nvt 0.05349377542734 1 0\nvt 0.13769590854645 1 0\nvt 0.15374012291431 0 0\nvt 0.15374012291431 1 0\nvt 0.7953936457634 0 0\nvt 0.17420670390129 0 0\nvt 0.17420670390129 1 0\nvt 0.7953936457634 1 0\nvt 0.18427714705467 0 0\nvt 0.18427714705467 1 0\nvt 0 0 0\nvt -0.02524117194116 0 0\nvt -0.02524117194116 1 0\nvt -0.10397612303495 0 0\nvt -0.10397612303495 1 0\nvt -0.18271106481552 0 0\nvt -0.18271106481552 1 0\nvt -0.26144602894783 0 0\nvt -0.26144602894783 1 0\nvt -0.34018096327782 0 0\nvt -0.34018096327782 1 0\nvt -0.41891592741013 0 0\nvt -0.41891592741013 1 0\nvt -0.49765086174011 0 0\nvt -0.49765086174011 1 0\nvt 0.84625989198685 0 0\nvt 1.01670742034912 1 0\nvt 1.01670742034912 0 0\nvt 1.09686470031738 1 0\nvt 1.09686470031738 0 0\nvt 1.17702186107636 1 0\nvt 1.17702186107636 0 0\nvt 1.25717914104462 1 0\nvt 1.25717914104462 0 0\nvt 1.33733642101288 1 0\nvt 1.33733642101288 0 0\nvt 1.41749358177185 1 0\nvt 1.41749358177185 0 0\nvt 1.49765086174011 1 0\nvt 1.49765086174011 0 0\nvt 0.16899088025093 0 0\nvt 0.16899088025093 1 0\nvt 0.15374012291431 0.850741147995 0\nvt 0.30622574687004 0.35800528526306 0\nvt 0.45763164758682 0.31676697731018 0\nvt 0.60481113195419 0.25926399230957 0\nvt 0.74554884433746 0.18636214733124 0\nvt 0.87784332036972 0.09937715530396 0\nvt 0.15291278064251 0.38260698318481 0\nvt 0.84625989198685 0.850741147995 0\nvt 0.16377504169941 0 0\nvt 0.16377504169941 1 0\nvt 0.15855921804905 0 0\nvt 0.15855921804905 1 0\nvt 0.15334339439869 0 0\nvt 0.15334339439869 1 0\nvt 0.14812757074833 0 0\nvt 0.14812757074833 1 0\nvt 0.14291173219681 0 0\nvt 0.14291173219681 1 0\nvt 0.82902091741562 0 0\nvt 0.82902091741562 1 0\nvt 0.81572288274765 0.85174286365509 0\nvt 0.69377422332764 0.05365812778473 0\nvt 0.84708720445633 0.01328134536743 0\nvt 0.12215665727854 0.47812533378601 0\nvt 0.25445115566254 0.33536338806152 0\nvt 0.39518883824348 0.21571493148804 0\nvt 0.54236835241318 0.12133967876434 0\nvt 0.18427714705467 0.85174286365509 0\nvt 0.82341641187668 0 0\nvt 0.82341641187668 1 0\nvt 0.81781184673309 0 0\nvt 0.81781184673309 1 0\nvt 0.81220728158951 0 0\nvt 0.81220728158951 1 0\nvt 0.80660271644592 0 0\nvt 0.80660271644592 1 0\nvt 0.80099821090698 0 0\nvt 0.80099821090698 1 0\n# 95 texture coordinates\n\no 1\nusemtl escalator3\nf 4/2/2 53/2/1 57/8/1 58/26/1 59/3/1 60/1/1 61/26/1 62/1/1 55/3/1 39/26/1 52/3/1 51/1/1 50/3/1 49/3/1 48/2/1 47/1/1 38/8/1 91/2/1 87/8/1\nf 56/7/3 40/6/3 39/5/3 55/4/3\nf 3/24/2 92/3/4 90/3/4 37/8/4 41/1/4 42/3/4 43/26/4 44/3/4 45/1/4 46/8/4 40/3/4 56/1/4 68/3/4 67/3/4 66/3/4 65/3/4 64/1/4 63/1/4 54/8/4\nf 24/7/5 8/6/5 7/5/5 23/4/5\nf 91/12/6 38/11/6 37/10/6 90/9/6\nf 3/2/7 54/11/8 53/10/8 4/13/7\nf 73/17/6 6/16/6 5/15/6 72/14/6\nf 1/41/2 21/8/4 25/26/4 26/1/4 27/3/4 28/3/4 29/1/4 30/3/4 23/3/4 7/1/4 20/3/4 19/8/4 18/26/4 17/1/4 16/3/4 15/3/4 6/3/4 73/1/4 74/3/4\nf 2/19/7 22/16/8 21/15/8 1/18/7\nf 69/1/2 72/1/1 5/8/1 9/3/1 10/26/1 11/1/1 12/3/1 13/1/1 14/3/1 8/3/1 24/1/1 36/8/1 35/3/1 34/3/1 33/26/1 32/3/1 31/26/1 22/1/1 2/18/1\nf 89/23/9 71/22/9 70/21/9 88/20/9\nf 3/24/2 1/41/4 74/3/4 71/8/4 89/3/4 92/24/4\nf 4/13/7 2/19/7 1/18/7 3/2/7\nf 87/1/2 88/3/1 70/1/1 69/3/1 2/18/1 4/2/1\nf 6/16/10 15/28/11 9/27/11 5/15/10\nf 15/28/11 16/30/12 10/29/12 9/27/11\nf 16/30/12 17/32/13 11/31/13 10/29/12\nf 17/32/13 18/34/14 12/33/14 11/31/13\nf 18/34/14 19/36/15 13/35/15 12/33/14\nf 19/36/15 20/38/16 14/37/16 13/35/15\nf 20/38/16 7/40/17 8/39/17 14/37/16\nf 22/16/18 31/28/19 25/27/19 21/15/18\nf 31/28/19 32/30/20 26/29/20 25/27/19\nf 32/30/20 33/32/21 27/31/21 26/29/20\nf 33/32/21 34/34/22 28/33/22 27/31/21\nf 34/34/22 35/36/23 29/35/23 28/33/22\nf 35/36/23 36/38/24 30/37/24 29/35/23\nf 36/38/24 24/40/25 23/39/25 30/37/24\nf 38/11/26 47/43/27 41/42/27 37/10/26\nf 47/43/27 48/45/28 42/44/28 41/42/27\nf 48/45/28 49/47/29 43/46/29 42/44/28\nf 49/47/29 50/49/30 44/48/30 43/46/29\nf 50/49/30 51/51/31 45/50/31 44/48/30\nf 51/51/31 52/53/32 46/52/32 45/50/31\nf 52/53/32 39/55/33 40/54/33 46/52/32\nf 54/11/34 63/43/35 57/42/35 53/10/34\nf 63/43/35 64/45/36 58/44/36 57/42/35\nf 64/45/36 65/47/37 59/46/37 58/44/36\nf 65/47/37 66/49/38 60/48/38 59/46/37\nf 66/49/38 67/51/39 61/50/39 60/48/38\nf 67/51/39 68/53/40 62/52/40 61/50/39\nf 68/53/40 56/55/41 55/54/41 62/52/40\nf 71/22/42 81/57/43 80/56/43 70/21/42\nf 80/63/2 79/62/1 78/61/1 77/60/1 76/59/1 75/64/1 72/14/1 69/58/1 70/21/1\nf 74/65/2 73/17/4 86/64/4 85/59/4 84/60/4 83/61/4 82/62/4 81/63/4 71/22/4\nf 81/57/43 82/67/44 79/66/44 80/56/43\nf 82/67/44 83/69/45 78/68/45 79/66/44\nf 83/69/45 84/71/46 77/70/46 78/68/45\nf 84/71/46 85/73/47 76/72/47 77/70/46\nf 85/73/47 86/75/48 75/74/48 76/72/47\nf 86/75/48 73/17/49 72/14/49 75/74/48\nf 90/9/50 99/77/51 98/76/51 91/12/50\nf 87/78/1 91/12/1 98/80/1 97/79/1 96/84/1 95/83/1 94/82/1 93/81/1 88/20/1\nf 104/81/4 103/82/4 102/83/4 101/84/4 100/79/4 99/80/4 90/9/4 92/85/4 89/23/4\nf 99/77/51 100/87/52 97/86/52 98/76/51\nf 100/87/52 101/89/53 96/88/53 97/86/52\nf 101/89/53 102/91/54 95/90/54 96/88/53\nf 102/91/54 103/93/55 94/92/55 95/90/54\nf 103/93/55 104/95/56 93/94/56 94/92/55\nf 104/95/56 89/23/42 88/20/42 93/94/56\n\nv -14.80749797821045 -2.56458234786987 0.06820003688335\nv -14.80749797821045 -2.56458234786987 0.12007328867912\nv 13.05556869506836 -2.56458234786987 15.21544075012207\nv 13.05556869506836 -2.56458234786987 15.25115966796875\nv 13.05556869506836 2.8786358833313 15.21544075012207\nv 13.05556869506836 2.8786358833313 15.25115966796875\nv -14.80749797821045 2.8786358833313 0.06820003688335\nv -14.80749797821045 2.8786358833313 0.12007328867912\nv -10.3766450881958 2.8786358833313 0.12007328867912\nv -10.3766450881958 2.8786358833313 0.06820003688335\nv -10.3766450881958 -2.56458234786987 0.06820003688335\nv -10.3766450881958 -2.56458234786987 0.12007328867912\nv 8.33759689331055 2.8786358833313 15.25115966796875\nv 8.33759689331055 -2.56458234786987 15.25115966796875\nv 8.33759689331055 -2.56458234786987 15.21544075012207\nv 8.33759689331055 2.8786358833313 15.21544075012207\n# 16 vertices\n\nvn -0.33345052599907 0.94276762008667 0\nvn 0.33369651436806 -0.94268053770065 0\n# 2 normals\n\nvt 0.21950633823872 1 0\nvt 0.65553259849548 1 0\nvt 0.65553259849548 0 0\nvt 0.21950633823872 0 0\nvt 0.34446743130684 1 0\nvt 0.78049367666244 1 0\nvt 0.78049367666244 0 0\nvt 0.34446743130684 0 0\n# 8 texture coordinates\n\no 2\nusemtl escalator2\nf 115/99/1 119/98/1 118/97/1 116/96/1\nf 109/1/3 110/3/3 108/8/3 107/26/3\nf 120/103/4 114/102/4 113/101/4 117/100/4\nf 105/1/5 106/3/5 112/8/5 111/26/5\nf 116/99/57 118/98/57 117/97/57 113/96/57\nf 114/102/4 111/1/4 112/3/4 113/101/4\nf 115/96/58 105/8/8 111/26/8 114/99/58\nf 116/96/1 106/8/1 105/26/1 115/99/1\nf 113/96/57 112/8/6 106/26/6 116/99/57\nf 118/98/57 108/1/6 110/3/6 117/97/57\nf 119/98/1 107/1/1 108/3/1 118/97/1\nf 117/100/4 110/8/4 109/26/4 120/103/4\n\nusemtl escalator3\nf 114/99/58 120/98/58 119/97/58 115/96/58\nf 120/98/58 109/1/8 107/3/8 119/97/58\n\nv -10.38787460327148 -2.46053695678711 0.05786377936602\nv -10.38787460327148 -3.11886811256409 0.05786377936602\nv 8.37319946289062 -2.46053695678711 15.20390701293945\nv 8.37319946289062 -3.11886811256409 15.20390701293945\nv -15.11080265045166 -3.11886811256409 4.95054340362549\nv -15.11080265045166 -2.46053695678711 4.95054340362549\nv -17.63106727600098 -2.46053695678711 2.51569700241089\nv -17.63106727600098 -3.11886811256409 2.51569700241089\nv -15.63636589050293 -3.11886811256409 4.89701271057129\nv -16.17062377929688 -3.11886811256409 4.72479200363159\nv -16.67029190063477 -3.11886811256409 4.42842483520508\nv -17.09063148498535 -3.11886811256409 4.02233219146729\nv -17.39739608764648 -3.11886811256409 3.53959894180298\nv -17.57565879821777 -3.11886811256409 3.02344822883606\nv -15.63636589050293 -2.46053695678711 4.89701271057129\nv -16.17062377929688 -2.46053695678711 4.72479200363159\nv -16.67029190063477 -2.46053695678711 4.42842483520508\nv -17.09063148498535 -2.46053695678711 4.02233219146729\nv -17.39739608764648 -2.46053695678711 3.53959894180298\nv -17.57565879821777 -2.46053695678711 3.02344822883606\nv -15.11080265045166 -2.46053695678711 0.05786377936602\nv -15.11080265045166 -3.11886811256409 0.05786377936602\nv -17.63106727600098 -2.46053695678711 2.49271011352539\nv -17.63106727600098 -3.11886811256409 2.49271011352539\nv -15.63636589050293 -2.46053695678711 0.11139420419931\nv -16.17062377929688 -2.46053695678711 0.28361487388611\nv -16.67029190063477 -2.46053695678711 0.57998245954514\nv -17.09063148498535 -2.46053695678711 0.9860748052597\nv -17.39739608764648 -2.46053695678711 1.4688081741333\nv -17.57565879821777 -2.46053695678711 1.98495888710022\nv -15.63636589050293 -3.11886811256409 0.11139420419931\nv -16.17062377929688 -3.11886811256409 0.28361487388611\nv -16.67029190063477 -3.11886811256409 0.57998245954514\nv -17.09063148498535 -3.11886811256409 0.9860748052597\nv -17.39739608764648 -3.11886811256409 1.4688081741333\nv -17.57565879821777 -3.11886811256409 1.98495888710022\nv 13.17253494262695 -2.46053695678711 20.09658622741699\nv 13.17253494262695 -3.11886811256409 20.09658622741699\nv 15.69279861450195 -3.11886811256409 17.66173934936523\nv 15.69279861450195 -2.46053695678711 17.66173934936523\nv 13.69809818267822 -2.46053695678711 20.04305648803711\nv 14.23235607147217 -2.46053695678711 19.87083435058594\nv 14.73202419281006 -2.46053695678711 19.5744686126709\nv 15.15236282348633 -2.46053695678711 19.16837501525879\nv 15.45912742614746 -2.46053695678711 18.68564224243164\nv 15.63739013671875 -2.46053695678711 18.16949081420898\nv 13.69809818267822 -3.11886811256409 20.04305648803711\nv 14.23235607147217 -3.11886811256409 19.87083435058594\nv 14.73202419281006 -3.11886811256409 19.5744686126709\nv 15.15236282348633 -3.11886811256409 19.16837501525879\nv 15.45912742614746 -3.11886811256409 18.68564224243164\nv 15.63739013671875 -3.11886811256409 18.16949081420898\nv 13.17253494262695 -3.11886811256409 15.20390701293945\nv 13.17253494262695 -2.46053695678711 15.20390701293945\nv 15.69279861450195 -3.11886811256409 17.63875389099121\nv 15.69279861450195 -2.46053695678711 17.63875389099121\nv 13.69809818267822 -3.11886811256409 15.25743770599365\nv 14.23235607147217 -3.11886811256409 15.42965793609619\nv 14.73202419281006 -3.11886811256409 15.72602558135986\nv 15.15236282348633 -3.11886811256409 16.13211822509766\nv 15.45912742614746 -3.11886811256409 16.6148509979248\nv 15.63739013671875 -3.11886811256409 17.13100242614746\nv 13.69809818267822 -2.46053695678711 15.25743770599365\nv 14.23235607147217 -2.46053695678711 15.42965793609619\nv 14.73202419281006 -2.46053695678711 15.72602558135986\nv 15.15236282348633 -2.46053695678711 16.13211822509766\nv 15.45912742614746 -2.46053695678711 16.6148509979248\nv 15.63739013671875 -2.46053695678711 17.13100242614746\nv -10.38787460327148 -3.11886811256409 4.22026777267456\nv -9.80783653259277 -3.11886811256409 5.41881465911865\nv -9.80783653259277 -2.46053695678711 5.41881465911865\nv -11.14376926422119 -3.11886811256409 4.95054340362549\nv -11.14376926422119 -2.46053695678711 4.95054340362549\nv -10.38787460327148 -2.46053695678711 4.22026777267456\nv -10.93948745727539 -3.11886811256409 4.96024227142334\nv -10.7346715927124 -3.11886811256409 4.98972845077515\nv -10.53240394592285 -3.11886811256409 5.03915452957153\nv -10.33578205108643 -3.11886811256409 5.10807466506958\nv -10.14776611328125 -3.11886811256409 5.19545078277588\nv -9.97102928161621 -3.11886811256409 5.29970645904541\nv -9.97102928161621 -2.46053695678711 5.29970645904541\nv -10.14776611328125 -2.46053695678711 5.19545078277588\nv -10.33578205108643 -2.46053695678711 5.10807466506958\nv -10.53240394592285 -2.46053695678711 5.03915452957153\nv -10.7346715927124 -2.46053695678711 4.98972845077515\nv -10.93948745727539 -2.46053695678711 4.96024227142334\nv 8.37319946289062 -3.11886811256409 19.37121200561523\nv 7.79705476760864 -3.11886811256409 19.6314582824707\nv 7.79705476760864 -2.46053695678711 19.6314582824707\nv 9.12402153015137 -2.46053695678711 20.09658622741699\nv 9.12402153015137 -3.11886811256409 20.09658622741699\nv 8.37319946289062 -2.46053695678711 19.37121200561523\nv 7.95915222167969 -3.11886811256409 19.7497673034668\nv 8.13470268249512 -3.11886811256409 19.85332298278809\nv 8.32145690917969 -3.11886811256409 19.94011306762695\nv 8.51675891876221 -3.11886811256409 20.00856971740723\nv 8.71766948699951 -3.11886811256409 20.05766487121582\nv 8.92111110687256 -3.11886811256409 20.08695220947266\nv 8.92111110687256 -2.46053695678711 20.08695220947266\nv 8.71766948699951 -2.46053695678711 20.05766487121582\nv 8.51675891876221 -2.46053695678711 20.00856971740723\nv 8.32145690917969 -2.46053695678711 19.94011306762695\nv 8.13470268249512 -2.46053695678711 19.85332298278809\nv 7.95915222167969 -2.46053695678711 19.7497673034668\n# 104 vertices\n\n# 0 normal\n\n# 0 texture coordinate\n\no 3\nusemtl escalator3\nf 124/2/2 173/2/1 177/8/1 178/26/1 179/3/1 180/1/1 181/26/1 182/1/1 175/3/1 159/26/1 172/3/1 171/1/1 170/3/1 169/3/1 168/2/1 167/1/1 158/8/1 211/2/1 207/8/1\nf 176/7/3 160/6/3 159/5/3 175/4/3\nf 123/24/2 212/3/4 210/3/4 157/8/4 161/1/4 162/3/4 163/26/4 164/3/4 165/1/4 166/8/4 160/3/4 176/1/4 188/3/4 187/3/4 186/3/4 185/3/4 184/1/4 183/1/4 174/8/4\nf 144/7/5 128/6/5 127/5/5 143/4/5\nf 211/12/6 158/11/6 157/10/6 210/9/6\nf 123/2/7 174/11/8 173/10/8 124/13/7\nf 193/17/6 126/16/6 125/15/6 192/14/6\nf 121/41/2 141/8/4 145/26/4 146/1/4 147/3/4 148/3/4 149/1/4 150/3/4 143/3/4 127/1/4 140/3/4 139/8/4 138/26/4 137/1/4 136/3/4 135/3/4 126/3/4 193/1/4 194/3/4\nf 122/19/7 142/16/8 141/15/8 121/18/7\nf 189/1/2 192/1/1 125/8/1 129/3/1 130/26/1 131/1/1 132/3/1 133/1/1 134/3/1 128/3/1 144/1/1 156/8/1 155/3/1 154/3/1 153/26/1 152/3/1 151/26/1 142/1/1 122/18/1\nf 209/23/9 191/22/9 190/21/9 208/20/9\nf 123/24/2 121/41/4 194/3/4 191/8/4 209/3/4 212/24/4\nf 124/13/7 122/19/7 121/18/7 123/2/7\nf 207/1/2 208/3/1 190/1/1 189/3/1 122/18/1 124/2/1\nf 126/16/10 135/28/11 129/27/11 125/15/10\nf 135/28/11 136/30/12 130/29/12 129/27/11\nf 136/30/12 137/32/13 131/31/13 130/29/12\nf 137/32/13 138/34/14 132/33/14 131/31/13\nf 138/34/14 139/36/15 133/35/15 132/33/14\nf 139/36/15 140/38/16 134/37/16 133/35/15\nf 140/38/16 127/40/17 128/39/17 134/37/16\nf 142/16/18 151/28/19 145/27/19 141/15/18\nf 151/28/19 152/30/20 146/29/20 145/27/19\nf 152/30/20 153/32/21 147/31/21 146/29/20\nf 153/32/21 154/34/22 148/33/22 147/31/21\nf 154/34/22 155/36/23 149/35/23 148/33/22\nf 155/36/23 156/38/24 150/37/24 149/35/23\nf 156/38/24 144/40/25 143/39/25 150/37/24\nf 158/11/26 167/43/27 161/42/27 157/10/26\nf 167/43/27 168/45/28 162/44/28 161/42/27\nf 168/45/28 169/47/29 163/46/29 162/44/28\nf 169/47/29 170/49/30 164/48/30 163/46/29\nf 170/49/30 171/51/31 165/50/31 164/48/30\nf 171/51/31 172/53/32 166/52/32 165/50/31\nf 172/53/32 159/55/33 160/54/33 166/52/32\nf 174/11/34 183/43/35 177/42/35 173/10/34\nf 183/43/35 184/45/36 178/44/36 177/42/35\nf 184/45/36 185/47/37 179/46/37 178/44/36\nf 185/47/37 186/49/38 180/48/38 179/46/37\nf 186/49/38 187/51/39 181/50/39 180/48/38\nf 187/51/39 188/53/40 182/52/40 181/50/39\nf 188/53/40 176/55/41 175/54/41 182/52/40\nf 191/22/42 201/57/43 200/56/43 190/21/42\nf 200/63/2 199/62/1 198/61/1 197/60/1 196/59/1 195/64/1 192/14/1 189/58/1 190/21/1\nf 194/65/2 193/17/4 206/64/4 205/59/4 204/60/4 203/61/4 202/62/4 201/63/4 191/22/4\nf 201/57/43 202/67/44 199/66/44 200/56/43\nf 202/67/44 203/69/45 198/68/45 199/66/44\nf 203/69/45 204/71/46 197/70/46 198/68/45\nf 204/71/46 205/73/47 196/72/47 197/70/46\nf 205/73/47 206/75/48 195/74/48 196/72/47\nf 206/75/48 193/17/49 192/14/49 195/74/48\nf 210/9/50 219/77/51 218/76/51 211/12/50\nf 207/78/1 211/12/1 218/80/1 217/79/1 216/84/1 215/83/1 214/82/1 213/81/1 208/20/1\nf 224/81/4 223/82/4 222/83/4 221/84/4 220/79/4 219/80/4 210/9/4 212/85/4 209/23/4\nf 219/77/51 220/87/52 217/86/52 218/76/51\nf 220/87/52 221/89/53 216/88/53 217/86/52\nf 221/89/53 222/91/54 215/90/54 216/88/53\nf 222/91/54 223/93/55 214/92/55 215/90/54\nf 223/93/55 224/95/56 213/94/56 214/92/55\nf 224/95/56 209/23/42 208/20/42 213/94/56\n\n# 0 vertex\n\n# 0 normal\n\n# 0 texture coordinate\n\no 1_1\nusemtl escalator3\nf 4/2/2 53/2/1 57/8/1 58/26/1 59/3/1 60/1/1 61/26/1 62/1/1 55/3/1 39/26/1 52/3/1 51/1/1 50/3/1 49/3/1 48/2/1 47/1/1 38/8/1 91/2/1 87/8/1\nf 56/7/3 40/6/3 39/5/3 55/4/3\nf 3/24/2 92/3/4 90/3/4 37/8/4 41/1/4 42/3/4 43/26/4 44/3/4 45/1/4 46/8/4 40/3/4 56/1/4 68/3/4 67/3/4 66/3/4 65/3/4 64/1/4 63/1/4 54/8/4\nf 24/7/5 8/6/5 7/5/5 23/4/5\nf 91/12/6 38/11/6 37/10/6 90/9/6\nf 3/2/7 54/11/8 53/10/8 4/13/7\nf 73/17/6 6/16/6 5/15/6 72/14/6\nf 1/41/2 21/8/4 25/26/4 26/1/4 27/3/4 28/3/4 29/1/4 30/3/4 23/3/4 7/1/4 20/3/4 19/8/4 18/26/4 17/1/4 16/3/4 15/3/4 6/3/4 73/1/4 74/3/4\nf 2/19/7 22/16/8 21/15/8 1/18/7\nf 69/1/2 72/1/1 5/8/1 9/3/1 10/26/1 11/1/1 12/3/1 13/1/1 14/3/1 8/3/1 24/1/1 36/8/1 35/3/1 34/3/1 33/26/1 32/3/1 31/26/1 22/1/1 2/18/1\nf 89/23/9 71/22/9 70/21/9 88/20/9\nf 3/24/2 1/41/4 74/3/4 71/8/4 89/3/4 92/24/4\nf 4/13/7 2/19/7 1/18/7 3/2/7\nf 87/1/2 88/3/1 70/1/1 69/3/1 2/18/1 4/2/1\nf 6/16/10 15/28/11 9/27/11 5/15/10\nf 15/28/11 16/30/12 10/29/12 9/27/11\nf 16/30/12 17/32/13 11/31/13 10/29/12\nf 17/32/13 18/34/14 12/33/14 11/31/13\nf 18/34/14 19/36/15 13/35/15 12/33/14\nf 19/36/15 20/38/16 14/37/16 13/35/15\nf 20/38/16 7/40/17 8/39/17 14/37/16\nf 22/16/18 31/28/19 25/27/19 21/15/18\nf 31/28/19 32/30/20 26/29/20 25/27/19\nf 32/30/20 33/32/21 27/31/21 26/29/20\nf 33/32/21 34/34/22 28/33/22 27/31/21\nf 34/34/22 35/36/23 29/35/23 28/33/22\nf 35/36/23 36/38/24 30/37/24 29/35/23\nf 36/38/24 24/40/25 23/39/25 30/37/24\nf 38/11/26 47/43/27 41/42/27 37/10/26\nf 47/43/27 48/45/28 42/44/28 41/42/27\nf 48/45/28 49/47/29 43/46/29 42/44/28\nf 49/47/29 50/49/30 44/48/30 43/46/29\nf 50/49/30 51/51/31 45/50/31 44/48/30\nf 51/51/31 52/53/32 46/52/32 45/50/31\nf 52/53/32 39/55/33 40/54/33 46/52/32\nf 54/11/34 63/43/35 57/42/35 53/10/34\nf 63/43/35 64/45/36 58/44/36 57/42/35\nf 64/45/36 65/47/37 59/46/37 58/44/36\nf 65/47/37 66/49/38 60/48/38 59/46/37\nf 66/49/38 67/51/39 61/50/39 60/48/38\nf 67/51/39 68/53/40 62/52/40 61/50/39\nf 68/53/40 56/55/41 55/54/41 62/52/40\nf 71/22/42 81/57/43 80/56/43 70/21/42\nf 80/63/2 79/62/1 78/61/1 77/60/1 76/59/1 75/64/1 72/14/1 69/58/1 70/21/1\nf 74/65/2 73/17/4 86/64/4 85/59/4 84/60/4 83/61/4 82/62/4 81/63/4 71/22/4\nf 81/57/43 82/67/44 79/66/44 80/56/43\nf 82/67/44 83/69/45 78/68/45 79/66/44\nf 83/69/45 84/71/46 77/70/46 78/68/45\nf 84/71/46 85/73/47 76/72/47 77/70/46\nf 85/73/47 86/75/48 75/74/48 76/72/47\nf 86/75/48 73/17/49 72/14/49 75/74/48\nf 90/9/50 99/77/51 98/76/51 91/12/50\nf 87/78/1 91/12/1 98/80/1 97/79/1 96/84/1 95/83/1 94/82/1 93/81/1 88/20/1\nf 104/81/4 103/82/4 102/83/4 101/84/4 100/79/4 99/80/4 90/9/4 92/85/4 89/23/4\nf 99/77/51 100/87/52 97/86/52 98/76/51\nf 100/87/52 101/89/53 96/88/53 97/86/52\nf 101/89/53 102/91/54 95/90/54 96/88/53\nf 102/91/54 103/93/55 94/92/55 95/90/54\nf 103/93/55 104/95/56 93/94/56 94/92/55\nf 104/95/56 89/23/42 88/20/42 93/94/56\n\n# 0 vertex\n\n# 0 normal\n\n# 0 texture coordinate\n\no 2_1\nusemtl escalator2\nf 115/99/1 119/98/1 118/97/1 116/96/1\nf 109/1/3 110/3/3 108/8/3 107/26/3\nf 120/103/4 114/102/4 113/101/4 117/100/4\nf 105/1/5 106/3/5 112/8/5 111/26/5\nf 116/99/57 118/98/57 117/97/57 113/96/57\nf 114/102/4 111/1/4 112/3/4 113/101/4\nf 115/96/58 105/8/8 111/26/8 114/99/58\nf 116/96/1 106/8/1 105/26/1 115/99/1\nf 113/96/57 112/8/6 106/26/6 116/99/57\nf 118/98/57 108/1/6 110/3/6 117/97/57\nf 119/98/1 107/1/1 108/3/1 118/97/1\nf 117/100/4 110/8/4 109/26/4 120/103/4\n\nusemtl escalator3\nf 114/99/58 120/98/58 119/97/58 115/96/58\nf 120/98/58 109/1/8 107/3/8 119/97/58\n\n# 0 vertex\n\n# 0 normal\n\n# 0 texture coordinate\n\no 3_1\nusemtl escalator3\nf 124/2/2 173/2/1 177/8/1 178/26/1 179/3/1 180/1/1 181/26/1 182/1/1 175/3/1 159/26/1 172/3/1 171/1/1 170/3/1 169/3/1 168/2/1 167/1/1 158/8/1 211/2/1 207/8/1\nf 176/7/3 160/6/3 159/5/3 175/4/3\nf 123/24/2 212/3/4 210/3/4 157/8/4 161/1/4 162/3/4 163/26/4 164/3/4 165/1/4 166/8/4 160/3/4 176/1/4 188/3/4 187/3/4 186/3/4 185/3/4 184/1/4 183/1/4 174/8/4\nf 144/7/5 128/6/5 127/5/5 143/4/5\nf 211/12/6 158/11/6 157/10/6 210/9/6\nf 123/2/7 174/11/8 173/10/8 124/13/7\nf 193/17/6 126/16/6 125/15/6 192/14/6\nf 121/41/2 141/8/4 145/26/4 146/1/4 147/3/4 148/3/4 149/1/4 150/3/4 143/3/4 127/1/4 140/3/4 139/8/4 138/26/4 137/1/4 136/3/4 135/3/4 126/3/4 193/1/4 194/3/4\nf 122/19/7 142/16/8 141/15/8 121/18/7\nf 189/1/2 192/1/1 125/8/1 129/3/1 130/26/1 131/1/1 132/3/1 133/1/1 134/3/1 128/3/1 144/1/1 156/8/1 155/3/1 154/3/1 153/26/1 152/3/1 151/26/1 142/1/1 122/18/1\nf 209/23/9 191/22/9 190/21/9 208/20/9\nf 123/24/2 121/41/4 194/3/4 191/8/4 209/3/4 212/24/4\nf 124/13/7 122/19/7 121/18/7 123/2/7\nf 207/1/2 208/3/1 190/1/1 189/3/1 122/18/1 124/2/1\nf 126/16/10 135/28/11 129/27/11 125/15/10\nf 135/28/11 136/30/12 130/29/12 129/27/11\nf 136/30/12 137/32/13 131/31/13 130/29/12\nf 137/32/13 138/34/14 132/33/14 131/31/13\nf 138/34/14 139/36/15 133/35/15 132/33/14\nf 139/36/15 140/38/16 134/37/16 133/35/15\nf 140/38/16 127/40/17 128/39/17 134/37/16\nf 142/16/18 151/28/19 145/27/19 141/15/18\nf 151/28/19 152/30/20 146/29/20 145/27/19\nf 152/30/20 153/32/21 147/31/21 146/29/20\nf 153/32/21 154/34/22 148/33/22 147/31/21\nf 154/34/22 155/36/23 149/35/23 148/33/22\nf 155/36/23 156/38/24 150/37/24 149/35/23\nf 156/38/24 144/40/25 143/39/25 150/37/24\nf 158/11/26 167/43/27 161/42/27 157/10/26\nf 167/43/27 168/45/28 162/44/28 161/42/27\nf 168/45/28 169/47/29 163/46/29 162/44/28\nf 169/47/29 170/49/30 164/48/30 163/46/29\nf 170/49/30 171/51/31 165/50/31 164/48/30\nf 171/51/31 172/53/32 166/52/32 165/50/31\nf 172/53/32 159/55/33 160/54/33 166/52/32\nf 174/11/34 183/43/35 177/42/35 173/10/34\nf 183/43/35 184/45/36 178/44/36 177/42/35\nf 184/45/36 185/47/37 179/46/37 178/44/36\nf 185/47/37 186/49/38 180/48/38 179/46/37\nf 186/49/38 187/51/39 181/50/39 180/48/38\nf 187/51/39 188/53/40 182/52/40 181/50/39\nf 188/53/40 176/55/41 175/54/41 182/52/40\nf 191/22/42 201/57/43 200/56/43 190/21/42\nf 200/63/2 199/62/1 198/61/1 197/60/1 196/59/1 195/64/1 192/14/1 189/58/1 190/21/1\nf 194/65/2 193/17/4 206/64/4 205/59/4 204/60/4 203/61/4 202/62/4 201/63/4 191/22/4\nf 201/57/43 202/67/44 199/66/44 200/56/43\nf 202/67/44 203/69/45 198/68/45 199/66/44\nf 203/69/45 204/71/46 197/70/46 198/68/45\nf 204/71/46 205/73/47 196/72/47 197/70/46\nf 205/73/47 206/75/48 195/74/48 196/72/47\nf 206/75/48 193/17/49 192/14/49 195/74/48\nf 210/9/50 219/77/51 218/76/51 211/12/50\nf 207/78/1 211/12/1 218/80/1 217/79/1 216/84/1 215/83/1 214/82/1 213/81/1 208/20/1\nf 224/81/4 223/82/4 222/83/4 221/84/4 220/79/4 219/80/4 210/9/4 212/85/4 209/23/4\nf 219/77/51 220/87/52 217/86/52 218/76/51\nf 220/87/52 221/89/53 216/88/53 217/86/52\nf 221/89/53 222/91/54 215/90/54 216/88/53\nf 222/91/54 223/93/55 214/92/55 215/90/54\nf 223/93/55 224/95/56 213/94/56 214/92/55\nf 224/95/56 209/23/42 208/20/42 213/94/56\n\n"
},
function(t, e, n) {
var i = function(t) {
"use strict";
function e(t, e, n, o) {
var r = e && e.prototype instanceof i ? e: i,
a = Object.create(r.prototype),
s = new d(o || []);
return a._invoke = l(t, n, s),
a
}
function n(t, e, n) {
try {
return {
type: "normal",
arg: t.call(e, n)
}
} catch(t) {
return {
type: "throw",
arg: t
}
}
}
function i() {}
function o() {}
function r() {}
function a(t) { ["next", "throw", "return"].forEach(function(e) {
t[e] = function(t) {
return this._invoke(e, t)
}
})
}
function s(t, e) {
function i(o, r, a, s) {
var l = n(t[o], t, r);
if ("throw" !== l.type) {
var u = l.arg,
c = u.value;
return c && "object" == typeof c && m.call(c, "__await") ? e.resolve(c.__await).then(function(t) {
i("next", t, a, s)
},
function(t) {
i("throw", t, a, s)
}) : e.resolve(c).then(function(t) {
u.value = t,
a(u)
},
function(t) {
return i("throw", t, a, s)
})
}
s(l.arg)
}
function o(t, n) {
function o() {
return new e(function(e, o) {
i(t, n, e, o)
})
}
return r = r ? r.then(o, o) : o()
}
var r;
this._invoke = o
}
function l(t, e, i) {
var o = S;
return function(r, a) {
if (o === E) throw new Error("Generator is already running");
if (o === T) {
if ("throw" === r) throw a;
return v()
}
for (i.method = r, i.arg = a;;) {
var s = i.delegate;
if (s) {
var l = u(s, i);
if (l) {
if (l === A) continue;
return l
}
}
if ("next" === i.method) i.sent = i._sent = i.arg;
else if ("throw" === i.method) {
if (o === S) throw o = T,
i.arg;
i.dispatchException(i.arg)
} else "return" === i.method && i.abrupt("return", i.arg);
o = E;
var c = n(t, e, i);
if ("normal" === c.type) {
if (o = i.done ? T: w, c.arg === A) continue;
return {
value: c.arg,
done: i.done
}
}
"throw" === c.type && (o = T, i.method = "throw", i.arg = c.arg)
}
}
}
function u(t, e) {
var i = t.iterator[e.method];
if (i === p) {
if (e.delegate = null, "throw" === e.method) {
if (t.iterator.
return && (e.method = "return", e.arg = p, u(t, e), "throw" === e.method)) return A;
e.method = "throw",
e.arg = new TypeError("The iterator does not provide a 'throw' method")
}
return A
}
var o = n(i, t.iterator, e.arg);
if ("throw" === o.type) return e.method = "throw",
e.arg = o.arg,
e.delegate = null,
A;
var r = o.arg;
return r ? r.done ? (e[t.resultName] = r.value, e.next = t.nextLoc, "return" !== e.method && (e.method = "next", e.arg = p), e.delegate = null, A) : r: (e.method = "throw", e.arg = new TypeError("iterator result is not an object"), e.delegate = null, A)
}
function c(t) {
var e = {
tryLoc: t[0]
};
1 in t && (e.catchLoc = t[1]),
2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]),
this.tryEntries.push(e)
}
function f(t) {
var e = t.completion || {};
e.type = "normal",
delete e.arg,
t.completion = e
}
function d(t) {
this.tryEntries = [{
tryLoc: "root"
}],
t.forEach(c, this),
this.reset(!0)
}
function h(t) {
if (t) {
var e = t[y];
if (e) return e.call(t);
if ("function" == typeof t.next) return t;
if (!isNaN(t.length)) {
var n = -1,
i = function e() {
for (; ++n < t.length;) if (m.call(t, n)) return e.value = t[n],
e.done = !1,
e;
return e.value = p,
e.done = !0,
e
};
return i.next = i
}
}
return {
next: v
}
}
function v() {
return {
value: p,
done: !0
}
}
var p, _ = Object.prototype,
m = _.hasOwnProperty,
g = "function" == typeof Symbol ? Symbol: {},
y = g.iterator || "@@iterator",
x = g.asyncIterator || "@@asyncIterator",
b = g.toStringTag || "@@toStringTag";
t.wrap = e;
var S = "suspendedStart",
w = "suspendedYield",
E = "executing",
T = "completed",
A = {},
P = {};
P[y] = function() {
return this
};
var I = Object.getPrototypeOf,
k = I && I(I(h([])));
k && k !== _ && m.call(k, y) && (P = k);
var L = r.prototype = i.prototype = Object.create(P);
return o.prototype = L.constructor = r,
r.constructor = o,
r[b] = o.displayName = "GeneratorFunction",
t.isGeneratorFunction = function(t) {
var e = "function" == typeof t && t.constructor;
return !! e && (e === o || "GeneratorFunction" === (e.displayName || e.name))
},
t.mark = function(t) {
return Object.setPrototypeOf ? Object.setPrototypeOf(t, r) : (t.__proto__ = r, b in t || (t[b] = "GeneratorFunction")),
t.prototype = Object.create(L),
t
},
t.awrap = function(t) {
return {
__await: t
}
},
a(s.prototype),
s.prototype[x] = function() {
return this
},
t.AsyncIterator = s,
t.async = function(n, i, o, r, a) {
void 0 === a && (a = Promise);
var l = new s(e(n, i, o, r), a);
return t.isGeneratorFunction(i) ? l: l.next().then(function(t) {
return t.done ? t.value: l.next()
})
},
a(L),
L[b] = "Generator",
L[y] = function() {
return this
},
L.toString = function() {
return "[object Generator]"
},
t.keys = function(t) {
var e = [];
for (var n in t) e.push(n);
return e.reverse(),
function n() {
for (; e.length;) {
var i = e.pop();
if (i in t) return n.value = i,
n.done = !1,
n
}
return n.done = !0,
n
}
},
t.values = h,
d.prototype = {
constructor: d,
reset: function(t) {
if (this.prev = 0, this.next = 0, this.sent = this._sent = p, this.done = !1, this.delegate = null, this.method = "next", this.arg = p, this.tryEntries.forEach(f), !t) for (var e in this)"t" === e.charAt(0) && m.call(this, e) && !isNaN( + e.slice(1)) && (this[e] = p)
},
stop: function() {
this.done = !0;
var t = this.tryEntries[0],
e = t.completion;
if ("throw" === e.type) throw e.arg;
return this.rval
},
dispatchException: function(t) {
function e(e, i) {
return r.type = "throw",
r.arg = t,
n.next = e,
i && (n.method = "next", n.arg = p),
!!i
}
if (this.done) throw t;
for (var n = this,
i = this.tryEntries.length - 1; i >= 0; --i) {
var o = this.tryEntries[i],
r = o.completion;
if ("root" === o.tryLoc) return e("end");
if (o.tryLoc <= this.prev) {
var a = m.call(o, "catchLoc"),
s = m.call(o, "finallyLoc");
if (a && s) {
if (this.prev < o.catchLoc) return e(o.catchLoc, !0);
if (this.prev < o.finallyLoc) return e(o.finallyLoc)
} else if (a) {
if (this.prev < o.catchLoc) return e(o.catchLoc, !0)
} else {
if (!s) throw new Error("try statement without catch or finally");
if (this.prev < o.finallyLoc) return e(o.finallyLoc)
}
}
}
},
abrupt: function(t, e) {
for (var n = this.tryEntries.length - 1; n >= 0; --n) {
var i = this.tryEntries[n];
if (i.tryLoc <= this.prev && m.call(i, "finallyLoc") && this.prev < i.finallyLoc) {
var o = i;
break
}
}
o && ("break" === t || "continue" === t) && o.tryLoc <= e && e <= o.finallyLoc && (o = null);
var r = o ? o.completion: {};
return r.type = t,
r.arg = e,
o ? (this.method = "next", this.next = o.finallyLoc, A) : this.complete(r)
},
complete: function(t, e) {
if ("throw" === t.type) throw t.arg;
return "break" === t.type || "continue" === t.type ? this.next = t.arg: "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e),
A
},
finish: function(t) {
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
var n = this.tryEntries[e];
if (n.finallyLoc === t) return this.complete(n.completion, n.afterLoc),
f(n),
A
}
},
catch: function(t) {
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
var n = this.tryEntries[e];
if (n.tryLoc === t) {
var i = n.completion;
if ("throw" === i.type) {
var o = i.arg;
f(n)
}
return o
}
}
throw new Error("illegal catch attempt")
},
delegateYield: function(t, e, n) {
return this.delegate = {
iterator: h(t),
resultName: e,
nextLoc: n
},
"next" === this.method && (this.arg = p),
A
}
},
t
} (t.exports);
try {
regeneratorRuntime = i
} catch(t) {
Function("r", "regeneratorRuntime = r")(i)
}
},
function(t, e) {
t.exports = '<div class="floor-control indoor-control"> <img class="arr-top" src=""> <img class="arr-bottom" src=""> <div class="floor-control-wrapper"> <ul class="floor-control-list transition-animate"> <%Array.prototype.forEach.call(obj.floors, function(fl, idx){%> <li class="floor-control-item marked-pseudo-background-color" data-index="<%= idx%>" data-floor="<%= fl%>"><%= fl%></li> <%});%> </ul> </div></div>'
},
function(t, e) {
t.exports = '<div class="rotate-circle">\t\t<div class="compass-circle-background"></div>\t\t<div class="compass-circle">\t\t\t<img class="compass-img" src=""/>\t\t</div>\t\t<div class="rotate-panel">\t\t\t<div class="rotate-left clickable-rotate-left">\t\t\t\t<img class="rotate-left-img" src=""/>\t\t\t</div>\t\t\t<div class="rotate-top clickable-rotate-top">\t\t\t\t<img class="rotate-top-img" src=""/>\t\t\t</div>\t\t\t<div class="rotate-right clickable-rotate-right">\t\t\t\t<img class="rotate-right-img" src=""/>\t\t\t</div>\t\t\t<div class="rotate-bottom clickable-rotate-bottom">\t\t\t\t<img class="rotate-bottom-img" src=""/>\t\t\t</div>\t\t</div>\t</div>'
},
function(t, e) {
t.exports = '<div class="tmap-zoom-control"> <div class="tmap-zoom-content"> <div class="tmap-zoom-in"><img class="tmap-zoom-in-image" src=""></img></div> <div class="tmap-zoom-number" style="display:none"></div> <div class="tmap-zoom-spliter" style="display:block"></div> <div class="tmap-zoom-out"><img class="tmap-zoom-out-image" src=""></img></div> </div></div>'
},
,
function(t, e, n) {
var i = n(1007);
"string" == typeof i && (i = [[t.i, i, ""]]);
n(275)(i, {});
i.locals && (t.exports = i.locals)
},
function(t, e, n) {
var i = n(1008);
"string" == typeof i && (i = [[t.i, i, ""]]);
n(275)(i, {});
i.locals && (t.exports = i.locals)
},
function(t, e, n) {
var i = n(1009);
"string" == typeof i && (i = [[t.i, i, ""]]);
n(275)(i, {});
i.locals && (t.exports = i.locals)
},
, , ,
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAAAgCAYAAAD+Fz2gAAABmElEQVR4AeTVMYrqUBjH0VtZzizBFbiEWYRby7osRRVEFE1SCqqJQvQ8biOveLxp7oXJ5JRJuh//LyElfKI2XDU+wk+GqeGahj5AYXiK0BcYYWY4ZhiFPsEYlUzu97vX6+U78ZvMSoxDH2GCk8SaprFcLu12u/8GOB6Pttut5/MpkxMmoc/whVZCj8fDer02n8/t93v/UpZlfB9DattWBg2+wlv/I51Sn7jVahUjOBwO/lZVVXxusVi43W4yOPU2zjfnrpJQXEZcSIwRz1lU13XuOCUm4TfCGLMc/6MYZbPZvONcr1cZzDAOvxlGKKQTlxKjvONcLhcZFBiFocAUtUTiYuKSzuezxGpMwxDhEwU6CXRdJ6EOBT7C0OFPe3RMwyAUBkD4X3GBBFhYkYMJEhyghPUJwAIbEwYw8IY2vaFbhybta8Nwl3wKrkHCVUpo4iVHtVhwx7+7YUEbb3NUjRE7ft2OEXV8lLM6TFiR8W0ZKyZ0UTRnVegxYEbChgMn8tOJAxsSZgzoUUXBzMzMzMzMzMzMzMzsAXLnMf6Zx2aAAAAAAElFTkSuQmCC"
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAAAgCAYAAAD+Fz2gAAACU0lEQVR4AezRIQ4AIBADQeD4/5uxDQnucDPJyqoOLgAAAADAbI0vh6yoov2ostg2HeaYPOO0Xw6wcwRRGK8dlDGLGHUbFrFRxGZju4pdI3ZSxmlY27bPWOTWm7v3db5gk2O18z9+Z+zM+94vb2berGvXri1yHGdHGIb74jg+Wq/Xr4jIK/X4DqCqHhEffM/v+Bv/w//yGnXtdo7BsboC+ztNoNRqta1RFB0WkZtMPv5fEcfimBz7z2FNwCRQMpnMKpXAAyLyEZrFOTgX52yB1QpqAqZarW5US9Jl5g1Tr4aa+xJjGHdQrUvZrEqlsoF7BQZEjIUxMbbWpW+squbBgwdL4zg+yZxg8FRXsZ24e/fukjGopvblzHGc3QAKSFFhGEKDCoy107I3knDOnj27gFWDlGVZFt68eQPDMKBDjJmxjxakZjizPn/+vEpEniBl2bYNwnn9+jX4ME0TOtRoNJ7SA720QBp+OPl8fp2I5JGyVC+TwPnx4wf4ys+sKB2iB3oZckjNcKrV6g4AqWfMcZwETrlchhKXuAQSK0uTrGKxuFN5m90EaQjhzKYRAAFSluu6ePv2LQhDzdH0W7VanQpI/hBCaq4cteSs11E5vu8ncAqFAjqpUqkkkDzP01ZJ9Dgky10znOfPn68RkQI0KIoifPz4EblcDr3EZS+TyUCnuCfR64BDaoZz8ODBRTzxaO72MSiiV3oeXEjNTeicMAxPYcxEz/Te1CcNWPUwsNnqFLUXYyp6Zw6YiyQvg7S0Xb58eYWIFDGmovfz588vT3Op+wWhHSH6nVaMlQAAAABJRU5ErkJggg=="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAACnklEQVR4AWJwL/ABNGcOPnMFURSv7ai2+Vc07KyS2oxq22ZcI6gdVGGtsLaj6rMxvaf5brL69OYskpzsXZ33m7mjd58n5RgzNNPnWys6l+Hz3ZPXTxnGFIj+iJ7LZ7dEJ0Qzc4PBDl6vU6sf548c2TXTmF2ijwJha6Fy0WP53zI7cmRrOiBMpYe2V/SQddRv6dUFds6cxhRAafVYMf0Fc7K+iPdwz4DW2rpishlmCVRpls83r7aASGlTad15mCRDcq2jdtashjUGxMwMM0gaZI0A5Ycrkw0XpvlVAmYZM0J+VObR/E2Gz3cKQux1TEZPnIhxJz/44bX1WJDVC7HL7MYSFAMoXyx1HENz1AuxixfWyQjADL+/jZj+dTRdoqaIXRdz3XG0xSucZ6HPt1YBERNm9TJ4aXqfOBqiB7eGDZdthBn9+D8gThrYzAk9uE8BERMAy8GG9M4imEEHFBAxwxNsGNAnGGbwUUCmJ8xukczOKiBikuctpOM5KcVXFRAxyfM5zP6wWquArKyADYAFJLM7YT14l+RZgCXhE8nsqQIiZniCDem4R0rxCwVETPK8xzycflBAxAxPsDH2TdXvrFCoD4SYBLgWW90wDiBfKA4gJYSJwheKA+HHrT0E01fZgcAACDEBcFf4gbW7fFjoYpjl882FF4R7Xdf1D2UWBdQ073Zs8SW7bl09CLHj5NgOpkjAkSPbOR77oXeQo8ev8AKTAur6NSUNJsfY6m7c96YQcHO1lQXp3voZPt/1FPTceRSsalY8Gj++VTIhsaWhcFCr8ht6MgnpLkMtyKmAiYkjJhkJgPuBWhCjBKxL0B7XxRyqWMqWIqX0Ijp2HIB62LvLRU9QwUCZJWFV/nDhFBTxGMKYz/EeQ+De1uUxxD/5bqFw0Zjc3QAAAABJRU5ErkJggg=="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANYAAABHCAMAAABMB0n6AAAC9FBMVEUAAAD////////////////8/Pz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8zMzMTfv//KwDb6/nd6vnZ7Pne6Png5/ni5fnW7vnX7fn9/f7T7/nk5Pnh5vnz+P2CgoLZ5fjR6vj2+P7v9/08PDzk5OT19fXV5vjp6uk2Njbh8vv5+fny9f1ERERBQUHm4/nx8fJSUlLT8Pmvr69JSUnt7e2/v7/d4/jf39+6urqqqqpxcXHZ4vjV6PjKysphYWHX6fh2dnb39/fZ2dq2trZbW1tVVVXc3Nz/LQDQ0NDq7fvd4Ph+fn5tbW0Fdv/3+/7g4vnGxsafn5+IiIh6enr/GgD6/f/Nzc2ZmZmUlJSNjY1paWn0+v7c5fi90uilpaU5OTnp8vvi6frn5+fV1daioqL/IwEAbv/g7frh4eHO7fnZ5/jCwsJMTEzu8fzd7/rF3O4Off8AZ/9lZWXU6/nL6vjN5vbe3t6cnJyWlpb/DwD/BwDy+f7r+P3O4PHF1er//PnT4vaRkZHl8vzm7PvS0tIAkf/w+/3v9Pz/AQDQ///V7/na7fmr9/+y3vXk7PForf7a8/vU3PPV4u272OzN2ui20Ofk5vqzs7NqamrU//8FhP/N2vKOjo630fv47/jV3OSTk5OPj4/wemvsZE/1SCzM///C/P/S9/58r/b89+k4ODjwOR74Lg6w6f9Alv4rjP5NmfZmp/Wpx+vc4uVnY6LhnZnThICWT3Pa/v+eyf0lhv3ox8bUpKWQkJDoiX/dfnQAWf+cxfPTtLr+ubJzXZa+PUeQvfseeOj/5+UGXd1umtrGrLNbZ67ZDA/0l2DFAAAAO3RSTlMADO+f2P7EmUMJJCgSA7ysqNGD5OkfjyoWt3hQB7FciCwawWnccWMw9LQ8WX9IyaNKNFFNV3tOVlVTUu3rZMMAABZ9SURBVGje1Zt5XFRVFMfHYAABARVMTUtTybR9r/NKpGxKQGFYwqGhYcfYl1AQEWQREAhQCLEFNXEpxRYzy8q0fd/3fd/3vX/6nXvfMjOMfeyPPtnv4zDvXd5j7vedc8+599zR5KTTvabPpMOTZebocf6m/4NOGkv/TJbps01Huo5hqG0dV+ydM2fO3r17F+wiqt5wKR9dQXT9ZfPmzbtsXj1Z7r/ubqH77991JxFNDzMd0fIlsmy/HkhzhRZcz1QbLoUE1oJ50HV3W6j+suvuvgy6Crp/O26aZjqCFUwUGwEoyTXn6rkA2LBgrjMWtHEvYK8DlA4Gix1nOmIFqg5QaVwFCdVEexcAUMe6VHLhePtGnQvafgRzwQN3gUfnWhCLBlBBOpbKBYwrNt7txIUxeJ7JXYEjIKfzkfLcEE4DnRvcroVGuraOkBr1D6jOtLCtDCVgYMUmzJXSsCTXZRtbiDC8XOx1lHsHQ4g1IUyDVM+P0T9wArG8TB7kRaqCxzsF6SBS5Xv4WEdRVGSEwVVQUE/VVxfMUbk0LMl13WVELTy8DK5q8ja5yI/s8RAdr1Mmi3M6RqUiwqm9iDzYazauFUqmYIMKN0hZ6LDtNY0sEZDOtQku2LOAqQwsxERIG15wQ+e4QWbZP6MXm+OgcjpdGouK0vj8SwrWMIf4vJPCPI2H2jghmx23q/KhR+KkrLjnMDUWQdCJK2EOXBADyx2LJdxwG9UDaN6eF1/eILlaaLTJWSdTjQK10dni9Fhap7BsFKp9YJo89Ri8ChWpNjicZt0sRVUvHe7UJhC2iXTiSlhIlgK44HAsiN1wHqLhdXtefPrD4peBJ8w103V4kyUFXaiiCepoqVWEbpbP/wTZyyEK9ji0olWCMvLWLTikYVkPG8uXWkAlxVQ9CPYJOPCIxVwbO4j2dH39xl0fvqj6YT2Fm5x1IuWiC3FmEuFsOvXjzDDfRMrhs3V0pngGYf7+ge5Y7QqUSCfLttFUxn8uzsDCXQEBAVNH/A2WN3VECiTJBWNVJxQAa3jIABP/fPnF6u+fX3nXloue3qOOr+10oslZM6hbgfJEv8Kok08M8zE0lE5Tp8wI9ibW2Akn+Tlj5abixyAFq05crEB1aRILDb4+JOU94eyj2TLehoLGyL80k3pihBJYO2Gsnk04uFrTJoT7uZsWaNqz5+UvXti6dc01W59/aePGjdexrnCLhafJ0TRIY0SvMnCsDi5jaPXT9HEExXf2Wu0EnTrCwBpcJS8XTROEE6c5kiTWlNHirqysrMQiHFnOwHh0VTBbnygqalGUpt31CBjayTZWbAuuiN0WC2278847O796YeuWi6656KItnz8asQuN3E6hbsPVzn3Ipcki7kWzpfj5Z9EJJtPRZGXGWkKGyiksi2Of66/aXEQTRhlY66Sb8oRzEpn5mugudWyNpYro/BQ+SUpJrXIQnUHpZamayh5pjKeg8cD6J/rluTXwPtaWF7Z32HeQqqNMLvKhAd060jjF0WJwTWQPdShQBlFRqWKo30q+OlalXbideCzh1MAnJVkSK4gY2dATNBpe7ixbLwUz1sIoXbHVMI2rpLVguju3fw6olTAUa+uHLx0o6Ii9k9XijnUcNSpQF80yzaJyPqRuMbiCeGgV8pOG4+UrQknyLZVCx2tY+cTEKWaaajIdT5UKZG+QWGR/TXY+FRZjNRAlJrlyxdNsYLXG6MIcN3Zngip1bPXw2Nqw58WK57cwlNTKNw7e++ANGFqs+92x/KhCgTbTSZybuYeUzc6WTCNGkYV9aoCkEXJrehOtFauk/WZoWKkyWGZjGh1AydzpNHJILPleazVTUVezOFSxSpubmwfiFNkUAqxITRExtxECSIQ25eUfIhL27NnT9dzKu9YASuqarc/dc/CGTZdJXeGOhfHAz7IZ1gmiZu695KyhM2fJo0YSgaCUpNiAhRSsYfWTXRFG84HhHTLLrZBY0na8gsUrhR1WxSomKB138zMYC6yLdayE3YjuczjQG7oaWJ/sl1C61qwpfungDViFecZC9KrCn38N076jxGfnUHKc6Nxx06QhMuCDon0cEtAMyhAm8taw0lQPTaeAU+RRMW1WsbrzB/JXkc8JJ5zA7mxgNVBQ0PEkBnUczWQsnSummtYngMqZK2EX1X/4BkMZQnR/9JYHN21AcvaMNY6elZ3xk0kni6hZZq7JVCk7LJJ0BUn18pAw0yQNyyIzn4OOo/gkEX00a7noGQ6RKlYeIWGNEc6egv4AS+OKuVb4oCvXnk++f2ErxpSLtnz36H744DzII9YxMlnloFubhSGmUxs/xmTCxEo6XxG/O7KkSviXdgrUsWSKyKdTpA9u1rFmHeeDe8uLWeV17lh+lGdgQRKrAwOtL8KJq++TPU8/v3Ur5ylnY2154c2CfZs2zhPyhBUoH3Ih+VC+mqTK5cSDRP5pIrK3K65qT6fxBhYVqkYdEO86lv8EslemKKrcsTARMLBYAiuKomAsgyvi0Ze/WmP4n2GsL+7Zb+8BlpDE8pi51Kf+MB07VjjdEMaGGpXT3bEwCZxqYMlA2U3pIl6Sj4Y1jqw2HBwmluSqp/WLI3T13f/o569zTB9G9fqb995SFIsCh5QHLHY+qJzWqeuJEKqTzlcoZ8ESq/DZVbq+jKcRBtZMimMvlD5YQhM1LA4hf4dVo2Ndq3K1YmjdFhOpU+2686stWwA1TFs/uufgLebqeRsOjQUnl2O+W41xsl9JyZTGdOidnbvdSc461WRgTaBVzI+fnLt1LOnEtuwsoVzPY8vAYnHWurgVcV5SdTz6kSdTcSq+994Hb7HQ3g2XHhJrvPSeaGGcVeSF2UaxNJ8iGsaR2SYi4ThWMAl5OWGdJ6eOGVUihgcZWN0iT0utcsdClhuGtXgJ1UdC6jplx32//rjyIs/GWv3gJotYrnjGgrypTET0NJGFzzeZQsnGh/GKbPCmVJG+zhJrl3SHw/FwkbMTjpLBJq5dTMLCXbF6KQDCta5YYbNmUr6ONV/DWk8LYzSuvh2f3vTYHR+vXDPcWNc8iHnTgnq6QtajPGP5ikc5UKzOmbCcFwmrbZ3aIBN2LfmMmTFxHJWoKzAnLPngtUmDgdUmsKZBrljFxCpRDKz5KtYiWgQswdUXf9uFay/0wIVU/PU9q2+4ZUE1dch6lGes80XmKuMPLhW1jnDxkc2F6qRqDDUyoOyMtpqe5ITlz26sTfHcsBpJ6gknrBKr1Zq1WX8OwFK5WqMQCCOl4II3XXghuH5YifjuPrJW35CwoIW2A4vlEYszl752GIcGf0wlVLVhfemn1l1ym9pWrMoXR7x4NrCQIwq1Asa5TlibBWkOy1GqY7moSUx1HwKXiIQLday+HU+uXXYhdOMdH7hyXXPXR2ysDRu2ESK81HAsSI4NmYPPwPkonl9I3U6z8Hs4pYuKaaIL1gyeFMuwaTKw2AkMecRKM9NpwMrMzFy8mF8LacnOxTGsa3e8BWOpXGvAZUwwXr/3XszdF6CaGKuVAq73hHUcZmxSybJUM1mvlSFBcXmShozuIGbTKXpBrZ2xTDxLhkrY2GNoUCZAsrjlrVx3rNJOGAtYizRZaOFueURP3nTjhRrXH8722vrFSwf29+yO3V5N9dtjpbZ5wkLCT0mx2Wwp0Wp5F/N0nKMBcwacMldnTuVAaWpqaXO0o4iOmiLmyLUptpQygXUiNeI4LZ7C+OY2HNs6yZcsq8pSndSkYvWXQmWluQ6iEwOB5VFvr2Ukw156vHjh0X374slNnrBGTKeiouTkZFwcLlNZKOFcNMwQDecc71JYmcpt55I5PrkomXxFSiccmymE939lO3B9yV0Sq4JUWWBcsejXZKHqKH5fRJ9+ozK5ja81W7576UBfR1RLy7Z6qt/WIlUNrOGaOpmETgx3bwCV1AnTvI4f7e09OsgrPEBPDMaug5+4ISTQaGfc83xxiyHf0zSs0awTJx5tkljLMyFtbLW2tsasj7yQ44XBxfFQXWfdc3D1DZtQCxBja8MGT2PLMNhIaITHhkNr0oiRxi4Qjifp7bh3lKfHZ8wynER0ySXzWRdnciTkKa8I7i5cyF8iuK/Me3P1DTsLuCoqIuFcPRL+dzo0luTK5LyF9BUfcyOM5aLHJBdn4gdvYaq5V3Pe4oMjGUtwZWKWAayLpbHcuX5ceQ0vSGCsuSjcFBTwLGMu67/GCiOrLJae444luZZiTpg5/+Kix5fBWMO4Hnt9y5bf71l96y2iQF8wt17uw0L/MVYglst1dXXlNMUDFrgyl1A1sDwZC7rj5z+fY6qEuRKLqOfquVL/IZaxp4vs6AELXJlYb83PfKoVYdCDli377f0H4YJ9sszWQ7S34PCwRpn+ZU07NSQkZJrJDeshlSuTV8eLD2GstWtf2QgquKDE6qD6gr/DmjX72Nnnj/c/1h+VIl89K40K85cKk6zjz5iKS88JnDF5hnrBrGOcdE6Y8ff8RroMqICReLnlCs9Yy+dbaP2S+Z6Mteymz97rvZVdUKsexlILfPCQWKOJFUo0k8iCfwGmEaeOPdWXDPnK74PQZFw6lghrFcjfm1w1GWNn6vjxYvfHazwk09hk/pWetv3D/U4KOilw1KSRk0YG+p0RKLEuv0TV0oW0cMdPw41149pl7x54fzVsFaPVsREIdyccGmsM3Z5dUpJB1ofJMUA1DkCgF8DDbhartxPTIK4MZCQSNayjvNxeYosGUUOGk9Ylkp86ciryko3HMZESs4rEi+01ZSaxxhpPTGJpXAiFtP6ztcP9752D1gOrb2UqtX5YgKG16+o5h8Q6Xpb3UBVLrFVIKaPpyC79tWRRNHHgOgOrDAehLkBtnHamjMLixbXM1ki+ZE+HErFKS2dhrTkr/EQsrSvwaiC/cH8scRx56c0ZZDFjxmnPy8ATE1gaF8eMTzF1d/W/tW9/a32aTYVoodVFEzqI5mCYHQrrFCp9raZSSa9UUvqT8pX+GjqZOtuVHMuq6LrmuujoftQnThdfCcgmKlXoYTlTxfQ8KRXLw0e686CcIWWQZE3EUBexPwqsZmBB8GSlNB3PJ02u5wYQEwWWzrWcCOssV6gbX0l/FaPq8Z16qY2xUCgVw+wQWOhMHOUo9sLCfqW0tHCghnyDqMiG2gzllWURDWHReAJGWjl6xlglih0VaB6EqASTNaWypqELv1GaQJrR1tbdllNS4nC0defkpMMfHemUi7VoLtAacIzrcovwp5U0rJhLKuJpjMTSuZbSrmU3ug6qdw52Ju5n/wOVJvFFmw5gQZ6xRkusit7EzUp2YmdvuZkgS7edqJsNFM1YZLm9W2nsovwkFEkbC9vjzIxVRTXqVp7ZDqwxCDvU/AhBic1tPKGnWqVEx0pVbmasQoIXK9FGAmMsKbYWorsr1HvvH7h1376dO1sjIZ0LuyjUo4Z6j1jYzU8qtfWXKe16IdrSUFPMcCVKg4ZlV1hU1x6dpgAlTljriXJRcatD38sZy4t4VyiL+CYHLgiHx3arWF2UgrU3anPt+JwMW+pgU9OKnJtpllyYLF++lLV86VOYNxkxfe0779389OqDB+KjYnY6bVhCO+GDO40dy55hWJPxmbb2FGu5LSWxMy1pHQJfkdhqKC8fUrrLrRIrubFOKWyTGwVtRdGKwFqVF91bVjaY1EgSi5Jz2sqU0meGhrCbPOSgcYhDtVQosMqJi2fYnY6rHIzOsLX3s5VX0ESBtUgXvXKTDrXs3fcSOw/csr91idmyaLdxDRb5uxcRVe+O1dXi2Qm7Ffug0t/YWKrkd6HDJTkozypCKXWMBTv04r1MsXU5UCSsk1hVRMnNsnKbyFhs07g0cVea2BpCc76K1WlRHqEgIjQQN3cl02Z1zutprY9A8e4Nr766b5893kyHIU8hIwXOEqewJdrjeN9OjGxa0VSlFDY5hLXUSGgufQ2BvgE+JsZWnSNNsTmyEf+iKwRWvJJqsZgh/Ey2wFpsojqBZbcqz9Bx0zHCbM3r2B3ykFiwTea66JeFGeSpz95d/Wri/v2t+5bsXhRVjStcFBVFVB+1MEocQy0t7t/K4h3jpNr8pGdrbBjGA6mUjY0pSkbdk0AA09U6YVE+B/jexFRFRsKq1KbBCntxd6nyhIpVRoZ8RdWbogVWfDbuPxdOaKvCpUqZUkei9gnNpIeWS1351FtrESfWvv3KrUhUt976+AOos7Uu5g2HxSgFqOrr28kBI6GvQAhDq2AXTff4RbPXiBRbVRWqlSXkMxJY7DE5MhIiHTOWDPBoNDci9/oQvMpM4uYcsucJrCLezJwEjRqFl9yXTmwSWOkDiEVhMhI2krKqUmlEqguR37Raf6UMhU89uQxD6q1v3+89sBpMD2S2zoew4UDXtkZeHKmpr6+eYhMi+iK0edSc7RTkaWw1Kuh/bn5+JYYK0UjVWgZWYDCCQmMFWyujP6sYOc1Pji1rRrZjRQVGi47lbTJ0NnU1dkprdTnwKEzs3RZlBciwR5hml98A86KFV14pwHbc982F9z2Z/uo+YahMIBlYXPVVxTOMiBjn/eVqmuGGhb1HG+qwjdFPPPvss19m5apYdZSlYXXR7GCxc5rGWAgTBFkkFlrjSnPNdDNjAT3X5atip5/CswyBlYejMzHjQmhUcuyI+48gKiEbQ/5IXJJr/ZOvPLAj/db99n2AQhZzwTL2zSMJMwznffMeMpvchL3EMlirVIHibLdHS6y4VFuzxOpGR4jsNmzplSAUEquk36HOMiixwRFdCFRgcU3bQROdqAhCo53q4IHQaOpSMoAFR+btmG6VKxReKLiWP7XjqaUPPP5AFC1Zeok7ls6FfRULPNDgiogib/dKGhEsM6R0cr0zY8UKpZ3MkyiZw7bESucNB3SnDq6G7tVuhmwi2yaVZWevKy7PKm7Izm5TBsWlZgpwru23PdM02K9UDqYpdYNNQxVse0u8UqlUOZTCrAF4uo/8aq0FVOBiITE/sBtLMIMrk7Ey9f1l3rLsMDaYQdVD+FRXcSxw4NPiCWoW23NBKDmk1dp5x+NhmCCbh1t6J5G3F2WpJfT8ZLaWi4BVYWtwWc8TKS56BhGmDgkwf8CeDw+kWlni5xL+Io0LumT5JajFAwtywwJXTB9KvzF9kQZXRAsiqpumUHl2ERVnY1PhJMrKy7NSqD+csIgAVO6w0pRQKsf6AafTOBlYs1kZRF7HU012iaFsK9jjyftol50Y681QlnhBdiL8S866GZfC/3CmYh1DtETngpYCZL3OZWCxFkdxvHCaH0Zup5kw1rD1FhOgn9xrPp7CsYlCzhW/mWCawr/0HS/W9AFBJDX2ONPR08lVExBXJo83GeJbXRUSQiFePMMNpuBw01k+/KlCk925FqGoIbk0LG3DsoO0PTCVCg1nm4ZryllTTSfgBQX4+cmShCxTHx0eIN6wNtcUdtZs6BhuGHHa7GN1zT7LH+WOYQUL/6OhAPGCcBf+jQyARSW+8d8hvA0uOcDqUY9aOp+5NKz5gupaREHYyuAC1ammI1Y+MIIT19KHiOqXLxf20rDmg+piJJZWXqNoZLFHNJUYAfVLLje4EO8WSq6lOlZmZD0OFxuJebeFsFN4RGviUQDbveQ2jWs9uGQhAFi3LX+IN5iruY4ov8VxbU9HLKBCLzAd6ToVYP9MoWNM/wdNCwo102FqZujk80xHrv4CWUyMHqIvW3YAAAAASUVORK5CYII="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAoCAYAAAD32nqhAAADEklEQVR4AbWWNZgkZRCG3+rZOV3D3Z3za9xJcHc6wXsXi4jIyNAYmfw5C3HIcc7dMnzd/f/Y6+efembOtdrtra++qhVOaAxedvOH/Rdc+yEHiYQDhObd0RgU2oPUvuf8iAHDU5OZiUYza+zr68+OGADWJkAIRNsRAYYW3JkKloIwQGhp71kL0sNXEMj9PCJCID8sgO54sjExMiQMQyhCyHTavMZDAsZ6+zJBI+CfAkhq7BHZYZSgXBJgmIFEEWZGUMgPChi//v5UkJpF62okFFAp7Wi5Mj2wghByJCRBhFiVYMR7rsIBbp6CMsxT4qEIEghl/7mZNYCJkTE3D2K2ahesrqONNjqa7QPAQm61rkleguGqCq6mQl4H0C2PpIhUqslW86GIUL8m7ZhzfuqAALl/6CfyBYwI985MTZEXAD35ZCNmGW68sHKZ8lvtzP3xC5p+/YZZb78J5YZojbe0MLOBTrIgNWIxuxkNbzxP+SX3iVmvvwBBDL3zEZIohgoaJ7u7s0SQu+g4Aw0P3c3eMeOpB/Ekvidv2PbJe0xJKAQEKIirW1soUx+TJ7ey+/tVSBDiuyZIlCQVdyaiu3v72Du6untRVOmjbuGzhNa5y8xsMBqPBP/818m/HV1MTExObxP8/W8Hf/7dUVsBZslg69wZyw1g09ZdnwUpV4iNCyJIQCE3HoUkQMU5ZpWbrl3YlgCUoIKo7bPLrJts7xQkCRUfpKuuunQ1xmqA+mkuQF47ojreq29IF66OAE9RqPCBQhQfSxgFyBVYzF4HKJ3SvAzToMsUHq4GEAw2zSot2wcw7/TTBw1bhvC5rw2LTDMtmzdv3mA9wK+SStVA7asgqiq7/H0AC6fNNNnqav340FQ7k0ybd9Xqg/1WLgySaooGN1JE8w4GKNG6LEkY9F9p/iveps1j2T4J2TdYu2H7Z1LIg+QKBJXrlsxrO6gCV1EuVTDz+iUolZIKRxJrNmz9/fd1W/Tb2s2aPv5+xP8fJFCxqMKwyhEDyqVTlpkxCBqcVT5lGUcTqzdu+2D1+i0fcCLjf0XElF4DYemFAAAAAElFTkSuQmCC"
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAICAYAAADwdn+XAAAASklEQVR4AWPAB9JKWqNAmIEckFHS2pBW1PofhEFssjUjG0KGZkxDyNGMaQhhzYQNwQhtkAQpGCV20ovbQtKL2r4RqxmkFqQHpBcA3gqccd9+wbMAAAAASUVORK5CYII="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAiCAYAAABr0zihAAABkUlEQVR4AWKgCsgs61RPK2p9llbVLwnopBwe5AiiMB7nGtu2nXNs28kwLMQY1atYp+SWY2xbf8ga17V7G4t+vdtVsztofr+Hr5AWECDwwASMAJGX9GJ6s0+QQJkDQGYsZnRSA2ZUR+z8QwRW+4qP3b/f3Yxa4AYCVLz3BYIUNiOx+Q9SURs4c3WYT/3wyAs4ECRbiK3mzBeFrQGWxbHYry44OoP5XiFqnstNnvrlQxVgZv/qrT9fAZh/qAvw66NtsWEYHU37KputlN9CTMSCBD64+zKv4zZw4rzoj6IxkULZTVutHkxgkv0gQuVc1CCDoHI6mORG1CCHlRpAnMAZxBQ1QIDgDNfHKgGrZjcQ4ddnqDMwsRuPKizWZJAbkK1cLlUD9OoyBBC5RQlECYzzzJu4ErCnNhHFzYB4iwQ+1v5vAojI0QMU7rvLOnYO+mqshQO4D7lDCRw7fW2IPefb1AcVf1zbS2X4rOyp2yLDqCwGh/TbJBXVrvF4l45b71zACy0QIbeGmsInZnlP0Y7X3k89HCaJpH6+oPwAAAAASUVORK5CYII="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABdSURBVHgB7dTBCQAhDATA9bgO7grQGuy/BGvQBqxBMS/B1woiYgbyCcIiLAHUWT4fZQgv8xgGFqQHi2nA/gAzbFoNJ9oiChJycP1q+Q84vy8yBG3RBQHcNW09V8epFRQL9pWRYd8AAAAASUVORK5CYII="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAA4SURBVHgB7cixEQAQEEXBTwsaoAb9l6AGGlADQjMCM5dc8jZcCQC+wjOp9rNZFktDs5W7ogDA3wZy7gUEOT7xUAAAAABJRU5ErkJggg=="
},
, , ,
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFNWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHRpZmY6T3JpZW50YXRpb249IjEiIHhtcDpDcmVhdGVEYXRlPSIyMDIwLTA1LTI2VDE2OjUyOjAxKzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMC0wOC0wN1QxMDo0OTo1OCswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMC0wOC0wN1QxMDo0OTo1OCswODowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5OGM1MjA3My00NzRmLTQ5YTUtYTBiMy04YTBiNjUxOTg4MTkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OThjNTIwNzMtNDc0Zi00OWE1LWEwYjMtOGEwYjY1MTk4ODE5IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6OThjNTIwNzMtNDc0Zi00OWE1LWEwYjMtOGEwYjY1MTk4ODE5Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6OThjNTIwNzMtNDc0Zi00OWE1LWEwYjMtOGEwYjY1MTk4ODE5IiBzdEV2dDp3aGVuPSIyMDIwLTA4LTA3VDEwOjQ5OjU4KzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+BNIWNwAAANBJREFUOI2lk7FtwzAQRZ9UpPIGAtyr8RaZwMgA2SGtN/AGadMZaTyFao9gQJ1bw0AKPTdHwTBCkUgO+MDxePcIkneNSsE64Dv8LTAuZqtLelcv6i10iVi2JrexUo8PoGcdI6cK+KqOC7CkMXKzwFb9VK8VsKRr1LSJ08SnbIADsC79UMbOwBtwatQd8AG8/BGW7AfYN+qtJjH84sEl4HyVWBefps3EJ+AL6B9ghN/H3vRrZW071LbXMzDbsLUDkIDFkSpoHlHUQe3+AUvq1OEOLQ87IC/d1y4AAAAASUVORK5CYII="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABqSURBVHgB7dDRCYAgGATgqwkcwQ1rE0d0hEa4LhAq7I8/89EPDnzQEw5wILkoK3pQUVS2kog/VBCUzNNxDmilx4m1hBZlN8u3PS+7Wfx7Puxmya49jd0s1Z6T4wPeHsjb/RmdjcJROAo9do2y5zKNIp3eAAAAAElFTkSuQmCC"
},
function(t, e) {
t.exports = function(t) {
return t && "object" == typeof t && "function" == typeof t.copy && "function" == typeof t.fill && "function" == typeof t.readUInt8
}
},
function(t, e, n) { (function(t) {
function i(t, n) {
var i = {
seen: [],
stylize: r
};
return arguments.length >= 3 && (i.depth = arguments[2]),
arguments.length >= 4 && (i.colors = arguments[3]),
v(n) ? i.showHidden = n: n && e._extend(i, n),
x(i.showHidden) && (i.showHidden = !1),
x(i.depth) && (i.depth = 2),
x(i.colors) && (i.colors = !1),
x(i.customInspect) && (i.customInspect = !0),
i.colors && (i.stylize = o),
s(i, t, i.depth)
}
function o(t, e) {
var n = i.styles[e];
return n ? "[" + i.colors[n][0] + "m" + t + "[" + i.colors[n][1] + "m": t
}
function r(t, e) {
return t
}
function a(t) {
var e = {};
return t.forEach(function(t, n) {
e[t] = !0
}),
e
}
function s(t, n, i) {
if (t.customInspect && n && T(n.inspect) && n.inspect !== e.inspect && (!n.constructor || n.constructor.prototype !== n)) {
var o = n.inspect(i, t);
return g(o) || (o = s(t, o, i)),
o
}
var r = l(t, n);
if (r) return r;
var v = Object.keys(n),
p = a(v);
if (t.showHidden && (v = Object.getOwnPropertyNames(n)), E(n) && (v.indexOf("message") >= 0 || v.indexOf("description") >= 0)) return u(n);
if (0 === v.length) {
if (T(n)) {
var _ = n.name ? ": " + n.name: "";
return t.stylize("[Function" + _ + "]", "special")
}
if (b(n)) return t.stylize(RegExp.prototype.toString.call(n), "regexp");
if (w(n)) return t.stylize(Date.prototype.toString.call(n), "date");
if (E(n)) return u(n)
}
var m = "",
y = !1,
x = ["{", "}"];
if (h(n) && (y = !0, x = ["[", "]"]), T(n)) {
m = " [Function" + (n.name ? ": " + n.name: "") + "]"
}
if (b(n) && (m = " " + RegExp.prototype.toString.call(n)), w(n) && (m = " " + Date.prototype.toUTCString.call(n)), E(n) && (m = " " + u(n)), 0 === v.length && (!y || 0 == n.length)) return x[0] + m + x[1];
if (i < 0) return b(n) ? t.stylize(RegExp.prototype.toString.call(n), "regexp") : t.stylize("[Object]", "special");
t.seen.push(n);
var S;
return S = y ? c(t, n, i, p, v) : v.map(function(e) {
return f(t, n, i, p, e, y)
}),
t.seen.pop(),
d(S, m, x)
}
function l(t, e) {
if (x(e)) return t.stylize("undefined", "undefined");
if (g(e)) {
var n = "'" + JSON.stringify(e).replace(/^"|"$/g, "").replace(/'/g, "\\'").replace(/\\"/g, '"') + "'";
return t.stylize(n, "string")
}
return m(e) ? t.stylize("" + e, "number") : v(e) ? t.stylize("" + e, "boolean") : p(e) ? t.stylize("null", "null") : void 0
}
function u(t) {
return "[" + Error.prototype.toString.call(t) + "]"
}
function c(t, e, n, i, o) {
for (var r = [], a = 0, s = e.length; a < s; ++a) L(e, String(a)) ? r.push(f(t, e, n, i, String(a), !0)) : r.push("");
return o.forEach(function(o) {
o.match(/^\d+$/) || r.push(f(t, e, n, i, o, !0))
}),
r
}
function f(t, e, n, i, o, r) {
var a, l, u;
if (u = Object.getOwnPropertyDescriptor(e, o) || {
value: e[o]
},
u.get ? l = u.set ? t.stylize("[Getter/Setter]", "special") : t.stylize("[Getter]", "special") : u.set && (l = t.stylize("[Setter]", "special")), L(i, o) || (a = "[" + o + "]"), l || (t.seen.indexOf(u.value) < 0 ? (l = p(n) ? s(t, u.value, null) : s(t, u.value, n - 1), l.indexOf("\n") > -1 && (l = r ? l.split("\n").map(function(t) {
return " " + t
}).join("\n").substr(2) : "\n" + l.split("\n").map(function(t) {
return " " + t
}).join("\n"))) : l = t.stylize("[Circular]", "special")), x(a)) {
if (r && o.match(/^\d+$/)) return l;
a = JSON.stringify("" + o),
a.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/) ? (a = a.substr(1, a.length - 2), a = t.stylize(a, "name")) : (a = a.replace(/'/g, "\\'").replace(/\\"/g, '"').replace(/(^"|"$)/g, "'"), a = t.stylize(a, "string"))
}
return a + ": " + l
}
function d(t, e, n) {
var i = 0;
return t.reduce(function(t, e) {
return i++,
e.indexOf("\n") >= 0 && i++,
t + e.replace(/\u001b\[\d\d?m/g, "").length + 1
},
0) > 60 ? n[0] + ("" === e ? "": e + "\n ") + " " + t.join(",\n ") + " " + n[1] : n[0] + e + " " + t.join(", ") + " " + n[1]
}
function h(t) {
return Array.isArray(t)
}
function v(t) {
return "boolean" == typeof t
}
function p(t) {
return null === t
}
function _(t) {
return null == t
}
function m(t) {
return "number" == typeof t
}
function g(t) {
return "string" == typeof t
}
function y(t) {
return "symbol" == typeof t
}
function x(t) {
return void 0 === t
}
function b(t) {
return S(t) && "[object RegExp]" === P(t)
}
function S(t) {
return "object" == typeof t && null !== t
}
function w(t) {
return S(t) && "[object Date]" === P(t)
}
function E(t) {
return S(t) && ("[object Error]" === P(t) || t instanceof Error)
}
function T(t) {
return "function" == typeof t
}
function A(t) {
return null === t || "boolean" == typeof t || "number" == typeof t || "string" == typeof t || "symbol" == typeof t || void 0 === t
}
function P(t) {
return Object.prototype.toString.call(t)
}
function I(t) {
return t < 10 ? "0" + t.toString(10) : t.toString(10)
}
function k() {
var t = new Date,
e = [I(t.getHours()), I(t.getMinutes()), I(t.getSeconds())].join(":");
return [t.getDate(), D[t.getMonth()], e].join(" ")
}
function L(t, e) {
return Object.prototype.hasOwnProperty.call(t, e)
}
function M(t, e) {
if (!t) {
var n = new Error("Promise was rejected with a falsy value");
n.reason = t,
t = n
}
return e(t)
}
function C(e) {
function n() {
for (var n = [], i = 0; i < arguments.length; i++) n.push(arguments[i]);
var o = n.pop();
if ("function" != typeof o) throw new TypeError("The last argument must be of type Function");
var r = this,
a = function() {
return o.apply(r, arguments)
};
e.apply(this, n).then(function(e) {
t.nextTick(a, null, e)
},
function(e) {
t.nextTick(M, e, a)
})
}
if ("function" != typeof e) throw new TypeError('The "original" argument must be of type Function');
return Object.setPrototypeOf(n, Object.getPrototypeOf(e)),
Object.defineProperties(n, R(e)),
n
}
var R = Object.getOwnPropertyDescriptors ||
function(t) {
for (var e = Object.keys(t), n = {},
i = 0; i < e.length; i++) n[e[i]] = Object.getOwnPropertyDescriptor(t, e[i]);
return n
},
B = /%[sdj%]/g;
e.format = function(t) {
if (!g(t)) {
for (var e = [], n = 0; n < arguments.length; n++) e.push(i(arguments[n]));
return e.join(" ")
}
for (var n = 1,
o = arguments,
r = o.length,
a = String(t).replace(B,
function(t) {
if ("%%" === t) return "%";
if (n >= r) return t;
switch (t) {
case "%s":
return String(o[n++]);
case "%d":
return Number(o[n++]);
case "%j":
try {
return JSON.stringify(o[n++])
} catch(t) {
return "[Circular]"
}
default:
return t
}
}), s = o[n]; n < r; s = o[++n]) p(s) || !S(s) ? a += " " + s: a += " " + i(s);
return a
},
e.deprecate = function(n, i) {
function o() {
if (!r) {
if (t.throwDeprecation) throw new Error(i);
t.traceDeprecation ? console.trace(i) : console.error(i),
r = !0
}
return n.apply(this, arguments)
}
if (void 0 !== t && !0 === t.noDeprecation) return n;
if (void 0 === t) return function() {
return e.deprecate(n, i).apply(this, arguments)
};
var r = !1;
return o
};
var N, O = {};
e.debuglog = function(n) {
if (x(N) && (N = t.env.NODE_DEBUG || ""), n = n.toUpperCase(), !O[n]) if (new RegExp("\\b" + n + "\\b", "i").test(N)) {
var i = t.pid;
O[n] = function() {
var t = e.format.apply(e, arguments);
console.error("%s %d: %s", n, i, t)
}
} else O[n] = function() {};
return O[n]
},
e.inspect = i,
i.colors = {
bold: [1, 22],
italic: [3, 23],
underline: [4, 24],
inverse: [7, 27],
white: [37, 39],
grey: [90, 39],
black: [30, 39],
blue: [34, 39],
cyan: [36, 39],
green: [32, 39],
magenta: [35, 39],
red: [31, 39],
yellow: [33, 39]
},
i.styles = {
special: "cyan",
number: "yellow",
boolean: "yellow",
undefined: "grey",
null: "bold",
string: "green",
date: "magenta",
regexp: "red"
},
e.isArray = h,
e.isBoolean = v,
e.isNull = p,
e.isNullOrUndefined = _,
e.isNumber = m,
e.isString = g,
e.isSymbol = y,
e.isUndefined = x,
e.isRegExp = b,
e.isObject = S,
e.isDate = w,
e.isError = E,
e.isFunction = T,
e.isPrimitive = A,
e.isBuffer = n(1050);
var D = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
e.log = function() {
console.log("%s - %s", k(), e.format.apply(e, arguments))
},
e.inherits = n(1012),
e._extend = function(t, e) {
if (!e || !S(e)) return t;
for (var n = Object.keys(e), i = n.length; i--;) t[n[i]] = e[n[i]];
return t
};
var z = "undefined" != typeof Symbol ? Symbol("util.promisify.custom") : void 0;
e.promisify = function(t) {
function e() {
for (var e, n, i = new Promise(function(t, i) {
e = t,
n = i
}), o = [], r = 0; r < arguments.length; r++) o.push(arguments[r]);
o.push(function(t, i) {
t ? n(t) : e(i)
});
try {
t.apply(this, o)
} catch(t) {
n(t)
}
return i
}
if ("function" != typeof t) throw new TypeError('The "original" argument must be of type Function');
if (z && t[z]) {
var e = t[z];
if ("function" != typeof e) throw new TypeError('The "util.promisify.custom" argument must be of type Function');
return Object.defineProperty(e, z, {
value: e,
enumerable: !1,
writable: !1,
configurable: !0
}),
e
}
return Object.setPrototypeOf(e, Object.getPrototypeOf(t)),
z && Object.defineProperty(e, z, {
value: e,
enumerable: !1,
writable: !1,
configurable: !0
}),
Object.defineProperties(e, R(t))
},
e.promisify.custom = z,
e.callbackify = C
}).call(e, n(1023))
},
function(t, e, n) {
"use strict";
function i(t) {
if (!t) throw new Error("coord is required");
if (!Array.isArray(t)) {
if ("Feature" === t.type && null !== t.geometry && "Point" === t.geometry.type) return t.geometry.coordinates;
if ("Point" === t.type) return t.coordinates
}
if (Array.isArray(t) && t.length >= 2 && !Array.isArray(t[0]) && !Array.isArray(t[1])) return t;
throw new Error("coord must be GeoJSON Point or an Array of numbers")
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.getCoord = i
}]);
/*! library: tools */
/*! @version 1.2.0.5 */
!
function(t) {
function e(r) {
if (n[r]) return n[r].exports;
var i = n[r] = {
i: r,
l: !1,
exports: {}
};
return t[r].call(i.exports, i, i.exports, e),
i.l = !0,
i.exports
}
var n = {};
e.m = t,
e.c = n,
e.i = function(t) {
return t
},
e.d = function(t, n, r) {
e.o(t, n) || Object.defineProperty(t, n, {
configurable: !1,
enumerable: !0,
get: r
})
},
e.n = function(t) {
var n = t && t.__esModule ?
function() {
return t.
default
}:
function() {
return t
};
return e.d(n, "a", n),
n
},
e.o = function(t, e) {
return Object.prototype.hasOwnProperty.call(t, e)
},
e.p = "",
e(e.s = 720)
} ([function(t, e, n) {
"use strict";
e.__esModule = !0,
e.
default = function(t, e) {
if (! (t instanceof e)) throw new TypeError("Cannot call a class as a function")
}
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var r = n(75),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = function() {
function t(t, e) {
for (var n = 0; n < e.length; n++) {
var r = e[n];
r.enumerable = r.enumerable || !1,
r.configurable = !0,
"value" in r && (r.writable = !0),
(0, i.
default)(t, r.key, r)
}
}
return function(e, n, r) {
return n && t(e.prototype, n),
r && t(e, r),
e
}
} ()
},
function(t, e) {
var n = t.exports = {
version: "2.6.9"
};
"number" == typeof __e && (__e = n)
},
function(t, e, n) {
t.exports = {
default:
n(166),
__esModule: !0
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
e.__esModule = !0;
var i = n(155),
o = r(i),
s = n(77),
a = r(s),
u = n(20),
c = r(u);
e.
default = function(t, e) {
if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function, not " + (void 0 === e ? "undefined": (0, c.
default)(e)));
t.prototype = (0, a.
default)(e && e.prototype, {
constructor: {
value: t,
enumerable: !1,
writable: !0,
configurable: !0
}
}),
e && (o.
default ? (0, o.
default)(t, e) : t.__proto__ = e)
}
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var r = n(20),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = function(t, e) {
if (!t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
return ! e || "object" !== (void 0 === e ? "undefined": (0, i.
default)(e)) && "function" != typeof e ? t: e
}
},
function(t, e, n) {
var r = n(8),
i = n(2),
o = n(22),
s = n(19),
a = n(21),
u = function(t, e, n) {
var c, l, h, f = t & u.F,
p = t & u.G,
d = t & u.S,
g = t & u.P,
y = t & u.B,
v = t & u.W,
m = p ? i: i[e] || (i[e] = {}),
_ = m.prototype,
w = p ? r: d ? r[e] : (r[e] || {}).prototype;
p && (n = e);
for (c in n)(l = !f && w && void 0 !== w[c]) && a(m, c) || (h = l ? w[c] : n[c], m[c] = p && "function" != typeof w[c] ? n[c] : y && l ? o(h, r) : v && w[c] == h ?
function(t) {
var e = function(e, n, r) {
if (this instanceof t) {
switch (arguments.length) {
case 0:
return new t;
case 1:
return new t(e);
case 2:
return new t(e, n)
}
return new t(e, n, r)
}
return t.apply(this, arguments)
};
return e.prototype = t.prototype,
e
} (h) : g && "function" == typeof h ? o(Function.call, h) : h, g && ((m.virtual || (m.virtual = {}))[c] = h, t & u.R && _ && !_[c] && s(_, c, h)))
};
u.F = 1,
u.G = 2,
u.S = 4,
u.P = 8,
u.B = 16,
u.W = 32,
u.U = 64,
u.R = 128,
t.exports = u
},
function(t, e) {
t.exports = function(t) {
return "object" == typeof t ? null !== t: "function" == typeof t
}
},
function(t, e) {
var n = t.exports = "undefined" != typeof window && window.Math == Math ? window: "undefined" != typeof self && self.Math == Math ? self: Function("return this")();
"number" == typeof __g && (__g = n)
},
function(t, e, n) {
var r = n(59)("wks"),
i = n(46),
o = n(8).Symbol,
s = "function" == typeof o; (t.exports = function(t) {
return r[t] || (r[t] = s && o[t] || (s ? o: i)("Symbol." + t))
}).store = r
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e) {
t && (0, f.
default)(t).forEach(function(t) {
e.apply(void 0, (0, l.
default)(t))
})
}
var o = n(17),
s = r(o),
a = n(20),
u = r(a),
c = n(24),
l = r(c),
h = n(115),
f = r(h),
p = n(27),
d = r(p),
g = n(124),
y = r(g),
v = n(147),
m = r(v),
_ = n(47),
w = r(_),
b = n(146);
e.getMax = function(t) {
for (var e = t.length,
n = -1 / 0; e;) e -= 1,
n = t[e] > n ? t[e] : n;
return n
},
e.getMin = function(t) {
for (var e = t.length,
n = 1 / 0; e;) e -= 1,
n = t[e] < n ? t[e] : n;
return n
},
e.isInRange = function(t, e, n) {
return t >= e && t <= n
},
e.clamp = function(t, e, n) {
return Math.min(n, Math.max(e, t))
},
e.wrap = function(t, e, n) {
var r = n - e,
i = ((t - e) % r + r) % r + e;
return i === e ? n: i
},
e.round = function(t, e) {
var n = Math.pow(10, e);
return Math.round(t * n) / n
},
e.mix = function(t, e, n) {
return t * (1 - n) + e * n
},
e.degreeToRadian = y.
default,
e.radianToDegree = m.
default,
e.extend = function(t) {
for (var e = arguments.length,
n = Array(e > 1 ? e - 1 : 0), r = 1; r < e; r++) n[r - 1] = arguments[r];
var o = !0,
s = !1,
a = void 0;
try {
for (var u, c = (0, d.
default)(n); ! (o = (u = c.next()).done); o = !0) {
i(u.value,
function(e, n) {
t[e] = n
})
}
} catch(t) {
s = !0,
a = t
} finally {
try { ! o && c.
return && c.
return ()
} finally {
if (s) throw a
}
}
return t
},
e.bindAll = function(t, e) {
t.forEach(function(t) {
e[t] && (e[t] = e[t].bind(e))
})
},
e.forIn = i,
e.endsWith = function(t, e) {
return - 1 !== t.indexOf(e, t.length - e.length)
},
e.isDefined = function(t) {
return null !== t && void 0 !== t
},
e.isUndefined = function(t) {
return void 0 === t
},
e.isString = function(t) {
return "[object String]" === Object.prototype.toString.call(t)
},
e.parseJson = function(t) {
return ! JSON || !JSON.stringify ? new Function("return " + t)() : JSON.parse(t)
},
e.colorToRGBA = function(t) {
if (t instanceof Array) return t;
var e = t >> 0 & 255,
n = t >> 8 & 255,
r = t >> 16 & 255,
i = t >> 24 & 255;
return i /= 255,
new Array(e, n, r, i)
},
e.rgbaToGLColor = function(t) {
t = String(t).replace(/ /g, "");
var e = t.substring(t.indexOf("(") + 1, t.indexOf(")")).split(",");
return 3 === e.length && (e[3] = 1),
e = e.map(function(t, e) {
return 3 === e ? Number(t) : Number(t) / 255
})
},
e.uniqueId = function() {
var t = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),
e = new Array(36),
n = 0,
r = void 0;
return function() {
for (var i = 0; i < 36; i++) 8 === i || 13 === i || 18 === i || 23 === i ? e[i] = "-": 14 === i ? e[i] = "4": (n <= 2 && (n = 33554432 + 16777216 * Math.random() | 0), r = 15 & n, n >>= 4, e[i] = t[19 === i ? 3 & r | 8 : r]);
return e.join("")
}
} (),
e.objectClone = function(t) {
var e = this;
if ("object" !== (void 0 === t ? "undefined": (0, u.
default)(t)) || null === t) return t;
if (t instanceof Array) return [].concat(t);
var n = new Object;
return i(t,
function(t, r) {
n[t] = e.objectClone(r)
}),
n
},
e.keysDifference = function(t, e) {
var n = [];
return i(t,
function(t) {
t in e || n.push(t)
}),
n
},
e.bezier = function(t, e, n, r) {
var i = new b(t, e, n, r);
return function(t) {
return i.solve(t)
}
},
e.ease = e.bezier(.25, .1, .25, 1),
e.linearEase = function(t) {
return t
},
e.asyncAll = function(t, e, n) {
if (!t.length) return n(null, []);
var r = t.length,
i = new Array(t.length),
o = null;
t.forEach(function(t, s) {
e(t,
function(t, e) {
t && (o = t),
i[s] = e,
0 === r && n(o, i),
r -= 1
})
})
},
e.deepEqual = function(t, n) {
if (Array.isArray(t)) {
if (!Array.isArray(n) || t.length !== n.length) return ! 1;
for (var r = 0; r < t.length; r++) if (!e.deepEqual(t[r], n[r])) return ! 1;
return ! 0
}
if ("object" === (void 0 === t ? "undefined": (0, u.
default)(t)) && null !== t && null !== n) {
if ("object" !== (void 0 === n ? "undefined": (0, u.
default)(n))) return ! 1;
if ((0, s.
default)(t).length !== (0, s.
default)(n).length) return ! 1;
for (var i in t) if (t.hasOwnProperty(i) && !e.deepEqual(t[i], n[i])) return ! 1;
return ! 0
}
return t === n
};
var x = {};
e.warnOnce = function(t) {
x[t] || ("undefined" != typeof console && console.warn(t), x[t] = !0)
},
e.clone = function(t) {
if (null === t || "object" !== (void 0 === t ? "undefined": (0, u.
default)(t))) return t;
if (t instanceof w.
default) return new w.
default(t.getLat(), t.getLng(), t.getHeight());
if (t instanceof Date) {
var e = new Date;
return e.setTime(t.getTime()),
e
}
if (t instanceof Array) {
for (var n = [], r = 0, i = t.length; r < i; ++r) n[r] = this.clone(t[r]);
return n
}
if (t instanceof Object) {
var o = {};
for (var s in t) t.hasOwnProperty(s) && (o[s] = this.clone(t[s]));
return o
}
throw new Error("Unable to copy obj! Its type isn't supported.")
},
e.insertSort = function(t, e) {
for (var n = 1,
r = n; r < t.length; n += 1, r += 1) for (var i = 0; i < n; i++) if (t[r][e] <= t[i][e]) {
t.splice(i, 0, t[r]),
t.splice(r + 1, 1);
break
}
},
e.bubbleSort = function(t, e) {
t.sort(function(t, n) {
return t[e] - n[e]
})
}
},
,
function(t, e, n) {
t.exports = !n(30)(function() {
return 7 != Object.defineProperty({},
"a", {
get: function() {
return 7
}
}).a
})
},
function(t, e, n) {
var r = n(7);
t.exports = function(t) {
if (!r(t)) throw TypeError(t + " is not an object!");
return t
}
},
function(t, e, n) {
var r = n(13),
i = n(84),
o = n(64),
s = Object.defineProperty;
e.f = n(12) ? Object.defineProperty: function(t, e, n) {
if (r(t), e = o(e, !0), r(n), i) try {
return s(t, e, n)
} catch(t) {}
if ("get" in n || "set" in n) throw TypeError("Accessors not supported!");
return "value" in n && (t[e] = n.value),
t
}
},
function(t, e, n) {
var r = n(6),
i = n(2),
o = n(30);
t.exports = function(t, e) {
var n = (i.Object || {})[t] || Object[t],
s = {};
s[t] = e(n),
r(r.S + r.F * o(function() {
n(1)
}), "Object", s)
}
},
function(t, e, n) {
t.exports = {
default:
n(242),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(170),
__esModule: !0
}
},
function(t, e, n) {
var r = n(80),
i = n(53);
t.exports = function(t) {
return r(i(t))
}
},
function(t, e, n) {
var r = n(14),
i = n(38);
t.exports = n(12) ?
function(t, e, n) {
return r.f(t, e, i(1, n))
}: function(t, e, n) {
return t[e] = n,
t
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
e.__esModule = !0;
var i = n(157),
o = r(i),
s = n(156),
a = r(s),
u = "function" == typeof a.
default && "symbol" == typeof o.
default ?
function(t) {
return typeof t
}: function(t) {
return t && "function" == typeof a.
default && t.constructor === a.
default && t !== a.
default.prototype ? "symbol": typeof t
};
e.
default = "function" == typeof a.
default && "symbol" === u(o.
default) ?
function(t) {
return void 0 === t ? "undefined": u(t)
}: function(t) {
return t && "function" == typeof a.
default && t.constructor === a.
default && t !== a.
default.prototype ? "symbol": void 0 === t ? "undefined": u(t)
}
},
function(t, e) {
var n = {}.hasOwnProperty;
t.exports = function(t, e) {
return n.call(t, e)
}
},
function(t, e, n) {
var r = n(44);
t.exports = function(t, e, n) {
if (r(t), void 0 === e) return t;
switch (n) {
case 1:
return function(n) {
return t.call(e, n)
};
case 2:
return function(n, r) {
return t.call(e, n, r)
};
case 3:
return function(n, r, i) {
return t.call(e, n, r, i)
}
}
return function() {
return t.apply(e, arguments)
}
}
},
function(t, e, n) {
"use strict";
var r = {
batchRender: !0,
highQualityRender: !1,
type: "default",
minZoom: 3,
maxZoom: 20,
maxDataZoom: 18,
minPitch: 0,
maxPitch: 80,
minShowIndoorZoom: 17,
tileSize: 256,
checkKeySrc: "https://apikey.map.qq.com/mkey/index.php/mkey/check",
overseaSrc: "https://overseactrl.map.qq.com",
prSrc: "https://pr.map.qq.com/pingd?appid=jsapi_v3",
verSrc: "https://confinfo.map.qq.com/confinfo",
iconSize: 16,
iconSrc: "https://vectorsdk.map.qq.com/fileupdate/jsapi/icon?id={id}&type=img&version={version}",
iconIndexSrc: "https://vectorsdk.map.qq.com/fileupdate/jsapi/icon?id={id}&type=json&version={version}",
styleSrc: "https://vectorsdk.map.qq.com/fileupdate/jsapi/style?autoup=1&id={id}&version={version}",
batchVectorSrc: ["https://rt0.map.gtimg.com/tile?styleid=0&tiles={tiles}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt1.map.gtimg.com/tile?styleid=0&tiles={tiles}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt2.map.gtimg.com/tile?styleid=0&tiles={tiles}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt3.map.gtimg.com/tile?styleid=0&tiles={tiles}&version={version}&style=100&compress=1&mapType=hybrid"],
vectorSrc: ["https://rt0.map.gtimg.com/tile?styleid=0&z={z}&x={x}&y={y}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt1.map.gtimg.com/tile?styleid=0&z={z}&x={x}&y={y}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt2.map.gtimg.com/tile?styleid=0&z={z}&x={x}&y={y}&version={version}&style=100&compress=1&mapType=hybrid", "https://rt3.map.gtimg.com/tile?styleid=0&z={z}&x={x}&y={y}&version={version}&style=100&compress=1&mapType=hybrid"],
satelliteSrc: ["https://p0.map.gtimg.com/sateTiles", "https://p1.map.gtimg.com/sateTiles", "https://p2.map.gtimg.com/sateTiles", "https://p3.map.gtimg.com/sateTiles"],
roadSrc: ["https://rt0.map.gtimg.com/tile", "https://rt1.map.gtimg.com/tile", "https://rt2.map.gtimg.com/tile", "https://rt3.map.gtimg.com/tile"],
trafficSrc: ["https://rtt2.map.qq.com/rtt/", "https://rtt2a.map.qq.com/rtt/", "https://rtt2b.map.qq.com/rtt/", "https://rtt2c.map.qq.com/rtt/"],
handdrawSrc: ["https://p0.map.gtimg.com/scenic/", "https://p1.map.gtimg.com/scenic/", "https://p2.map.gtimg.com/scenic/", "https://p3.map.gtimg.com/scenic/"],
indoorIndexSrc: " https://mapvectors.map.qq.com/indoormap2/index?type=1",
indoorBuildingSrc: "https://mapvectors.map.qq.com/indoormap",
indoorStyleSrc: "https://mapvectors.map.qq.com/indoormap/style.js?version={version}",
indoorIconSrc: "https://rt%$%.map.gtimg.com/icons/indoor/",
dataVersion: {
sat: 231,
tile: 405,
scenic: 157
},
cesiumStaticSrc: "https://mapapi.qq.com/web/visualization/real3d/cesium-static/",
envSrc: "https://mapapi.qq.com/web/visualization/monet/resource/env.jpg"
};
t.exports = r
},
function(t, e, n) {
"use strict";
e.__esModule = !0;
var r = n(82),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = function(t) {
if (Array.isArray(t)) {
for (var e = 0,
n = Array(t.length); e < t.length; e++) n[e] = t[e];
return n
}
return (0, i.
default)(t)
}
},
function(t, e, n) {
t.exports = {
default:
n(174),
__esModule: !0
}
},
function(t, e) {
t.exports = {}
},
function(t, e, n) {
t.exports = {
default:
n(126),
__esModule: !0
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i() {
return ! (self.navigator.userAgent.indexOf("MiniProgramEnv") < 0)
}
function o() {
for (var t = self.navigator.userAgent,
e = ["iOS", "Android", "MINA"], n = ["Windows", "Mac"], r = "cannotrecongize", i = 0; i < e.length; i++) if (t.indexOf("MiniProgramEnv/" + e[i]) >= 0) {
r = "mobile";
break
}
for (var o = 0; o < n.length; o++) if (t.indexOf("MiniProgramEnv/" + n[o]) >= 0) {
r = "pc";
break
}
return r
}
function s(t, e, n) {
if (e.includes(":")) {
var r = n,
i = e.split(":"),
o = i[0].trim();
e = i[1].trim(),
n = function(t) {
for (var e = !1,
n = t.target; n && !(e = a(n, o));) n = n.parentNode;
e && (t.selectorTarget = n, r(t))
}
}
return "addEventListener" in t ? (t.addEventListener(e, n, !1), {
remove: function() {
t.removeEventListener(e, n, !1)
}
}) : "attachEvent" in t ? (t.attachEvent("on" + e, n), {
remove: function() {
t.detachEvent("on" + e, n)
}
}) : "on" in t ? (t.on(e, n), {
remove: function() {
t.off && t.off(e, n),
t.removeListener && t.removeListener(e, n)
}
}) : void 0
}
function a(t, e) {
var n = ["matches", "webkitMatchesSelector", "msMatchesSelector", "mozMatchesSelector", "oMatchesSelector"],
r = !0,
i = !1,
o = void 0;
try {
for (var s, a = (0, c.
default)(n); ! (r = (s = a.next()).done); r = !0) {
var u = s.value;
if (t[u] && "function" == typeof t[u]) return t[u](e)
}
} catch(t) {
i = !0,
o = t
} finally {
try { ! r && a.
return && a.
return ()
} finally {
if (i) throw o
}
}
return ! 1
}
var u = n(27),
c = r(u),
l = n(17),
h = r(l),
f = n(20),
p = r(f),
d = n(24),
g = r(d);
e.now = function() {
return self.performance && self.performance.now ? self.performance.now.bind(self.performance) : Date.now.bind(Date)
} ();
var y = self.requestAnimationFrame || self.mozRequestAnimationFrame || self.webkitRequestAnimationFrame || self.msRequestAnimationFrame;
e.frame = function(t) {
return y(t)
};
var v = self.cancelAnimationFrame || self.mozCancelAnimationFrame || self.webkitCancelAnimationFrame || self.msCancelAnimationFrame;
e.cancelFrame = function(t) {
v(t)
},
e.timed = function(n, r, i, o) {
function s(r) {
u || (r = t.exports.now(), r >= c + i ? n.call(o, 1) : (n.call(o, (r - c) / i), e.frame(s)))
}
var a = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : 0;
if (!i) return n.call(o, 1),
null;
var u = !1,
c = t.exports.now() - a * i;
return e.frame(s),
function() {
u = !0,
r && r.call(o)
}
},
e.getImageData = function(t) {
var e = self.document.createElement("canvas"),
n = e.getContext("2d");
return e.width = t.width,
e.height = t.height,
n.drawImage(t, 0, 0, t.width, t.height),
n.getImageData(0, 0, t.width, t.height).data
},
e.hardwareConcurrency = self.navigator.hardwareConcurrency || 4,
Object.defineProperty(e, "devicePixelRatio", {
get: function() {
return self.devicePixelRatio || 1
}
}),
e.isPC = function() {
var t = self.navigator.userAgent,
e = ["Android", "iPhone", "iPad", "iPod", "SymbianOS", "selfs Phone"],
n = !0;
if (i()) {
if ("mobile" === o()) return ! 1;
if ("pc" === o()) return ! 0
}
for (var r = 0; r < e.length; r++) if (t.indexOf(e[r]) >= 0) {
n = !1;
break
}
return n
},
e.isMiniProgram = i,
e.getMiniProgramEnv = o,
e.isLowMobileDevice = function() {
var t = self.navigator.userAgent;
if (this.isPC()) return ! 1;
if (t.includes("SymbianOS") || t.includes("selfs Phone")) return ! 0;
try {
var e = t.includes("Android") && parseFloat(t.match(/Android (\d+)/)[1]),
n = (t.includes("iPhone") || t.includes("iPad") || t.includes("iPod")) && t.match(/OS ((\d+_?){2,3})\s/) && parseFloat(String(t.match(/OS ((\d+_?){2,3})\s/)[1]).replace("_", "."));
if (e && e < 6 || n && n < 11) return ! 0
} catch(t) {
return ! 1
}
return ! 1
},
e.mobileSystem = function() {
var t = self.navigator.userAgent,
e = "";
if (this.isPC()) return ! 1;
if (t.includes("SymbianOS") || t.includes("selfs Phone")) e = t.includes("SymbianOS") ? "SymbianOS": "selfs Phone";
else try {
var n = t.includes("Android") && parseFloat(t.match(/Android ([\d.]+?);/)[1]),
r = (t.includes("iPhone") || t.includes("iPad") || t.includes("iPod")) && t.match(/OS ((\d+_?){2,3})\s/) && parseFloat(String(t.match(/OS ((\d+_?){2,3})\s/)[1]).replace("_", "."));
e = n ? "Android" + n.toFixed(1) : "iOS" + r.toFixed(1)
} catch(e) {
return "无法识别: " + t
}
return e
},
e.debounce = function(t, e) {
var n = null;
return function() {
var r = arguments;
n && clearTimeout(n),
n = setTimeout(function() {
t.apply(void 0, (0, g.
default)(r))
},
e)
}
},
e.throttle = function(t, e) {
var n = 0;
return function() {
var r = +new Date;
if (r - n > e) {
n = r;
for (var i = arguments.length,
o = Array(i), s = 0; s < i; s++) o[s] = arguments[s];
t.apply(this, o)
}
}
},
e.throttleWithFrame = function(t) {
var e = null;
return function() {
for (var n = this,
r = arguments.length,
i = Array(r), o = 0; o < r; o++) i[o] = arguments[o];
e || (e = y(function() {
t.apply(n, i),
e = null
}))
}
};
var m = function t(e, n, r, i) {
if (!e || !n) return void console.warn("arguments is invalid!", e, n, r);
if ("object" === (void 0 === n ? "undefined": (0, p.
default)(n))) {
var o = null;
return o = "length" in n ? n.map(function(n) {
return t(e, n.trim(), r, i)
}) : (0, h.
default)(n).map(function(i) {
return t(e, i.trim(), n[i], r)
}),
{
remove: function() {
o.forEach(function(t) {
t && t.remove && t.remove()
})
}
}
}
if ( - 1 !== n.indexOf(",")) {
n = n.split(",");
var a = n.map(function(n) {
return t(e, n.trim(), r, i)
});
return {
remove: function() {
a.forEach(function(t) {
t && t.remove && t.remove()
})
}
}
}
return s(e, n,
function(t) {
return r.call(i || e, t)
})
},
_ = function(t, e, n, r) {
var i = null,
o = function(t) {
return function() {
return i && i.remove && i.remove(),
t.apply(this, arguments)
}
};
return t && e ? ("object" === (void 0 === e ? "undefined": (0, p.
default)(e)) && ("length" in e ? n = o(n) : (0, h.
default)(e).forEach(function(t) {
e[t] = o(e[t])
})), -1 !== e.indexOf(",") && (e = e.split(","), n = o(n)), i = m(t, e, n, r)) : void console.warn("arguments is invalid!", t, e, n)
};
e.on = m,
e.once = _
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.AJAXError = e.EnumError = e.ClassTypeError = e.BaseTypeError = void 0;
var i = n(20),
o = r(i),
s = n(3),
a = r(s),
u = n(5),
c = r(u),
l = n(4),
h = r(l),
f = n(0),
p = r(f),
d = n(1),
g = r(d),
y = function() {
function t(e) { (0, p.
default)(this, t),
this.message = e
}
return (0, g.
default)(t, [{
key: "warn",
value: function() {
console.warn(this.message)
}
},
{
key: "error",
value: function() {
console.error(this.message)
}
},
{
key: "throw",
value: function() {
throw new Error(this.message)
}
}]),
t
} (),
v = function(t) {
function e(t, n, r) {
return (0, p.
default)(this, e),
(0, c.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, "类型错误:" + t + " 应该是 " + n.toUpperCase() + " 类型, 实际却是 " + (void 0 === r ? "undefined": (0, o.
default)(r)).toUpperCase() + " 类型。"))
}
return (0, h.
default)(e, t),
e
} (y),
m = function(t) {
function e(t, n, r) {
return (0, p.
default)(this, e),
(0, c.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, "类型错误:" + t + " 应该是 " + n + " 类型, 实际值为 " + r + "。"))
}
return (0, h.
default)(e, t),
e
} (y),
_ = function(t) {
function e(t, n, r) {
return (0, p.
default)(this, e),
(0, c.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, "枚举错误:" + t + " 的可枚举值为 " + n.join(",") + ",实际却是 " + r))
}
return (0, h.
default)(e, t),
e
} (y),
w = function t(e, n) { (0, p.
default)(this, t),
this.message = e,
this.status = n
};
e.BaseTypeError = v,
e.ClassTypeError = m,
e.EnumError = _,
e.AJAXError = w
},
function(t, e) {
t.exports = function(t) {
try {
return !! t()
} catch(t) {
return ! 0
}
}
},
function(t, e, n) {
var r = n(53);
t.exports = function(t) {
return Object(r(t))
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
e.__esModule = !0;
var i = n(125),
o = r(i),
s = n(27),
a = r(s);
e.
default = function() {
function t(t, e) {
var n = [],
r = !0,
i = !1,
o = void 0;
try {
for (var s, u = (0, a.
default)(t); ! (r = (s = u.next()).done) && (n.push(s.value), !e || n.length !== e); r = !0);
} catch(t) {
i = !0,
o = t
} finally {
try { ! r && u.
return && u.
return ()
} finally {
if (i) throw o
}
}
return n
}
return function(e, n) {
if (Array.isArray(e)) return e;
if ((0, o.
default)(Object(e))) return t(e, n);
throw new TypeError("Invalid attempt to destructure non-iterable instance")
}
} ()
},
function(t, e, n) {
"use strict";
var r = n(131)(!0);
n(72)(String, "String",
function(t) {
this._t = String(t),
this._i = 0
},
function() {
var t, e = this._t,
n = this._i;
return n >= e.length ? {
value: void 0,
done: !0
}: (t = r(e, n), this._i += t.length, {
value: t,
done: !1
})
})
},
function(t, e, n) {
var r = n(87),
i = n(58);
t.exports = Object.keys ||
function(t) {
return r(t, i)
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
e.__esModule = !0;
var i = n(3),
o = r(i),
s = n(116),
a = r(s);
e.
default = function t(e, n, r) {
null === e && (e = Function.prototype);
var i = (0, a.
default)(e, n);
if (void 0 === i) {
var s = (0, o.
default)(e);
return null === s ? void 0 : t(s, n, r)
}
if ("value" in i) return i.value;
var u = i.get;
if (void 0 !== u) return u.call(r)
}
},
function(t, e) {
var n = {}.toString;
t.exports = function(t) {
return n.call(t).slice(8, -1)
}
},
function(t, e) {
t.exports = !0
},
function(t, e) {
t.exports = function(t, e) {
return {
enumerable: !(1 & t),
configurable: !(2 & t),
writable: !(4 & t),
value: e
}
}
},
function(t, e, n) {
n(135);
for (var r = n(8), i = n(19), o = n(26), s = n(9)("toStringTag"), a = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","), u = 0; u < a.length; u++) {
var c = a[u],
l = r[c],
h = l && l.prototype;
h && !h[s] && i(h, s, c),
o[c] = o.Array
}
},
function(t, e, n) {
var r = n(46)("meta"),
i = n(7),
o = n(21),
s = n(14).f,
a = 0,
u = Object.isExtensible ||
function() {
return ! 0
},
c = !n(30)(function() {
return u(Object.preventExtensions({}))
}),
l = function(t) {
s(t, r, {
value: {
i: "O" + ++a,
w: {}
}
})
},
h = function(t, e) {
if (!i(t)) return "symbol" == typeof t ? t: ("string" == typeof t ? "S": "P") + t;
if (!o(t, r)) {
if (!u(t)) return "F";
if (!e) return "E";
l(t)
}
return t[r].i
},
f = function(t, e) {
if (!o(t, r)) {
if (!u(t)) return ! 0;
if (!e) return ! 1;
l(t)
}
return t[r].w
},
p = function(t) {
return c && d.NEED && u(t) && !o(t, r) && l(t),
t
},
d = t.exports = {
KEY: r,
NEED: !1,
fastKey: h,
getWeak: f,
onFreeze: p
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(32),
o = r(i),
s = n(140),
a = r(s),
u = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/,
c = /^rgb\((\d+,?\s*){3}\)$/,
l = /^rgba\((\d+,?\s*){3},\s*[0-9.]+\)$/,
h = {}; !
function(t) { ["Number", "String", "Function", "Undefined", "Boolean", "Object", "Array"].forEach(function(e) {
var n = function(t) {
return "[object " + e + "]" === Object.prototype.toString.call(t)
};
t["is" + e] = n
})
} (h),
h.isNaN = a.
default,
h.isValidLatLng = function() {
var t = void 0,
e = void 0;
if (1 === arguments.length) {
var n = arguments[0];
if (h.isArray(n)) {
var r = (0, o.
default)(n, 2);
t = r[0],
e = r[1]
} else t = n.lat,
e = n.lng
} else {
if (2 !== arguments.length) return ! 1;
t = arguments[0],
e = arguments[1]
}
return ! (!h.isNumber(t) || !h.isNumber(e)) && (Math.abs(t) <= 90 && Math.abs(e) <= 180)
},
h.isValidColor = function(t) {
return h.isArray(t) ? (3 === t.length || 4 === t.length) && t.every(function(t) {
return t >= 0 && t <= 255
}) : !!h.isString(t) && (u.test(t) || c.test(t) || l.test(t))
},
h.isValidOffset = function(t) {
return !! (h.isObject(t) && "x" in t && "y" in t && h.isNumber(t.x) && h.isNumber(t.y))
},
e.
default = h
},
function(t, e, n) {
var r = n(14).f,
i = n(21),
o = n(9)("toStringTag");
t.exports = function(t, e, n) {
t && !i(t = n ? t: t.prototype, o) && r(t, o, {
configurable: !0,
value: e
})
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
return function() {
return A ? void 0 : t.apply(null, arguments)
}
}
function o(t, e) {
var n = [];
for (var r in e) e.hasOwnProperty(r) && n.push(r + "=" + e[r]);
return t + ( - 1 === t.indexOf("?") ? "?": "&") + n.join("&")
}
function s(t) {
var e = (0, S.isWebGLSupportedCached)(); (0, C.sendByAjax)(o(b.
default.prSrc, {
logid: "pv",
key: t.key || E.
default.key,
v: t.version || "null",
lt: t.loadDeltaTime || -1,
d: location.host,
dpr: window.devicePixelRatio,
lss: I.
default.support() ? 1 : 0,
gls: e.context ? 1 : 0,
ua: window.navigator.userAgent,
dt: P.
default.OS,
dvn: e.renderer
}))
}
function a() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.type,
n = t.code,
r = t.message,
i = void 0 === r ? "": r,
s = t.key,
a = void 0 === s ? E.
default.key:
s; (0, C.sendOnce)(o(b.
default.prSrc, {
logid: "err",
key: a,
type: e,
code: n,
msg: i,
dt: P.
default.OS
}))
}
function u(t, e, n) {
t.once("tilesloaded",
function() { (0, C.sendOnce)(o(b.
default.prSrc, {
logid: "rt",
frt: Date.now() - e,
device: n
}))
})
}
function c(t, e, n) { (0, L.isPC)() || t.once("tilesloaded",
function() { (0, C.sendOnce)(o(b.
default.prSrc, {
logid: "ds",
lowdevice: e,
systemid: n
}))
})
}
function l(t) {
var e = (0, S.isWebGLSupportedCached)(),
n = null,
r = 0,
i = null,
s = function() {
var s = (0, L.now)(),
a = (s - i) / 1e3,
u = Math.round(r / (60 * a) * 60);
t.removeRenderCallback(n),
(0, C.sendOnce)(o(b.
default.prSrc, {
logid: "fps",
dt: P.
default.OS,
num: u,
cd: e.isIndependentDisplayCard ? 1 : 0
}))
};
t.on("movestart",
function() {
n && (t.removeListener("moveend", s), t.removeRenderCallback(n), r = 0),
i = (0, L.now)(),
n = function() {
r++
},
t.addRenderCallback(n),
t.once("moveend", s)
})
}
function h(t) { (0, C.sendOnce)(o(b.
default.prSrc, {
logid: "cl",
key: t.key || E.
default.key,
subkey: t.subkey || "",
id: t.id || ""
}))
}
function f(t) { (0, C.sendOnce)(o(b.
default.prSrc, {
logid: "cs",
key: t.key || E.
default.key,
subkey: t.subkey || "",
id: t.styleId
}))
}
function p(t, e) { (0, C.sendOnce)(o(b.
default.prSrc, {
logid: "os",
key: t.key || E.
default.key,
num: e || 0
}))
}
function d(t) {
var e = t.zoom,
n = t.pitch,
r = t.rotation,
i = t.width,
s = t.height; (0, C.sendOnce)(o(b.
default.prSrc, {
logid: "minfo",
zoom: Math.floor(e),
pitch: n,
rotation: r,
width: i,
height: s
}))
}
function g(t, e) {
if ("tile" === t) {
var n = e.id,
r = e.status,
i = e.time,
s = O[n];
s || (s = new T(n), O[n] = s),
s.logStatus(r),
0 === r && i && s.logTime(i)
} else {
var a = {
logid: "qos",
t: t,
info: e.styleId + "|" + e.version
};
e.error || 0 === e.error ? a.e = e.error: a.lt = e.loadTime,
(0, C.sendOnce)(o(b.
default.prSrc, a))
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.statCn = e.qos = e.minfo = e.os = e.cs = e.cl = e.fps = e.ds = e.frt = e.err = e.pv = void 0;
var y = n(0),
v = r(y),
m = n(1),
_ = r(m),
w = n(23),
b = r(w),
x = n(105),
E = r(x),
M = n(89),
I = r(M),
S = n(145),
C = n(144),
N = n(138),
P = r(N),
L = n(28),
A = !!E.
default.isLocal,
O = (e.pv = i(s), e.err = i(a), e.frt = i(u), e.ds = i(c), e.fps = i(l), e.cl = i(h), e.cs = i(f), e.os = i(p), e.minfo = i(d), {}),
T = (e.qos = i(g),
function() {
function t(e) {
function n() {
var t = this.id[0] + "_stat",
e = this.id[0] + "_avg",
n = {},
r = this.tilesStatus.join("|");
if ("0|0|0" !== r && (n[t] = r, this.tilesStatus = [0, 0, 0]), this.tilesTime.length > 0) {
var i = this.tilesTime.reduce(function(t, e) {
return t + e
},
0) / this.tilesTime.length;
n[e] = Math.max(0, Math.floor(i)),
this.tilesTime = []
}
return n
} (0, v.
default)(this, t),
this.id = e,
this.tilesStatus = [0, 0, 0],
this.tilesTime = [],
(0, C.sendPeriodically)("tile", o(b.
default.prSrc, {
logid: "qos",
t: "tile"
}), n.bind(this))
}
return (0, _.
default)(t, [{
key: "logStatus",
value: function(t) {
this.tilesStatus[t] += 1
}
},
{
key: "logTime",
value: function(t) {
this.tilesTime.push(t)
}
}]),
t
} ()),
R = function() {
function t() {
setTimeout(function() {
e.length > 0 && ((0, C.sendOnce)(o(b.
default.prSrc, {
logid: "cn",
cn: e.join(",")
})), e = []),
t()
},
5e3)
}
var e = [];
return t(),
function(t) {
t && e.push(t)
}
} ();
e.statCn = i(R)
},
function(t, e) {
t.exports = function(t) {
if ("function" != typeof t) throw TypeError(t + " is not a function!");
return t
}
},
function(t, e) {
e.f = {}.propertyIsEnumerable
},
function(t, e) {
var n = 0,
r = Math.random();
t.exports = function(t) {
return "Symbol(".concat(void 0 === t ? "": t, ")_", (++n + r).toString(36))
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var i = n(20),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = n(10),
h = 90,
f = 180,
p = function() {
function t(e, n) {
var r = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 0,
i = arguments[3];
if ((0, a.
default)(this, t), e = Number(e), n = Number(n), r = Number(r), isNaN(n) || isNaN(e) || isNaN(r)) throw new Error("参数错误LatLng 传入参数 (" + e + ", " + n + ") 非合法数字。");
if (i) e = (0, l.clamp)(e, -h, h),
n = (0, l.wrap)(n, -f, f);
else {
if (e > h || e < -h) throw new Error("参数错误LatLng.lat 取值应在 [" + -h + ", " + h + "] 区间内。");
if (n > f || n < -f) throw new Error("参数错误LatLng.lng 取值应在 [" + -f + ", " + f + "] 区间内。")
}
this.lat = e,
this.lng = n,
this.height = r
}
return (0, c.
default)(t, [{
key: "toString",
value: function() {
return this.lat + ", " + this.lng
}
},
{
key: "getLat",
value: function() {
return this.lat
}
},
{
key: "getLng",
value: function() {
return this.lng
}
},
{
key: "getHeight",
value: function() {
return this.height
}
},
{
key: "equals",
value: function(t) {
return this.lat === t.lat && this.lng === t.lng && this.height === t.height
}
}], [{
key: "convert",
value: function(e) {
if (e instanceof t) return e;
if (Array.isArray(e)) return new t(e[0], e[1], e[2], !0);
if (!Array.isArray(e) && "object" === (void 0 === e ? "undefined": (0, o.
default)(e)) && null !== e) return new t(e.lat, e.lng, e.height, !0);
throw new Error("`LatLng` argument must be specified as a LatLng instance, an object {lat: <lat>, lng: <lng>}, or an array of [<lat>, <lng>]")
}
}]),
t
} ();
t.exports = p
},
function(t, e, n) {
"use strict";
function r(t, e, n) {
if (n = n || {},
!S(n)) throw new Error("options is invalid");
var r = n.bbox,
i = n.id;
if (void 0 === t) throw new Error("geometry is required");
if (e && e.constructor !== Object) throw new Error("properties must be an Object");
r && C(r),
i && N(i);
var o = {
type: "Feature"
};
return i && (o.id = i),
r && (o.bbox = r),
o.properties = e || {},
o.geometry = t,
o
}
function i(t, e, n) {
if (n = n || {},
!S(n)) throw new Error("options is invalid");
var r = n.bbox;
if (!t) throw new Error("type is required");
if (!e) throw new Error("coordinates is required");
if (!Array.isArray(e)) throw new Error("coordinates must be an Array");
r && C(r);
var i;
switch (t) {
case "Point":
i = o(e).geometry;
break;
case "LineString":
i = c(e).geometry;
break;
case "Polygon":
i = a(e).geometry;
break;
case "MultiPoint":
i = p(e).geometry;
break;
case "MultiLineString":
i = f(e).geometry;
break;
case "MultiPolygon":
i = d(e).geometry;
break;
default:
throw new Error(t + " is invalid")
}
return r && (i.bbox = r),
i
}
function o(t, e, n) {
if (!t) throw new Error("coordinates is required");
if (!Array.isArray(t)) throw new Error("coordinates must be an Array");
if (t.length < 2) throw new Error("coordinates must be at least 2 numbers long");
if (!I(t[0]) || !I(t[1])) throw new Error("coordinates must contain numbers");
return r({
type: "Point",
coordinates: t
},
e, n)
}
function s(t, e, n) {
if (!t) throw new Error("coordinates is required");
if (!Array.isArray(t)) throw new Error("coordinates must be an Array");
return h(t.map(function(t) {
return o(t, e)
}), n)
}
function a(t, e, n) {
if (!t) throw new Error("coordinates is required");
for (var i = 0; i < t.length; i++) {
var o = t[i];
if (o.length < 4) throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");
for (var s = 0; s < o[o.length - 1].length; s++) {
if (0 === i && 0 === s && !I(o[0][0]) || !I(o[0][1])) throw new Error("coordinates must contain numbers");
if (o[o.length - 1][s] !== o[0][s]) throw new Error("First and last Position are not equivalent.")
}
}
return r({
type: "Polygon",
coordinates: t
},
e, n)
}
function u(t, e, n) {
if (!t) throw new Error("coordinates is required");
if (!Array.isArray(t)) throw new Error("coordinates must be an Array");
return h(t.map(function(t) {
return a(t, e)
}), n)
}
function c(t, e, n) {
if (!t) throw new Error("coordinates is required");
if (t.length < 2) throw new Error("coordinates must be an array of two or more positions");
if (!I(t[0][1]) || !I(t[0][1])) throw new Error("coordinates must contain numbers");
return r({
type: "LineString",
coordinates: t
},
e, n)
}
function l(t, e, n) {
if (!t) throw new Error("coordinates is required");
if (!Array.isArray(t)) throw new Error("coordinates must be an Array");
return h(t.map(function(t) {
return c(t, e)
}), n)
}
function h(t, e) {
if (e = e || {},
!S(e)) throw new Error("options is invalid");
var n = e.bbox,
r = e.id;
if (!t) throw new Error("No features passed");
if (!Array.isArray(t)) throw new Error("features must be an Array");
n && C(n),
r && N(r);
var i = {
type: "FeatureCollection"
};
return r && (i.id = r),
n && (i.bbox = n),
i.features = t,
i
}
function f(t, e, n) {
if (!t) throw new Error("coordinates is required");
return r({
type: "MultiLineString",
coordinates: t
},
e, n)
}
function p(t, e, n) {
if (!t) throw new Error("coordinates is required");
return r({
type: "MultiPoint",
coordinates: t
},
e, n)
}
function d(t, e, n) {
if (!t) throw new Error("coordinates is required");
return r({
type: "MultiPolygon",
coordinates: t
},
e, n)
}
function g(t, e, n) {
if (!t) throw new Error("geometries is required");
if (!Array.isArray(t)) throw new Error("geometries must be an Array");
return r({
type: "GeometryCollection",
geometries: t
},
e, n)
}
function y(t, e) {
if (void 0 === t || null === t || isNaN(t)) throw new Error("num is required");
if (e && !(e >= 0)) throw new Error("precision must be a positive number");
var n = Math.pow(10, e || 0);
return Math.round(t * n) / n
}
function v(t, e) {
if (void 0 === t || null === t) throw new Error("radians is required");
if (e && "string" != typeof e) throw new Error("units must be a string");
var n = F[e || "kilometers"];
if (!n) throw new Error(e + " units is invalid");
return t * n
}
function m(t, e) {
if (void 0 === t || null === t) throw new Error("distance is required");
if (e && "string" != typeof e) throw new Error("units must be a string");
var n = F[e || "kilometers"];
if (!n) throw new Error(e + " units is invalid");
return t / n
}
function _(t, e) {
return b(m(t, e))
}
function w(t) {
if (null === t || void 0 === t) throw new Error("bearing is required");
var e = t % 360;
return e < 0 && (e += 360),
e
}
function b(t) {
if (null === t || void 0 === t) throw new Error("radians is required");
return t % (2 * Math.PI) * 180 / Math.PI
}
function x(t) {
if (null === t || void 0 === t) throw new Error("degrees is required");
return t % 360 * Math.PI / 180
}
function E(t, e, n) {
if (null === t || void 0 === t) throw new Error("length is required");
if (! (t >= 0)) throw new Error("length must be a positive number");
return v(m(t, e), n || "kilometers")
}
function M(t, e, n) {
if (null === t || void 0 === t) throw new Error("area is required");
if (! (t >= 0)) throw new Error("area must be a positive number");
var r = q[e || "meters"];
if (!r) throw new Error("invalid original units");
var i = q[n || "kilometers"];
if (!i) throw new Error("invalid final units");
return t / r * i
}
function I(t) {
return ! isNaN(t) && null !== t && !Array.isArray(t)
}
function S(t) {
return !! t && t.constructor === Object
}
function C(t) {
if (!t) throw new Error("bbox is required");
if (!Array.isArray(t)) throw new Error("bbox must be an Array");
if (4 !== t.length && 6 !== t.length) throw new Error("bbox must be an Array of 4 or 6 numbers");
t.forEach(function(t) {
if (!I(t)) throw new Error("bbox must only contain numbers")
})
}
function N(t) {
if (!t) throw new Error("id is required");
if ( - 1 === ["string", "number"].indexOf(typeof t)) throw new Error("id must be a number or a string")
}
function P() {
throw new Error("method has been renamed to `radiansToDegrees`")
}
function L() {
throw new Error("method has been renamed to `degreesToRadians`")
}
function A() {
throw new Error("method has been renamed to `lengthToDegrees`")
}
function O() {
throw new Error("method has been renamed to `lengthToRadians`")
}
function T() {
throw new Error("method has been renamed to `radiansToLength`")
}
function R() {
throw new Error("method has been renamed to `bearingToAzimuth`")
}
function D() {
throw new Error("method has been renamed to `convertLength`")
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
n.d(e, "earthRadius",
function() {
return k
}),
n.d(e, "factors",
function() {
return F
}),
n.d(e, "unitsFactors",
function() {
return j
}),
n.d(e, "areaFactors",
function() {
return q
}),
n.d(e, "feature",
function() {
return r
}),
n.d(e, "geometry",
function() {
return i
}),
n.d(e, "point",
function() {
return o
}),
n.d(e, "points",
function() {
return s
}),
n.d(e, "polygon",
function() {
return a
}),
n.d(e, "polygons",
function() {
return u
}),
n.d(e, "lineString",
function() {
return c
}),
n.d(e, "lineStrings",
function() {
return l
}),
n.d(e, "featureCollection",
function() {
return h
}),
n.d(e, "multiLineString",
function() {
return f
}),
n.d(e, "multiPoint",
function() {
return p
}),
n.d(e, "multiPolygon",
function() {
return d
}),
n.d(e, "geometryCollection",
function() {
return g
}),
n.d(e, "round",
function() {
return y
}),
n.d(e, "radiansToLength",
function() {
return v
}),
n.d(e, "lengthToRadians",
function() {
return m
}),
n.d(e, "lengthToDegrees",
function() {
return _
}),
n.d(e, "bearingToAzimuth",
function() {
return w
}),
n.d(e, "radiansToDegrees",
function() {
return b
}),
n.d(e, "degreesToRadians",
function() {
return x
}),
n.d(e, "convertLength",
function() {
return E
}),
n.d(e, "convertArea",
function() {
return M
}),
n.d(e, "isNumber",
function() {
return I
}),
n.d(e, "isObject",
function() {
return S
}),
n.d(e, "validateBBox",
function() {
return C
}),
n.d(e, "validateId",
function() {
return N
}),
n.d(e, "radians2degrees",
function() {
return P
}),
n.d(e, "degrees2radians",
function() {
return L
}),
n.d(e, "distanceToDegrees",
function() {
return A
}),
n.d(e, "distanceToRadians",
function() {
return O
}),
n.d(e, "radiansToDistance",
function() {
return T
}),
n.d(e, "bearingToAngle",
function() {
return R
}),
n.d(e, "convertDistance",
function() {
return D
});
var k = 6378136.49,
F = {
meters: k,
metres: k,
millimeters: 1e3 * k,
millimetres: 1e3 * k,
centimeters: 100 * k,
centimetres: 100 * k,
kilometers: k / 1e3,
kilometres: k / 1e3,
miles: k / 1609.344,
nauticalmiles: k / 1852,
inches: 39.37 * k,
yards: k / 1.0936,
feet: 3.28084 * k,
radians: 1,
degrees: k / 111325
},
j = {
meters: 1,
metres: 1,
millimeters: 1e3,
millimetres: 1e3,
centimeters: 100,
centimetres: 100,
kilometers: .001,
kilometres: .001,
miles: 1 / 1609.344,
nauticalmiles: 1 / 1852,
inches: 39.37,
yards: 1 / 1.0936,
feet: 3.28084,
radians: 1 / k,
degrees: 1 / 111325
},
q = {
meters: 1,
metres: 1,
millimeters: 1e6,
millimetres: 1e6,
centimeters: 1e4,
centimetres: 1e4,
kilometers: 1e-6,
kilometres: 1e-6,
acres: 247105e-9,
miles: 3.86e-7,
yards: 1.195990046,
feet: 10.763910417,
inches: 1550.003100006
}
},
function(t, e, n) {
var r = n(36),
i = n(9)("toStringTag"),
o = "Arguments" == r(function() {
return arguments
} ()),
s = function(t, e) {
try {
return t[e]
} catch(t) {}
};
t.exports = function(t) {
var e, n, a;
return void 0 === t ? "Undefined": null === t ? "Null": "string" == typeof(n = s(e = Object(t), i)) ? n: o ? r(e) : "Object" == (a = r(e)) && "function" == typeof e.callee ? "Arguments": a
}
},
,
function(t, e, n) {
var r = n(13),
i = n(85),
o = n(58),
s = n(54)("IE_PROTO"),
a = function() {},
u = function() {
var t, e = n(57)("iframe"),
r = o.length;
for (e.style.display = "none", n(83).appendChild(e), e.src = "javascript:", t = e.contentWindow.document, t.open(), t.write("<script>document.F=Object<\/script>"), t.close(), u = t.F; r--;) delete u.prototype[o[r]];
return u()
};
t.exports = Object.create ||
function(t, e) {
var n;
return null !== t ? (a.prototype = r(t), n = new a, a.prototype = null, n[s] = t) : n = u(),
void 0 === e ? n: i(n, e)
}
},
function(t, e, n) {
var r = n(55),
i = Math.min;
t.exports = function(t) {
return t > 0 ? i(r(t), 9007199254740991) : 0
}
},
function(t, e) {
t.exports = function(t) {
if (void 0 == t) throw TypeError("Can't call method on " + t);
return t
}
},
function(t, e, n) {
var r = n(59)("keys"),
i = n(46);
t.exports = function(t) {
return r[t] || (r[t] = i(t))
}
},
function(t, e) {
var n = Math.ceil,
r = Math.floor;
t.exports = function(t) {
return isNaN(t = +t) ? 0 : (t > 0 ? r: n)(t)
}
},
function(t, e, n) {
"use strict";
t.exports = "TMap"
},
function(t, e, n) {
var r = n(7),
i = n(8).document,
o = r(i) && r(i.createElement);
t.exports = function(t) {
return o ? i.createElement(t) : {}
}
},
function(t, e) {
t.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")
},
function(t, e, n) {
var r = n(2),
i = n(8),
o = i["__core-js_shared__"] || (i["__core-js_shared__"] = {}); (t.exports = function(t, e) {
return o[t] || (o[t] = void 0 !== e ? e: {})
})("versions", []).push({
version: r.version,
mode: n(37) ? "pure": "global",
copyright: "© 2019 Denis Pushkarev (zloirock.ru)"
})
},
, , , ,
function(t, e, n) {
var r = n(7);
t.exports = function(t, e) {
if (!r(t)) return t;
var n, i;
if (e && "function" == typeof(n = t.toString) && !r(i = n.call(t))) return i;
if ("function" == typeof(n = t.valueOf) && !r(i = n.call(t))) return i;
if (!e && "function" == typeof(n = t.toString) && !r(i = n.call(t))) return i;
throw TypeError("Can't convert object to primitive value")
}
},
function(t, e, n) {
var r = n(49),
i = n(9)("iterator"),
o = n(26);
t.exports = n(2).getIteratorMethod = function(t) {
if (void 0 != t) return t[i] || t["@@iterator"] || o[r(t)]
}
},
,
function(t, e, n) {
"use strict";
function r(t) {
var e, n;
this.promise = new t(function(t, r) {
if (void 0 !== e || void 0 !== n) throw TypeError("Bad Promise constructor");
e = t,
n = r
}),
this.resolve = i(e),
this.reject = i(n)
}
var i = n(44);
t.exports.f = function(t) {
return new r(t)
}
},
function(t, e, n) {
var r = n(45),
i = n(38),
o = n(18),
s = n(64),
a = n(21),
u = n(84),
c = Object.getOwnPropertyDescriptor;
e.f = n(12) ? c: function(t, e) {
if (t = o(t), e = s(e, !0), u) try {
return c(t, e)
} catch(t) {}
if (a(t, e)) return i(!r.f.call(t, e), t[e])
}
},
function(t, e, n) {
var r = n(8),
i = n(2),
o = n(37),
s = n(70),
a = n(14).f;
t.exports = function(t) {
var e = i.Symbol || (i.Symbol = o ? {}: r.Symbol || {});
"_" == t.charAt(0) || t in e || a(e, t, {
value: s.f(t)
})
}
},
function(t, e, n) {
e.f = n(9)
},
function(t, e, n) {
var r = n(22),
i = n(93),
o = n(92),
s = n(13),
a = n(52),
u = n(65),
c = {},
l = {},
e = t.exports = function(t, e, n, h, f) {
var p, d, g, y, v = f ?
function() {
return t
}: u(t),
m = r(n, h, e ? 2 : 1),
_ = 0;
if ("function" != typeof v) throw TypeError(t + " is not iterable!");
if (o(v)) {
for (p = a(t.length); p > _; _++) if ((y = e ? m(s(d = t[_])[0], d[1]) : m(t[_])) === c || y === l) return y
} else for (g = v.call(t); ! (d = g.next()).done;) if ((y = i(g, m, d.value, e)) === c || y === l) return y
};
e.BREAK = c,
e.RETURN = l
},
function(t, e, n) {
"use strict";
var r = n(37),
i = n(6),
o = n(81),
s = n(19),
a = n(26),
u = n(130),
c = n(42),
l = n(86),
h = n(9)("iterator"),
f = !([].keys && "next" in [].keys()),
p = function() {
return this
};
t.exports = function(t, e, n, d, g, y, v) {
u(n, e, d);
var m, _, w, b = function(t) {
if (!f && t in I) return I[t];
switch (t) {
case "keys":
case "values":
return function() {
return new n(this, t)
}
}
return function() {
return new n(this, t)
}
},
x = e + " Iterator",
E = "values" == g,
M = !1,
I = t.prototype,
S = I[h] || I["@@iterator"] || g && I[g],
C = S || b(g),
N = g ? E ? b("entries") : C: void 0,
P = "Array" == e ? I.entries || S: S;
if (P && (w = l(P.call(new t))) !== Object.prototype && w.next && (c(w, x, !0), r || "function" == typeof w[h] || s(w, h, p)), E && S && "values" !== S.name && (M = !0, C = function() {
return S.call(this)
}), r && !v || !f && !M && I[h] || s(I, h, C), a[e] = C, a[x] = p, g) if (m = {
values: E ? C: b("values"),
keys: y ? C: b("keys"),
entries: N
},
v) for (_ in m) _ in I || o(I, _, m[_]);
else i(i.P + i.F * (f || M), e, m);
return m
}
},
function(t, e) {},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var i = n(0),
o = r(i),
s = n(1),
a = r(s),
u = function() {
function t(e, n) { (0, o.
default)(this, t),
this.x = e,
this.y = n
}
return (0, a.
default)(t, [{
key: "toString",
value: function() {
return this.x + ", " + this.y
}
},
{
key: "getX",
value: function() {
return this.x
}
},
{
key: "getY",
value: function() {
return this.y
}
},
{
key: "clone",
value: function() {
return new t(this.x, this.y)
}
},
{
key: "add",
value: function(t) {
return this.clone()._add(t)
}
},
{
key: "sub",
value: function(t) {
return this.clone()._sub(t)
}
},
{
key: "mult",
value: function(t) {
return this.clone()._mult(t)
}
},
{
key: "div",
value: function(t) {
return this.clone()._div(t)
}
},
{
key: "rotate",
value: function(t) {
return this.clone()._rotate(t)
}
},
{
key: "matMult",
value: function(t) {
return this.clone()._matMult(t)
}
},
{
key: "unit",
value: function() {
return this.clone()._unit()
}
},
{
key: "perp",
value: function() {
return this.clone()._perp()
}
},
{
key: "round",
value: function() {
return this.clone()._round()
}
},
{
key: "mag",
value: function() {
return Math.sqrt(this.magSq())
}
},
{
key: "magSq",
value: function() {
return this.x * this.x + this.y * this.y
}
},
{
key: "equals",
value: function(t) {
return this.x === t.x && this.y === t.y
}
},
{
key: "dist",
value: function(t) {
return Math.sqrt(this.distSqr(t))
}
},
{
key: "distSqr",
value: function(t) {
var e = t.x - this.x,
n = t.y - this.y;
return e * e + n * n
}
},
{
key: "angle",
value: function() {
return Math.atan2(this.y, this.x)
}
},
{
key: "angleTo",
value: function(t) {
return Math.atan2(this.y - t.y, this.x - t.x)
}
},
{
key: "angleWith",
value: function(t) {
return this.angleWithSep(t.x, t.y)
}
},
{
key: "angleWithSep",
value: function(t, e) {
return Math.atan2(this.x * e - this.y * t, this.x * t + this.y * e)
}
},
{
key: "normalize",
value: function() {
return this.clone()._unit()
}
},
{
key: "dot",
value: function(t) {
return this.x * t.x + this.y * t.y
}
},
{
key: "length",
value: function() {
return this.mag()
}
},
{
key: "lengthSq",
value: function() {
return this.magSq()
}
},
{
key: "_matMult",
value: function(t) {
var e = t[0] * this.x + t[1] * this.y,
n = t[2] * this.x + t[3] * this.y;
return this.x = e,
this.y = n,
this
}
},
{
key: "_add",
value: function(t) {
return this.x += t.x,
this.y += t.y,
this
}
},
{
key: "_sub",
value: function(t) {
return this.x -= t.x,
this.y -= t.y,
this
}
},
{
key: "_mult",
value: function(t) {
return this.x *= t,
this.y *= t,
this
}
},
{
key: "_div",
value: function(t) {
return this.x /= t,
this.y /= t,
this
}
},
{
key: "_unit",
value: function() {
return 0 === this.x && 0 === this.y ? this: (this._div(this.mag()), this)
}
},
{
key: "_perp",
value: function() {
var t = this.y;
return this.y = this.x,
this.x = -t,
this
}
},
{
key: "_rotate",
value: function(t) {
var e = Math.cos(t),
n = Math.sin(t),
r = e * this.x - n * this.y,
i = n * this.x + e * this.y;
return this.x = r,
this.y = i,
this
}
},
{
key: "_round",
value: function() {
return this.x = Math.round(this.x),
this.y = Math.round(this.y),
this
}
}]),
t
} ();
u.convert = function(t) {
return t instanceof u ? t: Array.isArray(t) ? new u(t[0], t[1]) : "x" in t && "y" in t && "number" == typeof t.x && "number" == typeof t.y ? new u(t.x, t.y) : t
},
t.exports = u
},
function(t, e, n) {
t.exports = {
default:
n(161),
__esModule: !0
}
},
function(t, e) {
e.f = Object.getOwnPropertySymbols
},
function(t, e, n) {
t.exports = {
default:
n(159),
__esModule: !0
}
},
,
function(t, e, n) {
"use strict";
var r = n(25),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r),
o = n(29);
e.getJSON = function(t, n, r, i) {
i = i || 0;
var s = void 0,
a = void 0,
u = new XMLHttpRequest;
return u.open("GET", n, !0),
u.setRequestHeader("Accept", "application/json"),
u.onloadstart = function() {
return s = +new Date
},
u.onerror = function() {
console.error(u.response, u, n),
i > 2 ? r(new o.AJAXError(n, 0)) : (i += 1, e.getJSON(t, n, r, i))
},
u.onload = function() {
if (u.status >= 200 && u.status < 300 && u.response) {
a = +new Date;
var t = void 0;
try {
t = JSON.parse(u.response)
} catch(t) {
return r(t)
}
r(null, t, a - s)
} else r(new o.AJAXError(u.statusText, u.status))
},
u.send(),
u
},
e.getArrayBuffer = function(t, e) {
var n = new XMLHttpRequest;
return n.open("GET", t, !0),
n.responseType = "arraybuffer",
n.onerror = function(t) {
e(t)
},
n.onload = function() {
if (0 === n.response.byteLength && 200 === n.status) return e(new Error("http status 200 returned without content."));
n.status >= 200 && n.status < 300 && n.response ? e(null, {
data: n.response,
cacheControl: n.getResponseHeader("Cache-Control"),
expires: n.getResponseHeader("Expires")
}) : e(new o.AJAXError(n.statusText, n.status))
},
n.send(),
n
},
e.getImage = function(t, e) {
var n = new XMLHttpRequest,
r = new i.
default(function(r, i) {
n.open("GET", t),
n.responseType = "blob",
n.timeout = e,
n.onload = function() {
n.status >= 200 && n.status < 300 && n.response ? (0 === n.response.size && i(new o.AJAXError("The size of image is 0", 404)), r(n.response)) : i(new o.AJAXError(n.statusText, n.status))
},
n.onerror = function() {
i(new o.AJAXError("error", 0))
},
n.ontimeout = function() {
i(new o.AJAXError("timeout", 0))
},
n.onabort = function() {
i(new o.AJAXError("abort", 0))
},
n.send()
});
return {
xhr: n,
promise: r
}
},
e.getImageData = function(t, n) {
return e.getArrayBuffer(t,
function(t, e) {
if (t) return n(t);
n(null, e)
})
}
},
function(t, e, n) {
var r = n(36);
t.exports = Object("z").propertyIsEnumerable(0) ? Object: function(t) {
return "String" == r(t) ? t.split("") : Object(t)
}
},
function(t, e, n) {
t.exports = n(19)
},
function(t, e, n) {
t.exports = {
default:
n(158),
__esModule: !0
}
},
function(t, e, n) {
var r = n(8).document;
t.exports = r && r.documentElement
},
function(t, e, n) {
t.exports = !n(12) && !n(30)(function() {
return 7 != Object.defineProperty(n(57)("div"), "a", {
get: function() {
return 7
}
}).a
})
},
function(t, e, n) {
var r = n(14),
i = n(13),
o = n(34);
t.exports = n(12) ? Object.defineProperties: function(t, e) {
i(t);
for (var n, s = o(e), a = s.length, u = 0; a > u;) r.f(t, n = s[u++], e[n]);
return t
}
},
function(t, e, n) {
var r = n(21),
i = n(31),
o = n(54)("IE_PROTO"),
s = Object.prototype;
t.exports = Object.getPrototypeOf ||
function(t) {
return t = i(t),
r(t, o) ? t[o] : "function" == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype: t instanceof Object ? s: null
}
},
function(t, e, n) {
var r = n(21),
i = n(18),
o = n(129)(!1),
s = n(54)("IE_PROTO");
t.exports = function(t, e) {
var n, a = i(t),
u = 0,
c = [];
for (n in a) n != s && r(a, n) && c.push(n);
for (; e.length > u;) r(a, n = e[u++]) && (~o(c, n) || c.push(n));
return c
}
},
,
function(t, e, n) {
"use strict";
var r = n(208),
i = r && r.setItem && r.getItem;
t.exports = {
set: function(t, e, n) { (null !== e ? r.setItem(t, e) : r.removeItem(t)).then(function() {
n && n()
},
function(t) {
console.error(t),
n && n(t)
})
},
get: function(t, e) {
r.getItem(t).then(function(t) {
e && e(t)
},
function(t) {
console.error(t),
e && e(null)
})
},
support: function() {
return i
}
}
},
,
function(t, e) {
t.exports = function(t, e, n, r) {
if (! (t instanceof e) || void 0 !== r && r in t) throw TypeError(n + ": incorrect invocation!");
return t
}
},
function(t, e, n) {
var r = n(26),
i = n(9)("iterator"),
o = Array.prototype;
t.exports = function(t) {
return void 0 !== t && (r.Array === t || o[i] === t)
}
},
function(t, e, n) {
var r = n(13);
t.exports = function(t, e, n, i) {
try {
return i ? e(r(n)[0], n[1]) : e(n)
} catch(e) {
var o = t.
return;
throw void 0 !== o && r(o.call(t)),
e
}
}
},
function(t, e, n) {
var r = n(9)("iterator"),
i = !1;
try {
var o = [7][r]();
o.
return = function() {
i = !0
},
Array.from(o,
function() {
throw 2
})
} catch(t) {}
t.exports = function(t, e) {
if (!e && !i) return ! 1;
var n = !1;
try {
var o = [7],
s = o[r]();
s.next = function() {
return {
done: n = !0
}
},
o[r] = function() {
return s
},
t(o)
} catch(t) {}
return n
}
},
function(t, e, n) {
var r = n(18),
i = n(96).f,
o = {}.toString,
s = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [],
a = function(t) {
try {
return i(t)
} catch(t) {
return s.slice()
}
};
t.exports.f = function(t) {
return s && "[object Window]" == o.call(t) ? a(t) : i(r(t))
}
},
function(t, e, n) {
var r = n(87),
i = n(58).concat("length", "prototype");
e.f = Object.getOwnPropertyNames ||
function(t) {
return r(t, i)
}
},
function(t, e) {
t.exports = function(t) {
try {
return {
e: !1,
v: t()
}
} catch(t) {
return {
e: !0,
v: t
}
}
}
},
function(t, e, n) {
var r = n(13),
i = n(7),
o = n(67);
t.exports = function(t, e) {
if (r(t), i(e) && e.constructor === t) return e;
var n = o.f(t);
return (0, n.resolve)(e),
n.promise
}
},
function(t, e, n) {
var r = n(19);
t.exports = function(t, e, n) {
for (var i in e) n && t[i] ? t[i] = e[i] : r(t, i, e[i]);
return t
}
},
function(t, e, n) {
var r = n(13),
i = n(44),
o = n(9)("species");
t.exports = function(t, e) {
var n, s = r(t).constructor;
return void 0 === s || void 0 == (n = r(s)[o]) ? e: i(n)
}
},
function(t, e, n) {
var r, i, o, s = n(22),
a = n(179),
u = n(83),
c = n(57),
l = n(8),
h = l.process,
f = l.setImmediate,
p = l.clearImmediate,
d = l.MessageChannel,
g = l.Dispatch,
y = 0,
v = {},
m = function() {
var t = +this;
if (v.hasOwnProperty(t)) {
var e = v[t];
delete v[t],
e()
}
},
_ = function(t) {
m.call(t.data)
};
f && p || (f = function(t) {
for (var e = [], n = 1; arguments.length > n;) e.push(arguments[n++]);
return v[++y] = function() {
a("function" == typeof t ? t: Function(t), e)
},
r(y),
y
},
p = function(t) {
delete v[t]
},
"process" == n(36)(h) ? r = function(t) {
h.nextTick(s(m, t, 1))
}: g && g.now ? r = function(t) {
g.now(s(m, t, 1))
}: d ? (i = new d, o = i.port2, i.port1.onmessage = _, r = s(o.postMessage, o, 1)) : l.addEventListener && "function" == typeof postMessage && !l.importScripts ? (r = function(t) {
l.postMessage(t + "", "*")
},
l.addEventListener("message", _, !1)) : r = "onreadystatechange" in c("script") ?
function(t) {
u.appendChild(c("script")).onreadystatechange = function() {
u.removeChild(this),
m.call(t)
}
}: function(t) {
setTimeout(s(m, t, 1), 0)
}),
t.exports = {
set: f,
clear: p
}
},
, , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(122),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = i.
default[0]
},
,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Vector4 = e.Vector3 = e.Matrix4 = void 0;
var r = n(20),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r),
o = function(t) {
var e = void 0,
n = void 0,
r = void 0;
if (t && "object" === (void 0 === t ? "undefined": (0, i.
default)(t)) && t.hasOwnProperty("elements")) {
for (n = t.elements, r = new Float32Array(16), e = 0; e < 16; ++e) r[e] = n[e];
this.elements = r
} else {
var o = new Float32Array(16);
o[0] = 1,
o[1] = 0,
o[2] = 0,
o[3] = 0,
o[4] = 0,
o[5] = 1,
o[6] = 0,
o[7] = 0,
o[8] = 0,
o[9] = 0,
o[10] = 1,
o[11] = 0,
o[12] = 0,
o[13] = 0,
o[14] = 0,
o[15] = 1,
this.elements = o
}
};
o.prototype.setIdentity = function() {
var t = this.elements;
return t[0] = 1,
t[4] = 0,
t[8] = 0,
t[12] = 0,
t[1] = 0,
t[5] = 1,
t[9] = 0,
t[13] = 0,
t[2] = 0,
t[6] = 0,
t[10] = 1,
t[14] = 0,
t[3] = 0,
t[7] = 0,
t[11] = 0,
t[15] = 1,
this
},
o.prototype.clone = function() {
var t = new o,
e = this.elements,
n = t.elements;
return n[0] = e[0],
n[1] = e[1],
n[2] = e[2],
n[3] = e[3],
n[4] = e[4],
n[5] = e[5],
n[6] = e[6],
n[7] = e[7],
n[8] = e[8],
n[9] = e[9],
n[10] = e[10],
n[11] = e[11],
n[12] = e[12],
n[13] = e[13],
n[14] = e[14],
n[15] = e[15],
t
},
o.prototype.set = function(t) {
var e = void 0,
n = t.elements,
r = this.elements;
if (n !== r) {
for (e = 0; e < 16; ++e) r[e] = n[e];
return this
}
},
o.prototype.concat = function(t) {
var e = void 0,
n = void 0,
r = void 0,
i = void 0,
o = void 0,
s = void 0,
a = this.elements,
u = this.elements;
if (n = t.elements, a === n) for (n = new Float32Array(16), e = 0; e < 16; ++e) n[e] = a[e];
for (e = 0; e < 4; e++) r = u[e],
i = u[e + 4],
o = u[e + 8],
s = u[e + 12],
a[e] = r * n[0] + i * n[1] + o * n[2] + s * n[3],
a[e + 4] = r * n[4] + i * n[5] + o * n[6] + s * n[7],
a[e + 8] = r * n[8] + i * n[9] + o * n[10] + s * n[11],
a[e + 12] = r * n[12] + i * n[13] + o * n[14] + s * n[15];
return this
},
o.prototype.multiply = o.prototype.concat,
o.prototype.multiplyVector3 = function(t) {
var e = this.elements,
n = t.elements,
r = new s,
i = r.elements;
return i[0] = n[0] * e[0] + n[1] * e[4] + n[2] * e[8] + e[12],
i[1] = n[0] * e[1] + n[1] * e[5] + n[2] * e[9] + e[13],
i[2] = n[0] * e[2] + n[1] * e[6] + n[2] * e[10] + e[14],
r
},
o.prototype.multiplyVector4 = function(t) {
var e = this.elements,
n = t.elements,
r = new a,
i = r.elements;
return i[0] = n[0] * e[0] + n[1] * e[4] + n[2] * e[8] + n[3] * e[12],
i[1] = n[0] * e[1] + n[1] * e[5] + n[2] * e[9] + n[3] * e[13],
i[2] = n[0] * e[2] + n[1] * e[6] + n[2] * e[10] + n[3] * e[14],
i[3] = n[0] * e[3] + n[1] * e[7] + n[2] * e[11] + n[3] * e[15],
r
},
o.prototype.transpose = function() {
var t = void 0,
e = this.elements;
return t = e[1],
e[1] = e[4],
e[4] = t,
t = e[2],
e[2] = e[8],
e[8] = t,
t = e[3],
e[3] = e[12],
e[12] = t,
t = e[6],
e[6] = e[9],
e[9] = t,
t = e[7],
e[7] = e[13],
e[13] = t,
t = e[11],
e[11] = e[14],
e[14] = t,
this
},
o.prototype.setInverseOf = function(t) {
var e = void 0,
n = void 0,
r = t.elements,
i = this.elements,
o = new Float32Array(16);
if (o[0] = r[5] * r[10] * r[15] - r[5] * r[11] * r[14] - r[9] * r[6] * r[15] + r[9] * r[7] * r[14] + r[13] * r[6] * r[11] - r[13] * r[7] * r[10], o[4] = -r[4] * r[10] * r[15] + r[4] * r[11] * r[14] + r[8] * r[6] * r[15] - r[8] * r[7] * r[14] - r[12] * r[6] * r[11] + r[12] * r[7] * r[10], o[8] = r[4] * r[9] * r[15] - r[4] * r[11] * r[13] - r[8] * r[5] * r[15] + r[8] * r[7] * r[13] + r[12] * r[5] * r[11] - r[12] * r[7] * r[9], o[12] = -r[4] * r[9] * r[14] + r[4] * r[10] * r[13] + r[8] * r[5] * r[14] - r[8] * r[6] * r[13] - r[12] * r[5] * r[10] + r[12] * r[6] * r[9], o[1] = -r[1] * r[10] * r[15] + r[1] * r[11] * r[14] + r[9] * r[2] * r[15] - r[9] * r[3] * r[14] - r[13] * r[2] * r[11] + r[13] * r[3] * r[10], o[5] = r[0] * r[10] * r[15] - r[0] * r[11] * r[14] - r[8] * r[2] * r[15] + r[8] * r[3] * r[14] + r[12] * r[2] * r[11] - r[12] * r[3] * r[10], o[9] = -r[0] * r[9] * r[15] + r[0] * r[11] * r[13] + r[8] * r[1] * r[15] - r[8] * r[3] * r[13] - r[12] * r[1] * r[11] + r[12] * r[3] * r[9], o[13] = r[0] * r[9] * r[14] - r[0] * r[10] * r[13] - r[8] * r[1] * r[14] + r[8] * r[2] * r[13] + r[12] * r[1] * r[10] - r[12] * r[2] * r[9], o[2] = r[1] * r[6] * r[15] - r[1] * r[7] * r[14] - r[5] * r[2] * r[15] + r[5] * r[3] * r[14] + r[13] * r[2] * r[7] - r[13] * r[3] * r[6], o[6] = -r[0] * r[6] * r[15] + r[0] * r[7] * r[14] + r[4] * r[2] * r[15] - r[4] * r[3] * r[14] - r[12] * r[2] * r[7] + r[12] * r[3] * r[6], o[10] = r[0] * r[5] * r[15] - r[0] * r[7] * r[13] - r[4] * r[1] * r[15] + r[4] * r[3] * r[13] + r[12] * r[1] * r[7] - r[12] * r[3] * r[5], o[14] = -r[0] * r[5] * r[14] + r[0] * r[6] * r[13] + r[4] * r[1] * r[14] - r[4] * r[2] * r[13] - r[12] * r[1] * r[6] + r[12] * r[2] * r[5], o[3] = -r[1] * r[6] * r[11] + r[1] * r[7] * r[10] + r[5] * r[2] * r[11] - r[5] * r[3] * r[10] - r[9] * r[2] * r[7] + r[9] * r[3] * r[6], o[7] = r[0] * r[6] * r[11] - r[0] * r[7] * r[10] - r[4] * r[2] * r[11] + r[4] * r[3] * r[10] + r[8] * r[2] * r[7] - r[8] * r[3] * r[6], o[11] = -r[0] * r[5] * r[11] + r[0] * r[7] * r[9] + r[4] * r[1] * r[11] - r[4] * r[3] * r[9] - r[8] * r[1] * r[7] + r[8] * r[3] * r[5], o[15] = r[0] * r[5] * r[10] - r[0] * r[6] * r[9] - r[4] * r[1] * r[10] + r[4] * r[2] * r[9] + r[8] * r[1] * r[6] - r[8] * r[2] * r[5], 0 === (n = r[0] * o[0] + r[1] * o[4] + r[2] * o[8] + r[3] * o[12])) return this;
for (n = 1 / n, e = 0; e < 16; e++) i[e] = o[e] * n;
return this
},
o.prototype.invert = function() {
return this.setInverseOf(this)
},
o.prototype.setOrtho = function(t, e, n, r, i, o) {
if (t === e || n === r || i === o) throw "null frustum";
var s = 1 / (e - t),
a = 1 / (r - n),
u = 1 / (o - i),
c = this.elements;
return c[0] = 2 * s,
c[1] = 0,
c[2] = 0,
c[3] = 0,
c[4] = 0,
c[5] = 2 * a,
c[6] = 0,
c[7] = 0,
c[8] = 0,
c[9] = 0,
c[10] = -2 * u,
c[11] = 0,
c[12] = -(e + t) * s,
c[13] = -(r + n) * a,
c[14] = -(o + i) * u,
c[15] = 1,
this
},
o.prototype.ortho = function(t, e, n, r, i, s) {
return this.concat((new o).setOrtho(t, e, n, r, i, s))
},
o.prototype.setFrustum = function(t, e, n, r, i, o) {
if (t === e || r === n || i === o) throw "null frustum";
if (i <= 0) throw "near <= 0";
if (o <= 0) throw "far <= 0";
var s = 1 / (e - t),
a = 1 / (r - n),
u = 1 / (o - i),
c = this.elements;
return c[0] = 2 * i * s,
c[1] = 0,
c[2] = 0,
c[3] = 0,
c[4] = 0,
c[5] = 2 * i * a,
c[6] = 0,
c[7] = 0,
c[8] = (e + t) * s,
c[9] = (r + n) * a,
c[10] = -(o + i) * u,
c[11] = -1,
c[12] = 0,
c[13] = 0,
c[14] = -2 * i * o * u,
c[15] = 0,
this
},
o.prototype.frustum = function(t, e, n, r, i, s) {
return this.concat((new o).setFrustum(t, e, n, r, i, s))
},
o.prototype.setPerspective = function(t, e, n, r) {
var i = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : 0,
o = arguments.length > 5 && void 0 !== arguments[5] ? arguments[5] : 0;
if (n === r || 0 === e) throw "null frustum";
if (n <= 0) throw "near <= 0";
if (r <= 0) throw "far <= 0";
t = Math.PI * t / 180 / 2;
var s = Math.sin(t);
if (0 === s) throw "null frustum";
var a = 1 / (r - n),
u = Math.cos(t) / s,
c = this.elements;
return c[0] = u / e,
c[1] = 0,
c[2] = 0,
c[3] = 0,
c[4] = 0,
c[5] = u,
c[6] = 0,
c[7] = 0,
c[8] = -i,
c[9] = -o,
c[10] = -(r + n) * a,
c[11] = -1,
c[12] = 0,
c[13] = 0,
c[14] = -2 * n * r * a,
c[15] = 0,
this
},
o.prototype.perspective = function(t, e, n, r) {
return this.concat((new o).setPerspective(t, e, n, r))
},
o.prototype.setScale = function(t, e, n) {
var r = this.elements;
return r[0] = t,
r[4] = 0,
r[8] = 0,
r[12] = 0,
r[1] = 0,
r[5] = e,
r[9] = 0,
r[13] = 0,
r[2] = 0,
r[6] = 0,
r[10] = n,
r[14] = 0,
r[3] = 0,
r[7] = 0,
r[11] = 0,
r[15] = 1,
this
},
o.prototype.scale = function(t, e, n) {
var r = this.elements;
return r[0] *= t,
r[4] *= e,
r[8] *= n,
r[1] *= t,
r[5] *= e,
r[9] *= n,
r[2] *= t,
r[6] *= e,
r[10] *= n,
r[3] *= t,
r[7] *= e,
r[11] *= n,
this
},
o.prototype.setTranslate = function(t, e, n) {
var r = this.elements;
return r[0] = 1,
r[4] = 0,
r[8] = 0,
r[12] = t,
r[1] = 0,
r[5] = 1,
r[9] = 0,
r[13] = e,
r[2] = 0,
r[6] = 0,
r[10] = 1,
r[14] = n,
r[3] = 0,
r[7] = 0,
r[11] = 0,
r[15] = 1,
this
},
o.prototype.translate = function(t, e, n) {
var r = this.elements;
return r[12] += r[0] * t + r[4] * e + r[8] * n,
r[13] += r[1] * t + r[5] * e + r[9] * n,
r[14] += r[2] * t + r[6] * e + r[10] * n,
r[15] += r[3] * t + r[7] * e + r[11] * n,
this
},
o.prototype.setRotate = function(t, e, n, r) {
var i = void 0,
o = void 0,
s = void 0,
a = void 0,
u = void 0,
c = void 0,
l = void 0,
h = void 0,
f = void 0,
p = void 0;
t = Math.PI * t / 180;
var d = this.elements;
i = Math.sin(t);
var g = Math.cos(t);
return 0 !== e && 0 === n && 0 === r ? (e < 0 && (i = -i), d[0] = 1, d[4] = 0, d[8] = 0, d[12] = 0, d[1] = 0, d[5] = g, d[9] = -i, d[13] = 0, d[2] = 0, d[6] = i, d[10] = g, d[14] = 0, d[3] = 0, d[7] = 0, d[11] = 0, d[15] = 1) : 0 === e && 0 !== n && 0 === r ? (n < 0 && (i = -i), d[0] = g, d[4] = 0, d[8] = i, d[12] = 0, d[1] = 0, d[5] = 1, d[9] = 0, d[13] = 0, d[2] = -i, d[6] = 0, d[10] = g, d[14] = 0, d[3] = 0, d[7] = 0, d[11] = 0, d[15] = 1) : 0 === e && 0 === n && 0 !== r ? (r < 0 && (i = -i), d[0] = g, d[4] = -i, d[8] = 0, d[12] = 0, d[1] = i, d[5] = g, d[9] = 0, d[13] = 0, d[2] = 0, d[6] = 0, d[10] = 1, d[14] = 0, d[3] = 0, d[7] = 0, d[11] = 0, d[15] = 1) : (o = Math.sqrt(e * e + n * n + r * r), 1 !== o && (s = 1 / o, e *= s, n *= s, r *= s), a = 1 - g, u = e * n, c = n * r, l = r * e, h = e * i, f = n * i, p = r * i, d[0] = e * e * a + g, d[1] = u * a + p, d[2] = l * a - f, d[3] = 0, d[4] = u * a - p, d[5] = n * n * a + g, d[6] = c * a + h, d[7] = 0, d[8] = l * a + f, d[9] = c * a - h, d[10] = r * r * a + g, d[11] = 0, d[12] = 0, d[13] = 0, d[14] = 0, d[15] = 1),
this
},
o.prototype.rotate = function(t, e, n, r) {
return this.concat((new o).setRotate(t, e, n, r))
},
o.prototype.setLookAt = function(t, e, n, r, i, o, s, a, u) {
var c = void 0,
l = void 0,
h = void 0,
f = void 0,
p = void 0,
d = void 0;
c = r - t,
l = i - e,
h = o - n;
var g = 1 / Math.sqrt(c * c + l * l + h * h);
c *= g,
l *= g,
h *= g,
f = l * u - h * a,
p = h * s - c * u,
d = c * a - l * s;
var y = 1 / Math.sqrt(f * f + p * p + d * d);
f *= y,
p *= y,
d *= y;
var v = p * h - d * l,
m = d * c - f * h,
_ = f * l - p * c,
w = this.elements;
return w[0] = f,
w[1] = v,
w[2] = -c,
w[3] = 0,
w[4] = p,
w[5] = m,
w[6] = -l,
w[7] = 0,
w[8] = d,
w[9] = _,
w[10] = -h,
w[11] = 0,
w[12] = 0,
w[13] = 0,
w[14] = 0,
w[15] = 1,
this.translate( - t, -e, -n)
},
o.prototype.lookAt = function(t, e, n, r, i, s, a, u, c) {
return this.concat((new o).setLookAt(t, e, n, r, i, s, a, u, c))
},
o.prototype.dropShadow = function(t, e) {
var n = new o,
r = n.elements,
i = t[0] * e[0] + t[1] * e[1] + t[2] * e[2] + t[3] * e[3];
return r[0] = i - e[0] * t[0],
r[1] = -e[1] * t[0],
r[2] = -e[2] * t[0],
r[3] = -e[3] * t[0],
r[4] = -e[0] * t[1],
r[5] = i - e[1] * t[1],
r[6] = -e[2] * t[1],
r[7] = -e[3] * t[1],
r[8] = -e[0] * t[2],
r[9] = -e[1] * t[2],
r[10] = i - e[2] * t[2],
r[11] = -e[3] * t[2],
r[12] = -e[0] * t[3],
r[13] = -e[1] * t[3],
r[14] = -e[2] * t[3],
r[15] = i - e[3] * t[3],
this.concat(n)
},
o.prototype.dropShadowDirectionally = function(t, e, n, r, i, o, s, a, u) {
var c = r * t + i * e + o * n;
return this.dropShadow([t, e, n, -c], [s, a, u, 0])
};
var s = function() {
var t = 1 === arguments.length ? arguments[0] : arguments,
e = new Float32Array(3);
t && "object" === (void 0 === t ? "undefined": (0, i.
default)(t)) && (e[0] = t[0], e[1] = t[1], e[2] = t[2]),
this.elements = e
};
s.prototype.normalize = function() {
var t = this.elements,
e = t[0],
n = t[1],
r = t[2],
i = Math.sqrt(e * e + n * n + r * r);
return i ? 1 === i ? this: (i = 1 / i, t[0] = e * i, t[1] = n * i, t[2] = r * i, this) : (t[0] = 0, t[1] = 0, t[2] = 0, this)
},
s.prototype.scale = function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1,
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 1,
n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : 1,
r = this.elements;
return r[0] *= t,
r[1] *= e,
r[2] *= n,
this
},
s.prototype.cross = function(t) {
var e = this.elements,
n = t.elements;
return new s(e[1] * n[2] - e[2] * n[1], e[2] * n[0] - e[0] * n[2], e[0] * n[1] - e[1] * n[0])
},
s.prototype.equals = function(t) {
var e = this.elements,
n = t.elements;
return e[0] === n[0] && e[1] === n[1] && e[2] === n[2]
};
var a = function() {
var t = 1 === arguments.length ? arguments[0] : arguments,
e = new Float32Array(4);
t && "object" === (void 0 === t ? "undefined": (0, i.
default)(t)) && (e[0] = t[0], e[1] = t[1], e[2] = t[2], e[3] = t[3]),
this.elements = e
};
a.prototype.set = function(t, e, n) {
this.elements[0] = t,
this.elements[1] = e,
this.elements[2] = n
},
a.prototype.multiply = function(t) {
return this.elements[0] *= t,
this.elements[1] *= t,
this.elements[2] *= t,
this.elements[3] *= t,
this
},
a.prototype.add = function(t) {
return this.elements[0] += t.elements[0],
this.elements[1] += t.elements[1],
this.elements[2] += t.elements[2],
this.elements[3] += t.elements[3],
this
},
a.prototype.minus = function(t) {
return this.elements[0] -= t.elements[0],
this.elements[1] -= t.elements[1],
this.elements[2] -= t.elements[2],
this.elements[3] -= t.elements[3],
this
},
e.Matrix4 = o,
e.Vector3 = s,
e.Vector4 = a
},
function(t, e) {
t.exports = function(t, e) {
return {
value: e,
done: !!t
}
}
},
function(t, e, n) {
"use strict";
function r(t) {
if (!t) throw new Error("obj is required");
var e = i(t);
if (e.length > 1 && n.i(f.isNumber)(e[0]) && n.i(f.isNumber)(e[1])) return e;
throw new Error("Coordinate is not a valid Point")
}
function i(t) {
if (!t) throw new Error("obj is required");
var e;
if (t.length ? e = t: t.coordinates ? e = t.coordinates: t.geometry && t.geometry.coordinates && (e = t.geometry.coordinates), e) return o(e),
e;
throw new Error("No valid coordinates")
}
function o(t) {
if (t.length > 1 && n.i(f.isNumber)(t[0]) && n.i(f.isNumber)(t[1])) return ! 0;
if (Array.isArray(t[0]) && t[0].length) return o(t[0]);
throw new Error("coordinates must only contain numbers")
}
function s(t, e, n) {
if (!e || !n) throw new Error("type and name required");
if (!t || t.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + t.type)
}
function a(t, e, n) {
if (!t) throw new Error("No feature passed");
if (!n) throw new Error(".featureOf() requires a name");
if (!t || "Feature" !== t.type || !t.geometry) throw new Error("Invalid input to " + n + ", Feature with geometry required");
if (!t.geometry || t.geometry.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + t.geometry.type)
}
function u(t, e, n) {
if (!t) throw new Error("No featureCollection passed");
if (!n) throw new Error(".collectionOf() requires a name");
if (!t || "FeatureCollection" !== t.type) throw new Error("Invalid input to " + n + ", FeatureCollection required");
for (var r = 0; r < t.features.length; r++) {
var i = t.features[r];
if (!i || "Feature" !== i.type || !i.geometry) throw new Error("Invalid input to " + n + ", Feature with geometry required");
if (!i.geometry || i.geometry.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + i.geometry.type)
}
}
function c(t) {
if (!t) throw new Error("geojson is required");
if (void 0 !== t.geometry) return t.geometry;
if (t.coordinates || t.geometries) return t;
throw new Error("geojson must be a valid Feature or Geometry Object")
}
function l() {
throw new Error("invariant.getGeomType has been deprecated in v5.0 in favor of invariant.getType")
}
function h(t, e) {
if (!t) throw new Error((e || "geojson") + " is required");
if (t.geometry && t.geometry.type) return t.geometry.type;
if (t.type) return t.type;
throw new Error((e || "geojson") + " is invalid")
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
n.d(e, "getCoord",
function() {
return r
}),
n.d(e, "getCoords",
function() {
return i
}),
n.d(e, "containsNumber",
function() {
return o
}),
n.d(e, "geojsonType",
function() {
return s
}),
n.d(e, "featureOf",
function() {
return a
}),
n.d(e, "collectionOf",
function() {
return u
}),
n.d(e, "getGeom",
function() {
return c
}),
n.d(e, "getGeomType",
function() {
return l
}),
n.d(e, "getType",
function() {
return h
});
var f = n(48)
},
, ,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e, n) {
return {
x: t / n.width * 2 - 1,
y: -e / n.height * 2 + 1,
z: 1
}
}
function o(t, e, n) {
return {
x: (t + 1) / 2 * n.width,
y: (1 - e) / 2 * n.height
}
}
function s(t, e, n) {
var r = t.multiplyVector4(e),
i = r.elements.map(function(t) {
return t / r.elements[3]
}),
s = o(i[0], i[1], n);
return {
x: s.x,
y: s.y,
depthScale: 1
}
}
function a(t, e) {
var n = t.multiplyVector4(e);
return n.multiply(1 / n.elements[3])
}
function u(t, e) {
var n = t.clone().invert(),
r = new b.Vector4(e.x, e.y, 0, 1),
i = new b.Vector4(e.x, e.y, 1, 1),
o = n.multiplyVector4(r),
s = n.multiplyVector4(i);
o.multiply(1 / o.elements[3]),
s.multiply(1 / s.elements[3]);
var a = (0 - o.elements[2]) / (s.elements[2] - o.elements[2]),
u = o.add(s.minus(o).multiply(a));
return {
x: u.elements[0],
y: u.elements[1]
}
}
function c(t, e, n) {
var r = t.clone().invert(),
i = new b.Vector4(e.x, e.y, 0, 1),
o = new b.Vector4(e.x, e.y, 1, 1),
s = r.multiplyVector4(i),
a = r.multiplyVector4(o);
s.multiply(1 / s.elements[3]),
a.multiply(1 / a.elements[3]);
var u = new C.
default(new b.Vector3(s.elements), new b.Vector3(a.elements)),
c = new P.
default(new b.Vector3(0, 0, -n), n),
l = c.intersectWithLine(u);
if (l.length) {
var h = (0, d.
default)(l, 2),
f = h[0],
p = h[1],
g = f.elements[2] > p.elements[2] ? f: p,
y = (0, d.
default)(g.elements, 3);
return {
x: y[0],
y: y[1],
z: y[2]
}
}
return null
}
function l(t) {
return 2 * Math.PI * y.
default / (Math.pow(2, t) * m.
default.tileSize)
}
function h(t) {
var e = t.x,
n = t.y;
return e = e / A * 180,
n = n / A * 180,
n = 180 / Math.PI * (2 * Math.atan(Math.exp(n * Math.PI / 180)) - Math.PI / 2),
new E.
default(n, e)
}
function f(t) {
var e = t.lng,
n = t.lat;
return e = e * A / 180,
n = Math.log(Math.tan((90 + n) * Math.PI / 360)) / (Math.PI / 180),
n = n * A / 180,
new I.
default(e, n)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var p = n(32),
d = r(p);
e.fromScreenToNdc = i,
e.fromNdcToScreen = o,
e.getScreenCoordsByCustomMatrix = s,
e.getNdcCoordsByCustomMatrix = a,
e.getZPlaneCoordsByCustomMatrix = u,
e.getSphereCoordsByCustomMatrix = c,
e.getSpatialResolution = l,
e.mercatorToLatLng = h,
e.latLngToMercator = f;
var g = n(295),
y = r(g),
v = n(23),
m = r(v),
_ = n(247),
w = r(_),
b = n(107),
x = n(47),
E = r(x),
M = n(74),
I = r(M),
S = n(377),
C = r(S),
N = n(378),
P = r(N),
L = w.
default[1],
A = L / 2
},
,
function(t, e, n) {
t.exports = {
default:
n(160),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(162),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(164),
__esModule: !0
}
},
function(t, e, n) {
var r = n(36);
t.exports = Array.isArray ||
function(t) {
return "Array" == r(t)
}
},
function(t, e, n) {
var r = n(12),
i = n(34),
o = n(18),
s = n(45).f;
t.exports = function(t) {
return function(e) {
for (var n, a = o(e), u = i(a), c = u.length, l = 0, h = []; c > l;) n = u[l++],
r && !s.call(a, n) || h.push(t ? [n, a[n]] : a[n]);
return h
}
}
},
function(t, e, n) {
"use strict";
var r = n(8),
i = n(2),
o = n(14),
s = n(12),
a = n(9)("species");
t.exports = function(t) {
var e = "function" == typeof i[t] ? i[t] : r[t];
s && e && !e[a] && o.f(e, a, {
configurable: !0,
get: function() {
return this
}
})
}
},
function(t, e, n) {
"use strict";
function r(t) {
console && console.warn && console.warn(t)
}
function i() {
i.init.call(this)
}
function o(t) {
return void 0 === t._maxListeners ? i.defaultMaxListeners: t._maxListeners
}
function s(t, e, n, i) {
var s, a, u;
if ("function" != typeof n) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof n);
if (a = t._events, void 0 === a ? (a = t._events = Object.create(null), t._eventsCount = 0) : (void 0 !== a.newListener && (t.emit("newListener", e, n.listener ? n.listener: n), a = t._events), u = a[e]), void 0 === u) u = a[e] = n,
++t._eventsCount;
else if ("function" == typeof u ? u = a[e] = i ? [n, u] : [u, n] : i ? u.unshift(n) : u.push(n), (s = o(t)) > 0 && u.length > s && !u.warned) {
u.warned = !0;
var c = new Error("Possible EventEmitter memory leak detected. " + u.length + " " + String(e) + " listeners added. Use emitter.setMaxListeners() to increase limit");
c.name = "MaxListenersExceededWarning",
c.emitter = t,
c.type = e,
c.count = u.length,
r(c)
}
return t
}
function a() {
for (var t = [], e = 0; e < arguments.length; e++) t.push(arguments[e]);
this.fired || (this.target.removeListener(this.type, this.wrapFn), this.fired = !0, y(this.listener, this.target, t))
}
function u(t, e, n) {
var r = {
fired: !1,
wrapFn: void 0,
target: t,
type: e,
listener: n
},
i = a.bind(r);
return i.listener = n,
r.wrapFn = i,
i
}
function c(t, e, n) {
var r = t._events;
if (void 0 === r) return [];
var i = r[e];
return void 0 === i ? [] : "function" == typeof i ? n ? [i.listener || i] : [i] : n ? p(i) : h(i, i.length)
}
function l(t) {
var e = this._events;
if (void 0 !== e) {
var n = e[t];
if ("function" == typeof n) return 1;
if (void 0 !== n) return n.length
}
return 0
}
function h(t, e) {
for (var n = new Array(e), r = 0; r < e; ++r) n[r] = t[r];
return n
}
function f(t, e) {
for (; e + 1 < t.length; e++) t[e] = t[e + 1];
t.pop()
}
function p(t) {
for (var e = new Array(t.length), n = 0; n < e.length; ++n) e[n] = t[n].listener || t[n];
return e
}
var d, g = "object" == typeof Reflect ? Reflect: null,
y = g && "function" == typeof g.apply ? g.apply: function(t, e, n) {
return Function.prototype.apply.call(t, e, n)
};
d = g && "function" == typeof g.ownKeys ? g.ownKeys: Object.getOwnPropertySymbols ?
function(t) {
return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))
}: function(t) {
return Object.getOwnPropertyNames(t)
};
var v = Number.isNaN ||
function(t) {
return t !== t
};
t.exports = i,
i.EventEmitter = i,
i.prototype._events = void 0,
i.prototype._eventsCount = 0,
i.prototype._maxListeners = void 0;
var m = 10;
Object.defineProperty(i, "defaultMaxListeners", {
enumerable: !0,
get: function() {
return m
},
set: function(t) {
if ("number" != typeof t || t < 0 || v(t)) throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + t + ".");
m = t
}
}),
i.init = function() {
void 0 !== this._events && this._events !== Object.getPrototypeOf(this)._events || (this._events = Object.create(null), this._eventsCount = 0),
this._maxListeners = this._maxListeners || void 0
},
i.prototype.setMaxListeners = function(t) {
if ("number" != typeof t || t < 0 || v(t)) throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + t + ".");
return this._maxListeners = t,
this
},
i.prototype.getMaxListeners = function() {
return o(this)
},
i.prototype.emit = function(t) {
for (var e = [], n = 1; n < arguments.length; n++) e.push(arguments[n]);
var r = "error" === t,
i = this._events;
if (void 0 !== i) r = r && void 0 === i.error;
else if (!r) return ! 1;
if (r) {
var o;
if (e.length > 0 && (o = e[0]), o instanceof Error) throw o;
var s = new Error("Unhandled error." + (o ? " (" + o.message + ")": ""));
throw s.context = o,
s
}
var a = i[t];
if (void 0 === a) return ! 1;
if ("function" == typeof a) y(a, this, e);
else for (var u = a.length,
c = h(a, u), n = 0; n < u; ++n) y(c[n], this, e);
return ! 0
},
i.prototype.addListener = function(t, e) {
return s(this, t, e, !1)
},
i.prototype.on = i.prototype.addListener,
i.prototype.prependListener = function(t, e) {
return s(this, t, e, !0)
},
i.prototype.once = function(t, e) {
if ("function" != typeof e) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof e);
return this.on(t, u(this, t, e)),
this
},
i.prototype.prependOnceListener = function(t, e) {
if ("function" != typeof e) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof e);
return this.prependListener(t, u(this, t, e)),
this
},
i.prototype.removeListener = function(t, e) {
var n, r, i, o, s;
if ("function" != typeof e) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof e);
if (void 0 === (r = this._events)) return this;
if (void 0 === (n = r[t])) return this;
if (n === e || n.listener === e) 0 == --this._eventsCount ? this._events = Object.create(null) : (delete r[t], r.removeListener && this.emit("removeListener", t, n.listener || e));
else if ("function" != typeof n) {
for (i = -1, o = n.length - 1; o >= 0; o--) if (n[o] === e || n[o].listener === e) {
s = n[o].listener,
i = o;
break
}
if (i < 0) return this;
0 === i ? n.shift() : f(n, i),
1 === n.length && (r[t] = n[0]),
void 0 !== r.removeListener && this.emit("removeListener", t, s || e)
}
return this
},
i.prototype.off = i.prototype.removeListener,
i.prototype.removeAllListeners = function(t) {
var e, n, r;
if (void 0 === (n = this._events)) return this;
if (void 0 === n.removeListener) return 0 === arguments.length ? (this._events = Object.create(null), this._eventsCount = 0) : void 0 !== n[t] && (0 == --this._eventsCount ? this._events = Object.create(null) : delete n[t]),
this;
if (0 === arguments.length) {
var i, o = Object.keys(n);
for (r = 0; r < o.length; ++r)"removeListener" !== (i = o[r]) && this.removeAllListeners(i);
return this.removeAllListeners("removeListener"),
this._events = Object.create(null),
this._eventsCount = 0,
this
}
if ("function" == typeof(e = n[t])) this.removeListener(t, e);
else if (void 0 !== e) for (r = e.length - 1; r >= 0; r--) this.removeListener(t, e[r]);
return this
},
i.prototype.listeners = function(t) {
return c(this, t, !0)
},
i.prototype.rawListeners = function(t) {
return c(this, t, !1)
},
i.listenerCount = function(t, e) {
return "function" == typeof t.listenerCount ? t.listenerCount(e) : l.call(t, e)
},
i.prototype.listenerCount = l,
i.prototype.eventNames = function() {
return this._eventsCount > 0 ? d(this._events) : []
}
},
function(t, e, n) {
"use strict";
function r(t, e, n) {
if (null !== t) for (var i, o, s, a, u, c, l, h, f = 0,
p = 0,
d = t.type,
g = "FeatureCollection" === d,
y = "Feature" === d,
v = g ? t.features.length: 1, m = 0; m < v; m++) {
l = g ? t.features[m].geometry: y ? t.geometry: t,
h = !!l && "GeometryCollection" === l.type,
u = h ? l.geometries.length: 1;
for (var _ = 0; _ < u; _++) {
var w = 0,
b = 0;
if (null !== (a = h ? l.geometries[_] : l)) {
c = a.coordinates;
var x = a.type;
switch (f = !n || "Polygon" !== x && "MultiPolygon" !== x ? 0 : 1, x) {
case null:
break;
case "Point":
e(c, p, m, w, b),
p++,
w++;
break;
case "LineString":
case "MultiPoint":
for (i = 0; i < c.length; i++) e(c[i], p, m, w, b),
p++,
"MultiPoint" === x && w++;
"LineString" === x && w++;
break;
case "Polygon":
case "MultiLineString":
for (i = 0; i < c.length; i++) {
for (o = 0; o < c[i].length - f; o++) e(c[i][o], p, m, w, b),
p++;
"MultiLineString" === x && w++,
"Polygon" === x && b++
}
"Polygon" === x && w++;
break;
case "MultiPolygon":
for (i = 0; i < c.length; i++) {
for ("MultiPolygon" === x && (b = 0), o = 0; o < c[i].length; o++) {
for (s = 0; s < c[i][o].length - f; s++) e(c[i][o][s], p, m, w, b),
p++;
b++
}
w++
}
break;
case "GeometryCollection":
for (i = 0; i < a.geometries.length; i++) r(a.geometries[i], e, n);
break;
default:
throw new Error("Unknown Geometry Type")
}
}
}
}
}
function i(t, e, n, i) {
var o = n;
return r(t,
function(t, r, i, s, a) {
o = 0 === r && void 0 === n ? t: e(o, t, r, i, s, a)
},
i),
o
}
function o(t, e) {
var n;
switch (t.type) {
case "FeatureCollection":
for (n = 0; n < t.features.length; n++) e(t.features[n].properties, n);
break;
case "Feature":
e(t.properties, 0)
}
}
function s(t, e, n) {
var r = n;
return o(t,
function(t, i) {
r = 0 === i && void 0 === n ? t: e(r, t, i)
}),
r
}
function a(t, e) {
if ("Feature" === t.type) e(t, 0);
else if ("FeatureCollection" === t.type) for (var n = 0; n < t.features.length; n++) e(t.features[n], n)
}
function u(t, e, n) {
var r = n;
return a(t,
function(t, i) {
r = 0 === i && void 0 === n ? t: e(r, t, i)
}),
r
}
function c(t) {
var e = [];
return r(t,
function(t) {
e.push(t)
}),
e
}
function l(t, e) {
var n, r, i, o, s, a, u, c, l, h, f = 0,
p = "FeatureCollection" === t.type,
d = "Feature" === t.type,
g = p ? t.features.length: 1;
for (n = 0; n < g; n++) {
for (a = p ? t.features[n].geometry: d ? t.geometry: t, c = p ? t.features[n].properties: d ? t.properties: {},
l = p ? t.features[n].bbox: d ? t.bbox: void 0, h = p ? t.features[n].id: d ? t.id: void 0, u = !!a && "GeometryCollection" === a.type, s = u ? a.geometries.length: 1, i = 0; i < s; i++) if (null !== (o = u ? a.geometries[i] : a)) switch (o.type) {
case "Point":
case "LineString":
case "MultiPoint":
case "Polygon":
case "MultiLineString":
case "MultiPolygon":
e(o, f, c, l, h);
break;
case "GeometryCollection":
for (r = 0; r < o.geometries.length; r++) e(o.geometries[r], f, c, l, h);
break;
default:
throw new Error("Unknown Geometry Type")
} else e(null, f, c, l, h);
f++
}
}
function h(t, e, n) {
var r = n;
return l(t,
function(t, i, o, s, a) {
r = 0 === i && void 0 === n ? t: e(r, t, i, o, s, a)
}),
r
}
function f(t, e) {
l(t,
function(t, r, i, o, s) {
var a = null === t ? null: t.type;
switch (a) {
case null:
case "Point":
case "LineString":
case "Polygon":
return void e(n.i(m.feature)(t, i, {
bbox: o,
id: s
}), r, 0)
}
var u;
switch (a) {
case "MultiPoint":
u = "Point";
break;
case "MultiLineString":
u = "LineString";
break;
case "MultiPolygon":
u = "Polygon"
}
t.coordinates.forEach(function(t, o) {
var s = {
type: u,
coordinates: t
};
e(n.i(m.feature)(s, i), r, o)
})
})
}
function p(t, e, n) {
var r = n;
return f(t,
function(t, i, o) {
r = 0 === i && 0 === o && void 0 === n ? t: e(r, t, i, o)
}),
r
}
function d(t, e) {
f(t,
function(t, r, o) {
var s = 0;
if (t.geometry) {
var a = t.geometry.type;
"Point" !== a && "MultiPoint" !== a && i(t,
function(i, a, u, c, l, h) {
var f = n.i(m.lineString)([i, a], t.properties);
return e(f, r, o, h, s),
s++,
a
})
}
})
}
function g(t, e, n) {
var r = n,
i = !1;
return d(t,
function(t, o, s, a, u) {
r = !1 === i && void 0 === n ? t: e(r, t, o, s, a, u),
i = !0
}),
r
}
function y(t, e) {
if (!t) throw new Error("geojson is required");
f(t,
function(t, r, i) {
if (null !== t.geometry) {
var o = t.geometry.type,
s = t.geometry.coordinates;
switch (o) {
case "LineString":
e(t, r, i, 0, 0);
break;
case "Polygon":
for (var a = 0; a < s.length; a++) e(n.i(m.lineString)(s[a], t.properties), r, i, a)
}
}
})
}
function v(t, e, n) {
var r = n;
return y(t,
function(t, i, o, s) {
r = 0 === i && void 0 === n ? t: e(r, t, i, o, s)
}),
r
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
n.d(e, "coordEach",
function() {
return r
}),
n.d(e, "coordReduce",
function() {
return i
}),
n.d(e, "propEach",
function() {
return o
}),
n.d(e, "propReduce",
function() {
return s
}),
n.d(e, "featureEach",
function() {
return a
}),
n.d(e, "featureReduce",
function() {
return u
}),
n.d(e, "coordAll",
function() {
return c
}),
n.d(e, "geomEach",
function() {
return l
}),
n.d(e, "geomReduce",
function() {
return h
}),
n.d(e, "flattenEach",
function() {
return f
}),
n.d(e, "flattenReduce",
function() {
return p
}),
n.d(e, "segmentEach",
function() {
return d
}),
n.d(e, "segmentReduce",
function() {
return g
}),
n.d(e, "lineEach",
function() {
return y
}),
n.d(e, "lineReduce",
function() {
return v
});
var m = n(48)
},
function(t, e, n) {
"use strict";
function r(t, e) {
t.loadScriptTime = e,
u[0] = t;
for (var n in t) o.hasOwnProperty(n) && (o[n] = t[n])
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(56),
o = n(23),
s = 2 * Math.PI * 6378136.49,
a = [6378136.49, s],
u = [{},
a],
c = self[i] && self[i].__load;
c && c(r),
self.CESIUM_BASE_URL = o.cesiumStaticSrc,
e.
default = u
},
function(t, e, n) {
"use strict";
function r(t) {
return [t.getLng(), t.getLat()]
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t) {
return t * (Math.PI / 180)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = r
},
function(t, e, n) {
t.exports = {
default:
n(127),
__esModule: !0
}
},
function(t, e, n) {
n(39),
n(33),
t.exports = n(133)
},
function(t, e, n) {
n(39),
n(33),
t.exports = n(134)
},
function(t, e) {
t.exports = function() {}
},
function(t, e, n) {
var r = n(18),
i = n(52),
o = n(132);
t.exports = function(t) {
return function(e, n, s) {
var a, u = r(e),
c = i(u.length),
l = o(s, c);
if (t && n != n) {
for (; c > l;) if ((a = u[l++]) != a) return ! 0
} else for (; c > l; l++) if ((t || l in u) && u[l] === n) return t || l || 0;
return ! t && -1
}
}
},
function(t, e, n) {
"use strict";
var r = n(51),
i = n(38),
o = n(42),
s = {};
n(19)(s, n(9)("iterator"),
function() {
return this
}),
t.exports = function(t, e, n) {
t.prototype = r(s, {
next: i(1, n)
}),
o(t, e + " Iterator")
}
},
function(t, e, n) {
var r = n(55),
i = n(53);
t.exports = function(t) {
return function(e, n) {
var o, s, a = String(i(e)),
u = r(n),
c = a.length;
return u < 0 || u >= c ? t ? "": void 0 : (o = a.charCodeAt(u), o < 55296 || o > 56319 || u + 1 === c || (s = a.charCodeAt(u + 1)) < 56320 || s > 57343 ? t ? a.charAt(u) : o: t ? a.slice(u, u + 2) : s - 56320 + (o - 55296 << 10) + 65536)
}
}
},
function(t, e, n) {
var r = n(55),
i = Math.max,
o = Math.min;
t.exports = function(t, e) {
return t = r(t),
t < 0 ? i(t + e, 0) : o(t, e)
}
},
function(t, e, n) {
var r = n(13),
i = n(65);
t.exports = n(2).getIterator = function(t) {
var e = i(t);
if ("function" != typeof e) throw TypeError(t + " is not iterable!");
return r(e.call(t))
}
},
function(t, e, n) {
var r = n(49),
i = n(9)("iterator"),
o = n(26);
t.exports = n(2).isIterable = function(t) {
var e = Object(t);
return void 0 !== e[i] || "@@iterator" in e || o.hasOwnProperty(r(e))
}
},
function(t, e, n) {
"use strict";
var r = n(128),
i = n(108),
o = n(26),
s = n(18);
t.exports = n(72)(Array, "Array",
function(t, e) {
this._t = s(t),
this._i = 0,
this._k = e
},
function() {
var t = this._t,
e = this._k,
n = this._i++;
return ! t || n >= t.length ? (this._t = void 0, i(1)) : "keys" == e ? i(0, n) : "values" == e ? i(0, t[n]) : i(0, [n, t[n]])
},
"values"),
o.Arguments = o.Array,
r("keys"),
r("values"),
r("entries")
},
, ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = {
init: function() {
this.browser = this.searchString(this.dataBrowser) || "An unknown browser",
this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "an unknown version",
this.OS = this.searchString(this.dataOS) || "an unknown OS"
},
searchString: function(t) {
for (var e = 0; e < t.length; e++) {
var n = t[e].string,
r = t[e].prop;
if (this.versionSearchString = t[e].versionSearch || t[e].identity, n) {
if ( - 1 !== n.indexOf(t[e].subString)) return t[e].identity
} else if (r) return t[e].identity
}
},
searchVersion: function(t) {
var e = t.indexOf(this.versionSearchString);
if ( - 1 !== e) return parseFloat(t.substring(e + this.versionSearchString.length + 1))
},
dataBrowser: [{
string: navigator.userAgent,
subString: "Chrome",
identity: "Chrome"
},
{
string: navigator.userAgent,
subString: "OmniWeb",
versionSearch: "OmniWeb/",
identity: "OmniWeb"
},
{
string: navigator.vendor,
subString: "Apple",
identity: "Safari",
versionSearch: "Version"
},
{
prop: self.opera,
identity: "Opera"
},
{
string: navigator.vendor,
subString: "iCab",
identity: "iCab"
},
{
string: navigator.vendor,
subString: "KDE",
identity: "Konqueror"
},
{
string: navigator.userAgent,
subString: "Firefox",
identity: "Firefox"
},
{
string: navigator.vendor,
subString: "Camino",
identity: "Camino"
},
{
string: navigator.userAgent,
subString: "Netscape",
identity: "Netscape"
},
{
string: navigator.userAgent,
subString: "MSIE",
identity: "Explorer",
versionSearch: "MSIE"
},
{
string: navigator.userAgent,
subString: "Gecko",
identity: "Mozilla",
versionSearch: "rv"
},
{
string: navigator.userAgent,
subString: "Mozilla",
identity: "Netscape",
versionSearch: "Mozilla"
}],
dataOS: [{
string: navigator.platform,
subString: "Win",
identity: "Windows"
},
{
string: navigator.platform,
subString: "Mac",
identity: "Mac"
},
{
string: navigator.userAgent,
subString: "iPhone",
identity: "iPhone"
},
{
string: navigator.userAgent,
subString: "Android",
identity: "Android"
},
{
string: navigator.platform,
subString: "Linux",
identity: "Linux"
}]
};
r.init(),
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t) {
return t - (0, s.
default)(t)
}
function i(t) {
var e = (0, s.
default)(t);
return {
high:
e,
low: t - e
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(401),
s = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o);
e.fp64LowPart = r,
e.splitLatLngNumber = i
},
function(t, e, n) {
t.exports = {
default:
n(224),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(163),
__esModule: !0
}
},
function(t, e) {
var n;
n = function() {
return this
} ();
try {
n = n || Function("return this")() || (0, eval)("this")
} catch(t) {
"object" == typeof window && (n = window)
}
t.exports = n
},
,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i() {
return "&random=" + ( + new Date).toString(36)
}
function o(t) { (0, b.getImage)(t + i())
}
function s(t) {
if (self.window) { (new Image).src = t + i()
}
}
function a(t, e, n) {
var r = x[t];
return r || (r = new E({
id: t,
path: e
})),
r.on("send",
function() {
r.receiveData(n())
}),
x[t]
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var u = n(3),
c = r(u),
l = n(0),
h = r(l),
f = n(1),
p = r(f),
d = n(5),
g = r(d),
y = n(4),
v = r(y);
e.sendByAjax = o,
e.sendOnce = s,
e.sendPeriodically = a;
var m = n(120),
_ = n(10),
w = r(_),
b = n(79),
x = {},
E = function(t) {
function e(t) {
var n = t.id,
r = t.path; (0, h.
default)(this, e);
var i = (0, g.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this));
return i.id = n,
i.path = r,
i.dataList = [],
setInterval(function() {
i.send()
},
5e3),
window.addEventListener("beforeunload",
function() {
i.send()
}),
i
}
return (0, v.
default)(e, t),
(0, p.
default)(e, [{
key: "receiveData",
value: function(t) {
var e = this;
w.
default.forIn(t,
function(t, n) {
e.dataList.push(t + "=" + n)
})
}
},
{
key: "send",
value: function() {
if (this.emit("send"), this.dataList.length > 0) {
var t = this.path + ( - 1 === this.path.indexOf("?") ? "?": "&") + this.dataList.join("&");
this.dataList = [],
s(t)
}
}
}]),
e
} (m.EventEmitter)
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i() {
return !! (o() && s() && a() && u() && c() && l() && h() && f())
}
function o() {
return "undefined" != typeof window && "undefined" != typeof document
}
function s() {
return Array.prototype && Array.prototype.every && Array.prototype.filter && Array.prototype.forEach && Array.prototype.indexOf && Array.prototype.lastIndexOf && Array.prototype.map && Array.prototype.some && Array.prototype.reduce && Array.prototype.reduceRight && Array.isArray
}
function a() {
return Function.prototype && Function.prototype.bind
}
function u() {
return q.
default && F.
default && D.
default && T.
default && A.
default && P.
default && C.
default && I.
default && E.
default && b.
default && _.
default && v.
default && g.
default
}
function c() {
return "JSON" in window && "parse" in JSON && "stringify" in JSON
}
function l() {
return "Worker" in window
}
function h() {
return "Uint8ClampedArray" in window
}
function f() {
var t = B.context || null;
if (!t) {
t = p(),
B.context = t;
var e = t.getExtension("WEBGL_debug_renderer_info"),
n = t.getParameter(e.UNMASKED_VENDOR_WEBGL),
r = t.getParameter(e.UNMASKED_RENDERER_WEBGL);
B.vendor = n,
B.renderer = r,
B.isIndependentDisplayCard = !/(\bHD\b)|(\bUHD\b)/.test(r)
}
return B
}
function p() {
var t = document.createElement("canvas"),
e = (0, F.
default)(i.webGLContextAttributes);
return t.getContext("webgl", e) || t.getContext("experimental-webgl", e)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var d = n(153),
g = r(d),
y = n(141),
v = r(y),
m = n(154),
_ = r(m),
w = n(114),
b = r(w),
x = n(75),
E = r(x),
M = n(116),
I = r(M),
S = n(150),
C = r(S),
N = n(151),
P = r(N),
L = n(152),
A = r(L),
O = n(149),
T = r(O),
R = n(3),
D = r(R),
k = n(77),
F = r(k),
j = n(17),
q = r(j);
e.isSupported = i,
e.isWebGLSupportedCached = f;
var B = {};
i.webGLContextAttributes = {
antialias: !1,
alpha: !0,
stencil: !0,
depth: !0
}
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var i = n(0),
o = r(i),
s = n(1),
a = r(s),
u = function() {
function t(e, n, r, i) { (0, o.
default)(this, t),
this.cx = 3 * e,
this.bx = 3 * (r - e) - this.cx,
this.ax = 1 - this.cx - this.bx,
this.cy = 3 * n,
this.by = 3 * (i - n) - this.cy,
this.ay = 1 - this.cy - this.by,
this.p1x = e,
this.p1y = n,
this.p2x = r,
this.p2y = i
}
return (0, a.
default)(t, [{
key: "sampleCurveX",
value: function(t) {
return ((this.ax * t + this.bx) * t + this.cx) * t
}
},
{
key: "sampleCurveY",
value: function(t) {
return ((this.ay * t + this.by) * t + this.cy) * t
}
},
{
key: "sampleCurveDerivativeX",
value: function(t) {
return (3 * this.ax * t + 2 * this.bx) * t + this.cx
}
},
{
key: "solveCurveX",
value: function(t, e) {
void 0 === e && (e = 1e-6);
var n = void 0,
r = void 0,
i = void 0,
o = void 0,
s = void 0;
for (i = t, s = 0; s < 8; s++) {
if (o = this.sampleCurveX(i) - t, Math.abs(o) < e) return i;
var a = this.sampleCurveDerivativeX(i);
if (Math.abs(a) < 1e-6) break;
i -= o / a
}
if (n = 0, r = 1, (i = t) < n) return n;
if (i > r) return r;
for (; n < r;) {
if (o = this.sampleCurveX(i), Math.abs(o - t) < e) return i;
t > o ? n = i: r = i,
i = .5 * (r - n) + n
}
return i
}
},
{
key: "solve",
value: function(t, e) {
return this.sampleCurveY(this.solveCurveX(t, e))
}
}]),
t
} ();
t.exports = u
},
function(t, e, n) {
"use strict";
function r(t) {
return t / (Math.PI / 180)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = r
},
function(t, e, n) {
t.exports = {
default:
n(307),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(165),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(167),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(168),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(169),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(171),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(172),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(173),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(175),
__esModule: !0
}
},
function(t, e, n) {
t.exports = {
default:
n(176),
__esModule: !0
}
},
function(t, e, n) {
n(33),
n(184),
t.exports = n(2).Array.from
},
function(t, e, n) {
n(185);
var r = n(2).Object;
t.exports = function(t, e) {
return r.create(t, e)
}
},
function(t, e, n) {
n(186);
var r = n(2).Object;
t.exports = function(t, e) {
return r.defineProperties(t, e)
}
},
function(t, e, n) {
n(187);
var r = n(2).Object;
t.exports = function(t, e, n) {
return r.defineProperty(t, e, n)
}
},
function(t, e, n) {
n(201),
t.exports = n(2).Object.entries
},
function(t, e, n) {
n(188),
t.exports = n(2).Object.freeze
},
function(t, e, n) {
n(189);
var r = n(2).Object;
t.exports = function(t, e) {
return r.getOwnPropertyDescriptor(t, e)
}
},
function(t, e, n) {
n(190);
var r = n(2).Object;
t.exports = function(t) {
return r.getOwnPropertyNames(t)
}
},
function(t, e, n) {
n(191),
t.exports = n(2).Object.getPrototypeOf
},
function(t, e, n) {
n(192),
t.exports = n(2).Object.isExtensible
},
function(t, e, n) {
n(193),
t.exports = n(2).Object.isFrozen
},
function(t, e, n) {
n(194),
t.exports = n(2).Object.isSealed
},
function(t, e, n) {
n(195),
t.exports = n(2).Object.keys
},
function(t, e, n) {
n(196),
t.exports = n(2).Object.preventExtensions
},
function(t, e, n) {
n(197),
t.exports = n(2).Object.seal
},
function(t, e, n) {
n(198),
t.exports = n(2).Object.setPrototypeOf
},
function(t, e, n) {
n(73),
n(33),
n(39),
n(199),
n(202),
n(203),
t.exports = n(2).Promise
},
function(t, e, n) {
n(200),
n(73),
n(204),
n(205),
t.exports = n(2).Symbol
},
function(t, e, n) {
n(33),
n(39),
t.exports = n(70).f("iterator")
},
function(t, e, n) {
"use strict";
var r = n(14),
i = n(38);
t.exports = function(t, e, n) {
e in t ? r.f(t, e, i(0, n)) : t[e] = n
}
},
function(t, e, n) {
var r = n(34),
i = n(76),
o = n(45);
t.exports = function(t) {
var e = r(t),
n = i.f;
if (n) for (var s, a = n(t), u = o.f, c = 0; a.length > c;) u.call(t, s = a[c++]) && e.push(s);
return e
}
},
function(t, e) {
t.exports = function(t, e, n) {
var r = void 0 === n;
switch (e.length) {
case 0:
return r ? t() : t.call(n);
case 1:
return r ? t(e[0]) : t.call(n, e[0]);
case 2:
return r ? t(e[0], e[1]) : t.call(n, e[0], e[1]);
case 3:
return r ? t(e[0], e[1], e[2]) : t.call(n, e[0], e[1], e[2]);
case 4:
return r ? t(e[0], e[1], e[2], e[3]) : t.call(n, e[0], e[1], e[2], e[3])
}
return t.apply(n, e)
}
},
function(t, e, n) {
var r = n(8),
i = n(101).set,
o = r.MutationObserver || r.WebKitMutationObserver,
s = r.process,
a = r.Promise,
u = "process" == n(36)(s);
t.exports = function() {
var t, e, n, c = function() {
var r, i;
for (u && (r = s.domain) && r.exit(); t;) {
i = t.fn,
t = t.next;
try {
i()
} catch(r) {
throw t ? n() : e = void 0,
r
}
}
e = void 0,
r && r.enter()
};
if (u) n = function() {
s.nextTick(c)
};
else if (!o || r.navigator && r.navigator.standalone) if (a && a.resolve) {
var l = a.resolve(void 0);
n = function() {
l.then(c)
}
} else n = function() {
i.call(r, c)
};
else {
var h = !0,
f = document.createTextNode("");
new o(c).observe(f, {
characterData: !0
}),
n = function() {
f.data = h = !h
}
}
return function(r) {
var i = {
fn: r,
next: void 0
};
e && (e.next = i),
t || (t = i, n()),
e = i
}
}
},
function(t, e, n) {
var r = n(7),
i = n(13),
o = function(t, e) {
if (i(t), !r(e) && null !== e) throw TypeError(e + ": can't set as prototype!")
};
t.exports = {
set: Object.setPrototypeOf || ("__proto__" in {} ?
function(t, e, r) {
try {
r = n(22)(Function.call, n(68).f(Object.prototype, "__proto__").set, 2),
r(t, []),
e = !(t instanceof Array)
} catch(t) {
e = !0
}
return function(t, n) {
return o(t, n),
e ? t.__proto__ = n: r(t, n),
t
}
} ({},
!1) : void 0),
check: o
}
},
function(t, e, n) {
var r = n(8),
i = r.navigator;
t.exports = i && i.userAgent || ""
},
function(t, e, n) {
var r = n(7);
t.exports = function(t, e) {
if (!r(t) || t._t !== e) throw TypeError("Incompatible receiver, " + e + " required!");
return t
}
},
function(t, e, n) {
"use strict";
var r = n(22),
i = n(6),
o = n(31),
s = n(93),
a = n(92),
u = n(52),
c = n(177),
l = n(65);
i(i.S + i.F * !n(94)(function(t) {
Array.from(t)
}), "Array", {
from: function(t) {
var e, n, i, h, f = o(t),
p = "function" == typeof this ? this: Array,
d = arguments.length,
g = d > 1 ? arguments[1] : void 0,
y = void 0 !== g,
v = 0,
m = l(f);
if (y && (g = r(g, d > 2 ? arguments[2] : void 0, 2)), void 0 == m || p == Array && a(m)) for (e = u(f.length), n = new p(e); e > v; v++) c(n, v, y ? g(f[v], v) : f[v]);
else for (h = m.call(f), n = new p; ! (i = h.next()).done; v++) c(n, v, y ? s(h, g, [i.value, v], !0) : i.value);
return n.length = v,
n
}
})
},
function(t, e, n) {
var r = n(6);
r(r.S, "Object", {
create: n(51)
})
},
function(t, e, n) {
var r = n(6);
r(r.S + r.F * !n(12), "Object", {
defineProperties: n(85)
})
},
function(t, e, n) {
var r = n(6);
r(r.S + r.F * !n(12), "Object", {
defineProperty: n(14).f
})
},
function(t, e, n) {
var r = n(7),
i = n(40).onFreeze;
n(15)("freeze",
function(t) {
return function(e) {
return t && r(e) ? t(i(e)) : e
}
})
},
function(t, e, n) {
var r = n(18),
i = n(68).f;
n(15)("getOwnPropertyDescriptor",
function() {
return function(t, e) {
return i(r(t), e)
}
})
},
function(t, e, n) {
n(15)("getOwnPropertyNames",
function() {
return n(95).f
})
},
function(t, e, n) {
var r = n(31),
i = n(86);
n(15)("getPrototypeOf",
function() {
return function(t) {
return i(r(t))
}
})
},
function(t, e, n) {
var r = n(7);
n(15)("isExtensible",
function(t) {
return function(e) {
return !! r(e) && (!t || t(e))
}
})
},
function(t, e, n) {
var r = n(7);
n(15)("isFrozen",
function(t) {
return function(e) {
return ! r(e) || !!t && t(e)
}
})
},
function(t, e, n) {
var r = n(7);
n(15)("isSealed",
function(t) {
return function(e) {
return ! r(e) || !!t && t(e)
}
})
},
function(t, e, n) {
var r = n(31),
i = n(34);
n(15)("keys",
function() {
return function(t) {
return i(r(t))
}
})
},
function(t, e, n) {
var r = n(7),
i = n(40).onFreeze;
n(15)("preventExtensions",
function(t) {
return function(e) {
return t && r(e) ? t(i(e)) : e
}
})
},
function(t, e, n) {
var r = n(7),
i = n(40).onFreeze;
n(15)("seal",
function(t) {
return function(e) {
return t && r(e) ? t(i(e)) : e
}
})
},
function(t, e, n) {
var r = n(6);
r(r.S, "Object", {
setPrototypeOf: n(181).set
})
},
function(t, e, n) {
"use strict";
var r, i, o, s, a = n(37),
u = n(8),
c = n(22),
l = n(49),
h = n(6),
f = n(7),
p = n(44),
d = n(91),
g = n(71),
y = n(100),
v = n(101).set,
m = n(180)(),
_ = n(67),
w = n(97),
b = n(182),
x = n(98),
E = u.TypeError,
M = u.process,
I = M && M.versions,
S = I && I.v8 || "",
C = u.Promise,
N = "process" == l(M),
P = function() {},
L = i = _.f,
A = !!
function() {
try {
var t = C.resolve(1),
e = (t.constructor = {})[n(9)("species")] = function(t) {
t(P, P)
};
return (N || "function" == typeof PromiseRejectionEvent) && t.then(P) instanceof e && 0 !== S.indexOf("6.6") && -1 === b.indexOf("Chrome/66")
} catch(t) {}
} (),
O = function(t) {
var e;
return ! (!f(t) || "function" != typeof(e = t.then)) && e
},
T = function(t, e) {
if (!t._n) {
t._n = !0;
var n = t._c;
m(function() {
for (var r = t._v,
i = 1 == t._s,
o = 0; n.length > o;) !
function(e) {
var n, o, s, a = i ? e.ok: e.fail,
u = e.resolve,
c = e.reject,
l = e.domain;
try {
a ? (i || (2 == t._h && k(t), t._h = 1), !0 === a ? n = r: (l && l.enter(), n = a(r), l && (l.exit(), s = !0)), n === e.promise ? c(E("Promise-chain cycle")) : (o = O(n)) ? o.call(n, u, c) : u(n)) : c(r)
} catch(t) {
l && !s && l.exit(),
c(t)
}
} (n[o++]);
t._c = [],
t._n = !1,
e && !t._h && R(t)
})
}
},
R = function(t) {
v.call(u,
function() {
var e, n, r, i = t._v,
o = D(t);
if (o && (e = w(function() {
N ? M.emit("unhandledRejection", i, t) : (n = u.onunhandledrejection) ? n({
promise: t,
reason: i
}) : (r = u.console) && r.error && r.error("Unhandled promise rejection", i)
}), t._h = N || D(t) ? 2 : 1), t._a = void 0, o && e.e) throw e.v
})
},
D = function(t) {
return 1 !== t._h && 0 === (t._a || t._c).length
},
k = function(t) {
v.call(u,
function() {
var e;
N ? M.emit("rejectionHandled", t) : (e = u.onrejectionhandled) && e({
promise: t,
reason: t._v
})
})
},
F = function(t) {
var e = this;
e._d || (e._d = !0, e = e._w || e, e._v = t, e._s = 2, e._a || (e._a = e._c.slice()), T(e, !0))
},
j = function(t) {
var e, n = this;
if (!n._d) {
n._d = !0,
n = n._w || n;
try {
if (n === t) throw E("Promise can't be resolved itself"); (e = O(t)) ? m(function() {
var r = {
_w: n,
_d: !1
};
try {
e.call(t, c(j, r, 1), c(F, r, 1))
} catch(t) {
F.call(r, t)
}
}) : (n._v = t, n._s = 1, T(n, !1))
} catch(t) {
F.call({
_w: n,
_d: !1
},
t)
}
}
};
A || (C = function(t) {
d(this, C, "Promise", "_h"),
p(t),
r.call(this);
try {
t(c(j, this, 1), c(F, this, 1))
} catch(t) {
F.call(this, t)
}
},
r = function(t) {
this._c = [],
this._a = void 0,
this._s = 0,
this._d = !1,
this._v = void 0,
this._h = 0,
this._n = !1
},
r.prototype = n(99)(C.prototype, {
then: function(t, e) {
var n = L(y(this, C));
return n.ok = "function" != typeof t || t,
n.fail = "function" == typeof e && e,
n.domain = N ? M.domain: void 0,
this._c.push(n),
this._a && this._a.push(n),
this._s && T(this, !1),
n.promise
},
catch: function(t) {
return this.then(void 0, t)
}
}), o = function() {
var t = new r;
this.promise = t,
this.resolve = c(j, t, 1),
this.reject = c(F, t, 1)
},
_.f = L = function(t) {
return t === C || t === s ? new o(t) : i(t)
}),
h(h.G + h.W + h.F * !A, {
Promise: C
}),
n(42)(C, "Promise"),
n(119)("Promise"),
s = n(2).Promise,
h(h.S + h.F * !A, "Promise", {
reject: function(t) {
var e = L(this);
return (0, e.reject)(t),
e.promise
}
}),
h(h.S + h.F * (a || !A), "Promise", {
resolve: function(t) {
return x(a && this === s ? C: this, t)
}
}),
h(h.S + h.F * !(A && n(94)(function(t) {
C.all(t).
catch(P)
})), "Promise", {
all: function(t) {
var e = this,
n = L(e),
r = n.resolve,
i = n.reject,
o = w(function() {
var n = [],
o = 0,
s = 1;
g(t, !1,
function(t) {
var a = o++,
u = !1;
n.push(void 0),
s++,
e.resolve(t).then(function(t) {
u || (u = !0, n[a] = t, --s || r(n))
},
i)
}),
--s || r(n)
});
return o.e && i(o.v),
n.promise
},
race: function(t) {
var e = this,
n = L(e),
r = n.reject,
i = w(function() {
g(t, !1,
function(t) {
e.resolve(t).then(n.resolve, r)
})
});
return i.e && r(i.v),
n.promise
}
})
},
function(t, e, n) {
"use strict";
var r = n(8),
i = n(21),
o = n(12),
s = n(6),
a = n(81),
u = n(40).KEY,
c = n(30),
l = n(59),
h = n(42),
f = n(46),
p = n(9),
d = n(70),
g = n(69),
y = n(178),
v = n(117),
m = n(13),
_ = n(7),
w = n(31),
b = n(18),
x = n(64),
E = n(38),
M = n(51),
I = n(95),
S = n(68),
C = n(76),
N = n(14),
P = n(34),
L = S.f,
A = N.f,
O = I.f,
T = r.Symbol,
R = r.JSON,
D = R && R.stringify,
k = p("_hidden"),
F = p("toPrimitive"),
j = {}.propertyIsEnumerable,
q = l("symbol-registry"),
B = l("symbols"),
G = l("op-symbols"),
U = Object.prototype,
z = "function" == typeof T && !!C.f,
Y = r.QObject,
X = !Y || !Y.prototype || !Y.prototype.findChild,
V = o && c(function() {
return 7 != M(A({},
"a", {
get: function() {
return A(this, "a", {
value: 7
}).a
}
})).a
}) ?
function(t, e, n) {
var r = L(U, e);
r && delete U[e],
A(t, e, n),
r && t !== U && A(U, e, r)
}: A,
W = function(t) {
var e = B[t] = M(T.prototype);
return e._k = t,
e
},
H = z && "symbol" == typeof T.iterator ?
function(t) {
return "symbol" == typeof t
}: function(t) {
return t instanceof T
},
J = function(t, e, n) {
return t === U && J(G, e, n),
m(t),
e = x(e, !0),
m(n),
i(B, e) ? (n.enumerable ? (i(t, k) && t[k][e] && (t[k][e] = !1), n = M(n, {
enumerable: E(0, !1)
})) : (i(t, k) || A(t, k, E(1, {})), t[k][e] = !0), V(t, e, n)) : A(t, e, n)
},
Z = function(t, e) {
m(t);
for (var n, r = y(e = b(e)), i = 0, o = r.length; o > i;) J(t, n = r[i++], e[n]);
return t
},
Q = function(t, e) {
return void 0 === e ? M(t) : Z(M(t), e)
},
K = function(t) {
var e = j.call(this, t = x(t, !0));
return ! (this === U && i(B, t) && !i(G, t)) && (!(e || !i(this, t) || !i(B, t) || i(this, k) && this[k][t]) || e)
},
$ = function(t, e) {
if (t = b(t), e = x(e, !0), t !== U || !i(B, e) || i(G, e)) {
var n = L(t, e);
return ! n || !i(B, e) || i(t, k) && t[k][e] || (n.enumerable = !0),
n
}
},
tt = function(t) {
for (var e, n = O(b(t)), r = [], o = 0; n.length > o;) i(B, e = n[o++]) || e == k || e == u || r.push(e);
return r
},
et = function(t) {
for (var e, n = t === U,
r = O(n ? G: b(t)), o = [], s = 0; r.length > s;) ! i(B, e = r[s++]) || n && !i(U, e) || o.push(B[e]);
return o
};
z || (T = function() {
if (this instanceof T) throw TypeError("Symbol is not a constructor!");
var t = f(arguments.length > 0 ? arguments[0] : void 0),
e = function(n) {
this === U && e.call(G, n),
i(this, k) && i(this[k], t) && (this[k][t] = !1),
V(this, t, E(1, n))
};
return o && X && V(U, t, {
configurable: !0,
set: e
}),
W(t)
},
a(T.prototype, "toString",
function() {
return this._k
}), S.f = $, N.f = J, n(96).f = I.f = tt, n(45).f = K, C.f = et, o && !n(37) && a(U, "propertyIsEnumerable", K, !0), d.f = function(t) {
return W(p(t))
}),
s(s.G + s.W + s.F * !z, {
Symbol: T
});
for (var nt = "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), rt = 0; nt.length > rt;) p(nt[rt++]);
for (var it = P(p.store), ot = 0; it.length > ot;) g(it[ot++]);
s(s.S + s.F * !z, "Symbol", {
for: function(t) {
return i(q, t += "") ? q[t] : q[t] = T(t)
},
keyFor: function(t) {
if (!H(t)) throw TypeError(t + " is not a symbol!");
for (var e in q) if (q[e] === t) return e
},
useSetter: function() {
X = !0
},
useSimple: function() {
X = !1
}
}),
s(s.S + s.F * !z, "Object", {
create: Q,
defineProperty: J,
defineProperties: Z,
getOwnPropertyDescriptor: $,
getOwnPropertyNames: tt,
getOwnPropertySymbols: et
});
var st = c(function() {
C.f(1)
});
s(s.S + s.F * st, "Object", {
getOwnPropertySymbols: function(t) {
return C.f(w(t))
}
}),
R && s(s.S + s.F * (!z || c(function() {
var t = T();
return "[null]" != D([t]) || "{}" != D({
a: t
}) || "{}" != D(Object(t))
})), "JSON", {
stringify: function(t) {
for (var e, n, r = [t], i = 1; arguments.length > i;) r.push(arguments[i++]);
if (n = e = r[1], (_(e) || void 0 !== t) && !H(t)) return v(e) || (e = function(t, e) {
if ("function" == typeof n && (e = n.call(this, t, e)), !H(e)) return e
}),
r[1] = e,
D.apply(R, r)
}
}),
T.prototype[F] || n(19)(T.prototype, F, T.prototype.valueOf),
h(T, "Symbol"),
h(Math, "Math", !0),
h(r.JSON, "JSON", !0)
},
function(t, e, n) {
var r = n(6),
i = n(118)(!0);
r(r.S, "Object", {
entries: function(t) {
return i(t)
}
})
},
function(t, e, n) {
"use strict";
var r = n(6),
i = n(2),
o = n(8),
s = n(100),
a = n(98);
r(r.P + r.R, "Promise", {
finally: function(t) {
var e = s(this, i.Promise || o.Promise),
n = "function" == typeof t;
return this.then(n ?
function(n) {
return a(e, t()).then(function() {
return n
})
}: t, n ?
function(n) {
return a(e, t()).then(function() {
throw n
})
}: t)
}
})
},
function(t, e, n) {
"use strict";
var r = n(6),
i = n(67),
o = n(97);
r(r.S, "Promise", {
try: function(t) {
var e = i.f(this),
n = o(t);
return (n.e ? e.reject: e.resolve)(n.v),
e.promise
}
})
},
function(t, e, n) {
n(69)("asyncIterator")
},
function(t, e, n) {
n(69)("observable")
},
, ,
function(t, e, n) { (function(e) {
var n, n;
/*!
localForage -- Offline Storage, Improved
Version 1.7.3
https://localforage.github.io/localForage
(c) 2013-2017 Mozilla, Apache License 2.0
*/
!
function(e) {
t.exports = e()
} (function() {
return function t(e, r, i) {
function o(a, u) {
if (!r[a]) {
if (!e[a]) {
var c = "function" == typeof n && n;
if (!u && c) return n(a, !0);
if (s) return s(a, !0);
var l = new Error("Cannot find module '" + a + "'");
throw l.code = "MODULE_NOT_FOUND",
l
}
var h = r[a] = {
exports: {}
};
e[a][0].call(h.exports,
function(t) {
var n = e[a][1][t];
return o(n || t)
},
h, h.exports, t, e, r, i)
}
return r[a].exports
}
for (var s = "function" == typeof n && n,
a = 0; a < i.length; a++) o(i[a]);
return o
} ({
1 : [function(t, n, r) { (function(t) {
"use strict";
function e() {
l = !0;
for (var t, e, n = h.length; n;) {
for (e = h, h = [], t = -1; ++t < n;) e[t]();
n = h.length
}
l = !1
}
function r(t) {
1 !== h.push(t) || l || i()
}
var i, o = t.MutationObserver || t.WebKitMutationObserver;
if (o) {
var s = 0,
a = new o(e),
u = t.document.createTextNode("");
a.observe(u, {
characterData: !0
}),
i = function() {
u.data = s = ++s % 2
}
} else if (t.setImmediate || void 0 === t.MessageChannel) i = "document" in t && "onreadystatechange" in t.document.createElement("script") ?
function() {
var n = t.document.createElement("script");
n.onreadystatechange = function() {
e(),
n.onreadystatechange = null,
n.parentNode.removeChild(n),
n = null
},
t.document.documentElement.appendChild(n)
}: function() {
setTimeout(e, 0)
};
else {
var c = new t.MessageChannel;
c.port1.onmessage = e,
i = function() {
c.port2.postMessage(0)
}
}
var l, h = [];
n.exports = r
}).call(this, void 0 !== e ? e: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{}],
2 : [function(t, e, n) {
"use strict";
function r() {}
function i(t) {
if ("function" != typeof t) throw new TypeError("resolver must be a function");
this.state = m,
this.queue = [],
this.outcome = void 0,
t !== r && u(this, t)
}
function o(t, e, n) {
this.promise = t,
"function" == typeof e && (this.onFulfilled = e, this.callFulfilled = this.otherCallFulfilled),
"function" == typeof n && (this.onRejected = n, this.callRejected = this.otherCallRejected)
}
function s(t, e, n) {
d(function() {
var r;
try {
r = e(n)
} catch(e) {
return g.reject(t, e)
}
r === t ? g.reject(t, new TypeError("Cannot resolve promise with itself")) : g.resolve(t, r)
})
}
function a(t) {
var e = t && t.then;
if (t && ("object" == typeof t || "function" == typeof t) && "function" == typeof e) return function() {
e.apply(t, arguments)
}
}
function u(t, e) {
function n(e) {
o || (o = !0, g.reject(t, e))
}
function r(e) {
o || (o = !0, g.resolve(t, e))
}
function i() {
e(r, n)
}
var o = !1,
s = c(i);
"error" === s.status && n(s.value)
}
function c(t, e) {
var n = {};
try {
n.value = t(e),
n.status = "success"
} catch(t) {
n.status = "error",
n.value = t
}
return n
}
function l(t) {
return t instanceof this ? t: g.resolve(new this(r), t)
}
function h(t) {
var e = new this(r);
return g.reject(e, t)
}
function f(t) {
var e = this;
if ("[object Array]" !== Object.prototype.toString.call(t)) return this.reject(new TypeError("must be an array"));
var n = t.length,
i = !1;
if (!n) return this.resolve([]);
for (var o = new Array(n), s = 0, a = -1, u = new this(r); ++a < n;) !
function(t, r) {
function a(t) {
o[r] = t,
++s !== n || i || (i = !0, g.resolve(u, o))
}
e.resolve(t).then(a,
function(t) {
i || (i = !0, g.reject(u, t))
})
} (t[a], a);
return u
}
function p(t) {
var e = this;
if ("[object Array]" !== Object.prototype.toString.call(t)) return this.reject(new TypeError("must be an array"));
var n = t.length,
i = !1;
if (!n) return this.resolve([]);
for (var o = -1,
s = new this(r); ++o < n;) !
function(t) {
e.resolve(t).then(function(t) {
i || (i = !0, g.resolve(s, t))
},
function(t) {
i || (i = !0, g.reject(s, t))
})
} (t[o]);
return s
}
var d = t(1),
g = {},
y = ["REJECTED"],
v = ["FULFILLED"],
m = ["PENDING"];
e.exports = i,
i.prototype.
catch = function(t) {
return this.then(null, t)
},
i.prototype.then = function(t, e) {
if ("function" != typeof t && this.state === v || "function" != typeof e && this.state === y) return this;
var n = new this.constructor(r);
if (this.state !== m) {
s(n, this.state === v ? t: e, this.outcome)
} else this.queue.push(new o(n, t, e));
return n
},
o.prototype.callFulfilled = function(t) {
g.resolve(this.promise, t)
},
o.prototype.otherCallFulfilled = function(t) {
s(this.promise, this.onFulfilled, t)
},
o.prototype.callRejected = function(t) {
g.reject(this.promise, t)
},
o.prototype.otherCallRejected = function(t) {
s(this.promise, this.onRejected, t)
},
g.resolve = function(t, e) {
var n = c(a, e);
if ("error" === n.status) return g.reject(t, n.value);
var r = n.value;
if (r) u(t, r);
else {
t.state = v,
t.outcome = e;
for (var i = -1,
o = t.queue.length; ++i < o;) t.queue[i].callFulfilled(e)
}
return t
},
g.reject = function(t, e) {
t.state = y,
t.outcome = e;
for (var n = -1,
r = t.queue.length; ++n < r;) t.queue[n].callRejected(e);
return t
},
i.resolve = l,
i.reject = h,
i.all = f,
i.race = p
},
{
1 : 1
}],
3 : [function(t, n, r) { (function(e) {
"use strict";
"function" != typeof e.Promise && (e.Promise = t(2))
}).call(this, void 0 !== e ? e: "undefined" != typeof self ? self: "undefined" != typeof window ? window: {})
},
{
2 : 2
}],
4 : [function(t, e, n) {
"use strict";
function r(t, e) {
if (! (t instanceof e)) throw new TypeError("Cannot call a class as a function")
}
function i(t, e) {
t = t || [],
e = e || {};
try {
return new Blob(t, e)
} catch(o) {
if ("TypeError" !== o.name) throw o;
for (var n = "undefined" != typeof BlobBuilder ? BlobBuilder: "undefined" != typeof MSBlobBuilder ? MSBlobBuilder: "undefined" != typeof MozBlobBuilder ? MozBlobBuilder: WebKitBlobBuilder, r = new n, i = 0; i < t.length; i += 1) r.append(t[i]);
return r.getBlob(e.type)
}
}
function o(t, e) {
e && t.then(function(t) {
e(null, t)
},
function(t) {
e(t)
})
}
function s(t, e, n) {
"function" == typeof e && t.then(e),
"function" == typeof n && t.
catch(n)
}
function a(t) {
return "string" != typeof t && (console.warn(t + " used as a key, but it is not a string."), t = String(t)),
t
}
function u() {
if (arguments.length && "function" == typeof arguments[arguments.length - 1]) return arguments[arguments.length - 1]
}
function c(t) {
for (var e = t.length,
n = new ArrayBuffer(e), r = new Uint8Array(n), i = 0; i < e; i++) r[i] = t.charCodeAt(i);
return n
}
function l(t) {
return new vt(function(e) {
var n = t.transaction(mt, Et),
r = i([""]);
n.objectStore(mt).put(r, "key"),
n.onabort = function(t) {
t.preventDefault(),
t.stopPropagation(),
e(!1)
},
n.oncomplete = function() {
var t = navigator.userAgent.match(/Chrome\/(\d+)/),
n = navigator.userAgent.match(/Edge\//);
e(n || !t || parseInt(t[1], 10) >= 43)
}
}).
catch(function() {
return ! 1
})
}
function h(t) {
return "boolean" == typeof _t ? vt.resolve(_t) : l(t).then(function(t) {
return _t = t
})
}
function f(t) {
var e = wt[t.name],
n = {};
n.promise = new vt(function(t, e) {
n.resolve = t,
n.reject = e
}),
e.deferredOperations.push(n),
e.dbReady ? e.dbReady = e.dbReady.then(function() {
return n.promise
}) : e.dbReady = n.promise
}
function p(t) {
var e = wt[t.name],
n = e.deferredOperations.pop();
if (n) return n.resolve(),
n.promise
}
function d(t, e) {
var n = wt[t.name],
r = n.deferredOperations.pop();
if (r) return r.reject(e),
r.promise
}
function g(t, e) {
return new vt(function(n, r) {
if (wt[t.name] = wt[t.name] || I(), t.db) {
if (!e) return n(t.db);
f(t),
t.db.close()
}
var i = [t.name];
e && i.push(t.version);
var o = yt.open.apply(yt, i);
e && (o.onupgradeneeded = function(e) {
var n = o.result;
try {
n.createObjectStore(t.storeName),
e.oldVersion <= 1 && n.createObjectStore(mt)
} catch(n) {
if ("ConstraintError" !== n.name) throw n;
console.warn('The database "' + t.name + '" has been upgraded from version ' + e.oldVersion + " to version " + e.newVersion + ', but the storage "' + t.storeName + '" already exists.')
}
}),
o.onerror = function(t) {
t.preventDefault(),
r(o.error)
},
o.onsuccess = function() {
n(o.result),
p(t)
}
})
}
function y(t) {
return g(t, !1)
}
function v(t) {
return g(t, !0)
}
function m(t, e) {
if (!t.db) return ! 0;
var n = !t.db.objectStoreNames.contains(t.storeName),
r = t.version < t.db.version,
i = t.version > t.db.version;
if (r && (t.version !== e && console.warn('The database "' + t.name + "\" can't be downgraded from version " + t.db.version + " to version " + t.version + "."), t.version = t.db.version), i || n) {
if (n) {
var o = t.db.version + 1;
o > t.version && (t.version = o)
}
return ! 0
}
return ! 1
}
function _(t) {
return new vt(function(e, n) {
var r = new FileReader;
r.onerror = n,
r.onloadend = function(n) {
var r = btoa(n.target.result || "");
e({
__local_forage_encoded_blob: !0,
data: r,
type: t.type
})
},
r.readAsBinaryString(t)
})
}
function w(t) {
return i([c(atob(t.data))], {
type: t.type
})
}
function b(t) {
return t && t.__local_forage_encoded_blob
}
function x(t) {
var e = this,
n = e._initReady().then(function() {
var t = wt[e._dbInfo.name];
if (t && t.dbReady) return t.dbReady
});
return s(n, t, t),
n
}
function E(t) {
f(t);
for (var e = wt[t.name], n = e.forages, r = 0; r < n.length; r++) {
var i = n[r];
i._dbInfo.db && (i._dbInfo.db.close(), i._dbInfo.db = null)
}
return t.db = null,
y(t).then(function(e) {
return t.db = e,
m(t) ? v(t) : e
}).then(function(r) {
t.db = e.db = r;
for (var i = 0; i < n.length; i++) n[i]._dbInfo.db = r
}).
catch(function(e) {
throw d(t, e),
e
})
}
function M(t, e, n, r) {
void 0 === r && (r = 1);
try {
var i = t.db.transaction(t.storeName, e);
n(null, i)
} catch(i) {
if (r > 0 && (!t.db || "InvalidStateError" === i.name || "NotFoundError" === i.name)) return vt.resolve().then(function() {
if (!t.db || "NotFoundError" === i.name && !t.db.objectStoreNames.contains(t.storeName) && t.version <= t.db.version) return t.db && (t.version = t.db.version + 1),
v(t)
}).then(function() {
return E(t).then(function() {
M(t, e, n, r - 1)
})
}).
catch(n);
n(i)
}
}
function I() {
return {
forages: [],
db: null,
dbReady: null,
deferredOperations: []
}
}
function S(t) {
function e() {
return vt.resolve()
}
var n = this,
r = {
db: null
};
if (t) for (var i in t) r[i] = t[i];
var o = wt[r.name];
o || (o = I(), wt[r.name] = o),
o.forages.push(n),
n._initReady || (n._initReady = n.ready, n.ready = x);
for (var s = [], a = 0; a < o.forages.length; a++) {
var u = o.forages[a];
u !== n && s.push(u._initReady().
catch(e))
}
var c = o.forages.slice(0);
return vt.all(s).then(function() {
return r.db = o.db,
y(r)
}).then(function(t) {
return r.db = t,
m(r, n._defaultConfig.version) ? v(r) : t
}).then(function(t) {
r.db = o.db = t,
n._dbInfo = r;
for (var e = 0; e < c.length; e++) {
var i = c[e];
i !== n && (i._dbInfo.db = r.db, i._dbInfo.version = r.version)
}
})
}
function C(t, e) {
var n = this;
t = a(t);
var r = new vt(function(e, r) {
n.ready().then(function() {
M(n._dbInfo, xt,
function(i, o) {
if (i) return r(i);
try {
var s = o.objectStore(n._dbInfo.storeName),
a = s.get(t);
a.onsuccess = function() {
var t = a.result;
void 0 === t && (t = null),
b(t) && (t = w(t)),
e(t)
},
a.onerror = function() {
r(a.error)
}
} catch(t) {
r(t)
}
})
}).
catch(r)
});
return o(r, e),
r
}
function N(t, e) {
var n = this,
r = new vt(function(e, r) {
n.ready().then(function() {
M(n._dbInfo, xt,
function(i, o) {
if (i) return r(i);
try {
var s = o.objectStore(n._dbInfo.storeName),
a = s.openCursor(),
u = 1;
a.onsuccess = function() {
var n = a.result;
if (n) {
var r = n.value;
b(r) && (r = w(r));
var i = t(r, n.key, u++);
void 0 !== i ? e(i) : n.
continue ()
} else e()
},
a.onerror = function() {
r(a.error)
}
} catch(t) {
r(t)
}
})
}).
catch(r)
});
return o(r, e),
r
}
function P(t, e, n) {
var r = this;
t = a(t);
var i = new vt(function(n, i) {
var o;
r.ready().then(function() {
return o = r._dbInfo,
"[object Blob]" === bt.call(e) ? h(o.db).then(function(t) {
return t ? e: _(e)
}) : e
}).then(function(e) {
M(r._dbInfo, Et,
function(o, s) {
if (o) return i(o);
try {
var a = s.objectStore(r._dbInfo.storeName);
null === e && (e = void 0);
var u = a.put(e, t);
s.oncomplete = function() {
void 0 === e && (e = null),
n(e)
},
s.onabort = s.onerror = function() {
var t = u.error ? u.error: u.transaction.error;
i(t)
}
} catch(t) {
i(t)
}
})
}).
catch(i)
});
return o(i, n),
i
}
function L(t, e) {
var n = this;
t = a(t);
var r = new vt(function(e, r) {
n.ready().then(function() {
M(n._dbInfo, Et,
function(i, o) {
if (i) return r(i);
try {
var s = o.objectStore(n._dbInfo.storeName),
a = s.delete(t);
o.oncomplete = function() {
e()
},
o.onerror = function() {
r(a.error)
},
o.onabort = function() {
var t = a.error ? a.error: a.transaction.error;
r(t)
}
} catch(t) {
r(t)
}
})
}).
catch(r)
});
return o(r, e),
r
}
function A(t) {
var e = this,
n = new vt(function(t, n) {
e.ready().then(function() {
M(e._dbInfo, Et,
function(r, i) {
if (r) return n(r);
try {
var o = i.objectStore(e._dbInfo.storeName),
s = o.clear();
i.oncomplete = function() {
t()
},
i.onabort = i.onerror = function() {
var t = s.error ? s.error: s.transaction.error;
n(t)
}
} catch(t) {
n(t)
}
})
}).
catch(n)
});
return o(n, t),
n
}
function O(t) {
var e = this,
n = new vt(function(t, n) {
e.ready().then(function() {
M(e._dbInfo, xt,
function(r, i) {
if (r) return n(r);
try {
var o = i.objectStore(e._dbInfo.storeName),
s = o.count();
s.onsuccess = function() {
t(s.result)
},
s.onerror = function() {
n(s.error)
}
} catch(t) {
n(t)
}
})
}).
catch(n)
});
return o(n, t),
n
}
function T(t, e) {
var n = this,
r = new vt(function(e, r) {
if (t < 0) return void e(null);
n.ready().then(function() {
M(n._dbInfo, xt,
function(i, o) {
if (i) return r(i);
try {
var s = o.objectStore(n._dbInfo.storeName),
a = !1,
u = s.openCursor();
u.onsuccess = function() {
var n = u.result;
if (!n) return void e(null);
0 === t ? e(n.key) : a ? e(n.key) : (a = !0, n.advance(t))
},
u.onerror = function() {
r(u.error)
}
} catch(t) {
r(t)
}
})
}).
catch(r)
});
return o(r, e),
r
}
function R(t) {
var e = this,
n = new vt(function(t, n) {
e.ready().then(function() {
M(e._dbInfo, xt,
function(r, i) {
if (r) return n(r);
try {
var o = i.objectStore(e._dbInfo.storeName),
s = o.openCursor(),
a = [];
s.onsuccess = function() {
var e = s.result;
if (!e) return void t(a);
a.push(e.key),
e.
continue ()
},
s.onerror = function() {
n(s.error)
}
} catch(t) {
n(t)
}
})
}).
catch(n)
});
return o(n, t),
n
}
function D(t, e) {
e = u.apply(this, arguments);
var n = this.config();
t = "function" != typeof t && t || {},
t.name || (t.name = t.name || n.name, t.storeName = t.storeName || n.storeName);
var r, i = this;
if (t.name) {
var s = t.name === n.name && i._dbInfo.db,
a = s ? vt.resolve(i._dbInfo.db) : y(t).then(function(e) {
var n = wt[t.name],
r = n.forages;
n.db = e;
for (var i = 0; i < r.length; i++) r[i]._dbInfo.db = e;
return e
});
r = t.storeName ? a.then(function(e) {
if (e.objectStoreNames.contains(t.storeName)) {
var n = e.version + 1;
f(t);
var r = wt[t.name],
i = r.forages;
e.close();
for (var o = 0; o < i.length; o++) {
var s = i[o];
s._dbInfo.db = null,
s._dbInfo.version = n
}
return new vt(function(e, r) {
var i = yt.open(t.name, n);
i.onerror = function(t) {
i.result.close(),
r(t)
},
i.onupgradeneeded = function() {
i.result.deleteObjectStore(t.storeName)
},
i.onsuccess = function() {
var t = i.result;
t.close(),
e(t)
}
}).then(function(t) {
r.db = t;
for (var e = 0; e < i.length; e++) {
var n = i[e];
n._dbInfo.db = t,
p(n._dbInfo)
}
}).
catch(function(e) {
throw (d(t, e) || vt.resolve()).
catch(function() {}),
e
})
}
}) : a.then(function(e) {
f(t);
var n = wt[t.name],
r = n.forages;
e.close();
for (var i = 0; i < r.length; i++) {
r[i]._dbInfo.db = null
}
return new vt(function(e, n) {
var r = yt.deleteDatabase(t.name);
r.onerror = r.onblocked = function(t) {
var e = r.result;
e && e.close(),
n(t)
},
r.onsuccess = function() {
var t = r.result;
t && t.close(),
e(t)
}
}).then(function(t) {
n.db = t;
for (var e = 0; e < r.length; e++) p(r[e]._dbInfo)
}).
catch(function(e) {
throw (d(t, e) || vt.resolve()).
catch(function() {}),
e
})
})
} else r = vt.reject("Invalid arguments");
return o(r, e),
r
}
function k(t) {
var e, n, r, i, o, s = .75 * t.length,
a = t.length,
u = 0;
"=" === t[t.length - 1] && (s--, "=" === t[t.length - 2] && s--);
var c = new ArrayBuffer(s),
l = new Uint8Array(c);
for (e = 0; e < a; e += 4) n = It.indexOf(t[e]),
r = It.indexOf(t[e + 1]),
i = It.indexOf(t[e + 2]),
o = It.indexOf(t[e + 3]),
l[u++] = n << 2 | r >> 4,
l[u++] = (15 & r) << 4 | i >> 2,
l[u++] = (3 & i) << 6 | 63 & o;
return c
}
function F(t) {
var e, n = new Uint8Array(t),
r = "";
for (e = 0; e < n.length; e += 3) r += It[n[e] >> 2],
r += It[(3 & n[e]) << 4 | n[e + 1] >> 4],
r += It[(15 & n[e + 1]) << 2 | n[e + 2] >> 6],
r += It[63 & n[e + 2]];
return n.length % 3 == 2 ? r = r.substring(0, r.length - 1) + "=": n.length % 3 == 1 && (r = r.substring(0, r.length - 2) + "=="),
r
}
function j(t, e) {
var n = "";
if (t && (n = Ut.call(t)), t && ("[object ArrayBuffer]" === n || t.buffer && "[object ArrayBuffer]" === Ut.call(t.buffer))) {
var r, i = Nt;
t instanceof ArrayBuffer ? (r = t, i += Lt) : (r = t.buffer, "[object Int8Array]" === n ? i += Ot: "[object Uint8Array]" === n ? i += Tt: "[object Uint8ClampedArray]" === n ? i += Rt: "[object Int16Array]" === n ? i += Dt: "[object Uint16Array]" === n ? i += Ft: "[object Int32Array]" === n ? i += kt: "[object Uint32Array]" === n ? i += jt: "[object Float32Array]" === n ? i += qt: "[object Float64Array]" === n ? i += Bt: e(new Error("Failed to get type for BinaryArray"))),
e(i + F(r))
} else if ("[object Blob]" === n) {
var o = new FileReader;
o.onload = function() {
var n = St + t.type + "~" + F(this.result);
e(Nt + At + n)
},
o.readAsArrayBuffer(t)
} else try {
e(JSON.stringify(t))
} catch(n) {
console.error("Couldn't convert value into a JSON string: ", t),
e(null, n)
}
}
function q(t) {
if (t.substring(0, Pt) !== Nt) return JSON.parse(t);
var e, n = t.substring(Gt),
r = t.substring(Pt, Gt);
if (r === At && Ct.test(n)) {
var o = n.match(Ct);
e = o[1],
n = n.substring(o[0].length)
}
var s = k(n);
switch (r) {
case Lt:
return s;
case At:
return i([s], {
type: e
});
case Ot:
return new Int8Array(s);
case Tt:
return new Uint8Array(s);
case Rt:
return new Uint8ClampedArray(s);
case Dt:
return new Int16Array(s);
case Ft:
return new Uint16Array(s);
case kt:
return new Int32Array(s);
case jt:
return new Uint32Array(s);
case qt:
return new Float32Array(s);
case Bt:
return new Float64Array(s);
default:
throw new Error("Unkown type: " + r)
}
}
function B(t, e, n, r) {
t.executeSql("CREATE TABLE IF NOT EXISTS " + e.storeName + " (id INTEGER PRIMARY KEY, key unique, value)", [], n, r)
}
function G(t) {
var e = this,
n = {
db: null
};
if (t) for (var r in t) n[r] = "string" != typeof t[r] ? t[r].toString() : t[r];
var i = new vt(function(t, r) {
try {
n.db = openDatabase(n.name, String(n.version), n.description, n.size)
} catch(t) {
return r(t)
}
n.db.transaction(function(i) {
B(i, n,
function() {
e._dbInfo = n,
t()
},
function(t, e) {
r(e)
})
},
r)
});
return n.serializer = zt,
i
}
function U(t, e, n, r, i, o) {
t.executeSql(n, r, i,
function(t, s) {
s.code === s.SYNTAX_ERR ? t.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?", [e.storeName],
function(t, a) {
a.rows.length ? o(t, s) : B(t, e,
function() {
t.executeSql(n, r, i, o)
},
o)
},
o) : o(t, s)
},
o)
}
function z(t, e) {
var n = this;
t = a(t);
var r = new vt(function(e, r) {
n.ready().then(function() {
var i = n._dbInfo;
i.db.transaction(function(n) {
U(n, i, "SELECT * FROM " + i.storeName + " WHERE key = ? LIMIT 1", [t],
function(t, n) {
var r = n.rows.length ? n.rows.item(0).value: null;
r && (r = i.serializer.deserialize(r)),
e(r)
},
function(t, e) {
r(e)
})
})
}).
catch(r)
});
return o(r, e),
r
}
function Y(t, e) {
var n = this,
r = new vt(function(e, r) {
n.ready().then(function() {
var i = n._dbInfo;
i.db.transaction(function(n) {
U(n, i, "SELECT * FROM " + i.storeName, [],
function(n, r) {
for (var o = r.rows,
s = o.length,
a = 0; a < s; a++) {
var u = o.item(a),
c = u.value;
if (c && (c = i.serializer.deserialize(c)), void 0 !== (c = t(c, u.key, a + 1))) return void e(c)
}
e()
},
function(t, e) {
r(e)
})
})
}).
catch(r)
});
return o(r, e),
r
}
function X(t, e, n, r) {
var i = this;
t = a(t);
var s = new vt(function(o, s) {
i.ready().then(function() {
void 0 === e && (e = null);
var a = e,
u = i._dbInfo;
u.serializer.serialize(e,
function(e, c) {
c ? s(c) : u.db.transaction(function(n) {
U(n, u, "INSERT OR REPLACE INTO " + u.storeName + " (key, value) VALUES (?, ?)", [t, e],
function() {
o(a)
},
function(t, e) {
s(e)
})
},
function(e) {
if (e.code === e.QUOTA_ERR) {
if (r > 0) return void o(X.apply(i, [t, a, n, r - 1]));
s(e)
}
})
})
}).
catch(s)
});
return o(s, n),
s
}
function V(t, e, n) {
return X.apply(this, [t, e, n, 1])
}
function W(t, e) {
var n = this;
t = a(t);
var r = new vt(function(e, r) {
n.ready().then(function() {
var i = n._dbInfo;
i.db.transaction(function(n) {
U(n, i, "DELETE FROM " + i.storeName + " WHERE key = ?", [t],
function() {
e()
},
function(t, e) {
r(e)
})
})
}).
catch(r)
});
return o(r, e),
r
}
function H(t) {
var e = this,
n = new vt(function(t, n) {
e.ready().then(function() {
var r = e._dbInfo;
r.db.transaction(function(e) {
U(e, r, "DELETE FROM " + r.storeName, [],
function() {
t()
},
function(t, e) {
n(e)
})
})
}).
catch(n)
});
return o(n, t),
n
}
function J(t) {
var e = this,
n = new vt(function(t, n) {
e.ready().then(function() {
var r = e._dbInfo;
r.db.transaction(function(e) {
U(e, r, "SELECT COUNT(key) as c FROM " + r.storeName, [],
function(e, n) {
var r = n.rows.item(0).c;
t(r)
},
function(t, e) {
n(e)
})
})
}).
catch(n)
});
return o(n, t),
n
}
function Z(t, e) {
var n = this,
r = new vt(function(e, r) {
n.ready().then(function() {
var i = n._dbInfo;
i.db.transaction(function(n) {
U(n, i, "SELECT key FROM " + i.storeName + " WHERE id = ? LIMIT 1", [t + 1],
function(t, n) {
var r = n.rows.length ? n.rows.item(0).key: null;
e(r)
},
function(t, e) {
r(e)
})
})
}).
catch(r)
});
return o(r, e),
r
}
function Q(t) {
var e = this,
n = new vt(function(t, n) {
e.ready().then(function() {
var r = e._dbInfo;
r.db.transaction(function(e) {
U(e, r, "SELECT key FROM " + r.storeName, [],
function(e, n) {
for (var r = [], i = 0; i < n.rows.length; i++) r.push(n.rows.item(i).key);
t(r)
},
function(t, e) {
n(e)
})
})
}).
catch(n)
});
return o(n, t),
n
}
function K(t) {
return new vt(function(e, n) {
t.transaction(function(r) {
r.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'", [],
function(n, r) {
for (var i = [], o = 0; o < r.rows.length; o++) i.push(r.rows.item(o).name);
e({
db: t,
storeNames: i
})
},
function(t, e) {
n(e)
})
},
function(t) {
n(t)
})
})
}
function $(t, e) {
e = u.apply(this, arguments);
var n = this.config();
t = "function" != typeof t && t || {},
t.name || (t.name = t.name || n.name, t.storeName = t.storeName || n.storeName);
var r, i = this;
return r = t.name ? new vt(function(e) {
var r;
r = t.name === n.name ? i._dbInfo.db: openDatabase(t.name, "", "", 0),
e(t.storeName ? {
db: r,
storeNames: [t.storeName]
}: K(r))
}).then(function(t) {
return new vt(function(e, n) {
t.db.transaction(function(r) {
for (var i = [], o = 0, s = t.storeNames.length; o < s; o++) i.push(function(t) {
return new vt(function(e, n) {
r.executeSql("DROP TABLE IF EXISTS " + t, [],
function() {
e()
},
function(t, e) {
n(e)
})
})
} (t.storeNames[o]));
vt.all(i).then(function() {
e()
}).
catch(function(t) {
n(t)
})
},
function(t) {
n(t)
})
})
}) : vt.reject("Invalid arguments"),
o(r, e),
r
}
function tt(t, e) {
var n = t.name + "/";
return t.storeName !== e.storeName && (n += t.storeName + "/"),
n
}
function et() {
try {
return localStorage.setItem("_localforage_support_test", !0),
localStorage.removeItem("_localforage_support_test"),
!1
} catch(t) {
return ! 0
}
}
function nt() {
return ! et() || localStorage.length > 0
}
function rt(t) {
var e = this,
n = {};
if (t) for (var r in t) n[r] = t[r];
return n.keyPrefix = tt(t, e._defaultConfig),
nt() ? (e._dbInfo = n, n.serializer = zt, vt.resolve()) : vt.reject()
}
function it(t) {
var e = this,
n = e.ready().then(function() {
for (var t = e._dbInfo.keyPrefix,
n = localStorage.length - 1; n >= 0; n--) {
var r = localStorage.key(n);
0 === r.indexOf(t) && localStorage.removeItem(r)
}
});
return o(n, t),
n
}
function ot(t, e) {
var n = this;
t = a(t);
var r = n.ready().then(function() {
var e = n._dbInfo,
r = localStorage.getItem(e.keyPrefix + t);
return r && (r = e.serializer.deserialize(r)),
r
});
return o(r, e),
r
}
function st(t, e) {
var n = this,
r = n.ready().then(function() {
for (var e = n._dbInfo,
r = e.keyPrefix,
i = r.length,
o = localStorage.length,
s = 1,
a = 0; a < o; a++) {
var u = localStorage.key(a);
if (0 === u.indexOf(r)) {
var c = localStorage.getItem(u);
if (c && (c = e.serializer.deserialize(c)), void 0 !== (c = t(c, u.substring(i), s++))) return c
}
}
});
return o(r, e),
r
}
function at(t, e) {
var n = this,
r = n.ready().then(function() {
var e, r = n._dbInfo;
try {
e = localStorage.key(t)
} catch(t) {
e = null
}
return e && (e = e.substring(r.keyPrefix.length)),
e
});
return o(r, e),
r
}
function ut(t) {
var e = this,
n = e.ready().then(function() {
for (var t = e._dbInfo,
n = localStorage.length,
r = [], i = 0; i < n; i++) {
var o = localStorage.key(i);
0 === o.indexOf(t.keyPrefix) && r.push(o.substring(t.keyPrefix.length))
}
return r
});
return o(n, t),
n
}
function ct(t) {
var e = this,
n = e.keys().then(function(t) {
return t.length
});
return o(n, t),
n
}
function lt(t, e) {
var n = this;
t = a(t);
var r = n.ready().then(function() {
var e = n._dbInfo;
localStorage.removeItem(e.keyPrefix + t)
});
return o(r, e),
r
}
function ht(t, e, n) {
var r = this;
t = a(t);
var i = r.ready().then(function() {
void 0 === e && (e = null);
var n = e;
return new vt(function(i, o) {
var s = r._dbInfo;
s.serializer.serialize(e,
function(e, r) {
if (r) o(r);
else try {
localStorage.setItem(s.keyPrefix + t, e),
i(n)
} catch(t) {
"QuotaExceededError" !== t.name && "NS_ERROR_DOM_QUOTA_REACHED" !== t.name || o(t),
o(t)
}
})
})
});
return o(i, n),
i
}
function ft(t, e) {
if (e = u.apply(this, arguments), t = "function" != typeof t && t || {},
!t.name) {
var n = this.config();
t.name = t.name || n.name,
t.storeName = t.storeName || n.storeName
}
var r, i = this;
return r = t.name ? new vt(function(e) {
e(t.storeName ? tt(t, i._defaultConfig) : t.name + "/")
}).then(function(t) {
for (var e = localStorage.length - 1; e >= 0; e--) {
var n = localStorage.key(e);
0 === n.indexOf(t) && localStorage.removeItem(n)
}
}) : vt.reject("Invalid arguments"),
o(r, e),
r
}
function pt(t, e) {
t[e] = function() {
var n = arguments;
return t.ready().then(function() {
return t[e].apply(t, n)
})
}
}
function dt() {
for (var t = 1; t < arguments.length; t++) {
var e = arguments[t];
if (e) for (var n in e) e.hasOwnProperty(n) && (Ht(e[n]) ? arguments[0][n] = e[n].slice() : arguments[0][n] = e[n])
}
return arguments[0]
}
var gt = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ?
function(t) {
return typeof t
}: function(t) {
return t && "function" == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? "symbol": typeof t
},
yt = function() {
try {
if ("undefined" != typeof indexedDB) return indexedDB;
if ("undefined" != typeof webkitIndexedDB) return webkitIndexedDB;
if ("undefined" != typeof mozIndexedDB) return mozIndexedDB;
if ("undefined" != typeof OIndexedDB) return OIndexedDB;
if ("undefined" != typeof msIndexedDB) return msIndexedDB
} catch(t) {
return
}
} ();
"undefined" == typeof Promise && t(3);
var vt = Promise,
mt = "local-forage-detect-blob-support",
_t = void 0,
wt = {},
bt = Object.prototype.toString,
xt = "readonly",
Et = "readwrite",
Mt = {
_driver: "asyncStorage",
_initStorage: S,
_support: function() {
try {
if (!yt) return ! 1;
var t = "undefined" != typeof openDatabase && /(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent) && !/BlackBerry/.test(navigator.platform),
e = "function" == typeof fetch && -1 !== fetch.toString().indexOf("[native code");
return (!t || e) && "undefined" != typeof indexedDB && "undefined" != typeof IDBKeyRange
} catch(t) {
return ! 1
}
} (),
iterate: N,
getItem: C,
setItem: P,
removeItem: L,
clear: A,
length: O,
key: T,
keys: R,
dropInstance: D
},
It = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
St = "~~local_forage_type~",
Ct = /^~~local_forage_type~([^~]+)~/,
Nt = "__lfsc__:",
Pt = Nt.length,
Lt = "arbf",
At = "blob",
Ot = "si08",
Tt = "ui08",
Rt = "uic8",
Dt = "si16",
kt = "si32",
Ft = "ur16",
jt = "ui32",
qt = "fl32",
Bt = "fl64",
Gt = Pt + Lt.length,
Ut = Object.prototype.toString,
zt = {
serialize: j,
deserialize: q,
stringToBuffer: k,
bufferToString: F
},
Yt = {
_driver: "webSQLStorage",
_initStorage: G,
_support: function() {
return "function" == typeof openDatabase
} (),
iterate: Y,
getItem: z,
setItem: V,
removeItem: W,
clear: H,
length: J,
key: Z,
keys: Q,
dropInstance: $
},
Xt = {
_driver: "localStorageWrapper",
_initStorage: rt,
_support: function() {
try {
return "undefined" != typeof localStorage && "setItem" in localStorage && !!localStorage.setItem
} catch(t) {
return ! 1
}
} (),
iterate: st,
getItem: ot,
setItem: ht,
removeItem: lt,
clear: it,
length: ct,
key: at,
keys: ut,
dropInstance: ft
},
Vt = function(t, e) {
return t === e || "number" == typeof t && "number" == typeof e && isNaN(t) && isNaN(e)
},
Wt = function(t, e) {
for (var n = t.length,
r = 0; r < n;) {
if (Vt(t[r], e)) return ! 0;
r++
}
return ! 1
},
Ht = Array.isArray ||
function(t) {
return "[object Array]" === Object.prototype.toString.call(t)
},
Jt = {},
Zt = {},
Qt = {
INDEXEDDB: Mt,
WEBSQL: Yt,
LOCALSTORAGE: Xt
},
Kt = [Qt.INDEXEDDB._driver, Qt.WEBSQL._driver, Qt.LOCALSTORAGE._driver],
$t = ["dropInstance"],
te = ["clear", "getItem", "iterate", "key", "keys", "length", "removeItem", "setItem"].concat($t),
ee = {
description: "",
driver: Kt.slice(),
name: "localforage",
size: 4980736,
storeName: "keyvaluepairs",
version: 1
},
ne = function() {
function t(e) {
r(this, t);
for (var n in Qt) if (Qt.hasOwnProperty(n)) {
var i = Qt[n],
o = i._driver;
this[n] = o,
Jt[o] || this.defineDriver(i)
}
this._defaultConfig = dt({},
ee),
this._config = dt({},
this._defaultConfig, e),
this._driverSet = null,
this._initDriver = null,
this._ready = !1,
this._dbInfo = null,
this._wrapLibraryMethodsWithReady(),
this.setDriver(this._config.driver).
catch(function() {})
}
return t.prototype.config = function(t) {
if ("object" === (void 0 === t ? "undefined": gt(t))) {
if (this._ready) return new Error("Can't call config() after localforage has been used.");
for (var e in t) {
if ("storeName" === e && (t[e] = t[e].replace(/\W/g, "_")), "version" === e && "number" != typeof t[e]) return new Error("Database version must be a number.");
this._config[e] = t[e]
}
return ! ("driver" in t && t.driver) || this.setDriver(this._config.driver)
}
return "string" == typeof t ? this._config[t] : this._config
},
t.prototype.defineDriver = function(t, e, n) {
var r = new vt(function(e, n) {
try {
var r = t._driver,
i = new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");
if (!t._driver) return void n(i);
for (var s = te.concat("_initStorage"), a = 0, u = s.length; a < u; a++) {
var c = s[a];
if ((!Wt($t, c) || t[c]) && "function" != typeof t[c]) return void n(i)
} !
function() {
for (var e = 0,
n = $t.length; e < n; e++) {
var r = $t[e];
t[r] || (t[r] = function(t) {
return function() {
var e = new Error("Method " + t + " is not implemented by the current driver"),
n = vt.reject(e);
return o(n, arguments[arguments.length - 1]),
n
}
} (r))
}
} ();
var l = function(n) {
Jt[r] && console.info("Redefining LocalForage driver: " + r),
Jt[r] = t,
Zt[r] = n,
e()
};
"_support" in t ? t._support && "function" == typeof t._support ? t._support().then(l, n) : l( !! t._support) : l(!0)
} catch(t) {
n(t)
}
});
return s(r, e, n),
r
},
t.prototype.driver = function() {
return this._driver || null
},
t.prototype.getDriver = function(t, e, n) {
var r = Jt[t] ? vt.resolve(Jt[t]) : vt.reject(new Error("Driver not found."));
return s(r, e, n),
r
},
t.prototype.getSerializer = function(t) {
var e = vt.resolve(zt);
return s(e, t),
e
},
t.prototype.ready = function(t) {
var e = this,
n = e._driverSet.then(function() {
return null === e._ready && (e._ready = e._initDriver()),
e._ready
});
return s(n, t, t),
n
},
t.prototype.setDriver = function(t, e, n) {
function r() {
a._config.driver = a.driver()
}
function i(t) {
return a._extend(t),
r(),
a._ready = a._initStorage(a._config),
a._ready
}
function o(t) {
return function() {
function e() {
for (; n < t.length;) {
var o = t[n];
return n++,
a._dbInfo = null,
a._ready = null,
a.getDriver(o).then(i).
catch(e)
}
r();
var s = new Error("No available storage method found.");
return a._driverSet = vt.reject(s),
a._driverSet
}
var n = 0;
return e()
}
}
var a = this;
Ht(t) || (t = [t]);
var u = this._getSupportedDrivers(t),
c = null !== this._driverSet ? this._driverSet.
catch(function() {
return vt.resolve()
}) : vt.resolve();
return this._driverSet = c.then(function() {
var t = u[0];
return a._dbInfo = null,
a._ready = null,
a.getDriver(t).then(function(t) {
a._driver = t._driver,
r(),
a._wrapLibraryMethodsWithReady(),
a._initDriver = o(u)
})
}).
catch(function() {
r();
var t = new Error("No available storage method found.");
return a._driverSet = vt.reject(t),
a._driverSet
}),
s(this._driverSet, e, n),
this._driverSet
},
t.prototype.supports = function(t) {
return !! Zt[t]
},
t.prototype._extend = function(t) {
dt(this, t)
},
t.prototype._getSupportedDrivers = function(t) {
for (var e = [], n = 0, r = t.length; n < r; n++) {
var i = t[n];
this.supports(i) && e.push(i)
}
return e
},
t.prototype._wrapLibraryMethodsWithReady = function() {
for (var t = 0,
e = te.length; t < e; t++) pt(this, te[t])
},
t.prototype.createInstance = function(e) {
return new t(e)
},
t
} (),
re = new ne;
e.exports = re
},
{
3 : 3
}]
},
{},
[4])(4)
})
}).call(e, n(142))
},
,
function(t, e, n) {
"use strict";
function r(t, e, n) {
var r = window.document.createElement(t);
return e && (r.className = e),
n && n.appendChild(r),
r
}
function i(t) {
for (var e = 0; e < t.length; e++) if (t[e] in E) return t[e];
return t[0]
}
function o() {
M && (I = E[M], E[M] = "none")
}
function s() {
M && (E[M] = I)
}
function a(t, e) {
t.style[S] = e
}
function u(t) {
t.preventDefault(),
t.stopPropagation(),
window.removeEventListener("click", u, !0)
}
function c() {
window.addEventListener("click", u, !0),
window.setTimeout(function() {
window.removeEventListener("click", u, !0)
},
0)
}
function l(t, e) {
var n = t.getBoundingClientRect();
return e = e.touches ? ("touchend" === e.type ? e.changedTouches: e.touches)[0] : e,
f(t, new x(e.clientX - n.left - t.clientLeft, e.clientY - n.top - t.clientTop))
}
function h(t, e) {
for (var n = t.getBoundingClientRect(), r = [], i = "touchend" === e.type ? e.changedTouches: e.touches, o = 0; o < i.length; o++) {
var s = new x(i[o].clientX - n.left - t.clientLeft, i[o].clientY - n.top - t.clientTop),
a = f(t, s);
r.push(a)
}
return r
}
function f(t, e) {
var n = null,
r = getComputedStyle(t),
i = r.width,
o = r.height,
s = r.transform;
for (i = i.replace("px", ""), o = o.replace("px", ""); null !== t;) {
if (!s) {
s = getComputedStyle(t).transform
}
if ("none" !== s) {
var a = s.match(/\(([^)]*)\)/),
u = (0, w.
default)(a, 2),
c = u[1],
l = c.split(","),
h = new b.Matrix4;
h.elements[0] = parseFloat(l[0].trim()),
h.elements[1] = parseFloat(l[1].trim()),
h.elements[4] = parseFloat(l[2].trim()),
h.elements[5] = parseFloat(l[3].trim()),
n = n ? h.multiply(n) : h
}
t = t.parentElement,
s = null
}
if (!n) return e;
var f = new b.Vector3([i, 0, 0]),
p = new b.Vector3([0, o, 0]),
d = new b.Vector3([i, o, 0]),
g = n.multiplyVector3(f),
y = n.multiplyVector3(p),
v = n.multiplyVector3(d),
m = Math.min.apply(null, [0, g.elements[0], y.elements[0], v.elements[0]]),
_ = Math.min.apply(null, [0, g.elements[1], y.elements[1], v.elements[1]]),
E = n.invert(),
M = new b.Vector3([e.x + m, e.y + _, 0]),
I = E.multiplyVector3(M);
return new x(I.elements[0], I.elements[1])
}
function p(t) {
t.parentNode && t.parentNode.removeChild(t)
}
function d(t) {
var e = document.createElement("div");
e.innerHTML = t;
var n = document.createDocumentFragment();
return Array.prototype.slice.apply(e.childNodes).forEach(function(t) {
n.appendChild(t)
}),
n
}
function g(t) {
if ("pageX" in t && "pageY" in t) return {
x: t.pageX,
y: t.pageY
};
if ("touches" in t && t.touches.length > 0) {
var e = t.touches[0];
return {
x: e.pageX,
y: e.pageY
}
}
if ("changedTouches" in t && t.changedTouches.length > 0) {
var n = t.changedTouches[0];
return {
x: n.pageX,
y: n.pageY
}
}
}
function y(t, e) {
t && (Array.isArray(e) || (e = [e]), e.forEach(function(e) {
m(t, e) || (t.className += " " + e)
}))
}
function v(t, e) {
t && (Array.isArray(e) || (e = [e]), e.forEach(function(e) {
m(t, e) && (t.className = t.className.replace(" " + e, ""))
}))
}
function m(t, e) {
if (t) {
var n = " " + e + " ";
return (" " + t.className + " ").includes(n)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.TRANSITIONTIMINGFUNCTION = e.TRANSITIONDURATION = e.TRANSITIONEND = e.TRANSITION = e.TRANSFORM = e.TRANSFORMORIGIN = void 0;
var _ = n(32),
w = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (_);
e.create = r,
e.disableDrag = o,
e.enableDrag = s,
e.setTransform = a,
e.suppressClick = c,
e.mousePos = l,
e.touchPos = h,
e.remove = p,
e.toDom = d,
e.getPointerXY = g,
e.addClass = y,
e.removeClass = v,
e.hasClass = m;
var b = n(107),
x = n(74),
E = window.document.documentElement.style,
M = i(["userSelect", "MozUserSelect", "WebkitUserSelect", "msUserSelect"]),
I = void 0,
S = (e.TRANSFORMORIGIN = i(["TRANSFORMORIGIN", "WebkitTransformOrigin", "OTransformOrigin", "MozTransformOrigin", "msTransformOrigin"]), e.TRANSFORM = i(["transform", "WebkitTransform", "OTransform", "MozTransform", "msTransform"])),
C = e.TRANSITION = i(["transition", "webkitTransition", "OTransition", "MozTransition", "msTransition"]);
e.TRANSITIONEND = "transition" === C ? C + "end": C + "End",
e.TRANSITIONDURATION = C + "Duration",
e.TRANSITIONTIMINGFUNCTION = C + "TimingFunction"
},
, , , , , , , , , ,
function(t, e, n) {
t.exports = {
default:
n(309),
__esModule: !0
}
},
,
function(t, e, n) {
"use strict";
e.__esModule = !0;
var r = n(16),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = i.
default ||
function(t) {
for (var e = 1; e < arguments.length; e++) {
var n = arguments[e];
for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (t[r] = n[r])
}
return t
}
},
function(t, e, n) {
n(225),
t.exports = n(2).Number.isNaN
},
function(t, e, n) {
var r = n(6);
r(r.S, "Number", {
isNaN: function(t) {
return t != t
}
})
},
,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
if (4 === t.length) {
for (var e = "#",
n = 1; n < 4; n += 1) e += t.slice(n, n + 1).concat(t.slice(n, n + 1));
t = e
}
var r = t.slice(1);
return {
r: parseInt(r.slice(0, 2), 16),
g: parseInt(r.slice(2, 4), 16),
b: parseInt(r.slice(4), 16)
}
}
function o(t) {
return t = t.replace(/rgb/, "rgba").replace(")", ",") + "1)",
s(t)
}
function s(t) {
return t = t.replace(/rgba\(/, "").replace(")", "").split(","),
{
r: parseInt(t[0]),
g: parseInt(t[1]),
b: parseInt(t[2]),
a: parseFloat(t[3])
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(0),
u = r(a),
c = n(1),
l = r(c),
h = n(41),
f = r(h),
p = n(398),
d = f.
default.isString,
g = f.
default.isArray,
y = f.
default.isUndefined,
v = function() {
function t(e, n) {
if ((0, u.
default)(this, t), this.r = 1, this.g = 1, this.b = 1, this.a = 1, n && n.defaultColor && this.turnStr2Rgba(n.defaultColor), d(e)) this.turnStr2Rgba(e);
else if (g(e)) {
var r = n && n.max || 255;
this.r = e[0] / r,
this.g = e[1] / r,
this.b = e[2] / r,
this.a = y(e[3]) ? 1 : e[3]
}
}
return (0, l.
default)(t, [{
key: "turnStr2Rgba",
value: function(t) {
t = t.toLowerCase();
var e = p.HEX_REG,
n = p.RGB_REG,
r = p.RGBA_REG,
a = null;
e.test(t) ? a = i(t) : n.test(t) ? a = o(t) : r.test(t) && (a = s(t)),
a && (this.r = a.r / 255, this.g = a.g / 255, this.b = a.b / 255, this.a = y(a.a) ? 1 : a.a)
}
},
{
key: "toArray",
value: function() {
return [this.r, this.g, this.b, this.a]
}
},
{
key: "toUpArray",
value: function() {
return this.toArray().map(function(t) {
return 255 * t
})
}
},
{
key: "toString",
value: function() {
return "rgba(" + ["" + Math.round(255 * this.r), "" + Math.round(255 * this.g), "" + Math.round(255 * this.b), "" + this.a].join(",") + ")"
}
}]),
t
} ();
e.
default = v
},
function(t, e, n) {
"use strict";
var r = n(12),
i = n(34),
o = n(76),
s = n(45),
a = n(31),
u = n(80),
c = Object.assign;
t.exports = !c || n(30)(function() {
var t = {},
e = {},
n = Symbol(),
r = "abcdefghijklmnopqrst";
return t[n] = 7,
r.split("").forEach(function(t) {
e[t] = t
}),
7 != c({},
t)[n] || Object.keys(c({},
e)).join("") != r
}) ?
function(t, e) {
for (var n = a(t), c = arguments.length, l = 1, h = o.f, f = s.f; c > l;) for (var p, d = u(arguments[l++]), g = h ? i(d).concat(h(d)) : i(d), y = g.length, v = 0; y > v;) p = g[v++],
r && !f.call(d, p) || (n[p] = d[p]);
return n
}: c
},
, , , , , ,
function(t, e) {
function n(t, e, n, r) {
if (void 0 === t) throw new Error("geometry is required");
if (e && e.constructor !== Object) throw new Error("properties must be an Object");
if (n && 4 !== n.length) throw new Error("bbox must be an Array of 4 numbers");
if (r && -1 === ["string", "number"].indexOf(typeof r)) throw new Error("id must be a number or a string");
var i = {
type: "Feature"
};
return r && (i.id = r),
n && (i.bbox = n),
i.properties = e || {},
i.geometry = t,
i
}
function r(t, e, n) {
if (!t) throw new Error("type is required");
if (!e) throw new Error("coordinates is required");
if (!Array.isArray(e)) throw new Error("coordinates must be an Array");
if (n && 4 !== n.length) throw new Error("bbox must be an Array of 4 numbers");
var r;
switch (t) {
case "Point":
r = i(e).geometry;
break;
case "LineString":
r = s(e).geometry;
break;
case "Polygon":
r = o(e).geometry;
break;
case "MultiPoint":
r = c(e).geometry;
break;
case "MultiLineString":
r = u(e).geometry;
break;
case "MultiPolygon":
r = l(e).geometry;
break;
default:
throw new Error(t + " is invalid")
}
return n && (r.bbox = n),
r
}
function i(t, e, r, i) {
if (!t) throw new Error("No coordinates passed");
if (void 0 === t.length) throw new Error("Coordinates must be an array");
if (t.length < 2) throw new Error("Coordinates must be at least 2 numbers long");
if (!b(t[0]) || !b(t[1])) throw new Error("Coordinates must contain numbers");
return n({
type: "Point",
coordinates: t
},
e, r, i)
}
function o(t, e, r, i) {
if (!t) throw new Error("No coordinates passed");
for (var o = 0; o < t.length; o++) {
var s = t[o];
if (s.length < 4) throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");
for (var a = 0; a < s[s.length - 1].length; a++) {
if (0 === o && 0 === a && !b(s[0][0]) || !b(s[0][1])) throw new Error("Coordinates must contain numbers");
if (s[s.length - 1][a] !== s[0][a]) throw new Error("First and last Position are not equivalent.")
}
}
return n({
type: "Polygon",
coordinates: t
},
e, r, i)
}
function s(t, e, r, i) {
if (!t) throw new Error("No coordinates passed");
if (t.length < 2) throw new Error("Coordinates must be an array of two or more positions");
if (!b(t[0][1]) || !b(t[0][1])) throw new Error("Coordinates must contain numbers");
return n({
type: "LineString",
coordinates: t
},
e, r, i)
}
function a(t, e, n) {
if (!t) throw new Error("No features passed");
if (!Array.isArray(t)) throw new Error("features must be an Array");
if (e && 4 !== e.length) throw new Error("bbox must be an Array of 4 numbers");
if (n && -1 === ["string", "number"].indexOf(typeof n)) throw new Error("id must be a number or a string");
var r = {
type: "FeatureCollection"
};
return n && (r.id = n),
e && (r.bbox = e),
r.features = t,
r
}
function u(t, e, r, i) {
if (!t) throw new Error("No coordinates passed");
return n({
type: "MultiLineString",
coordinates: t
},
e, r, i)
}
function c(t, e, r, i) {
if (!t) throw new Error("No coordinates passed");
return n({
type: "MultiPoint",
coordinates: t
},
e, r, i)
}
function l(t, e, r, i) {
if (!t) throw new Error("No coordinates passed");
return n({
type: "MultiPolygon",
coordinates: t
},
e, r, i)
}
function h(t, e, r, i) {
if (!t) throw new Error("geometries is required");
if (!Array.isArray(t)) throw new Error("geometries must be an Array");
return n({
type: "GeometryCollection",
geometries: t
},
e, r, i)
}
function f(t, e) {
if (void 0 === t || null === t || isNaN(t)) throw new Error("num is required");
if (e && !(e >= 0)) throw new Error("precision must be a positive number");
var n = Math.pow(10, e || 0);
return Math.round(t * n) / n
}
function p(t, e) {
if (void 0 === t || null === t) throw new Error("radians is required");
var n = x[e || "kilometers"];
if (!n) throw new Error("units is invalid");
return t * n
}
function d(t, e) {
if (void 0 === t || null === t) throw new Error("distance is required");
var n = x[e || "kilometers"];
if (!n) throw new Error("units is invalid");
return t / n
}
function g(t, e) {
return v(d(t, e))
}
function y(t) {
if (null === t || void 0 === t) throw new Error("bearing is required");
var e = t % 360;
return e < 0 && (e += 360),
e
}
function v(t) {
if (null === t || void 0 === t) throw new Error("radians is required");
return t % (2 * Math.PI) * 180 / Math.PI
}
function m(t) {
if (null === t || void 0 === t) throw new Error("degrees is required");
return t % 360 * Math.PI / 180
}
function _(t, e, n) {
if (null === t || void 0 === t) throw new Error("distance is required");
if (! (t >= 0)) throw new Error("distance must be a positive number");
return p(d(t, e), n || "kilometers")
}
function w(t, e, n) {
if (null === t || void 0 === t) throw new Error("area is required");
if (! (t >= 0)) throw new Error("area must be a positive number");
var r = E[e || "meters"];
if (!r) throw new Error("invalid original units");
var i = E[n || "kilometers"];
if (!i) throw new Error("invalid final units");
return t / r * i
}
function b(t) {
return ! isNaN(t) && null !== t && !Array.isArray(t)
}
var x = {
miles: 3960,
nauticalmiles: 3441.145,
degrees: 57.2957795,
radians: 1,
inches: 250905600,
yards: 6969600,
meters: 6373e3,
metres: 6373e3,
centimeters: 6373e5,
centimetres: 6373e5,
kilometers: 6373,
kilometres: 6373,
feet: 20908792.65
},
E = {
kilometers: 1e-6,
kilometres: 1e-6,
meters: 1,
metres: 1,
centimetres: 1e4,
millimeter: 1e6,
acres: 247105e-9,
miles: 3.86e-7,
yards: 1.195990046,
feet: 10.763910417,
inches: 1550.003100006
};
t.exports = {
feature: n,
geometry: r,
featureCollection: a,
geometryCollection: h,
point: i,
multiPoint: c,
lineString: s,
multiLineString: u,
polygon: o,
multiPolygon: l,
radiansToDistance: p,
distanceToRadians: d,
distanceToDegrees: g,
radians2degrees: v,
degrees2radians: m,
bearingToAngle: y,
convertDistance: _,
convertArea: w,
round: f,
isNumber: b
}
},
function(t, e, n) {
"use strict";
function r(t, e, n) {
if (null !== t) {
var i, o, s, a, u, c, l, h, f, p, d = 0,
g = 0,
y = t.type,
v = "FeatureCollection" === y,
m = "Feature" === y,
_ = v ? t.features.length: 1;
for (i = 0; i < _; i++) for (f = v ? t.features[i].geometry: m ? t.geometry: t, p = !!f && "GeometryCollection" === f.type, l = p ? f.geometries.length: 1, o = 0; o < l; o++) {
var w = 0;
if (null !== (c = p ? f.geometries[o] : f)) {
h = c.coordinates;
var b = c.type;
switch (d = !n || "Polygon" !== b && "MultiPolygon" !== b ? 0 : 1, b) {
case null:
break;
case "Point":
e(h, g, i, w),
g++,
w++;
break;
case "LineString":
case "MultiPoint":
for (s = 0; s < h.length; s++) e(h[s], g, i, w),
g++,
"MultiPoint" === b && w++;
"LineString" === b && w++;
break;
case "Polygon":
case "MultiLineString":
for (s = 0; s < h.length; s++) {
for (a = 0; a < h[s].length - d; a++) e(h[s][a], g, i, w),
g++;
"MultiLineString" === b && w++
}
"Polygon" === b && w++;
break;
case "MultiPolygon":
for (s = 0; s < h.length; s++) {
for (a = 0; a < h[s].length; a++) for (u = 0; u < h[s][a].length - d; u++) e(h[s][a][u], g, i, w),
g++;
w++
}
break;
case "GeometryCollection":
for (s = 0; s < c.geometries.length; s++) r(c.geometries[s], e, n);
break;
default:
throw new Error("Unknown Geometry Type")
}
}
}
}
}
function i(t, e, n, i) {
var o = n;
return r(t,
function(t, r, i, s) {
o = 0 === r && void 0 === n ? t: e(o, t, r, i, s)
},
i),
o
}
function o(t, e) {
var n;
switch (t.type) {
case "FeatureCollection":
for (n = 0; n < t.features.length; n++) e(t.features[n].properties, n);
break;
case "Feature":
e(t.properties, 0)
}
}
function s(t, e, n) {
var r = n;
return o(t,
function(t, i) {
r = 0 === i && void 0 === n ? t: e(r, t, i)
}),
r
}
function a(t, e) {
if ("Feature" === t.type) e(t, 0);
else if ("FeatureCollection" === t.type) for (var n = 0; n < t.features.length; n++) e(t.features[n], n)
}
function u(t, e, n) {
var r = n;
return a(t,
function(t, i) {
r = 0 === i && void 0 === n ? t: e(r, t, i)
}),
r
}
function c(t) {
var e = [];
return r(t,
function(t) {
e.push(t)
}),
e
}
function l(t, e) {
var n, r, i, o, s, a, u, c, l = 0,
h = "FeatureCollection" === t.type,
f = "Feature" === t.type,
p = h ? t.features.length: 1;
for (n = 0; n < p; n++) {
for (a = h ? t.features[n].geometry: f ? t.geometry: t, c = h ? t.features[n].properties: f ? t.properties: {},
u = !!a && "GeometryCollection" === a.type, s = u ? a.geometries.length: 1, i = 0; i < s; i++) if (null !== (o = u ? a.geometries[i] : a)) switch (o.type) {
case "Point":
case "LineString":
case "MultiPoint":
case "Polygon":
case "MultiLineString":
case "MultiPolygon":
e(o, l, c);
break;
case "GeometryCollection":
for (r = 0; r < o.geometries.length; r++) e(o.geometries[r], l, c);
break;
default:
throw new Error("Unknown Geometry Type")
} else e(null, l, c);
l++
}
}
function h(t, e, n) {
var r = n;
return l(t,
function(t, i, o) {
r = 0 === i && void 0 === n ? t: e(r, t, i, o)
}),
r
}
function f(t, e) {
l(t,
function(t, n, r) {
var i = null === t ? null: t.type;
switch (i) {
case null:
case "Point":
case "LineString":
case "Polygon":
return void e(y(t, r), n, 0)
}
var o;
switch (i) {
case "MultiPoint":
o = "Point";
break;
case "MultiLineString":
o = "LineString";
break;
case "MultiPolygon":
o = "Polygon"
}
t.coordinates.forEach(function(t, i) {
e(y({
type: o,
coordinates: t
},
r), n, i)
})
})
}
function p(t, e, n) {
var r = n;
return f(t,
function(t, i, o) {
r = 0 === i && 0 === o && void 0 === n ? t: e(r, t, i, o)
}),
r
}
function d(t, e) {
f(t,
function(t, n, r) {
var o = 0;
if (t.geometry) {
var s = t.geometry.type;
"Point" !== s && "MultiPoint" !== s && i(t,
function(i, s) {
var a = v([i, s], t.properties);
return e(a, n, r, o),
o++,
s
})
}
})
}
function g(t, e, n) {
var r = n,
i = !1;
return d(t,
function(t, o, s, a) {
r = !1 === i && void 0 === n ? t: e(r, t, o, s, a),
i = !0
}),
r
}
function y(t, e) {
if (void 0 === t) throw new Error("No geometry passed");
return {
type: "Feature",
properties: e || {},
geometry: t
}
}
function v(t, e) {
if (!t) throw new Error("No coordinates passed");
if (t.length < 2) throw new Error("Coordinates must be an array of two or more positions");
return {
type: "Feature",
properties: e || {},
geometry: {
type: "LineString",
coordinates: t
}
}
}
function m(t, e) {
if (!t) throw new Error("geojson is required");
var n = t.geometry ? t.geometry.type: t.type;
if (!n) throw new Error("invalid geojson");
if ("FeatureCollection" === n) throw new Error("FeatureCollection is not supported");
if ("GeometryCollection" === n) throw new Error("GeometryCollection is not supported");
var r = t.geometry ? t.geometry.coordinates: t.coordinates;
if (!r) throw new Error("geojson must contain coordinates");
switch (n) {
case "LineString":
return void e(r, 0, 0);
case "Polygon":
case "MultiLineString":
for (var i = 0,
o = 0; o < r.length; o++)"MultiLineString" === n && (i = o),
e(r[o], o, i);
return;
case "MultiPolygon":
for (var s = 0; s < r.length; s++) for (var a = 0; a < r[s].length; a++) e(r[s][a], a, s);
return;
default:
throw new Error(n + " geometry not supported")
}
}
function _(t, e, n) {
var r = n;
return m(t,
function(t, i, o) {
r = 0 === i && void 0 === n ? t: e(r, t, i, o)
}),
r
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.coordEach = r,
e.coordReduce = i,
e.propEach = o,
e.propReduce = s,
e.featureEach = a,
e.featureReduce = u,
e.coordAll = c,
e.geomEach = l,
e.geomReduce = h,
e.flattenEach = f,
e.flattenReduce = p,
e.segmentEach = d,
e.segmentReduce = g,
e.feature = y,
e.lineString = v,
e.lineEach = m,
e.lineReduce = _
},
function(t, e, n) {
"use strict";
function r(t) {
for (var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = e.result, i = void 0 === n ? [] : n, o = e.dimensions, s = void 0 === o ? 3 : o, a = 0; a < t.length;) {
var u = t[a];
Array.isArray(u) || ArrayBuffer.isView(u) ? r(u, {
result: i,
dimensions: s
}) : i.push(u.lng, u.lat),
a += 1
}
return i
}
function i(t, e) {
var n = t.getBounds();
return n.covers(e) || n.intersects(e)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.isInFrustum = i,
e.
default = {
to3DVertices: function(t, e) {
e = e || 0;
for (var n = [], r = 0, i = t.length / 2; r < i; r++) n.push(t[2 * r], t[2 * r + 1], e, 1);
return n
},
mixCoords: function(t, e, n, r) {
var i = arguments.length > 4 && void 0 !== arguments[4] ? arguments[4] : 1,
o = [];
if (r = r || 0, n) for (var s = 0,
a = t.length / 2; s < a; s++) o.push([t[2 * s] * i + r, -1 * t[2 * s + 1] * i + r].concat(n));
else for (var u = 0,
c = t.length / 2; u < c; u++) o.push([t[2 * u] * i + r, -1 * t[2 * u + 1] * i + r, 0, 1]);
return "polygon" === e && o.push(o[0]),
o
},
flattenVertices: r,
fillArray: function(t) {
for (var e = t.target,
n = t.source,
r = t.start,
i = void 0 === r ? 0 : r, o = t.count, s = void 0 === o ? 1 : o, a = n.length, u = s * a, c = 0, l = i; c < a; c++) e[l] = n[c],
l += 1;
for (; c < u;) c < u - c ? (e.copyWithin(i + c, i, i + c), c *= 2) : (e.copyWithin(i + c, i, i + u - c), c = u);
return e
}
}
},
, ,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
return arguments.length > 1 && void 0 !== arguments[1] && arguments[1] ? [t + 1 & 255, t + 1 >> 8 & 255, t + 1 >> 8 >> 8 & 255, 255] : [t + 1 & 255, t + 1 >> 8 & 255, t + 1 >> 8 >> 8 & 255]
}
function o(t) {
var e = (0, p.
default)(t, 3);
return e[0] + 256 * e[1] + 65536 * e[2] - 1
}
function s(t) {
for (var e = new h.
default,
n = [], r = 0; r < t.length; r += 4) if (255 === t[r + 3]) {
var i = o([t[r], t[r + 1], t[r + 2]]),
s = a(i);
s && s.id && !e.has(s.id) && (e.add(s.id), n.push(s))
}
return n
}
function a(t) {
var e = void 0;
return (0, c.
default)(d.styleNameConfig).forEach(function(n) { (0, c.
default)(d.styleNameConfig[n]).forEach(function(r) {
if (d.styleNameConfig[n][r].includes(t)) return void(e = {
type: n,
id: t,
tag: r
})
})
}),
e
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var u = n(17),
c = r(u),
l = n(241),
h = r(l),
f = n(32),
p = r(f);
e.encodePickingColor = i,
e.decodePickingColor = o,
e.decodeStylePickingColor = s;
var d = n(386)
},
function(t, e, n) {
t.exports = {
default:
n(412),
__esModule: !0
}
},
function(t, e, n) {
n(243),
t.exports = n(2).Object.assign
},
function(t, e, n) {
var r = n(6);
r(r.S + r.F, "Object", {
assign: n(228)
})
},
, , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(122),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = i.
default[1]
},
, ,
function(t, e, n) {
"use strict";
var r = n(8),
i = n(6),
o = n(40),
s = n(30),
a = n(19),
u = n(99),
c = n(71),
l = n(91),
h = n(7),
f = n(42),
p = n(14).f,
d = n(259)(0),
g = n(12);
t.exports = function(t, e, n, y, v, m) {
var _ = r[t],
w = _,
b = v ? "set": "add",
x = w && w.prototype,
E = {};
return g && "function" == typeof w && (m || x.forEach && !s(function() { (new w).entries().next()
})) ? (w = e(function(e, n) {
l(e, w, t, "_c"),
e._c = new _,
void 0 != n && c(n, v, e[b], e)
}), d("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),
function(t) {
var e = "add" == t || "set" == t;
t in x && (!m || "clear" != t) && a(w.prototype, t,
function(n, r) {
if (l(this, w, t), !e && m && !h(n)) return "get" == t && void 0;
var i = this._c[t](0 === n ? 0 : n, r);
return e ? this: i
})
}), m || p(w.prototype, "size", {
get: function() {
return this._c.size
}
})) : (w = y.getConstructor(e, t, v, b), u(w.prototype, n), o.NEED = !0),
f(w, t),
E[t] = w,
i(i.G + i.W + i.F, E),
m || y.setStrong(w, t, v),
w
}
},
function(t, e, n) {
"use strict";
var r = n(6),
i = n(44),
o = n(22),
s = n(71);
t.exports = function(t) {
r(r.S, t, {
from: function(t) {
var e, n, r, a, u = arguments[1];
return i(this),
e = void 0 !== u,
e && i(u),
void 0 == t ? new this: (n = [], e ? (r = 0, a = o(u, arguments[2], 2), s(t, !1,
function(t) {
n.push(a(t, r++))
})) : s(t, !1, n.push, n), new this(n))
}
})
}
},
function(t, e, n) {
"use strict";
var r = n(6);
t.exports = function(t) {
r(r.S, t, {
of: function() {
for (var t = arguments.length,
e = new Array(t); t--;) e[t] = arguments[t];
return new this(e)
}
})
}
},
, , , , ,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e, n) {
var r = t.projectToContainer(e),
i = t.projectToContainer(n);
return r.dist(i)
}
function o(t, e, n) {
return i(t, e, n) * t._getSpatialResolution()
}
function s(t, e, n) {
var r = t.projectToContainer(e),
i = t.projectToContainer(n),
o = r.add(i).div(2);
return t.unprojectFromContainer(o)
}
function a(t, e) {
var n = 0;
return function() {
var r = +new Date;
if (r - n > e) {
n = r;
for (var i = arguments.length,
o = Array(i), s = 0; s < i; s++) o[s] = arguments[s];
t.apply(this, o)
}
}
}
function u(t, e, n) {
if (e.length < 2) return null;
var r = t.paths,
i = l(r, n),
o = h(e, n),
s = (0, w.
default)(i, o);
if (s && s.features.length) {
return s.features.map(function(t) {
return f(t, n)
}).map(function(e) {
return {
styleId: t.styleId,
paths: e
}
})
}
return null
}
function c(t, e) {
for (var n = t.map(function(t) {
return l(t.paths, e)
}), r = n[0], i = 1; i < n.length; i++) {
var o = n[i];
if (m.booleanDisjoint(r, o)) return null;
r = (0, x.
default)(r, o)
}
return {
styleId: t[0].styleId,
paths: f(r, e)
}
}
function l(t, e) {
var n = null; (0, E.isSimplePolygon)(t) ? n = [t] : (0, E.isHoleyPolygon)(t) && (n = t);
var r = n.map(function(t) {
return p(t),
g(t, e)
});
return m.polygon(r)
}
function h(t, e) {
return m.lineString(g(t, e))
}
function f(t, e) {
var n = m.getCoords(t);
return 1 === n.length ? y(n[0], e) : y(n, e)
}
function p(t) {
var e = t[0],
n = t[t.length - 1];
e.equals(n) || t.push(e)
}
function d(t, e, n) {
return e(t) ? n(t) : t.map(function(t) {
return d(t, e, n)
})
}
function g(t, e) {
return d(t,
function(t) {
return t instanceof S
},
function(t) {
var n = e.projectToContainer(t);
return [n.x, n.y]
})
}
function y(t, e) {
return d(t,
function(t) {
return "number" == typeof t[0]
},
function(t) {
var n = new I(t[0], t[1]);
return e.unprojectFromContainer(n)
})
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.computePixelDist = i,
e.computeMeterDist = o,
e.computeMidPoint = s,
e.throttle = a,
e.split = u,
e.union = c;
var v = n(374),
m = function(t) {
if (t && t.__esModule) return t;
var e = {};
if (null != t) for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
return e.
default = t,
e
} (v),
_ = n(718),
w = r(_),
b = n(719),
x = r(b),
E = n(279),
M = TMap,
I = M.Point,
S = M.LatLng
},
function(t, e, n) {
var r = n(22),
i = n(80),
o = n(31),
s = n(52),
a = n(312);
t.exports = function(t, e) {
var n = 1 == t,
u = 2 == t,
c = 3 == t,
l = 4 == t,
h = 6 == t,
f = 5 == t || h,
p = e || a;
return function(e, a, d) {
for (var g, y, v = o(e), m = i(v), _ = r(a, d, 3), w = s(m.length), b = 0, x = n ? p(e, w) : u ? p(e, 0) : void 0; w > b; b++) if ((f || b in m) && (g = m[b], y = _(g, b, v), t)) if (n) x[b] = y;
else if (y) switch (t) {
case 3:
return ! 0;
case 5:
return g;
case 6:
return b;
case 2:
x.push(g)
} else if (l) return ! 1;
return h ? -1 : c || l ? l: x
}
}
},
function(t, e, n) {
"use strict";
var r = n(14).f,
i = n(51),
o = n(99),
s = n(22),
a = n(91),
u = n(71),
c = n(72),
l = n(108),
h = n(119),
f = n(12),
p = n(40).fastKey,
d = n(183),
g = f ? "_s": "size",
y = function(t, e) {
var n, r = p(e);
if ("F" !== r) return t._i[r];
for (n = t._f; n; n = n.n) if (n.k == e) return n
};
t.exports = {
getConstructor: function(t, e, n, c) {
var l = t(function(t, r) {
a(t, l, e, "_i"),
t._t = e,
t._i = i(null),
t._f = void 0,
t._l = void 0,
t[g] = 0,
void 0 != r && u(r, n, t[c], t)
});
return o(l.prototype, {
clear: function() {
for (var t = d(this, e), n = t._i, r = t._f; r; r = r.n) r.r = !0,
r.p && (r.p = r.p.n = void 0),
delete n[r.i];
t._f = t._l = void 0,
t[g] = 0
},
delete: function(t) {
var n = d(this, e),
r = y(n, t);
if (r) {
var i = r.n,
o = r.p;
delete n._i[r.i],
r.r = !0,
o && (o.n = i),
i && (i.p = o),
n._f == r && (n._f = i),
n._l == r && (n._l = o),
n[g]--
}
return !! r
},
forEach: function(t) {
d(this, e);
for (var n, r = s(t, arguments.length > 1 ? arguments[1] : void 0, 3); n = n ? n.n: this._f;) for (r(n.v, n.k, this); n && n.r;) n = n.p
},
has: function(t) {
return !! y(d(this, e), t)
}
}),
f && r(l.prototype, "size", {
get: function() {
return d(this, e)[g]
}
}),
l
},
def: function(t, e, n) {
var r, i, o = y(t, e);
return o ? o.v = n: (t._l = o = {
i: i = p(e, !0),
k: e,
v: n,
p: r = t._l,
n: void 0,
r: !1
},
t._f || (t._f = o), r && (r.n = o), t[g]++, "F" !== i && (t._i[i] = o)),
t
},
getEntry: y,
setStrong: function(t, e, n) {
c(t, e,
function(t, n) {
this._t = d(t, e),
this._k = n,
this._l = void 0
},
function() {
for (var t = this,
e = t._k,
n = t._l; n && n.r;) n = n.p;
return t._t && (t._l = n = n ? n.n: t._t._f) ? "keys" == e ? l(0, n.k) : "values" == e ? l(0, n.v) : l(0, [n.k, n.v]) : (t._t = void 0, l(1))
},
n ? "entries": "values", !n, !0),
h(e)
}
}
},
function(t, e, n) {
var r = n(49),
i = n(310);
t.exports = function(t) {
return function() {
if (r(this) != t) throw TypeError(t + "#toJSON isn't generic");
return i(this)
}
}
},
, , , , , , , , , , ,
function(t, e) {
t.exports = function() {
var t = [];
return t.toString = function() {
for (var t = [], e = 0; e < this.length; e++) {
var n = this[e];
n[2] ? t.push("@media " + n[2] + "{" + n[1] + "}") : t.push(n[1])
}
return t.join("")
},
t.i = function(e, n) {
"string" == typeof e && (e = [[null, e, ""]]);
for (var r = {},
i = 0; i < this.length; i++) {
var o = this[i][0];
"number" == typeof o && (r[o] = !0)
}
for (i = 0; i < e.length; i++) {
var s = e[i];
"number" == typeof s[0] && r[s[0]] || (n && !s[2] ? s[2] = n: n && (s[2] = "(" + s[2] + ") and (" + n + ")"), t.push(s))
}
},
t
}
},
function(t, e, n) {
"use strict";
function r(t, e, n, r) {
return function(n, i, o) {
var s = t(t(e(i[1], o[0]), e( - o[1], i[0])), t(e(n[1], i[0]), e( - i[1], n[0]))),
a = t(e(n[1], o[0]), e( - o[1], n[0])),
u = r(s, a);
return u[u.length - 1]
}
}
function i(t, e, n, r) {
return function(i, o, s, a) {
var u = t(t(n(t(e(s[1], a[0]), e( - a[1], s[0])), o[2]), t(n(t(e(o[1], a[0]), e( - a[1], o[0])), -s[2]), n(t(e(o[1], s[0]), e( - s[1], o[0])), a[2]))), t(n(t(e(o[1], a[0]), e( - a[1], o[0])), i[2]), t(n(t(e(i[1], a[0]), e( - a[1], i[0])), -o[2]), n(t(e(i[1], o[0]), e( - o[1], i[0])), a[2])))),
c = t(t(n(t(e(s[1], a[0]), e( - a[1], s[0])), i[2]), t(n(t(e(i[1], a[0]), e( - a[1], i[0])), -s[2]), n(t(e(i[1], s[0]), e( - s[1], i[0])), a[2]))), t(n(t(e(o[1], s[0]), e( - s[1], o[0])), i[2]), t(n(t(e(i[1], s[0]), e( - s[1], i[0])), -o[2]), n(t(e(i[1], o[0]), e( - o[1], i[0])), s[2])))),
l = r(u, c);
return l[l.length - 1]
}
}
function o(t, e, n, r) {
return function(i, o, s, a, u) {
var c = t(t(t(n(t(n(t(e(a[1], u[0]), e( - u[1], a[0])), s[2]), t(n(t(e(s[1], u[0]), e( - u[1], s[0])), -a[2]), n(t(e(s[1], a[0]), e( - a[1], s[0])), u[2]))), o[3]), t(n(t(n(t(e(a[1], u[0]), e( - u[1], a[0])), o[2]), t(n(t(e(o[1], u[0]), e( - u[1], o[0])), -a[2]), n(t(e(o[1], a[0]), e( - a[1], o[0])), u[2]))), -s[3]), n(t(n(t(e(s[1], u[0]), e( - u[1], s[0])), o[2]), t(n(t(e(o[1], u[0]), e( - u[1], o[0])), -s[2]), n(t(e(o[1], s[0]), e( - s[1], o[0])), u[2]))), a[3]))), t(n(t(n(t(e(s[1], a[0]), e( - a[1], s[0])), o[2]), t(n(t(e(o[1], a[0]), e( - a[1], o[0])), -s[2]), n(t(e(o[1], s[0]), e( - s[1], o[0])), a[2]))), -u[3]), t(n(t(n(t(e(a[1], u[0]), e( - u[1], a[0])), o[2]), t(n(t(e(o[1], u[0]), e( - u[1], o[0])), -a[2]), n(t(e(o[1], a[0]), e( - a[1], o[0])), u[2]))), i[3]), n(t(n(t(e(a[1], u[0]), e( - u[1], a[0])), i[2]), t(n(t(e(i[1], u[0]), e( - u[1], i[0])), -a[2]), n(t(e(i[1], a[0]), e( - a[1], i[0])), u[2]))), -o[3])))), t(t(n(t(n(t(e(o[1], u[0]), e( - u[1], o[0])), i[2]), t(n(t(e(i[1], u[0]), e( - u[1], i[0])), -o[2]), n(t(e(i[1], o[0]), e( - o[1], i[0])), u[2]))), a[3]), t(n(t(n(t(e(o[1], a[0]), e( - a[1], o[0])), i[2]), t(n(t(e(i[1], a[0]), e( - a[1], i[0])), -o[2]), n(t(e(i[1], o[0]), e( - o[1], i[0])), a[2]))), -u[3]), n(t(n(t(e(s[1], a[0]), e( - a[1], s[0])), o[2]), t(n(t(e(o[1], a[0]), e( - a[1], o[0])), -s[2]), n(t(e(o[1], s[0]), e( - s[1], o[0])), a[2]))), i[3]))), t(n(t(n(t(e(s[1], a[0]), e( - a[1], s[0])), i[2]), t(n(t(e(i[1], a[0]), e( - a[1], i[0])), -s[2]), n(t(e(i[1], s[0]), e( - s[1], i[0])), a[2]))), -o[3]), t(n(t(n(t(e(o[1], a[0]), e( - a[1], o[0])), i[2]), t(n(t(e(i[1], a[0]), e( - a[1], i[0])), -o[2]), n(t(e(i[1], o[0]), e( - o[1], i[0])), a[2]))), s[3]), n(t(n(t(e(o[1], s[0]), e( - s[1], o[0])), i[2]), t(n(t(e(i[1], s[0]), e( - s[1], i[0])), -o[2]), n(t(e(i[1], o[0]), e( - o[1], i[0])), s[2]))), -a[3]))))),
l = t(t(t(n(t(n(t(e(a[1], u[0]), e( - u[1], a[0])), s[2]), t(n(t(e(s[1], u[0]), e( - u[1], s[0])), -a[2]), n(t(e(s[1], a[0]), e( - a[1], s[0])), u[2]))), i[3]), n(t(n(t(e(a[1], u[0]), e( - u[1], a[0])), i[2]), t(n(t(e(i[1], u[0]), e( - u[1], i[0])), -a[2]), n(t(e(i[1], a[0]), e( - a[1], i[0])), u[2]))), -s[3])), t(n(t(n(t(e(s[1], u[0]), e( - u[1], s[0])), i[2]), t(n(t(e(i[1], u[0]), e( - u[1], i[0])), -s[2]), n(t(e(i[1], s[0]), e( - s[1], i[0])), u[2]))), a[3]), n(t(n(t(e(s[1], a[0]), e( - a[1], s[0])), i[2]), t(n(t(e(i[1], a[0]), e( - a[1], i[0])), -s[2]), n(t(e(i[1], s[0]), e( - s[1], i[0])), a[2]))), -u[3]))), t(t(n(t(n(t(e(s[1], u[0]), e( - u[1], s[0])), o[2]), t(n(t(e(o[1], u[0]), e( - u[1], o[0])), -s[2]), n(t(e(o[1], s[0]), e( - s[1], o[0])), u[2]))), i[3]), n(t(n(t(e(s[1], u[0]), e( - u[1], s[0])), i[2]), t(n(t(e(i[1], u[0]), e( - u[1], i[0])), -s[2]), n(t(e(i[1], s[0]), e( - s[1], i[0])), u[2]))), -o[3])), t(n(t(n(t(e(o[1], u[0]), e( - u[1], o[0])), i[2]), t(n(t(e(i[1], u[0]), e( - u[1], i[0])), -o[2]), n(t(e(i[1], o[0]), e( - o[1], i[0])), u[2]))), s[3]), n(t(n(t(e(o[1], s[0]), e( - s[1], o[0])), i[2]), t(n(t(e(i[1], s[0]), e( - s[1], i[0])), -o[2]), n(t(e(i[1], o[0]), e( - o[1], i[0])), s[2]))), -u[3])))),
h = r(c, l);
return h[h.length - 1]
}
}
function s(t) {
return (3 === t ? r: 4 === t ? i: o)(l, c, h, f)
}
function a(t) {
var e = y[t.length];
return e || (e = y[t.length] = s(t.length)),
e.apply(void 0, t)
}
function u(t, e, n, r, i, o, s) {
return function(e, n, a, u, c) {
switch (arguments.length) {
case 0:
case 1:
return 0;
case 2:
return r(e, n);
case 3:
return i(e, n, a);
case 4:
return o(e, n, a, u);
case 5:
return s(e, n, a, u, c)
}
for (var l = new Array(arguments.length), h = 0; h < arguments.length; ++h) l[h] = arguments[h];
return t(l)
}
}
var c = n(324),
l = n(454),
h = n(452),
f = n(453),
p = 5,
d = s(3),
g = s(4),
y = [function() {
return 0
},
function() {
return 0
},
function(t, e) {
return e[0] - t[0]
},
function(t, e, n) {
var r, i = (t[1] - n[1]) * (e[0] - n[0]),
o = (t[0] - n[0]) * (e[1] - n[1]),
s = i - o;
if (i > 0) {
if (o <= 0) return s;
r = i + o
} else {
if (! (i < 0)) return s;
if (o >= 0) return s;
r = -(i + o)
}
var a = 3.3306690738754716e-16 * r;
return s >= a || s <= -a ? s: d(t, e, n)
},
function(t, e, n, r) {
var i = t[0] - r[0],
o = e[0] - r[0],
s = n[0] - r[0],
a = t[1] - r[1],
u = e[1] - r[1],
c = n[1] - r[1],
l = t[2] - r[2],
h = e[2] - r[2],
f = n[2] - r[2],
p = o * c,
d = s * u,
y = s * a,
v = i * c,
m = i * u,
_ = o * a,
w = l * (p - d) + h * (y - v) + f * (m - _),
b = (Math.abs(p) + Math.abs(d)) * Math.abs(l) + (Math.abs(y) + Math.abs(v)) * Math.abs(h) + (Math.abs(m) + Math.abs(_)) * Math.abs(f),
x = 7.771561172376103e-16 * b;
return w > x || -w > x ? w: g(t, e, n, r)
}]; !
function() {
for (; y.length <= p;) y.push(s(y.length));
t.exports = u.apply(void 0, [a].concat(y));
for (var e = 0; e <= p; ++e) t.exports[e] = y[e]
} ()
},
function(t, e) {
function n(t, e) {
for (var n = 0; n < t.length; n++) {
var r = t[n],
i = f[r.id];
if (i) {
i.refs++;
for (var o = 0; o < i.parts.length; o++) i.parts[o](r.parts[o]);
for (; o < r.parts.length; o++) i.parts.push(u(r.parts[o], e))
} else {
for (var s = [], o = 0; o < r.parts.length; o++) s.push(u(r.parts[o], e));
f[r.id] = {
id: r.id,
refs: 1,
parts: s
}
}
}
}
function r(t) {
for (var e = [], n = {},
r = 0; r < t.length; r++) {
var i = t[r],
o = i[0],
s = i[1],
a = i[2],
u = i[3],
c = {
css: s,
media: a,
sourceMap: u
};
n[o] ? n[o].parts.push(c) : e.push(n[o] = {
id: o,
parts: [c]
})
}
return e
}
function i(t, e) {
var n = g(),
r = m[m.length - 1];
if ("top" === t.insertAt) r ? r.nextSibling ? n.insertBefore(e, r.nextSibling) : n.appendChild(e) : n.insertBefore(e, n.firstChild),
m.push(e);
else {
if ("bottom" !== t.insertAt) throw new Error("Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.");
n.appendChild(e)
}
}
function o(t) {
t.parentNode.removeChild(t);
var e = m.indexOf(t);
e >= 0 && m.splice(e, 1)
}
function s(t) {
var e = document.createElement("style");
return e.type = "text/css",
i(t, e),
e
}
function a(t) {
var e = document.createElement("link");
return e.rel = "stylesheet",
i(t, e),
e
}
function u(t, e) {
var n, r, i;
if (e.singleton) {
var u = v++;
n = y || (y = s(e)),
r = c.bind(null, n, u, !1),
i = c.bind(null, n, u, !0)
} else t.sourceMap && "function" == typeof URL && "function" == typeof URL.createObjectURL && "function" == typeof URL.revokeObjectURL && "function" == typeof Blob && "function" == typeof btoa ? (n = a(e), r = h.bind(null, n), i = function() {
o(n),
n.href && URL.revokeObjectURL(n.href)
}) : (n = s(e), r = l.bind(null, n), i = function() {
o(n)
});
return r(t),
function(e) {
if (e) {
if (e.css === t.css && e.media === t.media && e.sourceMap === t.sourceMap) return;
r(t = e)
} else i()
}
}
function c(t, e, n, r) {
var i = n ? "": r.css;
if (t.styleSheet) t.styleSheet.cssText = _(e, i);
else {
var o = document.createTextNode(i),
s = t.childNodes;
s[e] && t.removeChild(s[e]),
s.length ? t.insertBefore(o, s[e]) : t.appendChild(o)
}
}
function l(t, e) {
var n = e.css,
r = e.media;
if (r && t.setAttribute("media", r), t.styleSheet) t.styleSheet.cssText = n;
else {
for (; t.firstChild;) t.removeChild(t.firstChild);
t.appendChild(document.createTextNode(n))
}
}
function h(t, e) {
var n = e.css,
r = e.sourceMap;
r && (n += "\n/*# sourceMappingURL=data:application/json;base64," + btoa(unescape(encodeURIComponent(JSON.stringify(r)))) + " */");
var i = new Blob([n], {
type: "text/css"
}),
o = t.href;
t.href = URL.createObjectURL(i),
o && URL.revokeObjectURL(o)
}
var f = {},
p = function(t) {
var e;
return function() {
return void 0 === e && (e = t.apply(this, arguments)),
e
}
},
d = p(function() {
return /msie [6-9]\b/.test(self.navigator.userAgent.toLowerCase())
}),
g = p(function() {
return document.head || document.getElementsByTagName("head")[0]
}),
y = null,
v = 0,
m = [];
t.exports = function(t, e) {
if ("undefined" != typeof DEBUG && DEBUG && "object" != typeof document) throw new Error("The style-loader cannot be used in a non-browser environment");
e = e || {},
void 0 === e.singleton && (e.singleton = d()),
void 0 === e.insertAt && (e.insertAt = "bottom");
var i = r(t);
return n(i, e),
function(t) {
for (var o = [], s = 0; s < i.length; s++) {
var a = i[s],
u = f[a.id];
u.refs--,
o.push(u)
}
if (t) {
n(r(t), e)
}
for (var s = 0; s < o.length; s++) {
var u = o[s];
if (0 === u.refs) {
for (var c = 0; c < u.parts.length; c++) u.parts[c]();
delete f[u.id]
}
}
}
};
var _ = function() {
var t = [];
return function(e, n) {
return t[e] = n,
t.filter(Boolean).join("\n")
}
} ()
},
,
function(t, e, n) {
"use strict";
function r(t) {
var e = t.geometries.map(function(t) {
return t.paths || []
}),
n = new i.PolygonParseHelper({
complexPolygons: e,
IndexType: Uint32Array
});
n.updatePositions({
fp64: !0,
extruded: !0
});
var r = n.getPositions(),
o = n.getIndices(),
a = n.getPositions64xyLow(),
u = n.getVertexValid(),
c = n.getPickingColors(),
l = n.getElevations({
getElevation: function(e) {
var n = t.geometries[e],
r = t.styles[n.styleId];
return r && r.extrudeHeight ? r.extrudeHeight: 0
}
}),
h = n.getColors({
key: "fillColors",
getColor: function(e) {
var n = t.geometries[e],
r = t.styles[n.styleId];
if (r) {
return new s.
default(r.color).toUpArray()
}
return [0, 0, 0, 0]
}
}),
f = n.getColors({
key: "lineColors",
getColor: function(e) {
var n = t.geometries[e],
r = t.styles[n.styleId];
if (r) {
if (r.showBorder) {
var i = new s.
default(r.borderColor);
return "borderWidth" in r ? [0, 0, 0, 0] : i.toUpArray()
}
return [0, 0, 0, 0]
}
return [0, 0, 0, 0]
}
}),
p = r.slice(3),
d = a.slice(2),
g = r.slice(),
y = a.slice();
return g.set(p),
y.set(d),
{
positions: r,
indices: o,
positions64xyLow: a,
vertexValid: u,
pickingColors: c,
elevations: l,
fillColors: h,
lineColors: f,
nextPositions: g,
nextPositions64xyLow: y
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(333),
o = n(227),
s = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (o);
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t, e, n, r) {
n = n || 2;
var o = e && e.length,
a = o ? e[0] * n: t.length,
u = i(t, 0, a, n, !0),
c = [];
if (!u) return c;
var l = void 0,
f = void 0,
p = void 0,
d = void 0,
g = void 0,
y = void 0,
v = void 0;
if (o && (u = h(t, e, u, n)), t.length > 80 * n) {
var m = (0, T.
default)(t, 2);
p = m[0],
d = m[1],
l = p,
f = d;
for (var _ = n; _ < a; _ += n) g = t[_],
y = t[_ + 1],
g < l && (l = g),
y < f && (f = y),
g > p && (p = g),
y > d && (d = y);
v = Math.max(p - l, d - f)
}
return s(u, c, n, l, f, v, void 0, r),
c
}
function i(t, e, n, r, i) {
var o = void 0,
s = void 0;
if (i === A(t, e, n, r) > 0) for (o = e; o < n; o += r) s = N(o, t[o], t[o + 1], s);
else for (o = n - r; o >= e; o -= r) s = N(o, t[o], t[o + 1], s);
return s && x(s, s.next) && (P(s), s = s.next),
s
}
function o(t, e) {
if (!t) return t;
e || (e = t);
var n = t,
r = void 0;
do {
if (r = !1, n.steiner || !x(n, n.next) && 0 !== b(n.prev, n, n.next)) n = n.next;
else {
if (P(n), e = n.prev, (n = e) === n.next) return null;
r = !0
}
} while ( r || n !== e );
return e
}
function s(t, e, n, r, i, h, f, p) {
if (p = p || 0, t) { ! f && h && g(t, r, i, h);
for (var d = t,
y = void 0,
v = void 0; t.prev !== t.next;) if (y = t.prev, v = t.next, h ? u(t, r, i, h) : a(t)) e.push(y.i / n + p),
e.push(t.i / n + p),
e.push(v.i / n + p),
P(t),
t = v.next,
d = v.next;
else if ((t = v) === d) {
f ? 1 === f ? (t = c(t, e, n, p), s(t, e, n, r, i, h, 2, p)) : 2 === f && l(t, e, n, r, i, h, p) : s(o(t), e, n, r, i, h, 1, p);
break
}
}
}
function a(t) {
var e = t.prev,
n = t,
r = t.next;
if (b(e, n, r) >= 0) return ! 1;
for (var i = t.next.next; i !== t.prev;) {
if (_(e.x, e.y, n.x, n.y, r.x, r.y, i.x, i.y) && b(i.prev, i, i.next) >= 0) return ! 1;
i = i.next
}
return ! 0
}
function u(t, e, n, r) {
var i = t.prev,
o = t,
s = t.next;
if (b(i, o, s) >= 0) return ! 1;
for (var a = i.x < o.x ? i.x < s.x ? i.x: s.x: o.x < s.x ? o.x: s.x, u = i.y < o.y ? i.y < s.y ? i.y: s.y: o.y < s.y ? o.y: s.y, c = i.x > o.x ? i.x > s.x ? i.x: s.x: o.x > s.x ? o.x: s.x, l = i.y > o.y ? i.y > s.y ? i.y: s.y: o.y > s.y ? o.y: s.y, h = v(a, u, e, n, r), f = v(c, l, e, n, r), p = t.nextZ; p && p.z <= f;) {
if (p !== t.prev && p !== t.next && _(i.x, i.y, o.x, o.y, s.x, s.y, p.x, p.y) && b(p.prev, p, p.next) >= 0) return ! 1;
p = p.nextZ
}
for (p = t.prevZ; p && p.z >= h;) {
if (p !== t.prev && p !== t.next && _(i.x, i.y, o.x, o.y, s.x, s.y, p.x, p.y) && b(p.prev, p, p.next) >= 0) return ! 1;
p = p.prevZ
}
return ! 0
}
function c(t, e, n, r) {
var i = t;
do {
var o = i.prev,
s = i.next.next; ! x(o, s) && E(o, i, i.next, s) && I(o, s) && I(s, o) && (e.push(o.i / n + r), e.push(i.i / n + r), e.push(s.i / n + r), P(i), P(i.next), t = s, i = t), i = i.next
} while ( i !== t );
return i
}
function l(t, e, n, r, i, a, u) {
var c = t;
do {
for (var l = c.next.next; l !== c.prev;) {
if (c.i !== l.i && w(c, l)) {
var h = C(c, l);
return c = o(c, c.next),
h = o(h, h.next),
s(c, e, n, r, i, a, void 0, u),
void s(h, e, n, r, i, a, void 0, u)
}
l = l.next
}
c = c.next
} while ( c !== t )
}
function h(t, e, n, r) {
var s = [],
a = void 0,
u = void 0,
c = void 0,
l = void 0,
h = void 0;
for (a = 0, u = e.length; a < u; a++) c = e[a] * r,
l = a < u - 1 ? e[a + 1] * r: t.length,
h = i(t, c, l, r, !1),
h === h.next && (h.steiner = !0),
s.push(m(h));
for (s.sort(f), a = 0; a < s.length; a++) p(s[a], n),
n = o(n, n.next);
return n
}
function f(t, e) {
return t.x - e.x
}
function p(t, e) {
if (e = d(t, e)) {
var n = C(e, t);
o(n, n.next)
}
}
function d(t, e) {
var n = e,
r = t.x,
i = t.y,
o = -1 / 0,
s = void 0;
do {
if (i <= n.y && i >= n.next.y && n.next.y !== n.y) {
var a = n.x + (i - n.y) * (n.next.x - n.x) / (n.next.y - n.y);
if (a <= r && a > o) {
if (o = a, a === r) {
if (i === n.y) return n;
if (i === n.next.y) return n.next
}
s = n.x < n.next.x ? n: n.next
}
}
n = n.next
} while ( n !== e );
if (!s) return null;
if (r === o) return s.prev;
var u = s,
c = s.x,
l = s.y,
h = 1 / 0,
f = void 0;
for (n = s.next; n !== u;) r >= n.x && n.x >= c && r !== n.x && _(i < l ? r: o, i, c, l, i < l ? o: r, i, n.x, n.y) && ((f = Math.abs(i - n.y) / (r - n.x)) < h || f === h && n.x > s.x) && I(n, t) && (s = n, h = f),
n = n.next;
return s
}
function g(t, e, n, r) {
var i = t;
do {
null === i.z && (i.z = v(i.x, i.y, e, n, r)), i.prevZ = i.prev, i.nextZ = i.next, i = i.next
} while ( i !== t );
i.prevZ.nextZ = null,
i.prevZ = null,
y(i)
}
function y(t) {
var e = void 0,
n = void 0,
r = void 0,
i = void 0,
o = void 0,
s = void 0,
a = void 0,
u = void 0,
c = 1;
do {
for (n = t, t = null, o = null, s = 0; n;) {
for (s += 1, r = n, a = 0, e = 0; e < c && (a += 1, r = r.nextZ); e++);
for (u = c; a > 0 || u > 0 && r;) 0 !== a && (0 === u || !r || n.z <= r.z) ? (i = n, n = n.nextZ, a -= 1) : (i = r, r = r.nextZ, u -= 1),
o ? o.nextZ = i: t = i,
i.prevZ = o,
o = i;
n = r
}
o && (o.nextZ = null), c *= 2
} while ( s > 1 );
return t
}
function v(t, e, n, r, i) {
return t = 32767 * (t - n) / i,
e = 32767 * (e - r) / i,
t = 16711935 & (t | t << 8),
t = 252645135 & (t | t << 4),
t = 858993459 & (t | t << 2),
t = 1431655765 & (t | t << 1),
e = 16711935 & (e | e << 8),
e = 252645135 & (e | e << 4),
e = 858993459 & (e | e << 2),
e = 1431655765 & (e | e << 1),
t | e << 1
}
function m(t) {
var e = t,
n = t;
do {
e.x < n.x && (n = e), e = e.next
} while ( e !== t );
return n
}
function _(t, e, n, r, i, o, s, a) {
return (i - s) * (e - a) - (t - s) * (o - a) >= 0 && (t - s) * (r - a) - (n - s) * (e - a) >= 0 && (n - s) * (o - a) - (i - s) * (r - a) >= 0
}
function w(t, e) {
return t.next.i !== e.i && t.prev.i !== e.i && !M(t, e) && I(t, e) && I(e, t) && S(t, e)
}
function b(t, e, n) {
return (e.y - t.y) * (n.x - e.x) - (e.x - t.x) * (n.y - e.y)
}
function x(t, e) {
return t.x === e.x && t.y === e.y
}
function E(t, e, n, r) {
return !! (x(t, e) && x(n, r) || x(t, r) && x(n, e)) || b(t, e, n) > 0 != b(t, e, r) > 0 && b(n, r, t) > 0 != b(n, r, e) > 0
}
function M(t, e) {
var n = t;
do {
if (n.i !== t.i && n.next.i !== t.i && n.i !== e.i && n.next.i !== e.i && E(n, n.next, t, e)) return ! 0;
n = n.next
} while ( n !== t );
return ! 1
}
function I(t, e) {
return b(t.prev, t, t.next) < 0 ? b(t, e, t.next) >= 0 && b(t, t.prev, e) >= 0 : b(t, e, t.prev) < 0 || b(t, t.next, e) < 0
}
function S(t, e) {
var n = t,
r = !1,
i = (t.x + e.x) / 2,
o = (t.y + e.y) / 2;
do {
n.y > o != n.next.y > o && n.next.y !== n.y && i < (n.next.x - n.x) * (o - n.y) / (n.next.y - n.y) + n.x && (r = !r), n = n.next
} while ( n !== t );
return r
}
function C(t, e) {
var n = new L(t.i, t.x, t.y),
r = new L(e.i, e.x, e.y),
i = t.next,
o = e.prev;
return t.next = e,
e.prev = t,
n.next = i,
i.prev = n,
r.next = n,
n.prev = r,
o.next = r,
r.prev = o,
r
}
function N(t, e, n, r) {
var i = new L(t, e, n);
return r ? (i.next = r.next, i.prev = r, r.next.prev = i, r.next = i) : (i.prev = i, i.next = i),
i
}
function P(t) {
t.next.prev = t.prev,
t.prev.next = t.next,
t.prevZ && (t.prevZ.nextZ = t.nextZ),
t.nextZ && (t.nextZ.prevZ = t.prevZ)
}
function L(t, e, n) {
this.i = t,
this.x = e,
this.y = n,
this.prev = null,
this.next = null,
this.z = null,
this.prevZ = null,
this.nextZ = null,
this.steiner = !1
}
function A(t, e, n, r) {
for (var i = 0,
o = e,
s = n - r; o < n; o += r) i += (t[s] - t[o]) * (t[o + 1] + t[s + 1]),
s = o;
return i
}
var O = n(32),
T = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (O);
t.exports = r,
r.deviation = function(t, e, n, r) {
var i = e && e.length,
o = i ? e[0] * n: t.length,
s = Math.abs(A(t, 0, o, n));
if (i) for (var a = 0,
u = e.length; a < u; a++) {
var c = e[a] * n,
l = a < u - 1 ? e[a + 1] * n: t.length;
s -= Math.abs(A(t, c, l, n))
}
for (var h = 0,
f = 0; f < r.length; f += 3) {
var p = r[f] * n,
d = r[f + 1] * n,
g = r[f + 2] * n;
h += Math.abs((t[p] - t[g]) * (t[d + 1] - t[p + 1]) - (t[p] - t[d]) * (t[g + 1] - t[p + 1]))
}
return 0 === s && 0 === h ? 0 : Math.abs((h - s) / s)
},
r.flatten = function(t) {
for (var e = t[0][0].length, n = {
vertices: [],
holes: [],
dimensions: e
},
r = 0, i = 0; i < t.length; i++) {
for (var o = 0; o < t[i].length; o++) for (var s = 0; s < e; s++) n.vertices.push(t[i][o][s]);
i > 0 && (r += t[i - 1].length, n.holes.push(r))
}
return n
}
},
function(t, e, n) {
"use strict";
function r(t) {
return "[object Array]" === Object.prototype.toString.call(t)
}
function i(t) {
return t instanceof v || t instanceof _
}
function o(t, e) {
return e.flat(1 / 0).map(function(e) {
return t.projectToContainer(e)
})
}
function s(t) {
return i(t[0]) ? [t] : t.reduce(function(t, e) {
return t.concat(s(e))
},
[])
}
function a(t) {
return i(t[0]) ? w.SIMPLE: r(t[0]) && i(t[0][0]) ? w.HOLEY: w.COMBINED
}
function u(t) {
return a(t) === w.SIMPLE
}
function c(t) {
return a(t) === w.HOLEY
}
function l(t) {
return a(t) === w.COMBINED
}
function h(t) {
return i(t[0]) ? b.SIMPLE: b.COMBINED
}
function f(t) {
return h(t) === b.SIMPLE
}
function p(t) {
return h(t) === b.COMBINED
}
function d(t) {
var e = void 0,
n = void 0,
r = t.length;
if (r < 3) return ! 1;
t.forEach(function(t, r) { (!e || t.x > e.x || t.x === e.x && t.y >= e.y) && (e = t, n = r)
});
var i = n > 0 ? t[n - 1] : t[r - 1],
o = n < r - 1 ? t[n + 1] : t[0];
return ! ((e.x - i.x) * (o.y - e.y) - (o.x - e.x) * (e.y - i.y) < 0)
}
function g(t, e) {
return i(e) ? t.projectToContainer(e) : e.map(function(e) {
return g(t, e)
})
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.getPathPixelPoints = o,
e.flatPaths = s,
e.getPolygonType = a,
e.isSimplePolygon = u,
e.isHoleyPolygon = c,
e.isCombinedPolygon = l,
e.getPolylineType = h,
e.isSimplePolyline = f,
e.isCombinedPolyline = p,
e.isClockwise = d,
e.projectPath = g;
var y = TMap,
v = y.LatLng,
m = TMap,
_ = m.Point,
w = {
SIMPLE: "simple",
HOLEY: "complex",
COMBINED: "part"
},
b = {
SIMPLE: "simple",
COMBINED: "part"
}
},
, ,
function(t, e, n) {
"use strict";
e.__esModule = !0;
var r = n(25),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = function(t) {
return function() {
var e = t.apply(this, arguments);
return new i.
default(function(t, n) {
function r(o, s) {
try {
var a = e[o](s),
u = a.value
} catch(t) {
return void n(t)
}
if (!a.done) return i.
default.resolve(u).then(function(t) {
r("next", t)
},
function(t) {
r("throw", t)
});
t(u)
}
return r("next")
})
}
}
},
function(t, e, n) {
t.exports = n(402)
},
, , , , , , , , , , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
var r = n(247),
i = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (r);
e.
default = i.
default[0]
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e) {
return Math.sqrt(t * t + e * e)
}
function o(t, e) {
var n = t.pageX,
r = t.pageY;
if (t.touches) {
var i = t.touches[e || 0];
n = i.pageX,
r = i.pageY
}
return {
x: n,
y: r
}
}
function s(t) {
return t
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Finger = void 0;
var a = n(24),
u = r(a),
c = n(17),
l = r(c),
h = n(3),
f = r(h),
p = n(0),
d = r(p),
g = n(1),
y = r(g),
v = n(5),
m = r(v),
_ = n(4),
w = r(_),
b = n(28),
x = n(120),
E = {
start: ["mousedown", "touchstart"],
move: ["mousemove", "touchmove"],
end: ["mouseup", "touchend"],
cancel: ["", "touchcancel"],
leave: ["mouseleave", ""]
},
M = 0,
I = (e.Finger = function(t) {
function e(t) {
var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; (0, d.
default)(this, e);
var r = (0, m.
default)(this, (e.__proto__ || (0, f.
default)(e)).call(this));
if (!t) throw new Error("element is invalid");
return r.options = n,
r.identifier = "Finger__" + M,
M += 1,
r.touched = !1,
r.panning = !1,
r.element = t,
r.element.__Finger__identifier = r.identifier,
r.handlers = [],
r.isDoubleTap = !1,
r.y1 = null,
r.x1 = r.y1,
r.y2 = null,
r.x2 = r.y2,
r.deltaTime = null,
r.lastStartTime = null,
r.panSpeedStartTime = null,
r.panSpeedStartPos = null,
r.now = null,
r.tapTimeout = null,
r.holdTimeout = null,
r.swipeTimeout = null,
r.startVector = null,
r.startDistance = null,
r.init(),
r
}
return (0, w.
default)(e, t),
(0, y.
default)(e, [{
key: "init",
value: function() {
var t = this,
e = "ontouchstart" in document ? 1 : 0,
n = (0, l.
default)(E).forEach(function(n) {
if (E[n][e]) {
if ("leave" === n) return void(0, b.on)(t.element, E[n][e], I.end, t); (0, b.on)(t.element, E[n][e], I[n], t)
}
});
this.handlers.concat(n)
}
},
{
key: "destroy",
value: function() {
clearTimeout(this.tapTimeout),
clearTimeout(this.holdTimeout),
clearTimeout(this.swipeTimeout),
this.removeAllListeners("touch-start"),
this.removeAllListeners("multi-touch-start"),
this.removeAllListeners("hold"),
this.removeAllListeners("pinch"),
this.removeAllListeners("rotate"),
this.removeAllListeners("pan-start"),
this.removeAllListeners("pan"),
this.removeAllListeners("pan-end"),
this.removeAllListeners("swipe"),
this.removeAllListeners("tap"),
this.removeAllListeners("doubletap"),
this.removeAllListeners("touch-end"),
this.removeAllListeners("multi-touch-end"),
this.removeAllListeners("touch-cancel"),
this.identifier = null,
delete this.element.__Finger__identifier,
this.handlers.forEach(function(t) {
t && t.remove && t.remove()
}),
this.touched = !1,
this.handlers = [],
this.isDoubleTap = !1,
this.y1 = null,
this.x1 = this.y1,
this.y2 = null,
this.x2 = this.y2,
this.deltaTime = null,
this.lastStartTime = null,
this.now = null,
this.tapTimeout = null,
this.holdTimeout = null,
this.swipeTimeout = null,
this.startVector = null,
this.startDistance = null
}
}]),
e
} (x), {
start: function(t) {
var e = this;
if (t && t.target) {
this.touched = !0,
this.now = Date.now(),
this.deltaTime = this.now - (this.lastStartTime || this.now);
var n = o(t);
"number" == typeof this.x1 && "number" == typeof this.y1 && (this.isDoubleTap = this.deltaTime < 300 && Math.abs(n.x - this.x1) < 10 && Math.abs(n.y - this.y1) < 10),
this.x1 = n.x,
this.y1 = n.y;
var r = s(t);
if (this.emit("touch-start", r), t.touches && t.touches.length > 1) {
var a = o(t, 0),
c = o(t, 1);
this.startVector = [c.x - a.x, c.y - a.y],
this.startDistance = i.apply(void 0, (0, u.
default)(this.startVector)),
r.vector = this.startVector,
r.vectorDistance = this.startDistance,
clearTimeout(this.holdTimeout),
this.emit("multi-touch-start", r)
}
this.lastStartTime = this.now,
this.holdTimeout = setTimeout(function() {
e.emit("hold", r)
},
750),
this.options.stopPropagation && t.stopPropagation()
}
},
move: function(t) {
if (t && t.target && this.touched) {
var e = o(t),
n = s(t);
if (this.isDoubleTap = !1, clearTimeout(this.holdTimeout), null !== this.x2 ? (n.deltaX = e.x - this.x2, n.deltaY = e.y - this.y2) : (n.deltaX = 0, n.deltaY = 0), t.touches && t.touches.length > 1 && this.startVector && null !== this.startVector.x) {
var r = o(t, 0),
a = o(t, 1),
u = [a.x - r.x, a.y - r.y],
c = i.apply(void 0, u),
l = c / this.startDistance,
h = Math.acos((this.startVector[0] * u[0] + this.startVector[1] * u[1]) / (c * this.startDistance));
h = u[0] * this.startVector[1] - this.startVector[0] * u[1] >= 0 ? h: -h,
Math.abs(l - 1) > .01 && (n.scale = l, this.emit("pinch", n)),
0 !== h && (n.angle = h, this.emit("rotate", n)),
t.preventDefault()
} else if (this.touched && (0 !== n.deltaY || 0 !== n.deltaX)) if (this.panning) {
this.emit("pan", n);
var f = Date.now();
f - this.panSpeedStartTime > 300 && (this.panSpeedStartTime = f, this.panSpeedStartPos = e)
} else this.emit("pan-start", n),
this.panning = !0,
this.panSpeedStartTime = Date.now(),
this.panSpeedStartPos = e;
this.options.preventDefaultMove && t.preventDefault(),
this.x2 = e.x,
this.y2 = e.y,
this.options.stopPropagation && t.stopPropagation()
}
},
end: function(t) {
var e = this;
if (t && t.target) {
clearTimeout(this.holdTimeout),
this.now = Date.now();
var n = this.x2 - this.x1,
r = this.y2 - this.y1,
i = null === this.x2 || Math.abs(n) < 10 && Math.abs(r) < 10,
o = this.now - this.lastStartTime < 200 && i,
a = s(t);
if (null !== this.x2 && null !== this.y2 && this.panning) {
var u = Math.abs(n) > Math.abs(r) ? n > 0 ? "RIGHT": "LEFT": r > 0 ? "DOWN": "TOP",
c = 0,
l = 0;
if (this.now - this.panSpeedStartTime < 300) {
var h = this.x2 - this.panSpeedStartPos.x,
f = this.y2 - this.panSpeedStartPos.y,
p = this.now - this.panSpeedStartTime;
l = h / p,
c = f / p
}
a.swipeDirection = u,
a.speedX = l,
a.speedY = c,
a.deltaX = n,
a.deltaY = r,
this.panning && (this.emit("pan-end", a), this.panning = !1),
this.swipeTimeout = setTimeout(function() {
e.emit("swipe", a)
})
} else i && o && (this.tapTimeout = setTimeout(function() {
e.emit("tap", a),
e.isDoubleTap && (e.emit("doubletap", a), e.isDoubleTap = !1)
},
0));
this.emit("touch-end", a),
t.touches && t.touches.length > 0 && t.touches.length < 2 && this.emit("multi-touch-end", a),
this.startDistance = null,
this.startVector = [0, 0],
this.y2 = null,
this.x2 = this.y2,
this.touched = !1,
this.options.preventDefaultEnd && t.preventDefault(),
this.options.stopPropagation && t.stopPropagation()
}
},
cancel: function(t) {
clearTimeout(this.tapTimeout),
clearTimeout(this.holdTimeout),
clearTimeout(this.swipeTimeout),
this.touched = !1,
this.emit("touch-cancel", t)
}
})
},
function(t, e, n) {
"use strict";
function r(t) {
var e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},
n = o(t, e);
return (0, i.toDom)(n)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.Template = void 0,
e.templeteToDom = r;
var i = n(210),
o = e.Template = function() {
var t = {},
e = function(t) {
return String(t).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;").replace(/[ ]/g, "&nbsp;")
};
return function(n, r) {
if ("string" == typeof n) {
var i = t[n];
if (!t[n]) {
var o = n.replace(/<%\s*([^=][^%>]*)\s*%>/g,
function() {
return "';" + arguments[1] + " tmp+='"
}).replace(/<%=\s*([^%>]+)\s*%>/g,
function() {
return "' + strip(" + arguments[1] + ") +'"
}).replace(/<%=\s*([^%>]+)\s*%>/g,
function() {
return "' + " + arguments[1] + "+ '"
});
o = 'var tmp = ""; with(obj){ tmp = \'' + o + "'; } return tmp;",
i = new Function("obj", "strip", o),
t[n] = i
}
return i(r, e)
}
}
} ()
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
return t.length >= 3 && (0, E.
default)(t[0].lat) && (0, E.
default)(t[0].lng)
}
function o(t) {
return t.length >= 1 && t.every(function(t) {
return t.length >= 3 && i(t)
})
}
function s(t) {
return t.length >= 1 && t.every(function(t) {
return o(t)
})
}
function a(t) {
var e = t[0],
n = t[t.length - 1];
return e.lat === n.lat && e.lng === n.lng ? t: t.concat([e])
}
function u(t) {
for (var e = 0,
n = 1,
r = void 0,
i = void 0; n < t.length;) r = i || t[0],
i = t[n],
e += (i.lng - r.lng) * (i.lat + r.lat),
n += 1;
return e > 0
}
function c(t) {
return (i(t) ? [[a(t)]] : o(t) ? [t.map(function(t) {
return a(t)
})] : t.map(function(t) {
return t.map(a)
})).map(function(t) {
return t.map(function(t, e) {
var n = [];
return t.forEach(function(t) {
if (n.length > 0) {
var e = n[n.length - 1];
t.lat === e.lat && t.lng === e.lng || n.push(t)
} else n.push(t)
}),
0 === e ? u(n) ? n.reverse() : n: u(n) ? n: n.reverse()
})
})
}
function l(t) {
return c(t).reduce(function(t, e) {
var n = e.reduce(function(t, e) {
return t.push(e),
t
},
[]);
return t.push.apply(t, (0, b.
default)(n)),
t
},
[])
}
function h(t) {
return i(t) ? t.length: t.reduce(function(t, e) {
return t + e.reduce(function(t, e) {
return t + e.length
},
0)
},
0)
}
function f(t) {
return t.reduce(function(t, e) {
return t + p(e)
},
0)
}
function p(t) {
var e = 0,
n = !0,
r = !0,
i = !1,
o = void 0;
try {
for (var s, a = (0, _.
default)(t); ! (r = (s = a.next()).done); r = !0) {
var u = s.value,
c = u.length;
e += n ? c >= 3 ? c - 3 : 0 : c + 1,
n = !1
}
} catch(t) {
i = !0,
o = t
} finally {
try { ! r && a.
return && a.
return ()
} finally {
if (i) throw o
}
}
return e
}
function d(t) {
var e = null;
if (t.length > 1) {
var n = 0;
e = [],
t.forEach(function(t) {
n += t.length,
e.push(n)
}),
e.pop()
}
return e
}
function g(t, e) {
var n = 3 * f(t),
r = v(t),
i = new e(n),
o = 0;
return t.forEach(function(t, e) {
var n = y(t),
s = !0,
a = !1,
u = void 0;
try {
for (var c, l = (0, _.
default)(n); ! (s = (c = l.next()).done); s = !0) {
var h = c.value;
i[o] = h + r[e],
o += 1
}
} catch(t) {
a = !0,
u = t
} finally {
try { ! s && l.
return && l.
return ()
} finally {
if (a) throw u
}
}
}),
i
}
function y(t) {
var e = d(t),
n = N(t, {
dimensions: 2,
result: []
});
return (0, C.
default)(n, e, 2)
}
function v(t) {
var e = new Array(t.length + 1);
e[0] = 0;
var n = 0;
return t.forEach(function(t, r) {
n += t.reduce(function(t, e) {
return t + e.length
},
0),
e[r + 1] = n
}),
e
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var m = n(27),
_ = r(m),
w = n(24),
b = r(w),
x = n(343),
E = r(x);
e.isSimple = i,
e.isPart = o,
e.isComplex = s,
e.isClockWise = u,
e.normalize = c,
e.getBorderPolyline = l,
e.getVertexCount = h,
e.getTriangleCount = f,
e.getTriangleCountOfPart = p,
e.getSurfaceIndices = g;
var M = n(237),
I = r(M),
S = n(278),
C = r(S),
N = I.
default.flattenVertices
},
, , , , , , , ,
function(t, e, n) {
n(73),
n(33),
n(39),
n(314),
n(318),
n(317),
n(316),
t.exports = n(2).Map
},
,
function(t, e, n) {
n(319),
t.exports = n(2).Object.values
},
function(t, e, n) {
var r = n(71);
t.exports = function(t, e) {
var n = [];
return r(t, !1, n.push, n, e),
n
}
},
function(t, e, n) {
var r = n(7),
i = n(117),
o = n(9)("species");
t.exports = function(t) {
var e;
return i(t) && (e = t.constructor, "function" != typeof e || e !== Array && !i(e.prototype) || (e = void 0), r(e) && null === (e = e[o]) && (e = void 0)),
void 0 === e ? Array: e
}
},
function(t, e, n) {
var r = n(311);
t.exports = function(t, e) {
return new(r(t))(e)
}
},
function(t, e) {
t.exports = Math.sign ||
function(t) {
return 0 == (t = +t) || t != t ? t: t < 0 ? -1 : 1
}
},
function(t, e, n) {
"use strict";
var r = n(260),
i = n(183);
t.exports = n(250)("Map",
function(t) {
return function() {
return t(this, arguments.length > 0 ? arguments[0] : void 0)
}
},
{
get: function(t) {
var e = r.getEntry(i(this, "Map"), t);
return e && e.v
},
set: function(t, e) {
return r.def(i(this, "Map"), 0 === t ? 0 : t, e)
}
},
r, !0)
},
,
function(t, e, n) {
n(251)("Map")
},
function(t, e, n) {
n(252)("Map")
},
function(t, e, n) {
var r = n(6);
r(r.P + r.R, "Map", {
toJSON: n(261)("Map")
})
},
function(t, e, n) {
var r = n(6),
i = n(118)(!1);
r(r.S, "Object", {
values: function(t) {
return i(t)
}
})
},
, , , ,
function(t, e, n) {
"use strict";
function r(t, e, n) {
var r = t * e,
o = i * t,
s = o - t,
a = o - s,
u = t - a,
c = i * e,
l = c - e,
h = c - l,
f = e - h,
p = r - a * h,
d = p - u * h,
g = d - a * f,
y = u * f - g;
return n ? (n[0] = y, n[1] = r, n) : [y, r]
}
t.exports = r;
var i = +(Math.pow(2, 27) + 1)
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e) {
var n = ["fill:none", "stroke-linecap:" + x[e.lineCap], "stroke-linejoin:" + e.lineJoin];
e.dash && n.push("stroke-dasharray:" + e.dash.join(","));
var r = document.createElementNS(t, "g");
if (r.setAttribute("style", n.join(";")), e.borderWidth) {
var i = ["stroke:" + e.borderColor, "stroke-width:" + (2 * e.borderWidth + e.width)],
o = document.createElementNS(t, "path");
o.setAttribute("style", i.join(";")),
r.appendChild(o)
}
if (e.width) {
var s = ["stroke:" + e.color, "stroke-width:" + e.width],
a = document.createElementNS(t, "path");
a.setAttribute("style", s.join(";")),
r.appendChild(a)
}
return r
}
function o(t) {
return t.map(function(t, e) {
return (e ? "L": "M") + t.x + "," + t.y
}).join(" ")
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(16),
a = r(s),
u = n(3),
c = r(u),
l = n(0),
h = r(l),
f = n(1),
p = r(f),
d = n(5),
g = r(d),
y = n(4),
v = r(y),
m = n(389),
_ = r(m),
w = n(279),
b = {
color: "#3777FF",
width: 3,
borderWidth: 0,
borderColor: "#3777FF",
lineCap: 0,
lineJoin: "round",
dash: null
},
x = {
0 : "butt",
1 : "square",
2 : "round"
},
E = function(t) {
function e(t) {
return (0, h.
default)(this, e),
(0, g.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t))
}
return (0, v.
default)(e, t),
(0, p.
default)(e, [{
key: "setStyle",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.style = (0, a.
default)({},
b, t)
}
},
{
key: "_createShape",
value: function() {
return i(this._ns, this.style)
}
},
{
key: "_updatePoints",
value: function() {
var t = this.path,
e = this.map,
n = "",
r = [];
return (0, w.isSimplePolyline)(t) ? (r = (0, w.getPathPixelPoints)(e, t), n = o(r)) : n = t.map(function(t) {
var n = (0, w.getPathPixelPoints)(e, t);
return r = r.concat(n),
o(n)
}).join(" "),
this._shape.childNodes.forEach(function(t) {
t.setAttribute("d", n)
}),
r
}
}]),
e
} (_.
default);
e.
default = E
},
,
function(t, e, n) {
"use strict";
function r(t, e, r) {
if (r = r || {},
!n.i(o.isObject)(r)) throw new Error("options is invalid");
var s = r.units,
a = n.i(i.getCoord)(t),
u = n.i(i.getCoord)(e),
c = n.i(o.degreesToRadians)(u[1] - a[1]),
l = n.i(o.degreesToRadians)(u[0] - a[0]),
h = n.i(o.degreesToRadians)(a[1]),
f = n.i(o.degreesToRadians)(u[1]),
p = Math.pow(Math.sin(c / 2), 2) + Math.pow(Math.sin(l / 2), 2) * Math.cos(h) * Math.cos(f);
return n.i(o.radiansToLength)(2 * Math.atan2(Math.sqrt(p), Math.sqrt(1 - p)), s)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(109),
o = n(48);
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t, e) {
var r = {},
l = [];
if ("LineString" === t.type && (t = n.i(c.feature)(t)), "LineString" === e.type && (e = n.i(c.feature)(e)), "Feature" === t.type && "Feature" === e.type && "LineString" === t.geometry.type && "LineString" === e.geometry.type && 2 === t.geometry.coordinates.length && 2 === e.geometry.coordinates.length) {
var h = i(t, e);
return h && l.push(h),
n.i(c.featureCollection)(l)
}
var f = n.i(o.
default)();
return f.load(n.i(s.
default)(e)),
n.i(u.featureEach)(n.i(s.
default)(t),
function(t) {
n.i(u.featureEach)(f.search(t),
function(e) {
var o = i(t, e);
if (o) {
var s = n.i(a.getCoords)(o).join(",");
r[s] || (r[s] = !0, l.push(o))
}
})
}),
n.i(c.featureCollection)(l)
}
function i(t, e) {
var r = n.i(a.getCoords)(t),
i = n.i(a.getCoords)(e);
if (2 !== r.length) throw new Error("<intersects> line1 must only contain 2 coordinates");
if (2 !== i.length) throw new Error("<intersects> line2 must only contain 2 coordinates");
var o = r[0][0],
s = r[0][1],
u = r[1][0],
l = r[1][1],
h = i[0][0],
f = i[0][1],
p = i[1][0],
d = i[1][1],
g = (d - f) * (u - o) - (p - h) * (l - s),
y = (p - h) * (s - f) - (d - f) * (o - h),
v = (u - o) * (s - f) - (l - s) * (o - h);
if (0 === g) return null;
var m = y / g,
_ = v / g;
if (m >= 0 && m <= 1 && _ >= 0 && _ <= 1) {
var w = o + m * (u - o),
b = s + m * (l - s);
return n.i(c.point)([w, b])
}
return null
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(357),
s = n(329),
a = n(109),
u = n(121),
c = n(48);
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t) {
if (!t) throw new Error("geojson is required");
var e = [];
return n.i(c.flattenEach)(t,
function(t) {
i(t, e)
}),
n.i(a.featureCollection)(e)
}
function i(t, e) {
var r = [],
i = t.geometry;
switch (i.type) {
case "Polygon":
r = n.i(u.getCoords)(i);
break;
case "LineString":
r = [n.i(u.getCoords)(i)]
}
r.forEach(function(n) {
o(n, t.properties).forEach(function(t) {
t.id = e.length,
e.push(t)
})
})
}
function o(t, e) {
var r = [];
return t.reduce(function(t, i) {
var o = n.i(a.lineString)([t, i], e);
return o.bbox = s(t, i),
r.push(o),
i
}),
r
}
function s(t, e) {
var n = t[0],
r = t[1],
i = e[0],
o = e[1];
return [n < i ? n: i, r < o ? r: o, n > i ? n: i, r > o ? r: o]
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(48),
u = n(109),
c = n(121);
e.
default = r
},
,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
var e = t.getSouthWest(),
n = t.getNorthEast(),
r = t.getSouthEast();
return [n, t.getNorthWest(), e, r]
}
function o(t, e, n) {
var r = (0, c.latLngToMercator)(t);
return [new h.
default(e / 2, n / 2), new h.
default(e / 2, -n / 2), new h.
default( - e / 2, -n / 2), new h.
default( - e / 2, n / 2)].map(function(t) {
return t.x = r.x + t.x,
t.y = r.y + t.y,
(0, c.mercatorToLatLng)(t)
})
}
function s(t) {
return (0, u.
default)(t)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.getBoundsPath = i,
e.getRectanglePath = o;
var a = n(277),
u = r(a),
c = n(112),
l = n(74),
h = r(l);
e.
default = s
},
,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
return t.reduce(function(t, e) {
return t + _.getVertexCount(e)
},
0)
}
function o(t) {
return t.reduce(function(t, e) {
return t + _.getTriangleCount(e)
},
0)
}
function s(t) {
var e = new Array(t.length + 1);
e[0] = 0;
var n = 0;
return t.forEach(function(t, r) {
n += _.getVertexCount(t),
e[r + 1] = n
}),
e
}
function a(t) {
var e = t.complexPolygons,
n = t.IndexType,
r = void 0 === n ? Uint32Array: n,
i = 3 * o(e),
a = s(e),
u = new r(i),
c = 0;
return e.forEach(function(t, e) {
var n = _.getSurfaceIndices(t, r),
i = !0,
o = !1,
s = void 0;
try {
for (var l, h = (0, p.
default)(n); ! (i = (l = h.next()).done); i = !0) {
var f = l.value;
u[c] = f + a[e],
c += 1
}
} catch(t) {
o = !0,
s = t
} finally {
try { ! i && h.
return && h.
return ()
} finally {
if (o) throw s
}
}
}),
u
}
function u(t) {
var e = t.cache,
n = e.positions,
r = e.positions64xyLow,
i = e.vertexValid,
o = t.complexPolygons,
s = t.fp64,
a = 0;
o.forEach(function(t) {
t.forEach(function(t) {
t.forEach(function(t) {
t.forEach(function(t) {
var e = t.lng,
i = t.lat,
o = t.z || 0;
n[3 * a] = e,
n[3 * a + 1] = i,
n[3 * a + 2] = o,
s && (r[2 * a] = (0, x.fp64LowPart)(e), r[2 * a + 1] = (0, x.fp64LowPart)(i)),
a += 1
}),
i[a - 1] = 0
})
})
})
}
function c(t) {
var e = t.cache,
n = t.complexPolygons,
r = t.pointCount,
i = t.getElevation,
o = e || new Float32Array(r),
s = 0;
return n.forEach(function(t, e) {
var n = i(e),
r = _.getVertexCount(t);
M({
target: o,
source: [n],
start: s,
count: r
}),
s += r
}),
o
}
function l(t) {
var e = t.cache,
n = t.complexPolygons,
r = t.pointCount,
i = t.getColor,
o = e || new Uint8ClampedArray(4 * r),
s = 0;
return n.forEach(function(t, e) {
var n = i(e);
isNaN(n[3]) && (n[3] = 255);
var r = _.getVertexCount(t);
M({
target: o,
source: n,
start: s,
count: r
}),
s += n.length * r
}),
o
}
function h(t) {
var e = t.complexPolygons,
n = t.pointCount,
r = new Uint8ClampedArray(3 * n),
i = 0;
return e.forEach(function(t, e) {
var n = (0, E.encodePickingColor)(e),
o = _.getVertexCount(t);
M({
target: r,
source: n,
start: i,
count: o
}),
i += n.length * o
}),
r
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.PolygonParseHelper = void 0;
var f = n(27),
p = r(f),
d = n(0),
g = r(d),
y = n(1),
v = r(y),
m = n(298),
_ = function(t) {
if (t && t.__esModule) return t;
var e = {};
if (null != t) for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
return e.
default = t,
e
} (m),
w = n(237),
b = r(w),
x = n(139),
E = n(240),
M = b.
default.fillArray,
I = [0, 0, 0, 255];
e.PolygonParseHelper = function() {
function t(e) {
var n = e.complexPolygons,
r = e.IndexType; (0, g.
default)(this, t),
n = n.map(function(t) {
return _.normalize(t)
});
var o = i(n);
this.complexPolygons = n,
this.pointCount = o,
this.IndexType = r,
this.attributes = {
pickingColors: h({
complexPolygons: n,
pointCount: o
})
}
}
return (0, v.
default)(t, [{
key: "updatePositions",
value: function(t) {
var e = t.fp64,
n = t.extruded;
e = !0;
var r = this.attributes,
i = this.complexPolygons,
o = this.pointCount;
r.positions = r.positions || new Float32Array(3 * o),
r.vertexValid = r.vertexValid || new Uint8ClampedArray(o).fill(1),
e && (r.positions64xyLow = r.positions64xyLow || new Float32Array(2 * o)),
u({
cache: r,
complexPolygons: i,
extruded: n,
fp64: e
})
}
},
{
key: "getIndices",
value: function() {
return a({
complexPolygons: this.complexPolygons,
IndexType: this.IndexType
})
}
},
{
key: "getPositions",
value: function() {
return this.attributes.positions
}
},
{
key: "getPositions64xyLow",
value: function() {
return this.attributes.positions64xyLow
}
},
{
key: "getVertexValid",
value: function() {
return this.attributes.vertexValid
}
},
{
key: "getElevations",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.key,
n = void 0 === e ? "elevations": e,
r = t.getElevation,
i = void 0 === r ?
function() {
return 100
}: r,
o = this.attributes,
s = this.complexPolygons,
a = this.pointCount,
u = c({
cache: o[n],
complexPolygons: s,
pointCount: a,
getElevation: i
});
return o[n] = u,
u
}
},
{
key: "getColors",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.key,
n = void 0 === e ? "colors": e,
r = t.getColor,
i = void 0 === r ?
function() {
return I
}: r,
o = this.attributes,
s = this.complexPolygons,
a = this.pointCount,
u = l({
cache: o[n],
complexPolygons: s,
pointCount: a,
getColor: i
});
return o[n] = u,
u
}
},
{
key: "getPickingColors",
value: function() {
return this.attributes.pickingColors
}
}]),
t
} ()
},
function(t, e, n) {
"use strict";
function r(t) {
if (t && t.geometry && t.geometry.coordinates) {
var e = (0, o.
default)(t.geometry.coordinates, 2),
n = e[0],
r = e[1];
return new TMap.LatLng(r, n)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(32),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(3),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = n(5),
h = r(l),
f = n(4),
p = r(f),
d = TMap,
g = d.DOMOverlay,
y = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, a.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, o.
default)(e)).call(this, t));
return n.correctHandler = t.correctHandler ||
function(t) {
return t
},
n.setEditable(t.editable),
n
}
return (0, p.
default)(e, t),
(0, c.
default)(e, [{
key: "onInit",
value: function(t) {
this._ns = "http://www.w3.org/2000/svg",
this._xlinkns = "http://www.w3.org/1999/xlink",
this.setStyle(t.style)
}
},
{
key: "onDestroy",
value: function() {
this.setEditable(!1)
}
},
{
key: "createDOM",
value: function() {
var t = document.createElementNS(this._ns, "svg");
return t.setAttribute("version", "1.1"),
t.setAttribute("baseProfile", "full"),
t.setAttribute("pointer-events", "none"),
t.style.cssText = ["position:absolute", "left: 0px", "top: 0px"].join(";"),
this._shape = this._createShape(),
t.appendChild(this._shape),
t
}
},
{
key: "updateDOM",
value: function() {}
},
{
key: "setStyle",
value: function() {}
},
{
key: "setEditable",
value: function() {}
}]),
e
} (g);
e.
default = y
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(223),
o = r(i),
s = n(16),
a = r(s),
u = n(3),
c = r(u),
l = n(0),
h = r(l),
f = n(1),
p = r(f),
d = n(5),
g = r(d),
y = n(35),
v = r(y),
m = n(4),
_ = r(m),
w = n(1045),
b = r(w),
x = n(1046),
E = r(x),
M = n(362),
I = r(M),
S = {
width: 10,
height: 10,
anchor: {
x: 5,
y: 5
}
},
C = function(t) {
function e(t) { (0, h.
default)(this, e);
var n = (0, g.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, (0, a.
default)({},
t, {
style: (0, o.
default)({
src:
t.light ? b.
default:
E.
default
},
S, t.iconStyle),
editable: !0
})));
return n.dom.style.cursor = "pointer",
t.disableDblclick || (n._onDblclick = function(t) {
t.stopPropagation(),
n.emit("dblclick")
},
n.dom.addEventListener("dblclick", n._onDblclick)),
n
}
return (0, _.
default)(e, t),
(0, p.
default)(e, [{
key: "onDestroy",
value: function() {
this._onDblclick && (this.dom.removeEventListener("dblclick", this._onDblclick), this._onDblclick = null),
(0, v.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "onDestroy", this).call(this)
}
}]),
e
} (I.
default);
e.
default = C
},
, , , , , ,
function(t, e, n) {
t.exports = {
default:
n(411),
__esModule: !0
}
},
, , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
function r(t) {
var e = n.i(s.a)(t);
return e.insert = function(t) {
if (Array.isArray(t)) {
var e = t;
t = i(e),
t.bbox = e
} else t.bbox = t.bbox ? t.bbox: o(t);
return s.a.prototype.insert.call(this, t)
},
e.load = function(t) {
var e = [];
return Array.isArray(t) ? t.forEach(function(t) {
var n = i(t);
n.bbox = t,
e.push(n)
}) : n.i(a.featureEach)(t,
function(t) {
t.bbox = t.bbox ? t.bbox: o(t),
e.push(t)
}),
s.a.prototype.load.call(this, e)
},
e.remove = function(t) {
if (Array.isArray(t)) {
var e = t;
t = i(e),
t.bbox = e
}
return s.a.prototype.remove.call(this, t)
},
e.clear = function() {
return s.a.prototype.clear.call(this)
},
e.search = function(t) {
return {
type: "FeatureCollection",
features: s.a.prototype.search.call(this, this.toBBox(t))
}
},
e.collides = function(t) {
return s.a.prototype.collides.call(this, this.toBBox(t))
},
e.all = function() {
return {
type: "FeatureCollection",
features: s.a.prototype.all.call(this)
}
},
e.toJSON = function() {
return s.a.prototype.toJSON.call(this)
},
e.fromJSON = function(t) {
return s.a.prototype.fromJSON.call(this, t)
},
e.toBBox = function(t) {
var e;
return e = t.bbox ? t.bbox: Array.isArray(t) && 4 === t.length ? t: o(t),
{
minX: e[0],
minY: e[1],
maxX: e[2],
maxY: e[3]
}
},
e
}
function i(t) {
var e = [t[0], t[1]],
n = [t[0], t[3]],
r = [t[2], t[3]];
return {
type: "Feature",
bbox: t,
properties: {},
geometry: {
type: "Polygon",
coordinates: [[e, [t[2], t[1]], r, n, e]]
}
}
}
function o(t) {
var e = [1 / 0, 1 / 0, -1 / 0, -1 / 0];
return n.i(a.coordEach)(t,
function(t) {
e[0] > t[0] && (e[0] = t[0]),
e[1] > t[1] && (e[1] = t[1]),
e[2] < t[0] && (e[2] = t[0]),
e[3] < t[1] && (e[3] = t[1])
}),
e
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(448),
a = n(121);
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
if (o(t) !== f) {
var e = t.map(function(t) {
return (0, h.
default)(t)
}),
n = (0, a.polygon)([e]);
return (0, c.
default)(n)
}
}
function o(t) {
if (!Array.isArray(t)) return f;
if (Array.isArray(t[0])) return console.error("传入的数据不合规范,暂只支持简单多边形"),
f;
if (t.length < 3) return console.error("传入的数据不合规范,简单多边形请至少输入三个点"),
f;
try {
t.forEach(function(t) {
t.getLat(),
t.getLng()
})
} catch(t) {
throw console.error("传入的数据不合规范,请确认输入多边形内点的格式为 LatLng"),
new Error(t)
}
s(t)
}
function s(t) {
var e = (0, h.
default)(t[0]),
n = (0, h.
default)(t[t.length - 1]);
if (e[0] !== n[0] || e[1] !== n[1]) {
var r = new TMap.LatLng(t[0].getLat(), t[0].getLng());
t.push(r)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(48),
u = n(364),
c = r(u),
l = n(123),
h = r(l),
f = "INPUT_ILLEAGL";
e.
default = i
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
if (o(t) !== d) {
var e = t.map(function(t) {
return (0, h.
default)(t)
}),
n = (0, a.polygon)([e]),
r = (0, c.
default)(n);
return (0, p.
default)(r)
}
}
function o(t) {
if (!Array.isArray(t)) return console.error("传入的数据不合规范,多边形数据请输入数组形式"),
d;
if (Array.isArray(t[0])) return console.error("传入的数据不合规范,暂只支持简单多边形"),
d;
if (t.length < 3) return console.error("传入的数据不合规范,简单多边形请至少输入三个点"),
d;
try {
t.forEach(function(t) {
t.getLat(),
t.getLng()
})
} catch(t) {
throw console.error("传入的数据不合规范,请确认输入多边形内点的格式为 LatLng"),
new Error(t)
}
s(t)
}
function s(t) {
var e = (0, h.
default)(t[0]),
n = (0, h.
default)(t[t.length - 1]);
if (e[0] !== n[0] || e[1] !== n[1]) {
var r = new TMap.LatLng(t[0].getLat(), t[0].getLng());
t.push(r)
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var a = n(48),
u = n(367),
c = r(u),
l = n(123),
h = r(l),
f = n(334),
p = r(f),
d = "INPUT_ILLEAGL";
e.
default = i
},
,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e) {
var n = ["fill:" + e.color, "stroke:" + e.borderColor, "stroke-width:" + e.borderWidth],
r = document.createElementNS(t, "circle");
return r.setAttribute("style", n.join(";")),
r
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
s = r(o),
a = n(3),
u = r(a),
c = n(0),
l = r(c),
h = n(1),
f = r(h),
p = n(5),
d = r(p),
g = n(35),
y = r(g),
v = n(4),
m = r(v),
_ = n(335),
w = r(_),
b = n(336),
x = r(b),
E = n(258),
M = TMap,
I = M.Point,
S = {
color: "rgba(55,119,255,0.16)",
borderWidth: 2,
borderColor: "#3777FF"
},
C = function(t) {
function e(t) { (0, l.
default)(this, e);
var n = (0, d.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t));
return n.iconInfo = t.iconInfo,
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "onInit",
value: function(t) { (0, y.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "onInit", this).call(this, t),
this.setCenter(t.center),
this.setRadius(t.radius)
}
},
{
key: "updateDOM",
value: function() {
if (this._shape && this.map) {
var t = this.radius / this.map._getSpatialResolution();
t !== this._shapeRadius && this._updateShape(t);
var e = this.map.projectToContainer(this.center),
n = e.x - this.dom.clientWidth / 2,
r = e.y - this.dom.clientHeight / 2;
this.dom.style.transform = "translate3d(" + n + "px, " + r + "px, 0px)"
}
}
},
{
key: "setStyle",
value: function(t) {
this.style = (0, s.
default)({},
S, t)
}
},
{
key: "setCenter",
value: function(t) {
this.center = t,
this.updateDOM()
}
},
{
key: "getCenter",
value: function() {
return this.center
}
},
{
key: "setRadius",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 5;
this.radius = t,
this.updateDOM()
}
},
{
key: "getRadius",
value: function() {
return this.radius
}
},
{
key: "_updateShape",
value: function(t) {
if (this._shape) {
this._shape.setAttribute("cx", t),
this._shape.setAttribute("cy", t),
this._shape.setAttribute("r", t);
var e = 0,
n = 0,
r = 2 * t,
i = 2 * t;
r += 40,
i += 40,
e -= 20,
n -= 20,
this.dom.setAttribute("viewBox", [e, n, r, i].join(" ")),
this.dom.setAttribute("width", r),
this.dom.setAttribute("height", i),
this._shapeRadius = t
}
}
},
{
key: "_createShape",
value: function() {
return i(this._ns, this.style)
}
},
{
key: "setEditable",
value: function(t) {
var e = this;
if (t !== this.editable) {
if (t) {
var n = this.map,
r = new x.
default({
map:
n,
position: this.center,
correctHandler: this.correctHandler,
iconStyle: this.iconInfo.actual || {}
}),
i = new x.
default({
map:
n,
position: this._getRadiusPos(),
correctHandler: this.correctHandler,
light: !0,
iconStyle: this.iconInfo.virtual || {}
});
r.on("editing",
function(t) {
e.setCenter(r.getPosition()),
i.setPosition(e._getRadiusPos()),
e.emit("editing", t)
}),
r.on("edit_end",
function() {
e.emit("edit_end")
}),
i.on("editing",
function(t) {
e.setRadius((0, E.computeMeterDist)(n, e.getCenter(), i.getPosition())),
e.emit("editing", t)
}),
i.on("edit_end",
function() {
e.emit("edit_end")
}),
this.centerEditPoint = r,
this.radiusEditPoint = i
} else this.centerEditPoint.destroy(),
this.radiusEditPoint.destroy(),
this.centerEditPoint = null,
this.radiusEditPoint = null;
this.editable = !!t
}
}
},
{
key: "_getRadiusPos",
value: function() {
var t = this.map,
e = this.center,
n = this.radius,
r = t.projectToContainer(e),
i = n / t._getSpatialResolution(),
o = r.add(new I(i, 0));
return t.unprojectFromContainer(o)
}
}]),
e
} (w.
default);
e.
default = C
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e, n) {
var r = document.createElementNS(t, "image");
return r.setAttribute("x", 0),
r.setAttribute("h", 0),
r.setAttribute("width", n.width),
r.setAttribute("height", n.height),
r.setAttributeNS(e, "href", n.src),
r
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
s = r(o),
a = n(3),
u = r(a),
c = n(0),
l = r(c),
h = n(1),
f = r(h),
p = n(5),
d = r(p),
g = n(35),
y = r(g),
v = n(4),
m = r(v),
_ = n(335),
w = r(_),
b = n(1047),
x = r(b),
E = n(258),
M = TMap,
I = M.Point,
S = {
src: x.
default,
width: 34,
height: 50,
anchor: null
},
C = function(t) {
function e(t) {
return (0, l.
default)(this, e),
(0, d.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t))
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "onInit",
value: function(t) { (0, y.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "onInit", this).call(this, t),
this.setPosition(t.position)
}
},
{
key: "createDOM",
value: function() {
var t = (0, y.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "createDOM", this).call(this),
n = this.style,
r = n.width,
i = n.height;
return t.setAttribute("viewBox", [0, 0, r, i].join(" ")),
t.setAttribute("width", r),
t.setAttribute("height", i),
t
}
},
{
key: "updateDOM",
value: function() {
if (this._shape && this.map) {
var t = this.map.projectToContainer(this.position),
e = this.style.anchor,
n = e.x,
r = e.y,
i = t.x - n,
o = t.y - r;
this.dom.style.transform = "translate3d(" + i + "px, " + o + "px, 0px)"
}
}
},
{
key: "setStyle",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.style = (0, s.
default)({},
S, t),
this.style.anchor || (this.style.anchor = {
x: this.style.width / 2,
y: this.style.height
})
}
},
{
key: "setPosition",
value: function(t) {
return this.position = t,
this.updateDOM(),
this
}
},
{
key: "getPosition",
value: function() {
return this.position
}
},
{
key: "_createShape",
value: function() {
return i(this._ns, this._xlinkns, this.style)
}
},
{
key: "setEditable",
value: function(t) {
t !== this.editable && (t ? (this.dom.setAttribute("pointer-events", "painted"), this._onMouseDown = this._onMouseDown.bind(this), this._onMouseUp = this._onMouseUp.bind(this), this.dom.addEventListener("mousedown", this._onMouseDown), document.addEventListener("mouseup", this._onMouseUp)) : (this.dom.setAttribute("pointer-events", "none"), this.dom.removeEventListener("mousedown", this._onMouseDown), document.removeEventListener("mouseup", this._onMouseUp), this._isDown && this._onMouseUp()), this.editable = !!t)
}
},
{
key: "_onMouseDown",
value: function(t) {
this._isDown = !0,
this._moveFrom = {
containerPixel: this.map.projectToContainer(this.position),
mousePixel: new I(t.clientX, t.clientY)
},
this.map.dragPan.isEnabled() && (this.map.dragPan.disable(), this.map._dragPan = !0),
this._mousemoveHandler = (0, E.throttle)(this._onMouseMove.bind(this), 20),
document.addEventListener("mousemove", this._mousemoveHandler)
}
},
{
key: "_onMouseMove",
value: function(t) {
if (this._isDown) {
var e = this._moveFrom,
n = new I(t.clientX, t.clientY),
r = n.sub(e.mousePixel);
if (r.mag() < 2) return;
this._isMoved || (this._isMoved = !0, this.emit("edit_start"));
var i = e.containerPixel.add(r),
o = this.map.unprojectFromContainer(i),
s = this.correctHandler(o);
this.setPosition(s),
this.emit("editing", s)
}
}
},
{
key: "_onMouseUp",
value: function() {
this._isDown && (this._isDown = !1, this._moveFrom = null, this.map._dragPan && (this.map.dragPan.enable(), this.map._dragPan = null), document.removeEventListener("mousemove", this._mousemoveHandler), this._isMoved && (this.emit("edit_end"), this._isMoved = !1))
}
}]),
e
} (w.
default);
e.
default = C
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e) {
var n = ["fill:" + e.color, "stroke:" + e.borderColor, "stroke-width:" + e.borderWidth],
r = document.createElementNS(t, "path");
return r.setAttribute("style", n.join(";")),
r
}
function o(t) {
if ((0, x.isCombinedPolygon)(t)) return t.map(function(t) {
return o(t)
}).join(" ");
if ((0, x.isHoleyPolygon)(t)) {
var e = !1;
return t.map(function(t, n) {
if (n) {
return (0, x.isClockwise)(t) === e && t.reverse(),
o(t)
}
return e = (0, x.isClockwise)(t),
o(t)
}).join(" ")
}
return t.map(function(t, e) {
return (e ? "": "M") + t.x + "," + t.y
}).join(" ") + " z"
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(16),
a = r(s),
u = n(3),
c = r(u),
l = n(0),
h = r(l),
f = n(1),
p = r(f),
d = n(5),
g = r(d),
y = n(35),
v = r(y),
m = n(4),
_ = r(m),
w = n(389),
b = r(w),
x = n(279),
E = {
color: "rgba(55,119,255,0.16)",
borderWidth: 2,
borderColor: "#3777FF"
},
M = function(t) {
function e(t) {
return (0, h.
default)(this, e),
(0, g.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t))
}
return (0, _.
default)(e, t),
(0, p.
default)(e, [{
key: "onInit",
value: function(t) { (0, v.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "onInit", this).call(this, t),
this.closed = !0
}
},
{
key: "setStyle",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.style = (0, a.
default)({},
E, t)
}
},
{
key: "_createShape",
value: function() {
return i(this._ns, this.style)
}
},
{
key: "_updatePoints",
value: function() {
var t = this.path,
e = this.map,
n = (0, x.projectPath)(e, t),
r = o(n);
return this._shape.setAttribute("d", r),
n.flat(1 / 0)
}
}]),
e
} (b.
default);
e.
default = M
},
function(t, e, n) {
"use strict";
function r(t) {
return n.i(u.geomReduce)(t,
function(t, e) {
return t + i(e)
},
0)
}
function i(t) {
var e, n = 0;
switch (t.type) {
case "Polygon":
return o(t.coordinates);
case "MultiPolygon":
for (e = 0; e < t.coordinates.length; e++) n += o(t.coordinates[e]);
return n;
case "Point":
case "MultiPoint":
case "LineString":
case "MultiLineString":
return 0;
case "GeometryCollection":
for (e = 0; e < t.geometries.length; e++) n += i(t.geometries[e]);
return n
}
}
function o(t) {
var e = 0;
if (t && t.length > 0) {
e += Math.abs(s(t[0]));
for (var n = 1; n < t.length; n++) e -= Math.abs(s(t[n]))
}
return e
}
function s(t) {
var e, n, r, i, o, s, u, l = 0,
h = t.length;
if (h > 2) {
for (u = 0; u < h; u++) u === h - 2 ? (i = h - 2, o = h - 1, s = 0) : u === h - 1 ? (i = h - 1, o = 0, s = 1) : (i = u, o = u + 1, s = u + 2),
e = t[i],
n = t[o],
r = t[s],
l += (a(r[0]) - a(e[0])) * Math.sin(a(n[1]));
l = l * c * c / 2
}
return l
}
function a(t) {
return t * Math.PI / 180
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var u = n(121),
c = 6378137;
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t) {
var e = [1 / 0, 1 / 0, -1 / 0, -1 / 0];
return n.i(i.coordEach)(t,
function(t) {
e[0] > t[0] && (e[0] = t[0]),
e[1] > t[1] && (e[1] = t[1]),
e[2] < t[0] && (e[2] = t[0]),
e[3] < t[1] && (e[3] = t[1])
}),
e
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(121);
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t, e, r) {
if (r = r || {},
!n.i(s.isObject)(r)) throw new Error("options is invalid");
if (!0 === r.final) return i(t, e);
var a = n.i(o.getCoord)(t),
u = n.i(o.getCoord)(e),
c = n.i(s.degreesToRadians)(a[0]),
l = n.i(s.degreesToRadians)(u[0]),
h = n.i(s.degreesToRadians)(a[1]),
f = n.i(s.degreesToRadians)(u[1]),
p = Math.sin(l - c) * Math.cos(f),
d = Math.cos(h) * Math.sin(f) - Math.sin(h) * Math.cos(f) * Math.cos(l - c);
return n.i(s.radiansToDegrees)(Math.atan2(p, d))
}
function i(t, e) {
var n = r(e, t);
return n = (n + 180) % 360
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(109),
s = n(48);
e.
default = r
},
function(t, e, n) {
function r(t, e) {
switch (t.geometry ? t.geometry.type: t.type) {
case "Point":
return i(u(t), e);
case "Polygon":
var n = [];
c(t,
function(t) {
n.push(t)
});
var l, h, f, p, d, g, y, v, m = a(t, e),
_ = m.geometry.coordinates,
w = 0,
b = 0,
x = 0,
E = n.map(function(t) {
return [t[0] - _[0], t[1] - _[1]]
});
for (l = 0; l < n.length - 1; l++) h = E[l],
p = h[0],
g = h[1],
f = E[l + 1],
d = f[0],
y = f[1],
v = p * y - d * g,
x += v,
w += (p + d) * v,
b += (g + y) * v;
if (0 === x) return m;
var M = .5 * x,
I = 1 / (6 * M);
return i([_[0] + I * w, _[1] + I * b], e);
default:
var S = o(s(t));
return S ? r(S, e) : a(t, e)
}
}
var i = n(235).point,
o = n(369),
s = n(370),
a = n(368),
u = n(371).getCoord,
c = n(236).coordEach;
t.exports = r
},
function(t, e, n) {
var r = n(236).coordEach,
i = n(235).point;
t.exports = function(t, e) {
var n = 0,
o = 0,
s = 0;
return r(t,
function(t) {
n += t[0],
o += t[1],
s++
},
!0),
i([n / s, o / s], e)
}
},
function(t, e, n) {
var r = n(236).coordEach,
i = n(405),
o = n(235).polygon;
t.exports = function(t) {
var e = [];
r(t,
function(t) {
e.push([t[0], t[1]])
});
var n = i(e);
if (n.length >= 3) {
for (var s = [], a = 0; a < n.length; a++) s.push(e[n[a][0]]);
return s.push(e[n[n.length - 1][1]]),
o([s])
}
}
},
function(t, e, n) {
var r = n(236),
i = n(235),
o = i.point,
s = r.coordEach,
a = r.featureEach,
u = i.featureCollection;
t.exports = function(t) {
var e = [];
return "FeatureCollection" === t.type ? a(t,
function(t) {
s(t,
function(n) {
e.push(o(n, t.properties))
})
}) : s(t,
function(n) {
e.push(o(n, t.properties))
}),
u(e)
}
},
function(t, e) {
function n(t) {
if (!t) throw new Error("obj is required");
var e = r(t);
if (e.length > 1 && "number" == typeof e[0] && "number" == typeof e[1]) return e;
throw new Error("Coordinate is not a valid Point")
}
function r(t) {
if (!t) throw new Error("obj is required");
var e;
if (t.length ? e = t: t.coordinates ? e = t.coordinates: t.geometry && t.geometry.coordinates && (e = t.geometry.coordinates), e) return i(e),
e;
throw new Error("No valid coordinates")
}
function i(t) {
if (t.length > 1 && "number" == typeof t[0] && "number" == typeof t[1]) return ! 0;
if (Array.isArray(t[0]) && t[0].length) return i(t[0]);
throw new Error("coordinates must only contain numbers")
}
function o(t, e, n) {
if (!e || !n) throw new Error("type and name required");
if (!t || t.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + t.type)
}
function s(t, e, n) {
if (!t) throw new Error("No feature passed");
if (!n) throw new Error(".featureOf() requires a name");
if (!t || "Feature" !== t.type || !t.geometry) throw new Error("Invalid input to " + n + ", Feature with geometry required");
if (!t.geometry || t.geometry.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + t.geometry.type)
}
function a(t, e, n) {
if (!t) throw new Error("No featureCollection passed");
if (!n) throw new Error(".collectionOf() requires a name");
if (!t || "FeatureCollection" !== t.type) throw new Error("Invalid input to " + n + ", FeatureCollection required");
for (var r = 0; r < t.features.length; r++) {
var i = t.features[r];
if (!i || "Feature" !== i.type || !i.geometry) throw new Error("Invalid input to " + n + ", Feature with geometry required");
if (!i.geometry || i.geometry.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + i.geometry.type)
}
}
function u(t) {
if (!t) throw new Error("geojson is required");
if (void 0 !== t.geometry) return t.geometry;
if (t.coordinates || t.geometries) return t;
throw new Error("geojson must be a valid Feature or Geometry Object")
}
function c(t) {
if (!t) throw new Error("geojson is required");
var e = u(t);
if (e) return e.type
}
t.exports = {
geojsonType: o,
collectionOf: a,
featureOf: s,
getCoord: n,
getCoords: r,
containsNumber: i,
getGeom: u,
getGeomType: c
}
},
,
function(t, e, n) {
"use strict";
function r(t, e) {
if (e = e || {},
!n.i(s.isObject)(e)) throw new Error("options is invalid");
var r = e.precision,
a = e.coordinates,
u = e.mutate;
if (r = void 0 === r || null === r || isNaN(r) ? 6 : r, a = void 0 === a || null === a || isNaN(a) ? 3 : a, !t) throw new Error("<geojson> is required");
if ("number" != typeof r) throw new Error("<precision> must be a number");
if ("number" != typeof a) throw new Error("<coordinates> must be a number"); ! 1 !== u && void 0 !== u || (t = JSON.parse(JSON.stringify(t)));
var c = Math.pow(10, r);
return n.i(o.coordEach)(t,
function(t) {
i(t, c, a)
}),
t
}
function i(t, e, n) {
t.length > n && t.splice(n, t.length);
for (var r = 0; r < t.length; r++) t[r] = Math.round(t[r] * e) / e;
return t
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(121),
s = n(48);
e.
default = r
},
function(t, e, n) { !
function(t, n) {
n(e)
} (0,
function(t) {
"use strict";
function e(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.bbox,
i = n.id;
if (void 0 === t) throw new Error("geometry is required");
if (e && e.constructor !== Object) throw new Error("properties must be an Object");
r && I(r),
i && S(i);
var o = {
type: "Feature"
};
return i && (o.id = i),
r && (o.bbox = r),
o.properties = e || {},
o.geometry = t,
o
}
function n(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var i = n.bbox;
if (!t) throw new Error("type is required");
if (!e) throw new Error("coordinates is required");
if (!Array.isArray(e)) throw new Error("coordinates must be an Array");
i && I(i);
var s;
switch (t) {
case "Point":
s = r(e).geometry;
break;
case "LineString":
s = a(e).geometry;
break;
case "Polygon":
s = o(e).geometry;
break;
case "MultiPoint":
s = h(e).geometry;
break;
case "MultiLineString":
s = l(e).geometry;
break;
case "MultiPolygon":
s = f(e).geometry;
break;
default:
throw new Error(t + " is invalid")
}
return i && (s.bbox = i),
s
}
function r(t, n, r) {
if (!t) throw new Error("coordinates is required");
if (!Array.isArray(t)) throw new Error("coordinates must be an Array");
if (t.length < 2) throw new Error("coordinates must be at least 2 numbers long");
if (!E(t[0]) || !E(t[1])) throw new Error("coordinates must contain numbers");
return e({
type: "Point",
coordinates: t
},
n, r)
}
function i(t, e, n) {
if (!t) throw new Error("coordinates is required");
if (!Array.isArray(t)) throw new Error("coordinates must be an Array");
return c(t.map(function(t) {
return r(t, e)
}), n)
}
function o(t, n, r) {
if (!t) throw new Error("coordinates is required");
for (var i = 0; i < t.length; i++) {
var o = t[i];
if (o.length < 4) throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");
for (var s = 0; s < o[o.length - 1].length; s++) {
if (0 === i && 0 === s && !E(o[0][0]) || !E(o[0][1])) throw new Error("coordinates must contain numbers");
if (o[o.length - 1][s] !== o[0][s]) throw new Error("First and last Position are not equivalent.")
}
}
return e({
type: "Polygon",
coordinates: t
},
n, r)
}
function s(t, e, n) {
if (!t) throw new Error("coordinates is required");
if (!Array.isArray(t)) throw new Error("coordinates must be an Array");
return c(t.map(function(t) {
return o(t, e)
}), n)
}
function a(t, n, r) {
if (!t) throw new Error("coordinates is required");
if (t.length < 2) throw new Error("coordinates must be an array of two or more positions");
if (!E(t[0][1]) || !E(t[0][1])) throw new Error("coordinates must contain numbers");
return e({
type: "LineString",
coordinates: t
},
n, r)
}
function u(t, e, n) {
if (!t) throw new Error("coordinates is required");
if (!Array.isArray(t)) throw new Error("coordinates must be an Array");
return c(t.map(function(t) {
return a(t, e)
}), n)
}
function c(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.bbox,
r = e.id;
if (!t) throw new Error("No features passed");
if (!Array.isArray(t)) throw new Error("features must be an Array");
n && I(n),
r && S(r);
var i = {
type: "FeatureCollection"
};
return r && (i.id = r),
n && (i.bbox = n),
i.features = t,
i
}
function l(t, n, r) {
if (!t) throw new Error("coordinates is required");
return e({
type: "MultiLineString",
coordinates: t
},
n, r)
}
function h(t, n, r) {
if (!t) throw new Error("coordinates is required");
return e({
type: "MultiPoint",
coordinates: t
},
n, r)
}
function f(t, n, r) {
if (!t) throw new Error("coordinates is required");
return e({
type: "MultiPolygon",
coordinates: t
},
n, r)
}
function p(t, n, r) {
if (!t) throw new Error("geometries is required");
if (!Array.isArray(t)) throw new Error("geometries must be an Array");
return e({
type: "GeometryCollection",
geometries: t
},
n, r)
}
function d(t, e) {
if (void 0 === t || null === t || isNaN(t)) throw new Error("num is required");
if (e && !(e >= 0)) throw new Error("precision must be a positive number");
var n = Math.pow(10, e || 0);
return Math.round(t * n) / n
}
function g(t, e) {
if (void 0 === t || null === t) throw new Error("radians is required");
if (e && "string" != typeof e) throw new Error("units must be a string");
var n = Fo[e || "kilometers"];
if (!n) throw new Error(e + " units is invalid");
return t * n
}
function y(t, e) {
if (void 0 === t || null === t) throw new Error("distance is required");
if (e && "string" != typeof e) throw new Error("units must be a string");
var n = Fo[e || "kilometers"];
if (!n) throw new Error(e + " units is invalid");
return t / n
}
function v(t, e) {
return _(y(t, e))
}
function m(t) {
if (null === t || void 0 === t) throw new Error("bearing is required");
var e = t % 360;
return e < 0 && (e += 360),
e
}
function _(t) {
if (null === t || void 0 === t) throw new Error("radians is required");
return t % (2 * Math.PI) * 180 / Math.PI
}
function w(t) {
if (null === t || void 0 === t) throw new Error("degrees is required");
return t % 360 * Math.PI / 180
}
function b(t, e, n) {
if (null === t || void 0 === t) throw new Error("length is required");
if (! (t >= 0)) throw new Error("length must be a positive number");
return g(y(t, e), n || "kilometers")
}
function x(t, e, n) {
if (null === t || void 0 === t) throw new Error("area is required");
if (! (t >= 0)) throw new Error("area must be a positive number");
var r = qo[e || "meters"];
if (!r) throw new Error("invalid original units");
var i = qo[n || "kilometers"];
if (!i) throw new Error("invalid final units");
return t / r * i
}
function E(t) {
return ! isNaN(t) && null !== t && !Array.isArray(t)
}
function M(t) {
return !! t && t.constructor === Object
}
function I(t) {
if (!t) throw new Error("bbox is required");
if (!Array.isArray(t)) throw new Error("bbox must be an Array");
if (4 !== t.length && 6 !== t.length) throw new Error("bbox must be an Array of 4 or 6 numbers");
t.forEach(function(t) {
if (!E(t)) throw new Error("bbox must only contain numbers")
})
}
function S(t) {
if (!t) throw new Error("id is required");
if ( - 1 === ["string", "number"].indexOf(typeof t)) throw new Error("id must be a number or a string")
}
function C(t, e, n) {
if (null !== t) for (var r, i, o, s, a, u, c, l, h = 0,
f = 0,
p = t.type,
d = "FeatureCollection" === p,
g = "Feature" === p,
y = d ? t.features.length: 1, v = 0; v < y; v++) {
a = (l = !!(c = d ? t.features[v].geometry: g ? t.geometry: t) && "GeometryCollection" === c.type) ? c.geometries.length: 1;
for (var m = 0; m < a; m++) {
var _ = 0,
w = 0;
if (null !== (s = l ? c.geometries[m] : c)) {
u = s.coordinates;
var b = s.type;
switch (h = !n || "Polygon" !== b && "MultiPolygon" !== b ? 0 : 1, b) {
case null:
break;
case "Point":
e(u, f, v, _, w),
f++,
_++;
break;
case "LineString":
case "MultiPoint":
for (r = 0; r < u.length; r++) e(u[r], f, v, _, w),
f++,
"MultiPoint" === b && _++;
"LineString" === b && _++;
break;
case "Polygon":
case "MultiLineString":
for (r = 0; r < u.length; r++) {
for (i = 0; i < u[r].length - h; i++) e(u[r][i], f, v, _, w),
f++;
"MultiLineString" === b && _++,
"Polygon" === b && w++
}
"Polygon" === b && _++;
break;
case "MultiPolygon":
for (r = 0; r < u.length; r++) {
for ("MultiPolygon" === b && (w = 0), i = 0; i < u[r].length; i++) {
for (o = 0; o < u[r][i].length - h; o++) e(u[r][i][o], f, v, _, w),
f++;
w++
}
_++
}
break;
case "GeometryCollection":
for (r = 0; r < s.geometries.length; r++) C(s.geometries[r], e, n);
break;
default:
throw new Error("Unknown Geometry Type")
}
}
}
}
}
function N(t, e, n, r) {
var i = n;
return C(t,
function(t, r, o, s, a) {
i = 0 === r && void 0 === n ? t: e(i, t, r, o, s, a)
},
r),
i
}
function P(t, e) {
var n;
switch (t.type) {
case "FeatureCollection":
for (n = 0; n < t.features.length; n++) e(t.features[n].properties, n);
break;
case "Feature":
e(t.properties, 0)
}
}
function L(t, e, n) {
var r = n;
return P(t,
function(t, i) {
r = 0 === i && void 0 === n ? t: e(r, t, i)
}),
r
}
function A(t, e) {
if ("Feature" === t.type) e(t, 0);
else if ("FeatureCollection" === t.type) for (var n = 0; n < t.features.length; n++) e(t.features[n], n)
}
function O(t, e, n) {
var r = n;
return A(t,
function(t, i) {
r = 0 === i && void 0 === n ? t: e(r, t, i)
}),
r
}
function T(t) {
var e = [];
return C(t,
function(t) {
e.push(t)
}),
e
}
function R(t, e) {
var n, r, i, o, s, a, u, c, l, h, f = 0,
p = "FeatureCollection" === t.type,
d = "Feature" === t.type,
g = p ? t.features.length: 1;
for (n = 0; n < g; n++) {
for (a = p ? t.features[n].geometry: d ? t.geometry: t, c = p ? t.features[n].properties: d ? t.properties: {},
l = p ? t.features[n].bbox: d ? t.bbox: void 0, h = p ? t.features[n].id: d ? t.id: void 0, s = (u = !!a && "GeometryCollection" === a.type) ? a.geometries.length: 1, i = 0; i < s; i++) if (null !== (o = u ? a.geometries[i] : a)) switch (o.type) {
case "Point":
case "LineString":
case "MultiPoint":
case "Polygon":
case "MultiLineString":
case "MultiPolygon":
e(o, f, c, l, h);
break;
case "GeometryCollection":
for (r = 0; r < o.geometries.length; r++) e(o.geometries[r], f, c, l, h);
break;
default:
throw new Error("Unknown Geometry Type")
} else e(null, f, c, l, h);
f++
}
}
function D(t, e, n) {
var r = n;
return R(t,
function(t, i, o, s, a) {
r = 0 === i && void 0 === n ? t: e(r, t, i, o, s, a)
}),
r
}
function k(t, n) {
R(t,
function(t, r, i, o, s) {
var a = null === t ? null: t.type;
switch (a) {
case null:
case "Point":
case "LineString":
case "Polygon":
return void n(e(t, i, {
bbox: o,
id: s
}), r, 0)
}
var u;
switch (a) {
case "MultiPoint":
u = "Point";
break;
case "MultiLineString":
u = "LineString";
break;
case "MultiPolygon":
u = "Polygon"
}
t.coordinates.forEach(function(t, o) {
n(e({
type: u,
coordinates: t
},
i), r, o)
})
})
}
function F(t, e, n) {
var r = n;
return k(t,
function(t, i, o) {
r = 0 === i && 0 === o && void 0 === n ? t: e(r, t, i, o)
}),
r
}
function j(t, e) {
k(t,
function(t, n, r) {
var i = 0;
if (t.geometry) {
var o = t.geometry.type;
"Point" !== o && "MultiPoint" !== o && N(t,
function(o, s, u, c, l, h) {
var f = a([o, s], t.properties);
return e(f, n, r, h, i),
i++,
s
})
}
})
}
function q(t, e, n) {
var r = n,
i = !1;
return j(t,
function(t, o, s, a, u) {
r = !1 === i && void 0 === n ? t: e(r, t, o, s, a, u),
i = !0
}),
r
}
function B(t, e) {
if (!t) throw new Error("geojson is required");
k(t,
function(t, n, r) {
if (null !== t.geometry) {
var i = t.geometry.type,
o = t.geometry.coordinates;
switch (i) {
case "LineString":
e(t, n, r, 0, 0);
break;
case "Polygon":
for (var s = 0; s < o.length; s++) e(a(o[s], t.properties), n, r, s)
}
}
})
}
function G(t, e, n) {
var r = n;
return B(t,
function(t, i, o, s) {
r = 0 === i && void 0 === n ? t: e(r, t, i, o, s)
}),
r
}
function U(t) {
var e = [1 / 0, 1 / 0, -1 / 0, -1 / 0];
return C(t,
function(t) {
e[0] > t[0] && (e[0] = t[0]),
e[1] > t[1] && (e[1] = t[1]),
e[2] < t[0] && (e[2] = t[0]),
e[3] < t[1] && (e[3] = t[1])
}),
e
}
function z(t) {
if (!t) throw new Error("obj is required");
var e = Y(t);
if (e.length > 1 && E(e[0]) && E(e[1])) return e;
throw new Error("Coordinate is not a valid Point")
}
function Y(t) {
if (!t) throw new Error("obj is required");
var e;
if (t.length ? e = t: t.coordinates ? e = t.coordinates: t.geometry && t.geometry.coordinates && (e = t.geometry.coordinates), e) return X(e),
e;
throw new Error("No valid coordinates")
}
function X(t) {
if (t.length > 1 && E(t[0]) && E(t[1])) return ! 0;
if (Array.isArray(t[0]) && t[0].length) return X(t[0]);
throw new Error("coordinates must only contain numbers")
}
function V(t, e, n) {
if (!e || !n) throw new Error("type and name required");
if (!t || t.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + t.type)
}
function W(t, e, n) {
if (!t) throw new Error("No feature passed");
if (!n) throw new Error(".featureOf() requires a name");
if (!t || "Feature" !== t.type || !t.geometry) throw new Error("Invalid input to " + n + ", Feature with geometry required");
if (!t.geometry || t.geometry.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + t.geometry.type)
}
function H(t, e, n) {
if (!t) throw new Error("No featureCollection passed");
if (!n) throw new Error(".collectionOf() requires a name");
if (!t || "FeatureCollection" !== t.type) throw new Error("Invalid input to " + n + ", FeatureCollection required");
for (var r = 0; r < t.features.length; r++) {
var i = t.features[r];
if (!i || "Feature" !== i.type || !i.geometry) throw new Error("Invalid input to " + n + ", Feature with geometry required");
if (!i.geometry || i.geometry.type !== e) throw new Error("Invalid input to " + n + ": must be a " + e + ", given " + i.geometry.type)
}
}
function J(t) {
if (!t) throw new Error("geojson is required");
if (void 0 !== t.geometry) return t.geometry;
if (t.coordinates || t.geometries) return t;
throw new Error("geojson must be a valid Feature or Geometry Object")
}
function Z() {
throw new Error("invariant.getGeomType has been deprecated in v5.0 in favor of invariant.getType")
}
function Q(t, e) {
if (!t) throw new Error((e || "geojson") + " is required");
if (t.geometry && t.geometry.type) return t.geometry.type;
if (t.type) return t.type;
throw new Error((e || "geojson") + " is invalid")
}
function K(t, e, n) {
n = n || {};
for (var r = Object.keys(zo), i = 0; i < r.length; i++) {
var o = r[i],
s = n[o];
s = void 0 !== s && null !== s ? s: zo[o],
Yo[o] = s
}
Yo.verbose && console.log("MarchingSquaresJS-isoContours: computing isocontour for " + e);
var a = function(t) {
var e = [],
n = 0;
return t.rows,
t.cols,
t.cells.forEach(function(r, i) {
r.forEach(function(r, o) {
if (void 0 !== r && !
function(t) {
return 5 === t.cval || 10 === t.cval
} (r) && !tt(r)) {
var s = function(t, e, n) {
var r, i, o, s = t.length,
a = [],
u = [0, 0, 1, 1, 0, 0, 0, 0, -1, 0, 1, 1, -1, 0, -1, 0],
c = [0, -1, 0, 0, 1, 1, 1, 1, 0, -1, 0, 0, 0, -1, 0, 0],
l = ["none", "bottom", "right", "right", "top", "top", "top", "top", "left", "bottom", "right", "right", "left", "bottom", "left", "none"],
h = (t[e][n], t[e][n]),
f = h.cval,
p = nt(h, o = ["none", "left", "bottom", "left", "right", "none", "bottom", "left", "top", "top", "none", "top", "right", "right", "bottom", "none"][f]);
a.push([n + p[0], e + p[1]]),
p = nt(h, o = l[f]),
a.push([n + p[0], e + p[1]]),
et(h);
for (var d = n + u[f], g = e + c[f], y = f; d >= 0 && g >= 0 && g < s && (d != n || g != e) && void 0 !== (h = t[g][d]);) {
if (0 === (f = h.cval) || 15 === f) return {
path: a,
info: "mergeable"
};
o = l[f],
r = u[f],
i = c[f],
5 !== f && 10 !== f || (5 === f ? h.flipped ? -1 === c[y] ? (o = "left", r = -1, i = 0) : (o = "right", r = 1, i = 0) : -1 === u[y] && (o = "bottom", r = 0, i = -1) : 10 === f && (h.flipped ? -1 === u[y] ? (o = "top", r = 0, i = 1) : (o = "bottom", r = 0, i = -1) : 1 === c[y] && (o = "left", r = -1, i = 0))),
p = nt(h, o),
a.push([d + p[0], g + p[1]]),
et(h),
d += r,
g += i,
y = f
}
return {
path: a,
info: "closed"
}
} (t.cells, i, o),
a = !1;
if ("mergeable" === s.info) for (var u = s.path[s.path.length - 1][0], c = s.path[s.path.length - 1][1], l = n - 1; l >= 0; l--) if (Math.abs(e[l][0][0] - u) <= 1e-7 && Math.abs(e[l][0][1] - c) <= 1e-7) {
for (var h = s.path.length - 2; h >= 0; --h) e[l].unshift(s.path[h]);
a = !0;
break
}
a || (e[n++] = s.path)
}
})
}),
e
} (function(t, e) {
for (var n = t.length - 1,
r = t[0].length - 1, i = {
rows: n,
cols: r,
cells: []
},
o = 0; o < n; ++o) {
i.cells[o] = [];
for (var s = 0; s < r; ++s) {
var a = 0,
u = t[o + 1][s],
c = t[o + 1][s + 1],
l = t[o][s + 1],
h = t[o][s];
if (! (isNaN(u) || isNaN(c) || isNaN(l) || isNaN(h))) {
a |= u >= e ? 8 : 0,
a |= c >= e ? 4 : 0,
a |= l >= e ? 2 : 0;
var f = !1;
if (5 == (a |= h >= e ? 1 : 0) || 10 === a) {
var p = (u + c + l + h) / 4;
5 === a && p < e ? (a = 10, f = !0) : 10 === a && p < e && (a = 5, f = !0)
}
if (0 !== a && 15 !== a) {
var d, g, y, v;
d = g = y = v = .5,
1 === a ? (y = 1 - $(e, u, h), g = 1 - $(e, l, h)) : 2 === a ? (g = $(e, h, l), v = 1 - $(e, c, l)) : 3 === a ? (y = 1 - $(e, u, h), v = 1 - $(e, c, l)) : 4 === a ? (d = $(e, u, c), v = $(e, l, c)) : 5 === a ? (d = $(e, u, c), v = $(e, l, c), g = 1 - $(e, l, h), y = 1 - $(e, u, h)) : 6 === a ? (g = $(e, h, l), d = $(e, u, c)) : 7 === a ? (y = 1 - $(e, u, h), d = $(e, u, c)) : 8 === a ? (y = $(e, h, u), d = 1 - $(e, c, u)) : 9 === a ? (g = 1 - $(e, l, h), d = 1 - $(e, c, u)) : 10 === a ? (d = 1 - $(e, c, u), v = 1 - $(e, c, l), g = $(e, h, l), y = $(e, h, u)) : 11 === a ? (d = 1 - $(e, c, u), v = 1 - $(e, c, l)) : 12 === a ? (y = $(e, h, u), v = $(e, l, c)) : 13 === a ? (g = 1 - $(e, l, h), v = $(e, l, c)) : 14 === a ? (y = $(e, h, u), g = $(e, h, l)) : console.log("MarchingSquaresJS-isoContours: Illegal cval detected: " + a),
i.cells[o][s] = {
cval: a,
flipped: f,
top: d,
right: v,
bottom: g,
left: y
}
}
}
}
}
return i
} (t, e));
return "function" == typeof Yo.successCallback && Yo.successCallback(a),
a
}
function $(t, e, n) {
return (t - e) / (n - e)
}
function tt(t) {
return 0 === t.cval || 15 === t.cval
}
function et(t) {
tt(t) || 5 === t.cval || 10 === t.cval || (t.cval = 15)
}
function nt(t, e) {
return "top" === e ? [t.top, 1] : "bottom" === e ? [t.bottom, 0] : "right" === e ? [1, t.right] : "left" === e ? [0, t.left] : void 0
}
function rt(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.zProperty || "elevation",
r = e.flip,
i = e.flags;
H(t, "Point", "input must contain Points");
for (var o = function(t, e) {
var n = {};
return A(t,
function(t) {
var e = Y(t)[1];
n[e] || (n[e] = []),
n[e].push(t)
}),
Object.keys(n).map(function(t) {
return n[t].sort(function(t, e) {
return Y(t)[0] - Y(e)[0]
})
}).sort(function(t, n) {
return e ? Y(t[0])[1] - Y(n[0])[1] : Y(n[0])[1] - Y(t[0])[1]
})
} (t, r), s = [], a = 0; a < o.length; a++) {
for (var u = o[a], c = [], l = 0; l < u.length; l++) {
var h = u[l];
h.properties[n] ? c.push(h.properties[n]) : c.push(0),
!0 === i && (h.properties.matrixPosition = [a, l])
}
s.push(c)
}
return s
}
function it(t, e, n, r, i) {
for (n = n || 0, r = r || t.length - 1, i = i ||
function(t, e) {
return t < e ? -1 : t > e ? 1 : 0
}; r > n;) {
if (r - n > 600) {
var o = r - n + 1,
s = e - n + 1,
a = Math.log(o),
u = .5 * Math.exp(2 * a / 3),
c = .5 * Math.sqrt(a * u * (o - u) / o) * (s - o / 2 < 0 ? -1 : 1);
it(t, e, Math.max(n, Math.floor(e - s * u / o + c)), Math.min(r, Math.floor(e + (o - s) * u / o + c)), i)
}
var l = t[e],
h = n,
f = r;
for (ot(t, n, e), i(t[r], l) > 0 && ot(t, n, r); h < f;) {
for (ot(t, h, f), h++, f--; i(t[h], l) < 0;) h++;
for (; i(t[f], l) > 0;) f--
}
0 === i(t[n], l) ? ot(t, n, f) : ot(t, ++f, r),
f <= e && (n = f + 1),
e <= f && (r = f - 1)
}
}
function ot(t, e, n) {
var r = t[e];
t[e] = t[n],
t[n] = r
}
function st(t, e) {
if (! (this instanceof st)) return new st(t, e);
this._maxEntries = Math.max(4, t || 9),
this._minEntries = Math.max(2, Math.ceil(.4 * this._maxEntries)),
e && this._initFormat(e),
this.clear()
}
function at(t, e) {
ut(t, 0, t.children.length, e, t)
}
function ut(t, e, n, r, i) {
i || (i = yt(null)),
i.minX = 1 / 0,
i.minY = 1 / 0,
i.maxX = -1 / 0,
i.maxY = -1 / 0;
for (var o, s = e; s < n; s++) o = t.children[s],
ct(i, t.leaf ? r(o) : o);
return i
}
function ct(t, e) {
return t.minX = Math.min(t.minX, e.minX),
t.minY = Math.min(t.minY, e.minY),
t.maxX = Math.max(t.maxX, e.maxX),
t.maxY = Math.max(t.maxY, e.maxY),
t
}
function lt(t, e) {
return t.minX - e.minX
}
function ht(t, e) {
return t.minY - e.minY
}
function ft(t) {
return (t.maxX - t.minX) * (t.maxY - t.minY)
}
function pt(t) {
return t.maxX - t.minX + (t.maxY - t.minY)
}
function dt(t, e) {
return t.minX <= e.minX && t.minY <= e.minY && e.maxX <= t.maxX && e.maxY <= t.maxY
}
function gt(t, e) {
return e.minX <= t.maxX && e.minY <= t.maxY && e.maxX >= t.minX && e.maxY >= t.minY
}
function yt(t) {
return {
children: t,
height: 1,
leaf: !0,
minX: 1 / 0,
minY: 1 / 0,
maxX: -1 / 0,
maxY: -1 / 0
}
}
function vt(t, e, n, r, i) {
for (var o, s = [e, n]; s.length;)(n = s.pop()) - (e = s.pop()) <= r || (o = e + Math.ceil((n - e) / r / 2) * r, Xo(t, o, e, n, i), s.push(e, o, o, n))
}
function mt(t, e) {
return e = {
exports: {}
},
t(e, e.exports),
e.exports
}
function _t(t, e) {
if (! (this instanceof _t)) return new _t(t, e);
if (this.data = t || [], this.length = this.data.length, this.compare = e ||
function(t, e) {
return t < e ? -1 : t > e ? 1 : 0
},
this.length > 0) for (var n = (this.length >> 1) - 1; n >= 0; n--) this._down(n)
}
function wt(t, e, n) {
e = Math.max(0, void 0 === e ? 2 : e),
n = n || 0;
for (var r, i = function(t) {
for (var e = t[0], n = t[0], r = t[0], i = t[0], o = 0; o < t.length; o++) {
var s = t[o];
s[0] < e[0] && (e = s),
s[0] > r[0] && (r = s),
s[1] < n[1] && (n = s),
s[1] > i[1] && (i = s)
}
var a = [e, n, r, i],
u = a.slice();
for (o = 0; o < t.length; o++) is(t[o], a) || u.push(t[o]);
var c = ts(u),
l = [];
for (o = 0; o < c.length; o++) l.push(u[c[o]]);
return l
} (t), o = Vo(16, ["[0]", "[1]", "[0]", "[1]"]).load(t), s = [], a = 0; a < i.length; a++) {
var u = i[a];
o.remove(u),
r = It(u, r),
s.push(r)
}
var c = Vo(16);
for (a = 0; a < s.length; a++) c.insert(Mt(s[a]));
for (var l = e * e,
h = n * n; s.length;) {
var f = s.shift(),
p = f.p,
d = f.next.p,
g = St(p, d);
if (! (g < h)) {
var y = g / l; (u = function(t, e, n, r, i, o, s) {
for (var a = new ns(null, bt), u = t.data; u;) {
for (var c = 0; c < u.children.length; c++) {
var l = u.children[c],
h = u.leaf ? Ct(l, n, r) : function(t, e, n) {
if (xt(t, n) || xt(e, n)) return 0;
var r = Nt(t[0], t[1], e[0], e[1], n.minX, n.minY, n.maxX, n.minY);
if (0 === r) return 0;
var i = Nt(t[0], t[1], e[0], e[1], n.minX, n.minY, n.minX, n.maxY);
if (0 === i) return 0;
var o = Nt(t[0], t[1], e[0], e[1], n.maxX, n.minY, n.maxX, n.maxY);
if (0 === o) return 0;
var s = Nt(t[0], t[1], e[0], e[1], n.minX, n.maxY, n.maxX, n.maxY);
return 0 === s ? 0 : Math.min(r, i, o, s)
} (n, r, l);
h > o || a.push({
node: l,
dist: h
})
}
for (; a.length && !a.peek().node.children;) {
var f = a.pop(),
p = f.node,
d = Ct(p, e, n),
g = Ct(p, r, i);
if (f.dist < d && f.dist < g && Et(n, p, s) && Et(r, p, s)) return p
} (u = a.pop()) && (u = u.node)
}
return null
} (o, f.prev.p, p, d, f.next.next.p, y, c)) && Math.min(St(u, p), St(u, d)) <= y && (s.push(f), s.push(It(u, f)), o.remove(u), c.remove(f), c.insert(Mt(f)), c.insert(Mt(f.next)))
}
}
f = r;
var v = [];
do {
v.push(f.p), f = f.next
} while ( f !== r );
return v.push(f.p),
v
}
function bt(t, e) {
return t.dist - e.dist
}
function xt(t, e) {
return t[0] >= e.minX && t[0] <= e.maxX && t[1] >= e.minY && t[1] <= e.maxY
}
function Et(t, e, n) {
for (var r = Math.min(t[0], e[0]), i = Math.min(t[1], e[1]), o = Math.max(t[0], e[0]), s = Math.max(t[1], e[1]), a = n.search({
minX: r,
minY: i,
maxX: o,
maxY: s
}), u = 0; u < a.length; u++) if (function(t, e, n, r) {
return t !== r && e !== n && os(t, e, n) > 0 != os(t, e, r) > 0 && os(n, r, t) > 0 != os(n, r, e) > 0
} (a[u].p, a[u].next.p, t, e)) return ! 1;
return ! 0
}
function Mt(t) {
var e = t.p,
n = t.next.p;
return t.minX = Math.min(e[0], n[0]),
t.minY = Math.min(e[1], n[1]),
t.maxX = Math.max(e[0], n[0]),
t.maxY = Math.max(e[1], n[1]),
t
}
function It(t, e) {
var n = {
p: t,
prev: null,
next: null,
minX: 0,
minY: 0,
maxX: 0,
maxY: 0
};
return e ? (n.next = e.next, n.prev = e, e.next.prev = n, e.next = n) : (n.prev = n, n.next = n),
n
}
function St(t, e) {
var n = t[0] - e[0],
r = t[1] - e[1];
return n * n + r * r
}
function Ct(t, e, n) {
var r = e[0],
i = e[1],
o = n[0] - r,
s = n[1] - i;
if (0 !== o || 0 !== s) {
var a = ((t[0] - r) * o + (t[1] - i) * s) / (o * o + s * s);
a > 1 ? (r = n[0], i = n[1]) : a > 0 && (r += o * a, i += s * a)
}
return o = t[0] - r,
s = t[1] - i,
o * o + s * s
}
function Nt(t, e, n, r, i, o, s, a) {
var u, c, l, h, f = n - t,
p = r - e,
d = s - i,
g = a - o,
y = t - i,
v = e - o,
m = f * f + p * p,
_ = f * d + p * g,
w = d * d + g * g,
b = f * y + p * v,
x = d * y + g * v,
E = m * w - _ * _,
M = E,
I = E;
0 === E ? (c = 0, M = 1, h = x, I = w) : (h = m * x - _ * b, (c = _ * x - w * b) < 0 ? (c = 0, h = x, I = w) : c > M && (c = M, h = x + _, I = w)),
h < 0 ? (h = 0, -b < 0 ? c = 0 : -b > m ? c = M: (c = -b, M = m)) : h > I && (h = I, -b + _ < 0 ? c = 0 : -b + _ > m ? c = M: (c = -b + _, M = m)),
u = 0 === c ? 0 : c / M;
var S = (1 - (l = 0 === h ? 0 : h / I)) * i + l * s - ((1 - u) * t + u * n),
C = (1 - l) * o + l * a - ((1 - u) * e + u * r);
return S * S + C * C
}
function Pt(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.concavity || 1 / 0,
r = [];
if (C(t,
function(t) {
r.push([t[0], t[1]])
}), !r.length) return null;
var i = ss(r, n);
return i.length > 3 ? o([i]) : null
}
function Lt(t, e, n) {
if ("object" != typeof(n = n || {})) throw new Error("options is invalid");
var r = n.ignoreBoundary;
if (!t) throw new Error("point is required");
if (!e) throw new Error("polygon is required");
var i = z(t),
o = Y(e),
s = e.geometry ? e.geometry.type: e.type,
a = e.bbox;
if (a && !1 ===
function(t, e) {
return e[0] <= t[0] && e[1] <= t[1] && e[2] >= t[0] && e[3] >= t[1]
} (i, a)) return ! 1;
"Polygon" === s && (o = [o]);
for (var u = 0,
c = !1; u < o.length && !c; u++) if (At(i, o[u][0], r)) {
for (var l = !1,
h = 1; h < o[u].length && !l;) At(i, o[u][h], !r) && (l = !0),
h++;
l || (c = !0)
}
return c
}
function At(t, e, n) {
var r = !1;
e[0][0] === e[e.length - 1][0] && e[0][1] === e[e.length - 1][1] && (e = e.slice(0, e.length - 1));
for (var i = 0,
o = e.length - 1; i < e.length; o = i++) {
var s = e[i][0],
a = e[i][1],
u = e[o][0],
c = e[o][1];
if (t[1] * (s - u) + a * (u - t[0]) + c * (t[0] - s) == 0 && (s - t[0]) * (u - t[0]) <= 0 && (a - t[1]) * (c - t[1]) <= 0) return ! n;
a > t[1] != c > t[1] && t[0] < (u - s) * (t[1] - a) / (c - a) + s && (r = !r)
}
return r
}
function Ot(t, e) {
var n = [];
return R(e,
function(e) {
A(t,
function(t) {
Lt(t, e) && n.push(t)
})
}),
c(n)
}
function Tt(t, e) {
if ("FeatureCollection" !== t.type) throw new Error("points must be a FeatureCollection");
var n = !1;
return c(function(t) {
if (t.length < 3) return [];
t.sort(Dt);
for (var e, n, r, i, o, s, a = t.length - 1,
u = t[a].x, c = t[0].x, l = t[a].y, h = l; a--;) t[a].y < l && (l = t[a].y),
t[a].y > h && (h = t[a].y);
var f, p = c - u,
d = h - l,
g = p > d ? p: d,
y = .5 * (c + u),
v = .5 * (h + l),
m = [new Rt({
x: y - 20 * g,
y: v - g,
__sentinel: !0
},
{
x: y,
y: v + 20 * g,
__sentinel: !0
},
{
x: y + 20 * g,
y: v - g,
__sentinel: !0
})],
_ = [],
w = [];
for (a = t.length; a--;) {
for (w.length = 0, f = m.length; f--;)(p = t[a].x - m[f].x) > 0 && p * p > m[f].r ? (_.push(m[f]), m.splice(f, 1)) : (d = t[a].y - m[f].y, p * p + d * d > m[f].r || (w.push(m[f].a, m[f].b, m[f].b, m[f].c, m[f].c, m[f].a), m.splice(f, 1)));
for (kt(w), f = w.length; f;) n = w[--f],
e = w[--f],
r = t[a],
i = n.x - e.x,
o = n.y - e.y,
s = 2 * (i * (r.y - n.y) - o * (r.x - n.x)),
Math.abs(s) > 1e-12 && m.push(new Rt(e, n, r))
}
for (Array.prototype.push.apply(_, m), a = _.length; a--;)(_[a].a.__sentinel || _[a].b.__sentinel || _[a].c.__sentinel) && _.splice(a, 1);
return _
} (t.features.map(function(t) {
var r = {
x: t.geometry.coordinates[0],
y: t.geometry.coordinates[1]
};
return e ? r.z = t.properties[e] : 3 === t.geometry.coordinates.length && (n = !0, r.z = t.geometry.coordinates[2]),
r
})).map(function(t) {
var e = [t.a.x, t.a.y],
r = [t.b.x, t.b.y],
i = [t.c.x, t.c.y],
s = {};
return n ? (e.push(t.a.z), r.push(t.b.z), i.push(t.c.z)) : s = {
a: t.a.z,
b: t.b.z,
c: t.c.z
},
o([[e, r, i, e]], s)
}))
}
function Rt(t, e, n) {
this.a = t,
this.b = e,
this.c = n;
var r, i, o = e.x - t.x,
s = e.y - t.y,
a = n.x - t.x,
u = n.y - t.y,
c = o * (t.x + e.x) + s * (t.y + e.y),
l = a * (t.x + n.x) + u * (t.y + n.y),
h = 2 * (o * (n.y - e.y) - s * (n.x - e.x));
this.x = (u * c - s * l) / h,
this.y = (o * l - a * c) / h,
r = this.x - t.x,
i = this.y - t.y,
this.r = r * r + i * i
}
function Dt(t, e) {
return e.x - t.x
}
function kt(t) {
var e, n, r, i, o, s = t.length;
t: for (; s;) for (n = t[--s], e = t[--s], r = s; r;) if (o = t[--r], i = t[--r], e === i && n === o || e === o && n === i) {
t.splice(s, 2),
t.splice(r, 2),
s -= 2;
continue t
}
}
function Ft(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.units,
i = z(t),
o = z(e),
s = w(o[1] - i[1]),
a = w(o[0] - i[0]),
u = w(i[1]),
c = w(o[1]),
l = Math.pow(Math.sin(s / 2), 2) + Math.pow(Math.sin(a / 2), 2) * Math.cos(u) * Math.cos(c);
return g(2 * Math.atan2(Math.sqrt(l), Math.sqrt(1 - l)), r)
}
function jt(t) {
if (!t) throw new Error("geojson is required");
switch (t.type) {
case "Feature":
return qt(t);
case "FeatureCollection":
return function(t) {
var e = {
type: "FeatureCollection"
};
return Object.keys(t).forEach(function(n) {
switch (n) {
case "type":
case "features":
return;
default:
e[n] = t[n]
}
}),
e.features = t.features.map(function(t) {
return qt(t)
}),
e
} (t);
case "Point":
case "LineString":
case "Polygon":
case "MultiPoint":
case "MultiLineString":
case "MultiPolygon":
case "GeometryCollection":
return Gt(t);
default:
throw new Error("unknown GeoJSON type")
}
}
function qt(t) {
var e = {
type: "Feature"
};
return Object.keys(t).forEach(function(n) {
switch (n) {
case "type":
case "properties":
case "geometry":
return;
default:
e[n] = t[n]
}
}),
e.properties = Bt(t.properties),
e.geometry = Gt(t.geometry),
e
}
function Bt(t) {
var e = {};
return t ? (Object.keys(t).forEach(function(n) {
var r = t[n];
"object" == typeof r ? null === r ? e[n] = null: r.length ? e[n] = r.map(function(t) {
return t
}) : e[n] = Bt(r) : e[n] = r
}), e) : e
}
function Gt(t) {
var e = {
type: t.type
};
return t.bbox && (e.bbox = t.bbox),
"GeometryCollection" === t.type ? (e.geometries = t.geometries.map(function(t) {
return Gt(t)
}), e) : (e.coordinates = Ut(t.coordinates), e)
}
function Ut(t) {
return "object" != typeof t[0] ? t.slice() : t.map(function(t) {
return Ut(t)
})
}
function zt(t, e) {
function n(t, e) {
e.length && e.pop();
for (var n = c[t < 0 ? ~t: t], r = 0, i = n.length; r < i; ++r) e.push(u(n[r], r));
t < 0 && ls(e, i)
}
function r(t) {
return u(t)
}
function i(t) {
for (var e = [], r = 0, i = t.length; r < i; ++r) n(t[r], e);
return e.length < 2 && e.push(e[0]),
e
}
function o(t) {
for (var e = i(t); e.length < 4;) e.push(e[0]);
return e
}
function s(t) {
return t.map(o)
}
function a(t) {
var e, n = t.type;
switch (n) {
case "GeometryCollection":
return {
type:
n,
geometries: t.geometries.map(a)
};
case "Point":
e = r(t.coordinates);
break;
case "MultiPoint":
e = t.coordinates.map(r);
break;
case "LineString":
e = i(t.arcs);
break;
case "MultiLineString":
e = t.arcs.map(i);
break;
case "Polygon":
e = s(t.arcs);
break;
case "MultiPolygon":
e = t.arcs.map(s);
break;
default:
return null
}
return {
type:
n,
coordinates: e
}
}
var u = cs(t.transform),
c = t.arcs;
return a(e)
}
function Yt(t, e) {
function n(t) {
switch (t.type) {
case "GeometryCollection":
t.geometries.forEach(n);
break;
case "Polygon":
r(t.arcs);
break;
case "MultiPolygon":
t.arcs.forEach(r)
}
}
function r(t) {
t.forEach(function(e) {
e.forEach(function(e) { (o[e = e < 0 ? ~e: e] || (o[e] = [])).push(t)
})
}),
s.push(t)
}
function i(e) {
return function(t) {
for (var e, n = -1,
r = t.length,
i = t[r - 1], o = 0; ++n < r;) e = i,
i = t[n],
o += e[0] * i[1] - e[1] * i[0];
return Math.abs(o)
} (zt(t, {
type: "Polygon",
arcs: [e]
}).coordinates[0])
}
var o = {},
s = [],
a = [];
return e.forEach(n),
s.forEach(function(t) {
if (!t._) {
var e = [],
n = [t];
for (t._ = 1, a.push(e); t = n.pop();) e.push(t),
t.forEach(function(t) {
t.forEach(function(t) {
o[t < 0 ? ~t: t].forEach(function(t) {
t._ || (t._ = 1, n.push(t))
})
})
})
}
}),
s.forEach(function(t) {
delete t._
}),
{
type: "MultiPolygon",
arcs: a.map(function(e) {
var n, r = [];
if (e.forEach(function(t) {
t.forEach(function(t) {
t.forEach(function(t) {
o[t < 0 ? ~t: t].length < 2 && r.push(t)
})
})
}), r = hs(t, r), (n = r.length) > 1) for (var s, a, u = 1,
c = i(r[0]); u < n; ++u)(s = i(r[u])) > c && (a = r[0], r[0] = r[u], r[u] = a, c = s);
return r
})
}
}
function Xt(t, e, n) {
for (var r, i = e + (n---e >> 1); e < i; ++e, --n) r = t[e],
t[e] = t[n],
t[n] = r
}
function Vt(t) {
return null == t ? {
type: null
}: ("FeatureCollection" === t.type ?
function(t) {
var e = {
type: "GeometryCollection",
geometries: t.features.map(Wt)
};
return null != t.bbox && (e.bbox = t.bbox),
e
}: "Feature" === t.type ? Wt: Ht)(t)
}
function Wt(t) {
var e, n = Ht(t.geometry);
null != t.id && (n.id = t.id),
null != t.bbox && (n.bbox = t.bbox);
for (e in t.properties) {
n.properties = t.properties;
break
}
return n
}
function Ht(t) {
if (null == t) return {
type: null
};
var e = "GeometryCollection" === t.type ? {
type: "GeometryCollection",
geometries: t.geometries.map(Ht)
}: "Point" === t.type || "MultiPoint" === t.type ? {
type: t.type,
coordinates: t.coordinates
}: {
type: t.type,
arcs: t.coordinates
};
return null != t.bbox && (e.bbox = t.bbox),
e
}
function Jt(t) {
var e, n = t[0],
r = t[1];
return r < n && (e = n, n = r, r = e),
n + 31 * r
}
function Zt(t, e) {
var n, r = t[0],
i = t[1],
o = e[0],
s = e[1];
return i < r && (n = r, r = i, i = n),
s < o && (n = o, o = s, s = n),
r === o && i === s
}
function Qt(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.mutate;
if ("FeatureCollection" !== Q(t)) throw new Error("geojson must be a FeatureCollection");
if (!t.features.length) throw new Error("geojson is empty"); ! 1 !== n && void 0 !== n || (t = jt(t));
var r = [],
i = G(t,
function(t, e) {
return function(t, e) {
var n, r = t.geometry.coordinates,
i = e.geometry.coordinates,
o = Kt(r[0]),
s = Kt(r[r.length - 1]),
u = Kt(i[0]),
c = Kt(i[i.length - 1]);
if (o === c) n = i.concat(r.slice(1));
else if (u === s) n = r.concat(i.slice(1));
else if (o === u) n = r.slice(1).reverse().concat(i);
else {
if (s !== c) return null;
n = r.concat(i.reverse().slice(1))
}
return a(n)
} (t, e) || (r.push(t), e)
});
return i && r.push(i),
r.length ? 1 === r.length ? r[0] : l(r.map(function(t) {
return t.coordinates
})) : null
}
function Kt(t) {
return t[0].toString() + "," + t[1].toString()
}
function $t(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.mutate;
if ("FeatureCollection" !== Q(t)) throw new Error("geojson must be a FeatureCollection");
if (!t.features.length) throw new Error("geojson is empty"); ! 1 !== n && void 0 !== n || (t = jt(t));
var r = function(t) {
var e = {};
k(t,
function(t) {
e[t.geometry.type] = !0
});
var n = Object.keys(e);
return 1 === n.length ? n[0] : null
} (t);
if (!r) throw new Error("geojson must be homogenous");
switch (r) {
case "LineString":
return Qt(t, e);
case "Polygon":
return function(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.mutate;
if ("FeatureCollection" !== Q(t)) throw new Error("geojson must be a FeatureCollection");
if (!t.features.length) throw new Error("geojson is empty"); ! 1 !== n && void 0 !== n || (t = jt(t));
var r = [];
k(t,
function(t) {
r.push(t.geometry)
});
var i = xs({
geoms: p(r).geometry
});
return fs(i, i.objects.geoms.geometries)
} (t, e);
default:
throw new Error(r + " is not supported")
}
}
function te(t, n) {
var r = "object" == typeof n ? n.mutate: n;
if (!t) throw new Error("geojson is required");
var i = Q(t),
o = [];
switch (i) {
case "LineString":
o = ee(t);
break;
case "MultiLineString":
case "Polygon":
Y(t).forEach(function(t) {
o.push(ee(t))
});
break;
case "MultiPolygon":
Y(t).forEach(function(t) {
var e = [];
t.forEach(function(t) {
e.push(ee(t))
}),
o.push(e)
});
break;
case "Point":
return t;
case "MultiPoint":
var s = {};
Y(t).forEach(function(t) {
var e = t.join("-");
s.hasOwnProperty(e) || (o.push(t), s[e] = !0)
});
break;
default:
throw new Error(i + " geometry not supported")
}
return t.coordinates ? !0 === r ? (t.coordinates = o, t) : {
type: i,
coordinates: o
}: !0 === r ? (t.geometry.coordinates = o, t) : e({
type: i,
coordinates: o
},
t.properties, t.bbox, t.id)
}
function ee(t) {
var e = Y(t);
if (2 === e.length && !
function(t, e) {
return t[0] === e[0] && t[1] === e[1]
} (e[0], e[1])) return e;
var n, r, i, o = [],
s = e.length - 1;
o.push(e[0]);
for (var a = 1; a < s; a++) n = e[a - 1],
r = e[a],
function(t, e, n) {
var r = n[0],
i = n[1],
o = t[0],
s = t[1],
a = e[0],
u = e[1],
c = a - o,
l = u - s;
return (r - o) * l - (i - s) * c == 0 && (Math.abs(c) >= Math.abs(l) ? c > 0 ? o <= r && r <= a: a <= r && r <= o: l > 0 ? s <= i && i <= u: u <= i && i <= s)
} (n, i = e[a + 1], r) || o.push(r);
return o.push(i),
o
}
function ne(t, e) {
var n = t.x - e.x,
r = t.y - e.y;
return n * n + r * r
}
function re(t, e, n) {
var r = e.x,
i = e.y,
o = n.x - r,
s = n.y - i;
if (0 !== o || 0 !== s) {
var a = ((t.x - r) * o + (t.y - i) * s) / (o * o + s * s);
a > 1 ? (r = n.x, i = n.y) : a > 0 && (r += o * a, i += s * a)
}
return o = t.x - r,
s = t.y - i,
o * o + s * s
}
function ie(t, e, n, r, i) {
for (var o, s = r,
a = e + 1; a < n; a++) {
var u = re(t[a], t[e], t[n]);
u > s && (o = a, s = u)
}
s > r && (o - e > 1 && ie(t, e, o, r, i), i.push(t[o]), n - o > 1 && ie(t, o, n, r, i))
}
function oe(t, e, n) {
if (t.length <= 2) return t;
var r = void 0 !== e ? e * e: 1;
return t = n ? t: function(t, e) {
for (var n, r = t[0], i = [r], o = 1, s = t.length; o < s; o++) ne(n = t[o], r) > e && (i.push(n), r = n);
return r !== n && i.push(n),
i
} (t, r),
t = function(t, e) {
var n = t.length - 1,
r = [t[0]];
return ie(t, 0, n, e, r),
r.push(t[n]),
r
} (t, r)
}
function se(t, e, n) {
return oe(t.map(function(t) {
return {
x: t[0],
y: t[1],
z: t[2]
}
}), e, n).map(function(t) {
return t.z ? [t.x, t.y, t.z] : [t.x, t.y]
})
}
function ae(t, e, n) {
return t.map(function(t) {
var r = t.map(function(t) {
return {
x: t[0],
y: t[1]
}
});
if (r.length < 4) throw new Error("invalid polygon");
for (var i = oe(r, e, n).map(function(t) {
return [t.x, t.y]
}); !
function(t) {
return ! (t.length < 3 || 3 === t.length && t[2][0] === t[0][0] && t[2][1] === t[0][1])
} (i);) i = oe(r, e -= .01 * e, n).map(function(t) {
return [t.x, t.y]
});
return i[i.length - 1][0] === i[0][0] && i[i.length - 1][1] === i[0][1] || i.push(i[0]),
i
})
}
function ue(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.resolution || 1e4,
r = e.sharpness || .85;
if (!t) throw new Error("line is required");
if (!E(n)) throw new Error("resolution must be an number");
if (!E(r)) throw new Error("sharpness must be an number");
for (var i = [], o = new Es({
points: J(t).coordinates.map(function(t) {
return {
x: t[0],
y: t[1]
}
}),
duration: n,
sharpness: r
}), s = 0; s < o.duration; s += 10) {
var u = o.pos(s);
Math.floor(s / 100) % 2 == 0 && i.push([u.x, u.y])
}
return a(i, t.properties)
}
function ce(t) {
I(t);
var e = Number(t[0]),
n = Number(t[1]),
r = Number(t[2]),
i = Number(t[3]);
if (6 === t.length) throw new Error("@turf/bbox-polygon does not support BBox with 6 positions");
var s = [e, n];
return o([[s, [r, n], [r, i], [e, i], s]])
}
function le(t) {
return ce(U(t))
}
function he(t) {
var e = t[0],
n = t[1],
r = t[2],
i = t[3];
if (Ft(t.slice(0, 2), [r, n]) >= Ft(t.slice(0, 2), [e, i])) {
var o = (n + i) / 2;
return [e, o - (r - e) / 2, r, o + (r - e) / 2]
}
var s = (e + r) / 2;
return [s - (i - n) / 2, n, s + (i - n) / 2, i]
}
function fe(t, e, n, i) {
if (i = i || {},
!M(i)) throw new Error("options is invalid");
var o = i.units,
s = i.properties,
a = z(t),
u = w(a[0]),
c = w(a[1]),
l = w(n),
h = y(e, o),
f = Math.asin(Math.sin(c) * Math.cos(h) + Math.cos(c) * Math.sin(h) * Math.cos(l));
return r([_(u + Math.atan2(Math.sin(l) * Math.sin(h) * Math.cos(c), Math.cos(h) - Math.sin(c) * Math.sin(f))), _(f)], s)
}
function pe(t, e, n) {
var r = (n = n || {}).steps || 64,
i = n.properties;
if (!t) throw new Error("center is required");
if (!e) throw new Error("radius is required");
if ("object" != typeof n) throw new Error("options must be an object");
if ("number" != typeof r) throw new Error("steps must be a number");
r = r || 64,
i = i || t.properties || {};
for (var s = [], a = 0; a < r; a++) s.push(fe(t, e, -360 * a / r, n).geometry.coordinates);
return s.push(s[0]),
o([s], i)
}
function de(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
if (!0 === n.final) return function(t, e) {
var n = de(e, t);
return n = (n + 180) % 360
} (t, e);
var r = z(t),
i = z(e),
o = w(r[0]),
s = w(i[0]),
a = w(r[1]),
u = w(i[1]),
c = Math.sin(s - o) * Math.cos(u),
l = Math.cos(a) * Math.sin(u) - Math.sin(a) * Math.cos(u) * Math.cos(s - o);
return _(Math.atan2(c, l))
}
function ge(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.properties;
if (!t) throw new Error("geojson is required");
var i = U(t);
return r([(i[0] + i[2]) / 2, (i[1] + i[3]) / 2], n)
}
function ye(t, e) {
var n = 0,
i = 0,
o = 0;
return C(t,
function(t) {
n += t[0],
i += t[1],
o++
},
!0),
r([n / o, i / o], e)
}
function ve(t, e) {
switch (Q(t)) {
case "Point":
return t;
case "Polygon":
var n = [];
C(t,
function(t) {
n.push(t)
});
var i, o, s, a, u, c, l, h, f = ye(t, e),
p = f.geometry.coordinates,
d = 0,
g = 0,
y = 0,
v = n.map(function(t) {
return [t[0] - p[0], t[1] - p[1]]
});
for (i = 0; i < n.length - 1; i++) a = (o = v[i])[0],
c = o[1],
u = (s = v[i + 1])[0],
y += h = a * (l = s[1]) - u * c,
d += (a + u) * h,
g += (c + l) * h;
if (0 === y) return f;
var m = 1 / (.5 * y * 6);
return r([p[0] + m * d, p[1] + m * g], e);
default:
var _ = Pt(t);
return _ ? ve(_, e) : ye(t, e)
}
}
function me(t) {
var e = [];
return "FeatureCollection" === t.type ? A(t,
function(t) {
C(t,
function(n) {
e.push(r(n, t.properties))
})
}) : C(t,
function(n) {
e.push(r(n, t.properties))
}),
c(e)
}
function _e(t, e, n) {
n = n || 2;
var r = e && e.length,
i = r ? e[0] * n: t.length,
o = we(t, 0, i, n, !0),
s = [];
if (!o) return s;
var a, u, c, l, h, f, p;
if (r && (o = function(t, e, n, r) {
var i, o, s, a, u, c = [];
for (i = 0, o = e.length; i < o; i++) s = e[i] * r,
a = i < o - 1 ? e[i + 1] * r: t.length,
(u = we(t, s, a, r, !1)) === u.next && (u.steiner = !0),
c.push(function(t) {
var e = t,
n = t;
do {
e.x < n.x && (n = e), e = e.next
} while ( e !== t );
return n
} (u));
for (c.sort(Ee), i = 0; i < c.length; i++) !
function(t, e) {
if (e = function(t, e) {
var n, r = e,
i = t.x,
o = t.y,
s = -1 / 0;
do {
if (o <= r.y && o >= r.next.y && r.next.y !== r.y) {
var a = r.x + (o - r.y) * (r.next.x - r.x) / (r.next.y - r.y);
if (a <= i && a > s) {
if (s = a, a === i) {
if (o === r.y) return r;
if (o === r.next.y) return r.next
}
n = r.x < r.next.x ? r: r.next
}
}
r = r.next
} while ( r !== e );
if (!n) return null;
if (i === s) return n.prev;
var u, c = n,
l = n.x,
h = n.y,
f = 1 / 0;
for (r = n.next; r !== c;) i >= r.x && r.x >= l && i !== r.x && Ie(o < h ? i: s, o, l, h, o < h ? s: i, o, r.x, r.y) && ((u = Math.abs(o - r.y) / (i - r.x)) < f || u === f && r.x > n.x) && Pe(r, t) && (n = r, f = u),
r = r.next;
return n
} (t, e)) {
var n = Le(e, t);
be(n, n.next)
}
} (c[i], n),
n = be(n, n.next);
return n
} (t, e, o, n)), t.length > 80 * n) {
a = c = t[0],
u = l = t[1];
for (var d = n; d < i; d += n) h = t[d],
f = t[d + 1],
h < a && (a = h),
f < u && (u = f),
h > c && (c = h),
f > l && (l = f);
p = 0 !== (p = Math.max(c - a, l - u)) ? 1 / p: 0
}
return xe(o, s, n, a, u, p),
s
}
function we(t, e, n, r, i) {
var o, s;
if (i === Re(t, e, n, r) > 0) for (o = e; o < n; o += r) s = Ae(o, t[o], t[o + 1], s);
else for (o = n - r; o >= e; o -= r) s = Ae(o, t[o], t[o + 1], s);
return s && Ce(s, s.next) && (Oe(s), s = s.next),
s
}
function be(t, e) {
if (!t) return t;
e || (e = t);
var n, r = t;
do {
if (n = !1, r.steiner || !Ce(r, r.next) && 0 !== Se(r.prev, r, r.next)) r = r.next;
else {
if (Oe(r), (r = e = r.prev) === r.next) break;
n = !0
}
} while ( n || r !== e );
return e
}
function xe(t, e, n, r, i, o, s) {
if (t) { ! s && o &&
function(t, e, n, r) {
var i = t;
do {
null === i.z && (i.z = Me(i.x, i.y, e, n, r)), i.prevZ = i.prev, i.nextZ = i.next, i = i.next
} while ( i !== t );
i.prevZ.nextZ = null,
i.prevZ = null,
function(t) {
var e, n, r, i, o, s, a, u, c = 1;
do {
for (n = t, t = null, o = null, s = 0; n;) {
for (s++, r = n, a = 0, e = 0; e < c && (a++, r = r.nextZ); e++);
for (u = c; a > 0 || u > 0 && r;) 0 !== a && (0 === u || !r || n.z <= r.z) ? (i = n, n = n.nextZ, a--) : (i = r, r = r.nextZ, u--),
o ? o.nextZ = i: t = i,
i.prevZ = o,
o = i;
n = r
}
o.nextZ = null, c *= 2
} while ( s > 1 )
} (i)
} (t, r, i, o);
for (var a, u, c = t; t.prev !== t.next;) if (a = t.prev, u = t.next, o ?
function(t, e, n, r) {
var i = t.prev,
o = t,
s = t.next;
if (Se(i, o, s) >= 0) return ! 1;
for (var a = i.x < o.x ? i.x < s.x ? i.x: s.x: o.x < s.x ? o.x: s.x, u = i.y < o.y ? i.y < s.y ? i.y: s.y: o.y < s.y ? o.y: s.y, c = i.x > o.x ? i.x > s.x ? i.x: s.x: o.x > s.x ? o.x: s.x, l = i.y > o.y ? i.y > s.y ? i.y: s.y: o.y > s.y ? o.y: s.y, h = Me(a, u, e, n, r), f = Me(c, l, e, n, r), p = t.nextZ; p && p.z <= f;) {
if (p !== t.prev && p !== t.next && Ie(i.x, i.y, o.x, o.y, s.x, s.y, p.x, p.y) && Se(p.prev, p, p.next) >= 0) return ! 1;
p = p.nextZ
}
for (p = t.prevZ; p && p.z >= h;) {
if (p !== t.prev && p !== t.next && Ie(i.x, i.y, o.x, o.y, s.x, s.y, p.x, p.y) && Se(p.prev, p, p.next) >= 0) return ! 1;
p = p.prevZ
}
return ! 0
} (t, r, i, o) : function(t) {
var e = t.prev,
n = t,
r = t.next;
if (Se(e, n, r) >= 0) return ! 1;
for (var i = t.next.next; i !== t.prev;) {
if (Ie(e.x, e.y, n.x, n.y, r.x, r.y, i.x, i.y) && Se(i.prev, i, i.next) >= 0) return ! 1;
i = i.next
}
return ! 0
} (t)) e.push(a.i / n),
e.push(t.i / n),
e.push(u.i / n),
Oe(t),
t = u.next,
c = u.next;
else if ((t = u) === c) {
s ? 1 === s ? xe(t = function(t, e, n) {
var r = t;
do {
var i = r.prev,
o = r.next.next; ! Ce(i, o) && Ne(i, r, r.next, o) && Pe(i, o) && Pe(o, i) && (e.push(i.i / n), e.push(r.i / n), e.push(o.i / n), Oe(r), Oe(r.next), r = t = o), r = r.next
} while ( r !== t );
return r
} (t, e, n), e, n, r, i, o, 2) : 2 === s &&
function(t, e, n, r, i, o) {
var s = t;
do {
for (var a = s.next.next; a !== s.prev;) {
if (s.i !== a.i &&
function(t, e) {
return t.next.i !== e.i && t.prev.i !== e.i && !
function(t, e) {
var n = t;
do {
if (n.i !== t.i && n.next.i !== t.i && n.i !== e.i && n.next.i !== e.i && Ne(n, n.next, t, e)) return ! 0;
n = n.next
} while ( n !== t );
return ! 1
} (t, e) && Pe(t, e) && Pe(e, t) &&
function(t, e) {
var n = t,
r = !1,
i = (t.x + e.x) / 2,
o = (t.y + e.y) / 2;
do {
n.y > o != n.next.y > o && n.next.y !== n.y && i < (n.next.x - n.x) * (o - n.y) / (n.next.y - n.y) + n.x && (r = !r), n = n.next
} while ( n !== t );
return r
} (t, e)
} (s, a)) {
var u = Le(s, a);
return s = be(s, s.next),
u = be(u, u.next),
xe(s, e, n, r, i, o),
void xe(u, e, n, r, i, o)
}
a = a.next
}
s = s.next
} while ( s !== t )
} (t, e, n, r, i, o) : xe(be(t), e, n, r, i, o, 1);
break
}
}
}
function Ee(t, e) {
return t.x - e.x
}
function Me(t, e, n, r, i) {
return t = 32767 * (t - n) * i,
e = 32767 * (e - r) * i,
t = 16711935 & (t | t << 8),
t = 252645135 & (t | t << 4),
t = 858993459 & (t | t << 2),
t = 1431655765 & (t | t << 1),
e = 16711935 & (e | e << 8),
e = 252645135 & (e | e << 4),
e = 858993459 & (e | e << 2),
e = 1431655765 & (e | e << 1),
t | e << 1
}
function Ie(t, e, n, r, i, o, s, a) {
return (i - s) * (e - a) - (t - s) * (o - a) >= 0 && (t - s) * (r - a) - (n - s) * (e - a) >= 0 && (n - s) * (o - a) - (i - s) * (r - a) >= 0
}
function Se(t, e, n) {
return (e.y - t.y) * (n.x - e.x) - (e.x - t.x) * (n.y - e.y)
}
function Ce(t, e) {
return t.x === e.x && t.y === e.y
}
function Ne(t, e, n, r) {
return !! (Ce(t, e) && Ce(n, r) || Ce(t, r) && Ce(n, e)) || Se(t, e, n) > 0 != Se(t, e, r) > 0 && Se(n, r, t) > 0 != Se(n, r, e) > 0
}
function Pe(t, e) {
return Se(t.prev, t, t.next) < 0 ? Se(t, e, t.next) >= 0 && Se(t, t.prev, e) >= 0 : Se(t, e, t.prev) < 0 || Se(t, t.next, e) < 0
}
function Le(t, e) {
var n = new Te(t.i, t.x, t.y),
r = new Te(e.i, e.x, e.y),
i = t.next,
o = e.prev;
return t.next = e,
e.prev = t,
n.next = i,
i.prev = n,
r.next = n,
n.prev = r,
o.next = r,
r.prev = o,
r
}
function Ae(t, e, n, r) {
var i = new Te(t, e, n);
return r ? (i.next = r.next, i.prev = r, r.next.prev = i, r.next = i) : (i.prev = i, i.next = i),
i
}
function Oe(t) {
t.next.prev = t.prev,
t.prev.next = t.next,
t.prevZ && (t.prevZ.nextZ = t.nextZ),
t.nextZ && (t.nextZ.prevZ = t.prevZ)
}
function Te(t, e, n) {
this.i = t,
this.x = e,
this.y = n,
this.prev = null,
this.next = null,
this.z = null,
this.prevZ = null,
this.nextZ = null,
this.steiner = !1
}
function Re(t, e, n, r) {
for (var i = 0,
o = e,
s = n - r; o < n; o += r) i += (t[s] - t[o]) * (t[o + 1] + t[s + 1]),
s = o;
return i
}
function De(t) {
var e = function(t) {
for (var e = t[0][0].length, n = {
vertices: [],
holes: [],
dimensions: e
},
r = 0, i = 0; i < t.length; i++) {
for (var o = 0; o < t[i].length; o++) for (var s = 0; s < e; s++) n.vertices.push(t[i][o][s]);
i > 0 && (r += t[i - 1].length, n.holes.push(r))
}
return n
} (t),
n = Ms(e.vertices, e.holes, 2),
r = [],
i = [];
n.forEach(function(t, r) {
var o = n[r];
i.push([e.vertices[2 * o], e.vertices[2 * o + 1]])
});
for (var s = 0; s < i.length; s += 3) {
var a = i.slice(s, s + 3);
a.push(i[s]),
r.push(o([a]))
}
return r
}
function ke(t, e) {
if (!t) throw new Error("targetPoint is required");
if (!e) throw new Error("points is required");
var n, r = 1 / 0;
return A(e,
function(e, i) {
var o = Ft(t, e);
o < r && ((n = jt(e)).properties.featureIndex = i, n.properties.distanceToPoint = o, r = o)
}),
n
}
function Fe(t, e, n, r, i) {
je(t, e, n || 0, r || t.length - 1, i ||
function(t, e) {
return t < e ? -1 : t > e ? 1 : 0
})
}
function je(t, e, n, r, i) {
for (; r > n;) {
if (r - n > 600) {
var o = r - n + 1,
s = e - n + 1,
a = Math.log(o),
u = .5 * Math.exp(2 * a / 3),
c = .5 * Math.sqrt(a * u * (o - u) / o) * (s - o / 2 < 0 ? -1 : 1);
je(t, e, Math.max(n, Math.floor(e - s * u / o + c)), Math.min(r, Math.floor(e + (o - s) * u / o + c)), i)
}
var l = t[e],
h = n,
f = r;
for (qe(t, n, e), i(t[r], l) > 0 && qe(t, n, r); h < f;) {
for (qe(t, h, f), h++, f--; i(t[h], l) < 0;) h++;
for (; i(t[f], l) > 0;) f--
}
0 === i(t[n], l) ? qe(t, n, f) : qe(t, ++f, r),
f <= e && (n = f + 1),
e <= f && (r = f - 1)
}
}
function qe(t, e, n) {
var r = t[e];
t[e] = t[n],
t[n] = r
}
function Be(t, e) {
if (! (this instanceof Be)) return new Be(t, e);
this._maxEntries = Math.max(4, t || 9),
this._minEntries = Math.max(2, Math.ceil(.4 * this._maxEntries)),
e && this._initFormat(e),
this.clear()
}
function Ge(t, e) {
Ue(t, 0, t.children.length, e, t)
}
function Ue(t, e, n, r, i) {
i || (i = Ze(null)),
i.minX = 1 / 0,
i.minY = 1 / 0,
i.maxX = -1 / 0,
i.maxY = -1 / 0;
for (var o, s = e; s < n; s++) o = t.children[s],
ze(i, t.leaf ? r(o) : o);
return i
}
function ze(t, e) {
return t.minX = Math.min(t.minX, e.minX),
t.minY = Math.min(t.minY, e.minY),
t.maxX = Math.max(t.maxX, e.maxX),
t.maxY = Math.max(t.maxY, e.maxY),
t
}
function Ye(t, e) {
return t.minX - e.minX
}
function Xe(t, e) {
return t.minY - e.minY
}
function Ve(t) {
return (t.maxX - t.minX) * (t.maxY - t.minY)
}
function We(t) {
return t.maxX - t.minX + (t.maxY - t.minY)
}
function He(t, e) {
return t.minX <= e.minX && t.minY <= e.minY && e.maxX <= t.maxX && e.maxY <= t.maxY
}
function Je(t, e) {
return e.minX <= t.maxX && e.minY <= t.maxY && e.maxX >= t.minX && e.maxY >= t.minY
}
function Ze(t) {
return {
children: t,
height: 1,
leaf: !0,
minX: 1 / 0,
minY: 1 / 0,
maxX: -1 / 0,
maxY: -1 / 0
}
}
function Qe(t, e, n, r, i) {
for (var o, s = [e, n]; s.length;)(n = s.pop()) - (e = s.pop()) <= r || (Fe(t, o = e + Math.ceil((n - e) / r / 2) * r, e, n, i), s.push(e, o, o, n))
}
function Ke(t) {
var e = Be(t);
return e.insert = function(t) {
if (Array.isArray(t)) {
var e = t; (t = $e(e)).bbox = e
} else t.bbox = t.bbox ? t.bbox: tn(t);
return Be.prototype.insert.call(this, t)
},
e.load = function(t) {
var e = [];
return Array.isArray(t) ? t.forEach(function(t) {
var n = $e(t);
n.bbox = t,
e.push(n)
}) : A(t,
function(t) {
t.bbox = t.bbox ? t.bbox: tn(t),
e.push(t)
}),
Be.prototype.load.call(this, e)
},
e.remove = function(t) {
if (Array.isArray(t)) {
var e = t; (t = $e(e)).bbox = e
}
return Be.prototype.remove.call(this, t)
},
e.clear = function() {
return Be.prototype.clear.call(this)
},
e.search = function(t) {
return {
type: "FeatureCollection",
features: Be.prototype.search.call(this, this.toBBox(t))
}
},
e.collides = function(t) {
return Be.prototype.collides.call(this, this.toBBox(t))
},
e.all = function() {
return {
type: "FeatureCollection",
features: Be.prototype.all.call(this)
}
},
e.toJSON = function() {
return Be.prototype.toJSON.call(this)
},
e.fromJSON = function(t) {
return Be.prototype.fromJSON.call(this, t)
},
e.toBBox = function(t) {
var e;
return e = t.bbox ? t.bbox: Array.isArray(t) && 4 === t.length ? t: tn(t),
{
minX: e[0],
minY: e[1],
maxX: e[2],
maxY: e[3]
}
},
e
}
function $e(t) {
var e = [t[0], t[1]],
n = [t[0], t[3]],
r = [t[2], t[3]];
return {
type: "Feature",
bbox: t,
properties: {},
geometry: {
type: "Polygon",
coordinates: [[e, [t[2], t[1]], r, n, e]]
}
}
}
function tn(t) {
var e = [1 / 0, 1 / 0, -1 / 0, -1 / 0];
return C(t,
function(t) {
e[0] > t[0] && (e[0] = t[0]),
e[1] > t[1] && (e[1] = t[1]),
e[2] < t[0] && (e[2] = t[0]),
e[3] < t[1] && (e[3] = t[1])
}),
e
}
function en(t) {
if (!t) throw new Error("geojson is required");
var e = [];
return k(t,
function(t) { !
function(t, e) {
var n = [],
r = t.geometry;
switch (r.type) {
case "Polygon":
n = Y(r);
break;
case "LineString":
n = [Y(r)]
}
n.forEach(function(n) { (function(t, e) {
var n = [];
return t.reduce(function(t, r) {
var i = a([t, r], e);
return i.bbox = function(t, e) {
var n = t[0],
r = t[1],
i = e[0],
o = e[1];
return [n < i ? n: i, r < o ? r: o, n > i ? n: i, r > o ? r: o]
} (t, r),
n.push(i),
r
}),
n
})(n, t.properties).forEach(function(t) {
t.id = e.length,
e.push(t)
})
})
} (t, e)
}),
c(e)
}
function nn(t, n) {
var r = {},
i = [];
if ("LineString" === t.type && (t = e(t)), "LineString" === n.type && (n = e(n)), "Feature" === t.type && "Feature" === n.type && "LineString" === t.geometry.type && "LineString" === n.geometry.type && 2 === t.geometry.coordinates.length && 2 === n.geometry.coordinates.length) {
var o = rn(t, n);
return o && i.push(o),
c(i)
}
var s = Ke();
return s.load(en(n)),
A(en(t),
function(t) {
A(s.search(t),
function(e) {
var n = rn(t, e);
if (n) {
var o = Y(n).join(",");
r[o] || (r[o] = !0, i.push(n))
}
})
}),
c(i)
}
function rn(t, e) {
var n = Y(t),
i = Y(e);
if (2 !== n.length) throw new Error("<intersects> line1 must only contain 2 coordinates");
if (2 !== i.length) throw new Error("<intersects> line2 must only contain 2 coordinates");
var o = n[0][0],
s = n[0][1],
a = n[1][0],
u = n[1][1],
c = i[0][0],
l = i[0][1],
h = i[1][0],
f = i[1][1],
p = (f - l) * (a - o) - (h - c) * (u - s),
d = (h - c) * (s - l) - (f - l) * (o - c),
g = (a - o) * (s - l) - (u - s) * (o - c);
if (0 === p) return null;
var y = d / p,
v = g / p;
return y >= 0 && y <= 1 && v >= 0 && v <= 1 ? r([o + y * (a - o), s + y * (u - s)]) : null
}
function on(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var i = t.geometry ? t.geometry.type: t.type;
if ("LineString" !== i && "MultiLineString" !== i) throw new Error("lines must be LineString or MultiLineString");
var o = r([1 / 0, 1 / 0], {
dist: 1 / 0
}),
s = 0;
return k(t,
function(t) {
for (var i = Y(t), u = 0; u < i.length - 1; u++) {
var c = r(i[u]);
c.properties.dist = Ft(e, c, n);
var l = r(i[u + 1]);
l.properties.dist = Ft(e, l, n);
var h = Ft(c, l, n),
f = Math.max(c.properties.dist, l.properties.dist),
p = de(c, l),
d = fe(e, f, p + 90, n),
g = fe(e, f, p - 90, n),
y = nn(a([d.geometry.coordinates, g.geometry.coordinates]), a([c.geometry.coordinates, l.geometry.coordinates])),
v = null;
y.features.length > 0 && ((v = y.features[0]).properties.dist = Ft(e, v, n), v.properties.location = s + Ft(c, v, n)),
c.properties.dist < o.properties.dist && ((o = c).properties.index = u, o.properties.location = s),
l.properties.dist < o.properties.dist && ((o = l).properties.index = u + 1, o.properties.location = s + h),
v && v.properties.dist < o.properties.dist && ((o = v).properties.index = u),
s += h
}
}),
o
}
function sn(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.final;
if (!t) throw new Error("start point is required");
if (!e) throw new Error("end point is required");
var i;
return (i = r ? an(z(e), z(t)) : an(z(t), z(e))) > 180 ? -(360 - i) : i
}
function an(t, e) {
var n = w(t[1]),
r = w(e[1]),
i = w(e[0] - t[0]);
i > Math.PI && (i -= 2 * Math.PI),
i < -Math.PI && (i += 2 * Math.PI);
var o = Math.log(Math.tan(r / 2 + Math.PI / 4) / Math.tan(n / 2 + Math.PI / 4));
return (_(Math.atan2(i, o)) + 360) % 360
}
function un(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.units;
if (!t) throw new Error("from point is required");
if (!e) throw new Error("to point is required");
var i = z(t),
o = z(e);
return o[0] += o[0] - i[0] > 180 ? -360 : i[0] - o[0] > 180 ? 360 : 0,
b(function(t, e, n) {
var r = n = void 0 === n ? ko: Number(n),
i = t[1] * Math.PI / 180,
o = e[1] * Math.PI / 180,
s = o - i,
a = Math.abs(e[0] - t[0]) * Math.PI / 180;
a > Math.PI && (a -= 2 * Math.PI);
var u = Math.log(Math.tan(o / 2 + Math.PI / 4) / Math.tan(i / 2 + Math.PI / 4)),
c = Math.abs(u) > 1e-11 ? s / u: Math.cos(i);
return Math.sqrt(s * s + c * c * a * a) * r
} (i, o), "meters", r)
}
function cn(t, e) {
return hn(t, "mercator", e)
}
function ln(t, e) {
return hn(t, "wgs84", e)
}
function hn(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.mutate;
if (!t) throw new Error("geojson is required");
return Array.isArray(t) && E(t[0]) ? t = "mercator" === e ? fn(t) : pn(t) : (!0 !== r && (t = jt(t)), C(t,
function(t) {
var n = "mercator" === e ? fn(t) : pn(t);
t[0] = n[0],
t[1] = n[1]
})),
t
}
function fn(t) {
var e = Math.PI / 180,
n = 20037508.342789244,
r = [6378137 * (Math.abs(t[0]) <= 180 ? t[0] : t[0] - 360 *
function(t) {
return t < 0 ? -1 : t > 0 ? 1 : 0
} (t[0])) * e, 6378137 * Math.log(Math.tan(.25 * Math.PI + .5 * t[1] * e))];
return r[0] > n && (r[0] = n),
r[0] < -n && (r[0] = -n),
r[1] > n && (r[1] = n),
r[1] < -n && (r[1] = -n),
r
}
function pn(t) {
var e = 180 / Math.PI;
return [t[0] * e / 6378137, (.5 * Math.PI - 2 * Math.atan(Math.exp( - t[1] / 6378137))) * e]
}
function dn(t, n, i) {
if (i = i || {},
!M(i)) throw new Error("options is invalid");
if (!t) throw new Error("pt is required");
if (Array.isArray(t) ? t = r(t) : "Point" === t.type ? t = e(t) : W(t, "Point", "point"), !n) throw new Error("line is required");
Array.isArray(n) ? n = a(n) : "LineString" === n.type ? n = e(n) : W(n, "LineString", "line");
var o = 1 / 0,
s = t.geometry.coordinates;
return j(n,
function(t) {
var e = t.geometry.coordinates[0],
n = t.geometry.coordinates[1],
a = function(t, e, n, i) {
var o = i.mercator,
s = !0 !== o ? Ft(e, t, i) : gn(e, t, i),
a = m(!0 !== o ? de(e, t) : sn(e, t)),
u = m(!0 !== o ? de(e, n) : sn(e, n)),
c = Math.abs(a - u);
if (c > 90) return s;
var l = (u + 180) % 360,
h = m(!0 !== o ? de(n, t) : sn(n, t)),
f = Math.abs(h - l);
return f > 180 && (f = Math.abs(f - 360)),
f > 90 ? !0 !== o ? Ft(t, n, i) : gn(t, n, i) : !0 !== o ? s * Math.sin(w(c)) : function(t, e, n, i) {
var o = 0; (Math.abs(t[0]) >= 180 || Math.abs(e[0]) >= 180 || Math.abs(n[0]) >= 180) && (o = t[0] > 0 || e[0] > 0 || n[0] > 0 ? -180 : 180);
var s = r(n),
a = cn([t[0] + o, t[1]]),
u = cn([e[0] + o, e[1]]),
c = cn([n[0] + o, n[1]]),
l = ln(function(t, e, n) {
var r = t[0],
i = t[1],
o = e[0],
s = e[1],
a = n[0],
u = n[1],
c = o - r,
l = s - i,
h = ((a - r) * c + (u - i) * l) / (c * c + l * l);
return [r + h * c, i + h * l]
} (a, u, c));
return 0 !== o && (l[0] -= o),
un(s, l, i)
} (e, n, t, i)
} (s, e, n, i);
o > a && (o = a)
}),
o
}
function gn(t, e, n) {
var r = n.units,
i = 0;
Math.abs(t[0]) >= 180 && (i = t[0] > 0 ? -180 : 180),
Math.abs(e[0]) >= 180 && (i = e[0] > 0 ? -180 : 180);
var o = cn([t[0] + i, t[1]]),
s = cn([e[0] + i, e[1]]),
a = function(t) {
return t * t
},
u = a(o[0] - s[0]) + a(o[1] - s[1]);
return b(Math.sqrt(u), "meters", r)
}
function yn(t) {
for (var n = function(t) {
return "FeatureCollection" !== t.type ? c("Feature" !== t.type ? [e(t)] : [t]) : t
} (t), i = ge(n), o = !1, s = 0; ! o && s < n.features.length;) {
var a, u = n.features[s].geometry,
l = !1;
if ("Point" === u.type) i.geometry.coordinates[0] === u.coordinates[0] && i.geometry.coordinates[1] === u.coordinates[1] && (o = !0);
else if ("MultiPoint" === u.type) {
var h = !1;
for (a = 0; ! h && a < u.coordinates.length;) i.geometry.coordinates[0] === u.coordinates[a][0] && i.geometry.coordinates[1] === u.coordinates[a][1] && (o = !0, h = !0),
a++
} else if ("LineString" === u.type) for (a = 0; ! l && a < u.coordinates.length - 1;) vn(i.geometry.coordinates[0], i.geometry.coordinates[1], u.coordinates[a][0], u.coordinates[a][1], u.coordinates[a + 1][0], u.coordinates[a + 1][1]) && (l = !0, o = !0),
a++;
else if ("MultiLineString" === u.type) for (var f = 0; f < u.coordinates.length;) {
l = !1,
a = 0;
for (var p = u.coordinates[f]; ! l && a < p.length - 1;) vn(i.geometry.coordinates[0], i.geometry.coordinates[1], p[a][0], p[a][1], p[a + 1][0], p[a + 1][1]) && (l = !0, o = !0),
a++;
f++
} else "Polygon" !== u.type && "MultiPolygon" !== u.type || Lt(i, u) && (o = !0);
s++
}
if (o) return i;
var d = c([]);
for (s = 0; s < n.features.length; s++) d.features = d.features.concat(me(n.features[s]).features);
return r(ke(i, d).geometry.coordinates)
}
function vn(t, e, n, r, i, o) {
return Math.sqrt((i - n) * (i - n) + (o - r) * (o - r)) === Math.sqrt((t - n) * (t - n) + (e - r) * (e - r)) + Math.sqrt((i - t) * (i - t) + (o - e) * (o - e))
}
function mn(t) {
return D(t,
function(t, e) {
return t + _n(e)
},
0)
}
function _n(t) {
var e, n = 0;
switch (t.type) {
case "Polygon":
return wn(t.coordinates);
case "MultiPolygon":
for (e = 0; e < t.coordinates.length; e++) n += wn(t.coordinates[e]);
return n;
case "Point":
case "MultiPoint":
case "LineString":
case "MultiLineString":
return 0;
case "GeometryCollection":
for (e = 0; e < t.geometries.length; e++) n += _n(t.geometries[e]);
return n
}
}
function wn(t) {
var e = 0;
if (t && t.length > 0) {
e += Math.abs(bn(t[0]));
for (var n = 1; n < t.length; n++) e -= Math.abs(bn(t[n]))
}
return e
}
function bn(t) {
var e, n, r, i, o, s, a = 0,
u = t.length;
if (u > 2) {
for (s = 0; s < u; s++) s === u - 2 ? (r = u - 2, i = u - 1, o = 0) : s === u - 1 ? (r = u - 1, i = 0, o = 1) : (r = s, i = s + 1, o = s + 2),
e = t[r],
n = t[i],
a += (xn(t[o][0]) - xn(e[0])) * Math.sin(xn(n[1]));
a = a * Cs * Cs / 2
}
return a
}
function xn(t) {
return t * Math.PI / 180
}
function En(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
if (!t) throw new Error("geojson is required");
return q(t,
function(t, n) {
var r = n.geometry.coordinates;
return t + Ft(r[0], r[1], e)
},
0)
}
function Mn(t, e, n, r) {
if (r = r || {},
!M(r)) throw new Error("options is invalid");
var i, o = [];
if ("Feature" === t.type) i = t.geometry.coordinates;
else {
if ("LineString" !== t.type) throw new Error("input must be a LineString Feature or Geometry");
i = t.coordinates
}
for (var s, u, c, l = 0,
h = 0; h < i.length && !(e >= l && h === i.length - 1); h++) {
if (l > e && 0 === o.length) {
if (! (s = e - l)) return o.push(i[h]),
a(o);
u = de(i[h], i[h - 1]) - 180,
c = fe(i[h], s, u, r),
o.push(c.geometry.coordinates)
}
if (l >= n) return (s = n - l) ? (u = de(i[h], i[h - 1]) - 180, c = fe(i[h], s, u, r), o.push(c.geometry.coordinates), a(o)) : (o.push(i[h]), a(o));
if (l >= e && o.push(i[h]), h === i.length - 1) return a(o);
l += Ft(i[h], i[h + 1], r)
}
return a(i[i.length - 1])
}
function In(t, e, n) {
var r = (n = n || {}).ignoreEndVertices;
if (!M(n)) throw new Error("invalid options");
if (!t) throw new Error("pt is required");
if (!e) throw new Error("line is required");
for (var i = z(t), o = Y(e), s = 0; s < o.length - 1; s++) {
var a = !1;
if (r && (0 === s && (a = "start"), s === o.length - 2 && (a = "end"), 0 === s && s + 1 === o.length - 1 && (a = "both")),
function(t, e, n, r) {
var i = n[0],
o = n[1],
s = t[0],
a = t[1],
u = e[0],
c = e[1],
l = n[0] - s,
h = n[1] - a,
f = u - s,
p = c - a;
return l * p - h * f == 0 && (r ? "start" === r ? Math.abs(f) >= Math.abs(p) ? f > 0 ? s < i && i <= u: u <= i && i < s: p > 0 ? a < o && o <= c: c <= o && o < a: "end" === r ? Math.abs(f) >= Math.abs(p) ? f > 0 ? s <= i && i < u: u < i && i <= s: p > 0 ? a <= o && o < c: c < o && o <= a: "both" === r ? Math.abs(f) >= Math.abs(p) ? f > 0 ? s < i && i < u: u < i && i < s: p > 0 ? a < o && o < c: c < o && o < a: void 0 : Math.abs(f) >= Math.abs(p) ? f > 0 ? s <= i && i <= u: u <= i && i <= s: p > 0 ? a <= o && o <= c: c <= o && o <= a)
} (o[s], o[s + 1], i, a)) return ! 0
}
return ! 1
}
function Sn(t, e) {
var n = Q(t),
r = Q(e),
i = J(t),
o = J(e);
switch (n) {
case "Point":
switch (r) {
case "MultiPoint":
return function(t, e) {
var n, r = !1;
for (n = 0; n < e.coordinates.length; n++) if (Nn(e.coordinates[n], t.coordinates)) {
r = !0;
break
}
return r
} (i, o);
case "LineString":
return In(i, o, {
ignoreEndVertices: !0
});
case "Polygon":
return Lt(i, o, {
ignoreBoundary: !0
});
default:
throw new Error("feature2 " + r + " geometry not supported")
}
case "MultiPoint":
switch (r) {
case "MultiPoint":
return function(t, e) {
for (var n = 0; n < t.coordinates.length; n++) {
for (var r = !1,
i = 0; i < e.coordinates.length; i++) Nn(t.coordinates[n], e.coordinates[i]) && (r = !0);
if (!r) return ! 1
}
return ! 0
} (i, o);
case "LineString":
return function(t, e) {
for (var n = !1,
r = 0; r < t.coordinates.length; r++) {
if (!In(t.coordinates[r], e)) return ! 1;
n || (n = In(t.coordinates[r], e, {
ignoreEndVertices: !0
}))
}
return n
} (i, o);
case "Polygon":
return function(t, e) {
for (var n = !0,
r = 0; r < t.coordinates.length; r++) {
var i = Lt(t.coordinates[1], e);
if (!i) {
n = !1;
break
}
i = Lt(t.coordinates[1], e, {
ignoreBoundary: !0
})
}
return n && i
} (i, o);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
case "LineString":
switch (r) {
case "LineString":
return function(t, e) {
for (var n = 0; n < t.coordinates.length; n++) if (!In(t.coordinates[n], e)) return ! 1;
return ! 0
} (i, o);
case "Polygon":
return function(t, e) {
if (!Cn(U(e), U(t))) return ! 1;
for (var n = !1,
r = 0; r < t.coordinates.length - 1; r++) {
if (!Lt(t.coordinates[r], e)) return ! 1;
if (n || (n = Lt(t.coordinates[r], e, {
ignoreBoundary: !0
})), !n) {
n = Lt(function(t, e) {
return [(t[0] + e[0]) / 2, (t[1] + e[1]) / 2]
} (t.coordinates[r], t.coordinates[r + 1]), e, {
ignoreBoundary: !0
})
}
}
return n
} (i, o);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
case "Polygon":
switch (r) {
case "Polygon":
return function(t, e) {
var n = U(t);
if (!Cn(U(e), n)) return ! 1;
for (var r = 0; r < t.coordinates[0].length; r++) if (!Lt(t.coordinates[0][r], e)) return ! 1;
return ! 0
} (i, o);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
default:
throw new Error("feature1 " + n + " geometry not supported")
}
}
function Cn(t, e) {
return ! (t[0] > e[0] || t[2] < e[2] || t[1] > e[1] || t[3] < e[3])
}
function Nn(t, e) {
return t[0] === e[0] && t[1] === e[1]
}
function Pn(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var i = n.mask,
o = n.properties,
s = [];
if (null === e || void 0 === e) throw new Error("cellSide is required");
if (!E(e)) throw new Error("cellSide is invalid");
if (!t) throw new Error("bbox is required");
if (!Array.isArray(t)) throw new Error("bbox must be array");
if (4 !== t.length) throw new Error("bbox must contain 4 numbers");
if (i && -1 === ["Polygon", "MultiPolygon"].indexOf(Q(i))) throw new Error("options.mask must be a (Multi)Polygon");
for (var a = t[0], u = t[1], l = t[2], h = t[3], f = e / Ft([a, u], [l, u], n) * (l - a), p = e / Ft([a, u], [a, h], n) * (h - u), d = l - a, g = h - u, y = Math.floor(d / f), v = (g - Math.floor(g / p) * p) / 2, m = a + (d - y * f) / 2; m <= l;) {
for (var _ = u + v; _ <= h;) {
var w = r([m, _], o);
i ? Sn(w, i) && s.push(w) : s.push(w),
_ += p
}
m += f
}
return c(s)
}
function Ln(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.precision,
r = e.coordinates,
i = e.mutate;
if (n = void 0 === n || null === n || isNaN(n) ? 6 : n, r = void 0 === r || null === r || isNaN(r) ? 3 : r, !t) throw new Error("<geojson> is required");
if ("number" != typeof n) throw new Error("<precision> must be a number");
if ("number" != typeof r) throw new Error("<coordinates> must be a number"); ! 1 !== i && void 0 !== i || (t = JSON.parse(JSON.stringify(t)));
var o = Math.pow(10, n);
return C(t,
function(t) { !
function(t, e, n) {
t.length > n && t.splice(n, t.length);
for (var r = 0; r < t.length; r++) t[r] = Math.round(t[r] * e) / e
} (t, o, r)
}),
t
}
function An(t, e) {
if (!t || !e) return ! 1;
if (t.length !== e.length) return ! 1;
for (var n = 0,
r = t.length; n < r; n++) if (t[n] instanceof Array && e[n] instanceof Array) {
if (!An(t[n], e[n])) return ! 1
} else if (t[n] !== e[n]) return ! 1;
return ! 0
}
function On(t, e) {
if (void 0 === e && (e = !0), 3 != t.length) throw new Error("This function requires an array of three points [x,y]");
return (t[1][0] - t[0][0]) * (t[2][1] - t[0][1]) - (t[1][1] - t[0][1]) * (t[2][0] - t[0][0]) >= 0 == e
}
function Tn(t, e) {
if (!t || !e) return ! 1;
if (t.length != e.length) return ! 1;
for (var n = 0,
r = t.length; n < r; n++) if (t[n] instanceof Array && e[n] instanceof Array) {
if (!Tn(t[n], e[n])) return ! 1
} else if (t[n] != e[n]) return ! 1;
return ! 0
}
function Rn(t, e) {
var n = [],
r = Ke();
return k(e,
function(e) {
if (n.forEach(function(t, e) {
t.id = e
}), n.length) {
var i = r.search(e);
if (i.features.length) {
var o = kn(e, i);
n = n.filter(function(t) {
return t.id !== o.id
}),
r.remove(o),
A(Dn(o, e),
function(t) {
n.push(t),
r.insert(t)
})
}
} else(n = Dn(t, e).features).forEach(function(t) {
t.bbox || (t.bbox = he(U(t)))
}),
r.load(c(n))
}),
c(n)
}
function Dn(t, e) {
var n = [],
r = Y(t)[0],
i = Y(t)[t.geometry.coordinates.length - 1];
if (Fn(r, z(e)) || Fn(i, z(e))) return c([t]);
var o = Ke(),
s = en(t);
o.load(s);
var u = o.search(e);
if (!u.features.length) return c([t]);
var l = kn(e, u),
h = O(s,
function(t, r, i) {
var o = Y(r)[1],
s = z(e);
return i === l.id ? (t.push(s), n.push(a(t)), Fn(s, o) ? [s] : [s, o]) : (t.push(o), t)
},
[r]);
return h.length > 1 && n.push(a(h)),
c(n)
}
function kn(t, e) {
if (!e.features.length) throw new Error("lines must contain features");
if (1 === e.features.length) return e.features[0];
var n, r = 1 / 0;
return A(e,
function(e) {
var i = on(e, t).properties.dist;
i < r && (n = e, r = i)
}),
n
}
function Fn(t, e) {
return t[0] === e[0] && t[1] === e[1]
}
function jn(t, e, n, r, i) {
if (i = i || {},
!M(i)) throw new Error("options is invalid");
var o = i.steps,
s = i.units;
if (!t) throw new Error("center is required");
if (!e) throw new Error("radius is required");
if (void 0 === n || null === n) throw new Error("bearing1 is required");
if (void 0 === r || null === r) throw new Error("bearing2 is required");
if ("object" != typeof i) throw new Error("options must be an object");
o = o || 64;
var u = qn(n),
c = qn(r),
l = t.properties;
if (u === c) return a(pe(t, e, i).geometry.coordinates[0], l);
for (var h = u,
f = u < c ? c: c + 360, p = h, d = [], g = 0; p < f;) d.push(fe(t, e, p, s).geometry.coordinates),
p = h + 360 * ++g / o;
return p > f && d.push(fe(t, e, f, s).geometry.coordinates),
a(d, l)
}
function qn(t) {
var e = t % 360;
return e < 0 && (e += 360),
e
}
function Bn(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.properties,
r = Q(t),
i = Y(t);
if (n = n || t.properties || {},
!i.length) throw new Error("polygon must contain coordinates");
switch (r) {
case "Polygon":
return Gn(i, n);
case "MultiPolygon":
var o = [];
return i.forEach(function(t) {
o.push(Gn(t, n))
}),
c(o);
default:
throw new Error("geom " + r + " not supported")
}
}
function Gn(t, e) {
return t.length > 1 ? l(t, e) : a(t[0], e)
}
function Un(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.properties,
r = e.autoComplete,
i = e.orderCoords;
if (!t) throw new Error("lines is required");
switch (r = void 0 === r || r, i = void 0 === i || i, Q(t)) {
case "FeatureCollection":
case "GeometryCollection":
var o = [];
return (t.features ? t.features: t.geometries).forEach(function(t) {
o.push(Y(zn(t, {},
r, i)))
}),
f(o, n)
}
return zn(t, n, r, i)
}
function zn(t, e, n, r) {
e = e || t.properties || {};
var i = Y(t),
s = Q(t);
if (!i.length) throw new Error("line must contain coordinates");
switch (s) {
case "LineString":
return n && (i = Yn(i)),
o([i], e);
case "MultiLineString":
var u = [],
c = 0;
return i.forEach(function(t) {
if (n && (t = Yn(t)), r) {
var e = function(t) {
var e = t[0],
n = t[1],
r = t[2],
i = t[3];
return Math.abs(e - r) * Math.abs(n - i)
} (U(a(t)));
e > c ? (u.unshift(t), c = e) : u.push(t)
} else u.push(t)
}),
o(u, e);
default:
throw new Error("geometry type " + s + " is not supported")
}
}
function Yn(t) {
var e = t[0],
n = e[0],
r = e[1],
i = t[t.length - 1],
o = i[0],
s = i[1];
return n === o && r === s || t.push(e),
t
}
function Xn(t, e, n) {
var r, i, o, s, a, u = t.length,
c = Wn(t[0], e),
l = [];
for (n || (n = []), r = 1; r < u; r++) {
for (i = t[r - 1], s = a = Wn(o = t[r], e);;) {
if (! (c | s)) {
l.push(i),
s !== a ? (l.push(o), r < u - 1 && (n.push(l), l = [])) : r === u - 1 && l.push(o);
break
}
if (c & s) break;
c ? c = Wn(i = Vn(i, o, c, e), e) : s = Wn(o = Vn(i, o, s, e), e)
}
c = a
}
return l.length && n.push(l),
n
}
function Vn(t, e, n, r) {
return 8 & n ? [t[0] + (e[0] - t[0]) * (r[3] - t[1]) / (e[1] - t[1]), r[3]] : 4 & n ? [t[0] + (e[0] - t[0]) * (r[1] - t[1]) / (e[1] - t[1]), r[1]] : 2 & n ? [r[2], t[1] + (e[1] - t[1]) * (r[2] - t[0]) / (e[0] - t[0])] : 1 & n ? [r[0], t[1] + (e[1] - t[1]) * (r[0] - t[0]) / (e[0] - t[0])] : null
}
function Wn(t, e) {
var n = 0;
return t[0] < e[0] ? n |= 1 : t[0] > e[2] && (n |= 2),
t[1] < e[1] ? n |= 4 : t[1] > e[3] && (n |= 8),
n
}
function Hn(t, e) {
for (var n = [], r = 0; r < t.length; r++) {
var i = js.polygon(t[r], e);
i.length > 0 && (i[0][0] === i[i.length - 1][0] && i[0][1] === i[i.length - 1][1] || i.push(i[0]), i.length >= 4 && n.push(i))
}
return n
}
function Jn(t) {
return "[object Arguments]" === Object.prototype.toString.call(t)
}
function Zn(t, e, n) {
return n || (n = {}),
t === e || (t instanceof Date && e instanceof Date ? t.getTime() === e.getTime() : !t || !e || "object" != typeof t && "object" != typeof e ? (n.strict, t === e) : function(t, e, n) {
var r, i;
if (Qn(t) || Qn(e)) return ! 1;
if (t.prototype !== e.prototype) return ! 1;
if (Jn(t)) return !! Jn(e) && (t = qs.call(t), e = qs.call(e), Zn(t, e, n));
if (Kn(t)) {
if (!Kn(e)) return ! 1;
if (t.length !== e.length) return ! 1;
for (r = 0; r < t.length; r++) if (t[r] !== e[r]) return ! 1;
return ! 0
}
try {
var o = Object.keys(t),
s = Object.keys(e)
} catch(t) {
return ! 1
}
if (o.length !== s.length) return ! 1;
for (o.sort(), s.sort(), r = o.length - 1; r >= 0; r--) if (o[r] !== s[r]) return ! 1;
for (r = o.length - 1; r >= 0; r--) if (i = o[r], !Zn(t[i], e[i], n)) return ! 1;
return typeof t == typeof e
} (t, e, n))
}
function Qn(t) {
return null === t || void 0 === t
}
function Kn(t) {
return ! (!t || "object" != typeof t || "number" != typeof t.length || "function" != typeof t.copy || "function" != typeof t.slice || t.length > 0 && "number" != typeof t[0])
}
function $n(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.tolerance || 0,
i = [],
o = Ke();
o.load(en(t));
var s;
return j(e,
function(t) {
var e = !1;
A(o.search(t),
function(n) {
if (!1 === e) {
var i = Y(t).sort(),
o = Y(n).sort();
Zn(i, o) ? (e = !0, s = s ? tr(s, t) : t) : (0 === r ? In(i[0], n) && In(i[1], n) : on(n, i[0]).properties.dist <= r && on(n, i[1]).properties.dist <= r) ? (e = !0, s = s ? tr(s, t) : t) : (0 === r ? In(o[0], t) && In(o[1], t) : on(t, o[0]).properties.dist <= r && on(t, o[1]).properties.dist <= r) && (s = s ? tr(s, n) : n)
}
}),
!1 === e && s && (i.push(s), s = void 0)
}),
s && i.push(s),
c(i)
}
function tr(t, e) {
var n = Y(e),
r = Y(t),
i = r[0],
o = r[r.length - 1],
s = t.geometry.coordinates;
return Zn(n[0], i) ? s.unshift(n[1]) : Zn(n[0], o) ? s.push(n[1]) : Zn(n[1], i) ? s.unshift(n[0]) : Zn(n[1], o) && s.push(n[0]),
t
}
function er(t) {
var e = t % 360;
return e < 0 && (e += 360),
e
}
function nr(t, e, n, i) {
if (i = i || {},
!M(i)) throw new Error("options is invalid");
var o = i.units,
s = i.properties;
if (!t) throw new Error("origin is required");
if (void 0 === e || null === e) throw new Error("distance is required");
if (void 0 === n || null === n) throw new Error("bearing is required");
if (! (e >= 0)) throw new Error("distance must be greater than 0");
var a = b(e, o, "meters"),
u = z(t),
c = function(t, e, n, r) {
r = void 0 === r ? ko: Number(r);
var i = e / r,
o = t[0] * Math.PI / 180,
s = w(t[1]),
a = w(n),
u = i * Math.cos(a),
c = s + u;
Math.abs(c) > Math.PI / 2 && (c = c > 0 ? Math.PI - c: -Math.PI - c);
var l = Math.log(Math.tan(c / 2 + Math.PI / 4) / Math.tan(s / 2 + Math.PI / 4)),
h = Math.abs(l) > 1e-11 ? u / l: Math.cos(s);
return [(180 * (o + i * Math.sin(a) / h) / Math.PI + 540) % 360 - 180, 180 * c / Math.PI]
} (u, a, n);
return c[0] += c[0] - u[0] > 180 ? -360 : u[0] - c[0] > 180 ? 360 : 0,
r(c, s)
}
function rr(t, e, n, r, i, o) {
for (var s = 0; s < t.length; s++) {
var a = t[s],
u = t[s + 1];
s === t.length - 1 && (u = t[0]),
r = ir(a, u, e),
n <= 0 && r > 0 ?
function(t, e, n) {
return ir(t, e, n) < 0
} (e, a, i) || (i = a) : n > 0 && r <= 0 && (function(t, e, n) {
return ir(t, e, n) > 0
} (e, a, o) || (o = a)),
n = r
}
return [i, o]
}
function ir(t, e, n) {
return (e[0] - t[0]) * (n[1] - t[1]) - (n[0] - t[0]) * (e[1] - t[1])
}
function or(t) {
if (!t) throw new Error("line is required");
var e = t.geometry ? t.geometry.type: t.type;
if (!Array.isArray(t) && "LineString" !== e) throw new Error("geometry must be a LineString");
for (var n, r, i = Y(t), o = 0, s = 1; s < i.length;) n = r || i[0],
o += ((r = i[s])[0] - n[0]) * (r[1] + n[1]),
s++;
return o > 0
}
function sr(t, e) {
switch ("Feature" === t.type ? t.geometry.type: t.type) {
case "GeometryCollection":
return R(t,
function(t) {
sr(t, e)
}),
t;
case "LineString":
return ar(Y(t), e),
t;
case "Polygon":
return ur(Y(t), e),
t;
case "MultiLineString":
return Y(t).forEach(function(t) {
ar(t, e)
}),
t;
case "MultiPolygon":
return Y(t).forEach(function(t) {
ur(t, e)
}),
t;
case "Point":
case "MultiPoint":
return t
}
}
function ar(t, e) {
or(t) === e && t.reverse()
}
function ur(t, e) {
or(t[0]) !== e && t[0].reverse();
for (var n = 1; n < t.length; n++) or(t[n]) === e && t[n].reverse()
}
function cr(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.zProperty || "elevation",
r = e.flip,
i = e.flags;
H(t, "Point", "input must contain Points");
for (var o = function(t, e) {
var n = {};
return A(t,
function(t) {
var e = Y(t)[1];
n[e] || (n[e] = []),
n[e].push(t)
}),
Object.keys(n).map(function(t) {
return n[t].sort(function(t, e) {
return Y(t)[0] - Y(e)[0]
})
}).sort(function(t, n) {
return e ? Y(t[0])[1] - Y(n[0])[1] : Y(n[0])[1] - Y(t[0])[1]
})
} (t, r), s = [], a = 0; a < o.length; a++) {
for (var u = o[a], c = [], l = 0; l < u.length; l++) {
var h = u[l];
h.properties[n] ? c.push(h.properties[n]) : c.push(0),
!0 === i && (h.properties.matrixPosition = [a, l])
}
s.push(c)
}
return s
}
function lr(t, e, n, r) {
r = r || {};
for (var i = Object.keys(Bs), o = 0; o < i.length; o++) {
var s = i[o],
a = r[s];
a = void 0 !== a && null !== a ? a: Bs[s],
Gs[s] = a
}
Gs.verbose && console.log("MarchingSquaresJS-isoBands: computing isobands for [" + e + ":" + (e + n) + "]");
var u, c = function(t, e, n) {
for (var r = t.length - 1,
i = t[0].length - 1, o = {
rows: r,
cols: i,
cells: []
},
s = e + Math.abs(n), a = 0; a < r; ++a) {
o.cells[a] = [];
for (var u = 0; u < i; ++u) {
var c = 0,
l = t[a + 1][u],
h = t[a + 1][u + 1],
f = t[a][u + 1],
p = t[a][u];
if (! (isNaN(l) || isNaN(h) || isNaN(f) || isNaN(p))) {
c |= l < e ? 0 : l > s ? 128 : 64,
c |= h < e ? 0 : h > s ? 32 : 16,
c |= f < e ? 0 : f > s ? 8 : 4;
var d = +(c |= p < e ? 0 : p > s ? 2 : 1),
g = 0;
if (17 === c || 18 === c || 33 === c || 34 === c || 38 === c || 68 === c || 72 === c || 98 === c || 102 === c || 132 === c || 136 === c || 137 === c || 152 === c || 153 === c) {
var y = (l + h + f + p) / 4;
g = y > s ? 2 : y < e ? 0 : 1,
34 === c ? 1 === g ? c = 35 : 0 === g && (c = 136) : 136 === c ? 1 === g ? (c = 35, g = 4) : 0 === g && (c = 34) : 17 === c ? 1 === g ? (c = 155, g = 4) : 0 === g && (c = 153) : 68 === c ? 1 === g ? (c = 103, g = 4) : 0 === g && (c = 102) : 153 === c ? 1 === g && (c = 155) : 102 === c ? 1 === g && (c = 103) : 152 === c ? g < 2 && (c = 156, g = 1) : 137 === c ? g < 2 && (c = 139, g = 1) : 98 === c ? g < 2 && (c = 99, g = 1) : 38 === c ? g < 2 && (c = 39, g = 1) : 18 === c ? g > 0 ? (c = 156, g = 4) : c = 152 : 33 === c ? g > 0 ? (c = 139, g = 4) : c = 137 : 72 === c ? g > 0 ? (c = 99, g = 4) : c = 98 : 132 === c && (g > 0 ? (c = 39, g = 4) : c = 38)
}
if (0 != c && 170 != c) {
var v, m, _, w, b, x, E, M;
v = m = _ = w = b = x = E = M = .5;
var I = [];
1 === c ? (_ = 1 - hr(e, f, p), M = 1 - hr(e, l, p), I.push(Ca[c])) : 169 === c ? (_ = hr(s, p, f), M = hr(s, p, l), I.push(Ca[c])) : 4 === c ? (x = 1 - hr(e, h, f), w = hr(e, p, f), I.push(Ia[c])) : 166 === c ? (x = hr(s, f, h), w = 1 - hr(s, f, p), I.push(Ia[c])) : 16 === c ? (b = hr(e, f, h), m = hr(e, l, h), I.push(Ma[c])) : 154 === c ? (b = 1 - hr(s, h, f), m = 1 - hr(s, h, l), I.push(Ma[c])) : 64 === c ? (E = hr(e, p, l), v = 1 - hr(e, h, l), I.push(Pa[c])) : 106 === c ? (E = 1 - hr(s, l, p), v = hr(s, l, h), I.push(Pa[c])) : 168 === c ? (w = hr(s, p, f), _ = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), I.push(Sa[c]), I.push(Ca[c])) : 2 === c ? (w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), I.push(Sa[c]), I.push(Ca[c])) : 162 === c ? (b = hr(s, f, h), x = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), I.push(Sa[c]), I.push(Ca[c])) : 8 === c ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), I.push(Ma[c]), I.push(Ia[c])) : 138 === c ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l), I.push(Ma[c]), I.push(Ia[c])) : 32 === c ? (b = hr(s, f, h), x = hr(e, f, h), v = hr(e, l, h), m = hr(s, l, h), I.push(Ma[c]), I.push(Ia[c])) : 42 === c ? (M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h), I.push(Na[c]), I.push(Pa[c])) : 128 === c && (M = hr(e, p, l), E = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l), I.push(Na[c]), I.push(Pa[c])),
5 === c ? (x = 1 - hr(e, h, f), M = 1 - hr(e, l, p), I.push(Ia[c])) : 165 === c ? (x = hr(s, f, h), M = hr(s, p, l), I.push(Ia[c])) : 20 === c ? (w = hr(e, p, f), m = hr(e, l, h), I.push(Sa[c])) : 150 === c ? (w = 1 - hr(s, f, p), m = 1 - hr(s, h, l), I.push(Sa[c])) : 80 === c ? (b = hr(e, f, h), E = hr(e, p, l), I.push(Ma[c])) : 90 === c ? (b = 1 - hr(s, h, f), E = 1 - hr(s, l, p), I.push(Ma[c])) : 65 === c ? (_ = 1 - hr(e, f, p), v = 1 - hr(e, h, l), I.push(Ca[c])) : 105 === c ? (_ = hr(s, p, f), v = hr(s, l, h), I.push(Ca[c])) : 160 === c ? (b = hr(s, f, h), x = hr(e, f, h), M = hr(e, p, l), E = hr(s, p, l), I.push(Ma[c]), I.push(Ia[c])) : 10 === c ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), I.push(Ma[c]), I.push(Ia[c])) : 130 === c ? (w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l), I.push(Sa[c]), I.push(Ca[c])) : 40 === c ? (w = hr(s, p, f), _ = hr(e, p, f), v = hr(e, l, h), m = hr(s, l, h), I.push(Sa[c]), I.push(Ca[c])) : 101 === c ? (x = hr(s, f, h), v = hr(s, l, h), I.push(Ia[c])) : 69 === c ? (x = 1 - hr(e, h, f), v = 1 - hr(e, h, l), I.push(Ia[c])) : 149 === c ? (M = hr(s, p, l), m = 1 - hr(s, h, l), I.push(Na[c])) : 21 === c ? (M = 1 - hr(e, l, p), m = hr(e, l, h), I.push(Na[c])) : 86 === c ? (w = 1 - hr(s, f, p), E = 1 - hr(s, l, p), I.push(Sa[c])) : 84 === c ? (w = hr(e, p, f), E = hr(e, p, l), I.push(Sa[c])) : 89 === c ? (b = 1 - hr(s, h, f), _ = hr(s, p, f), I.push(Ca[c])) : 81 === c ? (b = hr(e, f, h), _ = 1 - hr(e, f, p), I.push(Ca[c])) : 96 === c ? (b = hr(s, f, h), x = hr(e, f, h), E = hr(e, p, l), v = hr(s, l, h), I.push(Ma[c]), I.push(Ia[c])) : 74 === c ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), E = 1 - hr(s, l, p), v = 1 - hr(e, h, l), I.push(Ma[c]), I.push(Ia[c])) : 24 === c ? (b = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), m = hr(e, l, h), I.push(Ma[c]), I.push(Ca[c])) : 146 === c ? (b = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), m = 1 - hr(s, h, l), I.push(Ma[c]), I.push(Ca[c])) : 6 === c ? (x = 1 - hr(e, h, f), w = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), I.push(Ia[c]), I.push(Sa[c])) : 164 === c ? (x = hr(s, f, h), w = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), I.push(Ia[c]), I.push(Sa[c])) : 129 === c ? (_ = 1 - hr(e, f, p), M = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l), I.push(Ca[c]), I.push(Na[c])) : 41 === c ? (_ = hr(s, p, f), M = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h), I.push(Ca[c]), I.push(Na[c])) : 66 === c ? (w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), E = 1 - hr(s, l, p), v = 1 - hr(e, h, l), I.push(Sa[c]), I.push(Ca[c])) : 104 === c ? (w = hr(s, p, f), _ = hr(e, p, f), E = hr(e, p, l), v = hr(s, l, h), I.push(Ca[c]), I.push(La[c])) : 144 === c ? (b = hr(e, f, h), M = hr(e, p, l), E = hr(s, p, l), m = 1 - hr(s, h, l), I.push(Ma[c]), I.push(Pa[c])) : 26 === c ? (b = 1 - hr(s, h, f), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), m = hr(e, l, h), I.push(Ma[c]), I.push(Pa[c])) : 36 === c ? (x = hr(s, f, h), w = hr(e, p, f), v = hr(e, l, h), m = hr(s, l, h), I.push(Ia[c]), I.push(Sa[c])) : 134 === c ? (x = 1 - hr(e, h, f), w = 1 - hr(s, f, p), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l), I.push(Ia[c]), I.push(Sa[c])) : 9 === c ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), _ = hr(s, p, f), M = 1 - hr(e, l, p), I.push(Ma[c]), I.push(Ia[c])) : 161 === c ? (b = hr(s, f, h), x = hr(e, f, h), _ = 1 - hr(e, f, p), M = hr(s, p, l), I.push(Ma[c]), I.push(Ia[c])) : 37 === c ? (x = hr(s, f, h), M = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h), I.push(Ia[c]), I.push(Na[c])) : 133 === c ? (x = 1 - hr(e, h, f), M = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l), I.push(Ia[c]), I.push(Na[c])) : 148 === c ? (w = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), m = 1 - hr(s, h, l), I.push(Sa[c]), I.push(Pa[c])) : 22 === c ? (w = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), m = hr(e, l, h), I.push(Sa[c]), I.push(Pa[c])) : 82 === c ? (b = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), E = 1 - hr(s, l, p), I.push(Ma[c]), I.push(Ca[c])) : 88 === c ? (b = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), E = hr(e, p, l), I.push(Ma[c]), I.push(Ca[c])) : 73 === c ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), _ = hr(s, p, f), v = 1 - hr(e, h, l), I.push(Ma[c]), I.push(Ia[c])) : 97 === c ? (b = hr(s, f, h), x = hr(e, f, h), _ = 1 - hr(e, f, p), v = hr(s, l, h), I.push(Ma[c]), I.push(Ia[c])) : 145 === c ? (b = hr(e, f, h), _ = 1 - hr(e, f, p), M = hr(s, p, l), m = 1 - hr(s, h, l), I.push(Ma[c]), I.push(Na[c])) : 25 === c ? (b = 1 - hr(s, h, f), _ = hr(s, p, f), M = 1 - hr(e, l, p), m = hr(e, l, h), I.push(Ma[c]), I.push(Na[c])) : 70 === c ? (x = 1 - hr(e, h, f), w = 1 - hr(s, f, p), E = 1 - hr(s, l, p), v = 1 - hr(e, h, l), I.push(Ia[c]), I.push(Sa[c])) : 100 === c ? (x = hr(s, f, h), w = hr(e, p, f), E = hr(e, p, l), v = hr(s, l, h), I.push(Ia[c]), I.push(Sa[c])) : 34 === c ? (0 === g ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l)) : (b = hr(s, f, h), x = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h)), I.push(Ma[c]), I.push(Ia[c]), I.push(Na[c]), I.push(Pa[c])) : 35 === c ? (4 === g ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l)) : (b = hr(s, f, h), x = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h)), I.push(Ma[c]), I.push(Ia[c]), I.push(Ca[c]), I.push(Pa[c])) : 136 === c ? (0 === g ? (b = hr(s, f, h), x = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h)) : (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l)), I.push(Ma[c]), I.push(Ia[c]), I.push(Na[c]), I.push(Pa[c])) : 153 === c ? (0 === g ? (b = hr(e, f, h), _ = 1 - hr(e, f, p), M = 1 - hr(e, l, p), m = hr(e, l, h)) : (b = 1 - hr(s, h, f), _ = hr(s, p, f), M = hr(s, p, l), m = 1 - hr(s, h, l)), I.push(Ma[c]), I.push(Ca[c])) : 102 === c ? (0 === g ? (x = 1 - hr(e, h, f), w = hr(e, p, f), E = hr(e, p, l), v = 1 - hr(e, h, l)) : (x = hr(s, f, h), w = 1 - hr(s, f, p), E = 1 - hr(s, l, p), v = hr(s, l, h)), I.push(Ia[c]), I.push(Pa[c])) : 155 === c ? (4 === g ? (b = hr(e, f, h), _ = 1 - hr(e, f, p), M = 1 - hr(e, l, p), m = hr(e, l, h)) : (b = 1 - hr(s, h, f), _ = hr(s, p, f), M = hr(s, p, l), m = 1 - hr(s, h, l)), I.push(Ma[c]), I.push(Na[c])) : 103 === c ? (4 === g ? (x = 1 - hr(e, h, f), w = hr(e, p, f), E = hr(e, p, l), v = 1 - hr(e, h, l)) : (x = hr(s, f, h), w = 1 - hr(s, f, p), E = 1 - hr(s, l, p), v = hr(s, l, h)), I.push(Ia[c]), I.push(Sa[c])) : 152 === c ? (0 === g ? (b = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), m = hr(e, l, h)) : (b = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), m = 1 - hr(s, h, l)), I.push(Ma[c]), I.push(Sa[c]), I.push(Ca[c])) : 156 === c ? (4 === g ? (b = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), m = hr(e, l, h)) : (b = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), m = 1 - hr(s, h, l)), I.push(Ma[c]), I.push(Ca[c]), I.push(Pa[c])) : 137 === c ? (0 === g ? (b = hr(s, f, h), x = hr(e, f, h), _ = 1 - hr(e, f, p), M = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h)) : (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), _ = hr(s, p, f), M = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l)), I.push(Ma[c]), I.push(Ia[c]), I.push(Ca[c])) : 139 === c ? (4 === g ? (b = hr(s, f, h), x = hr(e, f, h), _ = 1 - hr(e, f, p), M = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h)) : (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), _ = hr(s, p, f), M = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l)), I.push(Ma[c]), I.push(Ia[c]), I.push(Na[c])) : 98 === c ? (0 === g ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), E = hr(e, p, l), v = 1 - hr(e, h, l)) : (b = hr(s, f, h), x = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), E = 1 - hr(s, l, p), v = hr(s, l, h)), I.push(Ma[c]), I.push(Ia[c]), I.push(Pa[c])) : 99 === c ? (4 === g ? (b = 1 - hr(e, h, f), x = 1 - hr(s, h, f), w = hr(s, p, f), _ = hr(e, p, f), E = hr(e, p, l), v = 1 - hr(e, h, l)) : (b = hr(s, f, h), x = hr(e, f, h), w = 1 - hr(e, f, p), _ = 1 - hr(s, f, p), E = 1 - hr(s, l, p), v = hr(s, l, h)), I.push(Ma[c]), I.push(Ia[c]), I.push(Ca[c])) : 38 === c ? (0 === g ? (x = 1 - hr(e, h, f), w = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l)) : (x = hr(s, f, h), w = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h)), I.push(Ia[c]), I.push(Na[c]), I.push(Pa[c])) : 39 === c ? (4 === g ? (x = 1 - hr(e, h, f), w = hr(e, p, f), M = hr(e, p, l), E = hr(s, p, l), v = 1 - hr(s, h, l), m = 1 - hr(e, h, l)) : (x = hr(s, f, h), w = 1 - hr(s, f, p), M = 1 - hr(s, l, p), E = 1 - hr(e, l, p), v = hr(e, l, h), m = hr(s, l, h)), I.push(Ia[c]), I.push(Sa[c]), I.push(Pa[c])) : 85 === c && (b = 1, x = 0, w = 1, _ = 0, M = 0, E = 1, v = 0, m = 1),
(v < 0 || v > 1 || m < 0 || m > 1 || b < 0 || b > 1 || w < 0 || w > 1 || M < 0 || M > 1 || E < 0 || E > 1) && console.log("MarchingSquaresJS-isoBands: " + c + " " + d + " " + l + "," + h + "," + f + "," + p + " " + g + " " + v + " " + m + " " + b + " " + x + " " + w + " " + _ + " " + M + " " + E),
o.cells[a][u] = {
cval: c,
cval_real: d,
flipped: g,
topleft: v,
topright: m,
righttop: b,
rightbottom: x,
bottomright: w,
bottomleft: _,
leftbottom: M,
lefttop: E,
edges: I
}
}
}
}
}
return o
} (t, e, n);
return Gs.polygons ? (Gs.verbose && console.log("MarchingSquaresJS-isoBands: returning single polygons for each grid cell"), u = function(t) {
var e = [],
n = 0;
return t.cells.forEach(function(t, r) {
t.forEach(function(t, i) {
if (void 0 !== t) {
var o = Oa[t.cval](t);
"object" == typeof o && fr(o) ? "object" == typeof o[0] && fr(o[0]) ? "object" == typeof o[0][0] && fr(o[0][0]) ? o.forEach(function(t) {
t.forEach(function(t) {
t[0] += i,
t[1] += r
}),
e[n++] = t
}) : (o.forEach(function(t) {
t[0] += i,
t[1] += r
}), e[n++] = o) : console.log("MarchingSquaresJS-isoBands: bandcell polygon with malformed coordinates") : console.log("MarchingSquaresJS-isoBands: bandcell polygon with null coordinates")
}
})
}),
e
} (c)) : (Gs.verbose && console.log("MarchingSquaresJS-isoBands: returning polygon paths for entire data grid"), u = function(t) {
for (var e = [], n = t.rows, r = t.cols, i = [], o = 0; o < n; o++) for (var s = 0; s < r; s++) if (void 0 !== t.cells[o][s] && t.cells[o][s].edges.length > 0) {
var a = t.cells[o][s],
u = function(t) {
if (t.edges.length > 0) {
var e = t.edges[t.edges.length - 1],
n = t.cval_real;
switch (e) {
case 0:
return n & zs ? {
p: [1, t.righttop],
x: -1,
y: 0,
o: 1
}: {
p: [t.topleft, 1],
x: 0,
y: -1,
o: 0
};
case 1:
return n & Ys ? {
p: [t.topleft, 1],
x: 0,
y: -1,
o: 0
}: {
p: [1, t.rightbottom],
x: -1,
y: 0,
o: 0
};
case 2:
return n & Ys ? {
p: [t.bottomright, 0],
x: 0,
y: 1,
o: 1
}: {
p: [t.topleft, 1],
x: 0,
y: -1,
o: 0
};
case 3:
return n & Xs ? {
p: [t.topleft, 1],
x: 0,
y: -1,
o: 0
}: {
p: [t.bottomleft, 0],
x: 0,
y: 1,
o: 0
};
case 4:
return n & zs ? {
p: [1, t.righttop],
x: -1,
y: 0,
o: 1
}: {
p: [t.topright, 1],
x: 0,
y: -1,
o: 1
};
case 5:
return n & Ys ? {
p: [t.topright, 1],
x: 0,
y: -1,
o: 1
}: {
p: [1, t.rightbottom],
x: -1,
y: 0,
o: 0
};
case 6:
return n & Ys ? {
p: [t.bottomright, 0],
x: 0,
y: 1,
o: 1
}: {
p: [t.topright, 1],
x: 0,
y: -1,
o: 1
};
case 7:
return n & Xs ? {
p: [t.topright, 1],
x: 0,
y: -1,
o: 1
}: {
p: [t.bottomleft, 0],
x: 0,
y: 1,
o: 0
};
case 8:
return n & Ys ? {
p: [t.bottomright, 0],
x: 0,
y: 1,
o: 1
}: {
p: [1, t.righttop],
x: -1,
y: 0,
o: 1
};
case 9:
return n & Xs ? {
p: [1, t.righttop],
x: -1,
y: 0,
o: 1
}: {
p: [t.bottomleft, 0],
x: 0,
y: 1,
o: 0
};
case 10:
return n & Xs ? {
p: [0, t.leftbottom],
x: 1,
y: 0,
o: 0
}: {
p: [1, t.righttop],
x: -1,
y: 0,
o: 1
};
case 11:
return n & Us ? {
p: [1, t.righttop],
x: -1,
y: 0,
o: 1
}: {
p: [0, t.lefttop],
x: 1,
y: 0,
o: 1
};
case 12:
return n & Ys ? {
p: [t.bottomright, 0],
x: 0,
y: 1,
o: 1
}: {
p: [1, t.rightbottom],
x: -1,
y: 0,
o: 0
};
case 13:
return n & Xs ? {
p: [1, t.rightbottom],
x: -1,
y: 0,
o: 0
}: {
p: [t.bottomleft, 0],
x: 0,
y: 1,
o: 0
};
case 14:
return n & Xs ? {
p: [0, t.leftbottom],
x: 1,
y: 0,
o: 0
}: {
p: [1, t.rightbottom],
x: -1,
y: 0,
o: 0
};
case 15:
return n & Us ? {
p: [1, t.rightbottom],
x: -1,
y: 0,
o: 0
}: {
p: [0, t.lefttop],
x: 1,
y: 0,
o: 1
};
case 16:
return n & Ys ? {
p: [t.bottomright, 0],
x: 0,
y: 1,
o: 1
}: {
p: [0, t.leftbottom],
x: 1,
y: 0,
o: 0
};
case 17:
return n & Us ? {
p: [t.bottomright, 0],
x: 0,
y: 1,
o: 1
}: {
p: [0, t.lefttop],
x: 1,
y: 0,
o: 1
};
case 18:
return n & Xs ? {
p: [0, t.leftbottom],
x: 1,
y: 0,
o: 0
}: {
p: [t.bottomleft, 0],
x: 0,
y: 1,
o: 0
};
case 19:
return n & Us ? {
p: [t.bottomleft, 0],
x: 0,
y: 1,
o: 0
}: {
p: [0, t.lefttop],
x: 1,
y: 0,
o: 1
};
case 20:
return n & Us ? {
p: [t.topleft, 1],
x: 0,
y: -1,
o: 0
}: {
p: [0, t.leftbottom],
x: 1,
y: 0,
o: 0
};
case 21:
return n & zs ? {
p: [0, t.leftbottom],
x: 1,
y: 0,
o: 0
}: {
p: [t.topright, 1],
x: 0,
y: -1,
o: 1
};
case 22:
return n & Us ? {
p: [t.topleft, 1],
x: 0,
y: -1,
o: 0
}: {
p: [0, t.lefttop],
x: 1,
y: 0,
o: 1
};
case 23:
return n & zs ? {
p: [0, t.lefttop],
x: 1,
y: 0,
o: 1
}: {
p: [t.topright, 1],
x: 0,
y: -1,
o: 1
};
default:
console.log("MarchingSquaresJS-isoBands: edge index out of range!"),
console.log(t)
}
}
return null
} (a),
c = null,
l = s,
h = o;
null !== u && i.push([u.p[0] + l, u.p[1] + h]);
do {
if (null === (c = function(t, e, n, r) {
var i, o, s, a, u, c = t.cval;
switch (e) {
case - 1 : switch (r) {
case 0:
i = Ia[c],
s = ea[c],
a = na[c],
u = ra[c];
break;
default:
i = Ma[c],
s = Ks[c],
a = $s[c],
u = ta[c]
}
break;
case 1:
switch (r) {
case 0:
i = Na[c],
s = pa[c],
a = da[c],
u = ga[c];
break;
default:
i = Pa[c],
s = la[c],
a = ha[c],
u = fa[c]
}
break;
default:
switch (n) {
case - 1 : switch (r) {
case 0:
i = La[c],
s = Vs[c],
a = Ws[c],
u = Hs[c];
break;
default:
i = Aa[c],
s = Js[c],
a = Zs[c],
u = Qs[c]
}
break;
case 1:
switch (r) {
case 0:
i = Ca[c],
s = ia[c],
a = oa[c],
u = sa[c];
break;
default:
i = Sa[c],
s = aa[c],
a = ua[c],
u = ca[c]
}
}
}
if (o = t.edges.indexOf(i), void 0 === t.edges[o]) return null;
switch (function(t, e) {
delete t.edges[e];
for (var n = e + 1; n < t.edges.length; n++) t.edges[n - 1] = t.edges[n];
t.edges.pop()
} (t, o), c = t.cval_real, i) {
case 0:
c & zs ? (e = t.topleft, n = 1) : (e = 1, n = t.righttop);
break;
case 1:
c & Ys ? (e = 1, n = t.rightbottom) : (e = t.topleft, n = 1);
break;
case 2:
c & Ys ? (e = t.topleft, n = 1) : (e = t.bottomright, n = 0);
break;
case 3:
c & Xs ? (e = t.bottomleft, n = 0) : (e = t.topleft, n = 1);
break;
case 4:
c & zs ? (e = t.topright, n = 1) : (e = 1, n = t.righttop);
break;
case 5:
c & Ys ? (e = 1, n = t.rightbottom) : (e = t.topright, n = 1);
break;
case 6:
c & Ys ? (e = t.topright, n = 1) : (e = t.bottomright, n = 0);
break;
case 7:
c & Xs ? (e = t.bottomleft, n = 0) : (e = t.topright, n = 1);
break;
case 8:
c & Ys ? (e = 1, n = t.righttop) : (e = t.bottomright, n = 0);
break;
case 9:
c & Xs ? (e = t.bottomleft, n = 0) : (e = 1, n = t.righttop);
break;
case 10:
c & Xs ? (e = 1, n = t.righttop) : (e = 0, n = t.leftbottom);
break;
case 11:
c & Us ? (e = 0, n = t.lefttop) : (e = 1, n = t.righttop);
break;
case 12:
c & Ys ? (e = 1, n = t.rightbottom) : (e = t.bottomright, n = 0);
break;
case 13:
c & Xs ? (e = t.bottomleft, n = 0) : (e = 1, n = t.rightbottom);
break;
case 14:
c & Xs ? (e = 1, n = t.rightbottom) : (e = 0, n = t.leftbottom);
break;
case 15:
c & Us ? (e = 0, n = t.lefttop) : (e = 1, n = t.rightbottom);
break;
case 16:
c & Ys ? (e = 0, n = t.leftbottom) : (e = t.bottomright, n = 0);
break;
case 17:
c & Us ? (e = 0, n = t.lefttop) : (e = t.bottomright, n = 0);
break;
case 18:
c & Xs ? (e = t.bottomleft, n = 0) : (e = 0, n = t.leftbottom);
break;
case 19:
c & Us ? (e = 0, n = t.lefttop) : (e = t.bottomleft, n = 0);
break;
case 20:
c & Us ? (e = 0, n = t.leftbottom) : (e = t.topleft, n = 1);
break;
case 21:
c & zs ? (e = t.topright, n = 1) : (e = 0, n = t.leftbottom);
break;
case 22:
c & Us ? (e = 0, n = t.lefttop) : (e = t.topleft, n = 1);
break;
case 23:
c & zs ? (e = t.topright, n = 1) : (e = 0, n = t.lefttop);
break;
default:
return console.log("MarchingSquaresJS-isoBands: edge index out of range!"),
console.log(t),
null
}
return void 0 !== e && void 0 !== n && void 0 !== s && void 0 !== a && void 0 !== u || (console.log("MarchingSquaresJS-isoBands: undefined value!"), console.log(t), console.log(e + " " + n + " " + s + " " + a + " " + u)),
{
p: [e, n],
x: s,
y: a,
o: u
}
} (t.cells[h][l], u.x, u.y, u.o))) break;
if (i.push([c.p[0] + l, c.p[1] + h]), l += c.x, h += c.y, u = c, h < 0 || h >= n || l < 0 || l >= r || void 0 === t.cells[h][l]) {
l -= c.x,
h -= c.y;
var f = function(t, e, n, r, i, o) {
for (var s = t.cells[n][e], a = s.cval_real, u = e + r, c = n + i, l = [], h = !1; ! h;) {
if (void 0 === t.cells[c] || void 0 === t.cells[c][u]) if (c -= i, u -= r, s = t.cells[c][u], a = s.cval_real, -1 === i) if (0 === o) if (a & Xs) l.push([u, c]),
r = -1,
i = 0,
o = 0;
else {
if (! (a & Ys)) {
l.push([u + s.bottomright, c]),
r = 0,
i = 1,
o = 1,
h = !0;
break
}
l.push([u + 1, c]),
r = 1,
i = 0,
o = 0
} else {
if (! (a & Xs)) {
if (a & Ys) {
l.push([u + s.bottomright, c]),
r = 0,
i = 1,
o = 1,
h = !0;
break
}
l.push([u + s.bottomleft, c]),
r = 0,
i = 1,
o = 0,
h = !0;
break
}
l.push([u, c]),
r = -1,
i = 0,
o = 0
} else if (1 === i) if (0 === o) {
if (! (a & zs)) {
if (a & Us) {
l.push([u + s.topleft, c + 1]),
r = 0,
i = -1,
o = 0,
h = !0;
break
}
l.push([u + s.topright, c + 1]),
r = 0,
i = -1,
o = 1,
h = !0;
break
}
l.push([u + 1, c + 1]),
r = 1,
i = 0,
o = 1
} else l.push([u + 1, c + 1]),
r = 1,
i = 0,
o = 1;
else if ( - 1 === r) if (0 === o) {
if (! (a & Us)) {
if (a & Xs) {
l.push([u, c + s.leftbottom]),
r = 1,
i = 0,
o = 0,
h = !0;
break
}
l.push([u, c + s.lefttop]),
r = 1,
i = 0,
o = 1,
h = !0;
break
}
l.push([u, c + 1]),
r = 0,
i = 1,
o = 0
} else {
if (! (a & Us)) {
console.log("MarchingSquaresJS-isoBands: wtf");
break
}
l.push([u, c + 1]),
r = 0,
i = 1,
o = 0
} else {
if (1 !== r) {
console.log("MarchingSquaresJS-isoBands: we came from nowhere!");
break
}
if (0 === o) {
if (! (a & Ys)) {
l.push([u + 1, c + s.rightbottom]),
r = -1,
i = 0,
o = 0,
h = !0;
break
}
l.push([u + 1, c]),
r = 0,
i = -1,
o = 1
} else {
if (! (a & Ys)) {
if (a & zs) {
l.push([u + 1, c + s.righttop]),
r = -1,
i = 0,
o = 1;
break
}
l.push([u + 1, c + s.rightbottom]),
r = -1,
i = 0,
o = 0,
h = !0;
break
}
l.push([u + 1, c]),
r = 0,
i = -1,
o = 1
}
} else if (s = t.cells[c][u], a = s.cval_real, -1 === r) if (0 === o) if (void 0 !== t.cells[c - 1] && void 0 !== t.cells[c - 1][u]) r = 0,
i = -1,
o = 1;
else {
if (! (a & Xs)) {
l.push([u + s.bottomright, c]),
r = 0,
i = 1,
o = 1,
h = !0;
break
}
l.push([u, c])
} else {
if (! (a & Us)) {
console.log("MarchingSquaresJS-isoBands: found entry from top at " + u + "," + c);
break
}
console.log("MarchingSquaresJS-isoBands: proceeding in x-direction!")
} else if (1 === r) {
if (0 === o) {
console.log("MarchingSquaresJS-isoBands: wtf");
break
}
if (void 0 !== t.cells[c + 1] && void 0 !== t.cells[c + 1][u]) r = 0,
i = 1,
o = 0;
else {
if (! (a & zs)) {
l.push([u + s.topleft, c + 1]),
r = 0,
i = -1,
o = 0,
h = !0;
break
}
l.push([u + 1, c + 1]),
r = 1,
i = 0,
o = 1
}
} else if ( - 1 === i) {
if (1 !== o) {
console.log("MarchingSquaresJS-isoBands: wtf");
break
}
if (void 0 !== t.cells[c][u + 1]) r = 1,
i = 0,
o = 1;
else {
if (! (a & Ys)) {
l.push([u + 1, c + s.righttop]),
r = -1,
i = 0,
o = 1,
h = !0;
break
}
l.push([u + 1, c]),
r = 0,
i = -1,
o = 1
}
} else {
if (1 !== i) {
console.log("MarchingSquaresJS-isoBands: where did we came from???");
break
}
if (0 !== o) {
console.log("MarchingSquaresJS-isoBands: wtf");
break
}
if (void 0 !== t.cells[c][u - 1]) r = -1,
i = 0,
o = 0;
else {
if (! (a & Us)) {
l.push([u, c + s.leftbottom]),
r = 1,
i = 0,
o = 0,
h = !0;
break
}
l.push([u, c + 1]),
r = 0,
i = 1,
o = 0
}
}
if (u += r, c += i, u === e && c === n) break
}
return {
path: l,
i: u,
j: c,
x: r,
y: i,
o: o
}
} (t, l, h, c.x, c.y, c.o);
if (null === f) break;
f.path.forEach(function(t) {
i.push(t)
}),
l = f.i,
h = f.j,
u = f
}
} while ( void 0 !== t . cells [ h ][l] && t.cells[h][l].edges.length > 0);
e.push(i),
i = [],
t.cells[o][s].edges.length > 0 && s--
}
return e
} (c)),
"function" == typeof Gs.successCallback && Gs.successCallback(u),
u
}
function hr(t, e, n) {
return (t - e) / (n - e)
}
function fr(t) {
return t.constructor.toString().indexOf("Array") > -1
}
function pr(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.pivot,
i = n.mutate;
if (!t) throw new Error("geojson is required");
if (void 0 === e || null === e || isNaN(e)) throw new Error("angle is required");
return 0 === e ? t: (r || (r = ye(t)), !1 !== i && void 0 !== i || (t = jt(t)), C(t,
function(t) {
var n = sn(r, t) + e,
i = un(r, t),
o = Y(nr(r, i, n));
t[0] = o[0],
t[1] = o[1]
}), t)
}
function dr(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.origin,
i = n.mutate;
if (!t) throw new Error("geojson required");
if ("number" != typeof e || 0 === e) throw new Error("invalid factor");
var o = Array.isArray(r) || "object" == typeof r;
return ! 0 !== i && (t = jt(t)),
"FeatureCollection" !== t.type || o ? gr(t, e, r) : (A(t,
function(n, i) {
t.features[i] = gr(n, e, r)
}), t)
}
function gr(t, e, n) {
var i = "Point" === Q(t);
return n = function(t, e) {
if (void 0 !== e && null !== e || (e = "centroid"), Array.isArray(e) || "object" == typeof e) return z(e);
var n = t.bbox ? t.bbox: U(t),
i = n[0],
o = n[1],
s = n[2],
a = n[3];
switch (e) {
case "sw":
case "southwest":
case "westsouth":
case "bottomleft":
return r([i, o]);
case "se":
case "southeast":
case "eastsouth":
case "bottomright":
return r([s, o]);
case "nw":
case "northwest":
case "westnorth":
case "topleft":
return r([i, a]);
case "ne":
case "northeast":
case "eastnorth":
case "topright":
return r([s, a]);
case "center":
return ge(t);
case void 0:
case null:
case "centroid":
return ye(t);
default:
throw new Error("invalid origin")
}
} (t, n),
1 === e || i ? t: (C(t,
function(t) {
var r = un(n, t),
i = sn(n, t),
o = Y(nr(n, r * e, i));
t[0] = o[0],
t[1] = o[1],
3 === t.length && (t[2] *= e)
}), t)
}
function yr(t) {
var e = t[0],
n = t[1];
return [n[0] - e[0], n[1] - e[1]]
}
function vr(t, e) {
return t[0] * e[1] - e[0] * t[1]
}
function mr(t, e) {
return !
function(t, e) {
return 0 === vr(yr(t), yr(e))
} (t, e) &&
function(t, e) {
var n = t[0],
r = yr(t),
i = e[0],
o = yr(e),
s = vr(r, o);
return function(t, e) {
return [t[0] + e[0], t[1] + e[1]]
} (n,
function(t, e) {
return [t * e[0], t * e[1]]
} (vr(function(t, e) {
return [t[0] - e[0], t[1] - e[1]]
} (i, n), o) / s, r))
} (t, e)
}
function _r(t, e, n) {
var r = [],
i = v(e, n),
o = Y(t),
s = [];
return o.forEach(function(t, e) {
if (e !== o.length - 1) {
var n = function(t, e, n) {
var r = Math.sqrt((t[0] - e[0]) * (t[0] - e[0]) + (t[1] - e[1]) * (t[1] - e[1])),
i = t[0] + n * (e[1] - t[1]) / r,
o = e[0] + n * (e[1] - t[1]) / r;
return [[i, t[1] + n * (t[0] - e[0]) / r], [o, e[1] + n * (t[0] - e[0]) / r]]
} (t, o[e + 1], i);
if (r.push(n), e > 0) {
var a = r[e - 1],
u = mr(n, a); ! 1 !== u && (a[1] = u, n[0] = u),
s.push(a[0]),
e === o.length - 2 && (s.push(n[0]), s.push(n[1]))
}
2 === o.length && (s.push(n[0]), s.push(n[1]))
}
}),
a(s, t.properties)
}
function wr(t, e, n) {
var r = e[0] - t[0],
i = e[1] - t[1],
o = n[0] - e[0],
s = n[1] - e[1];
return Math.sign(r * s - o * i)
}
function br(t, e) {
return e.geometry.coordinates[0].every(function(e) {
return Lt(r(e), t)
})
}
function xr(t, e) {
for (var n = 0; n < t.coordinates.length - 1; n++) if (function(t, e, n) {
var r = n[0] - t[0],
i = n[1] - t[1],
o = e[0] - t[0],
s = e[1] - t[1];
return r * s - i * o == 0 && (Math.abs(o) >= Math.abs(s) ? o > 0 ? t[0] <= n[0] && n[0] <= e[0] : e[0] <= n[0] && n[0] <= t[0] : s > 0 ? t[1] <= n[1] && n[1] <= e[1] : e[1] <= n[1] && n[1] <= t[1])
} (t.coordinates[n], t.coordinates[n + 1], e.coordinates)) return ! 0;
return ! 1
}
function Er(t, e) {
return nn(e, Bn(t)).features.length > 0
}
function Mr(t, e) {
return ! (t[0] > e[0] || t[2] < e[2] || t[1] > e[1] || t[3] < e[3])
}
function Ir(t, e) {
return t[0] === e[0] && t[1] === e[1]
}
function Sr(t, e) {
for (var n = !1,
r = !1,
i = t.coordinates.length,
o = 0; o < i && !n && !r;) {
for (var s = 0; s < e.coordinates.length - 1; s++) {
var a = !0;
0 !== s && s !== e.coordinates.length - 2 || (a = !1),
Pr(e.coordinates[s], e.coordinates[s + 1], t.coordinates[o], a) ? n = !0 : r = !0
}
o++
}
return n && r
}
function Cr(t, e) {
return nn(t, Bn(e)).features.length > 0
}
function Nr(t, e) {
for (var n = !1,
i = !1,
o = t.coordinates[0].length, s = 0; s < o && n && i;) Lt(r(t.coordinates[0][s]), e) ? n = !0 : i = !0,
s++;
return i && i
}
function Pr(t, e, n, r) {
var i = n[0] - t[0],
o = n[1] - t[1],
s = e[0] - t[0],
a = e[1] - t[1];
return 0 == i * a - o * s && (r ? Math.abs(s) >= Math.abs(a) ? s > 0 ? t[0] <= n[0] && n[0] <= e[0] : e[0] <= n[0] && n[0] <= t[0] : a > 0 ? t[1] <= n[1] && n[1] <= e[1] : e[1] <= n[1] && n[1] <= t[1] : Math.abs(s) >= Math.abs(a) ? s > 0 ? t[0] < n[0] && n[0] < e[0] : e[0] < n[0] && n[0] < t[0] : a > 0 ? t[1] < n[1] && n[1] < e[1] : e[1] < n[1] && n[1] < t[1])
}
function Lr(t) {
return t.coordinates.map(function(e) {
return {
type: t.type.replace("Multi", ""),
coordinates: e
}
})
}
function Ar(t, e) {
return t.hasOwnProperty("coordinates") ? t.coordinates.length === e.coordinates.length: t.length === e.length
}
function Or(t, e) {
return Ba(t, e, {
strict: !0
})
}
function Tr(t, e) {
if (!t) throw new Error("feature1 is required");
if (!e) throw new Error("feature2 is required");
var n = Q(t);
if (n !== Q(e)) throw new Error("features must be of the same type");
if ("Point" === n) throw new Error("Point geometry not supported");
if (new Ua({
precision: 6
}).compare(t, e)) return ! 1;
var r = 0;
switch (n) {
case "MultiPoint":
var i = T(t),
o = T(e);
i.forEach(function(t) {
o.forEach(function(e) {
t[0] === e[0] && t[1] === e[1] && r++
})
});
break;
case "LineString":
case "MultiLineString":
j(t,
function(t) {
j(e,
function(e) {
$n(t, e).features.length && r++
})
});
break;
case "Polygon":
case "MultiPolygon":
j(t,
function(t) {
j(e,
function(e) {
nn(t, e).features.length && r++
})
})
}
return r > 0
}
function Rr(t, e, n) {
n = n || [];
for (var r = 0; r < t; r++) n[r] = e;
return n
}
function Dr(t, e) {
if (t.geometry && t.geometry.type) return t.geometry.type;
if (t.type) return t.type;
throw new Error("Invalid GeoJSON object for " + e)
}
function kr(t) {
for (var e = t,
n = []; e.parent;) n.unshift(e),
e = e.parent;
return n
}
function Fr(t, e) {
e = e || {},
this.nodes = [],
this.diagonal = !!e.diagonal,
this.grid = [];
for (var n = 0; n < t.length; n++) {
this.grid[n] = [];
for (var r = 0,
i = t[n]; r < i.length; r++) {
var o = new jr(n, r, i[r]);
this.grid[n][r] = o,
this.nodes.push(o)
}
}
this.init()
}
function jr(t, e, n) {
this.x = t,
this.y = e,
this.weight = n
}
function qr(t) {
this.content = [],
this.scoreFunction = t
}
function Br(t) {
return t[0]
}
function Gr(t) {
return t[1]
}
function Ur() {
this._ = null
}
function zr(t) {
t.U = t.C = t.L = t.R = t.P = t.N = null
}
function Yr(t, e) {
var n = e,
r = e.R,
i = n.U;
i ? i.L === n ? i.L = r: i.R = r: t._ = r,
r.U = i,
n.U = r,
n.R = r.L,
n.R && (n.R.U = n),
r.L = n
}
function Xr(t, e) {
var n = e,
r = e.L,
i = n.U;
i ? i.L === n ? i.L = r: i.R = r: t._ = r,
r.U = i,
n.U = r,
n.L = r.R,
n.L && (n.L.U = n),
r.R = n
}
function Vr(t) {
for (; t.L;) t = t.L;
return t
}
function Wr(t, e, n, r) {
var i = [null, null],
o = au.push(i) - 1;
return i.left = t,
i.right = e,
n && Jr(i, t, e, n),
r && Jr(i, e, t, r),
ou[t.index].halfedges.push(o),
ou[e.index].halfedges.push(o),
i
}
function Hr(t, e, n) {
var r = [e, n];
return r.left = t,
r
}
function Jr(t, e, n, r) {
t[0] || t[1] ? t.left === n ? t[1] = r: t[0] = r: (t[0] = r, t.left = e, t.right = n)
}
function Zr(t, e, n, r, i) {
var o, s = t[0],
a = t[1],
u = s[0],
c = s[1],
l = 0,
h = 1,
f = a[0] - u,
p = a[1] - c;
if (o = e - u, f || !(o > 0)) {
if (o /= f, f < 0) {
if (o < l) return;
o < h && (h = o)
} else if (f > 0) {
if (o > h) return;
o > l && (l = o)
}
if (o = r - u, f || !(o < 0)) {
if (o /= f, f < 0) {
if (o > h) return;
o > l && (l = o)
} else if (f > 0) {
if (o < l) return;
o < h && (h = o)
}
if (o = n - c, p || !(o > 0)) {
if (o /= p, p < 0) {
if (o < l) return;
o < h && (h = o)
} else if (p > 0) {
if (o > h) return;
o > l && (l = o)
}
if (o = i - c, p || !(o < 0)) {
if (o /= p, p < 0) {
if (o > h) return;
o > l && (l = o)
} else if (p > 0) {
if (o < l) return;
o < h && (h = o)
}
return ! (l > 0 || h < 1) || (l > 0 && (t[0] = [u + l * f, c + l * p]), h < 1 && (t[1] = [u + h * f, c + h * p]), !0)
}
}
}
}
}
function Qr(t, e, n, r, i) {
var o = t[1];
if (o) return ! 0;
var s, a, u = t[0],
c = t.left,
l = t.right,
h = c[0],
f = c[1],
p = l[0],
d = l[1],
g = (h + p) / 2,
y = (f + d) / 2;
if (d === f) {
if (g < e || g >= r) return;
if (h > p) {
if (u) {
if (u[1] >= i) return
} else u = [g, n];
o = [g, i]
} else {
if (u) {
if (u[1] < n) return
} else u = [g, i];
o = [g, n]
}
} else if (s = (h - p) / (d - f), a = y - s * g, s < -1 || s > 1) if (h > p) {
if (u) {
if (u[1] >= i) return
} else u = [(n - a) / s, n];
o = [(i - a) / s, i]
} else {
if (u) {
if (u[1] < n) return
} else u = [(i - a) / s, i];
o = [(n - a) / s, n]
} else if (f < d) {
if (u) {
if (u[0] >= r) return
} else u = [e, s * e + a];
o = [r, s * r + a]
} else {
if (u) {
if (u[0] < e) return
} else u = [r, s * r + a];
o = [e, s * e + a]
}
return t[0] = u,
t[1] = o,
!0
}
function Kr(t, e) {
var n = t.site,
r = e.left,
i = e.right;
return n === i && (i = r, r = n),
i ? Math.atan2(i[1] - r[1], i[0] - r[0]) : (n === r ? (r = e[1], i = e[0]) : (r = e[0], i = e[1]), Math.atan2(r[0] - i[0], i[1] - r[1]))
}
function $r(t, e) {
return e[ + (e.left !== t.site)]
}
function ti(t, e) {
return e[ + (e.left === t.site)]
}
function ei(t) {
var e = t.P,
n = t.N;
if (e && n) {
var r = e.site,
i = t.site,
o = n.site;
if (r !== o) {
var s = i[0],
a = i[1],
u = r[0] - s,
c = r[1] - a,
l = o[0] - s,
h = o[1] - a,
f = 2 * (u * h - c * l);
if (! (f >= -hu)) {
var p = u * u + c * c,
d = l * l + h * h,
g = (h * p - c * d) / f,
y = (u * d - l * p) / f,
v = uu.pop() || new
function() {
zr(this),
this.x = this.y = this.arc = this.site = this.cy = null
};
v.arc = t,
v.site = i,
v.x = g + s,
v.y = (v.cy = y + a) + Math.sqrt(g * g + y * y),
t.circle = v;
for (var m = null,
_ = su._; _;) if (v.y < _.y || v.y === _.y && v.x <= _.x) {
if (!_.L) {
m = _.P;
break
}
_ = _.L
} else {
if (!_.R) {
m = _;
break
}
_ = _.R
}
su.insert(m, v),
m || (ru = v)
}
}
}
}
function ni(t) {
var e = t.circle;
e && (e.P || (ru = e.N), su.remove(e), uu.push(e), zr(e), t.circle = null)
}
function ri(t) {
var e = cu.pop() || new
function() {
zr(this),
this.edge = this.site = this.circle = null
};
return e.site = t,
e
}
function ii(t) {
ni(t),
iu.remove(t),
cu.push(t),
zr(t)
}
function oi(t) {
var e = t.circle,
n = e.x,
r = e.cy,
i = [n, r],
o = t.P,
s = t.N,
a = [t];
ii(t);
for (var u = o; u.circle && Math.abs(n - u.circle.x) < lu && Math.abs(r - u.circle.cy) < lu;) o = u.P,
a.unshift(u),
ii(u),
u = o;
a.unshift(u),
ni(u);
for (var c = s; c.circle && Math.abs(n - c.circle.x) < lu && Math.abs(r - c.circle.cy) < lu;) s = c.N,
a.push(c),
ii(c),
c = s;
a.push(c),
ni(c);
var l, h = a.length;
for (l = 1; l < h; ++l) c = a[l],
u = a[l - 1],
Jr(c.edge, u.site, c.site, i);
u = a[0],
(c = a[h - 1]).edge = Wr(u.site, c.site, null, i),
ei(u),
ei(c)
}
function si(t) {
for (var e, n, r, i, o = t[0], s = t[1], a = iu._; a;) if ((r = ai(a, s) - o) > lu) a = a.L;
else {
if (! ((i = o -
function(t, e) {
var n = t.N;
if (n) return ai(n, e);
var r = t.site;
return r[1] === e ? r[0] : 1 / 0
} (a, s)) > lu)) {
r > -lu ? (e = a.P, n = a) : i > -lu ? (e = a, n = a.N) : e = n = a;
break
}
if (!a.R) {
e = a;
break
}
a = a.R
} !
function(t) {
ou[t.index] = {
site: t,
halfedges: []
}
} (t);
var u = ri(t);
if (iu.insert(e, u), e || n) {
if (e === n) return ni(e),
n = ri(e.site),
iu.insert(u, n),
u.edge = n.edge = Wr(e.site, u.site),
ei(e),
void ei(n);
if (n) {
ni(e),
ni(n);
var c = e.site,
l = c[0],
h = c[1],
f = t[0] - l,
p = t[1] - h,
d = n.site,
g = d[0] - l,
y = d[1] - h,
v = 2 * (f * y - p * g),
m = f * f + p * p,
_ = g * g + y * y,
w = [(y * m - p * _) / v + l, (f * _ - g * m) / v + h];
Jr(n.edge, c, d, w),
u.edge = Wr(c, t, null, w),
n.edge = Wr(t, d, null, w),
ei(e),
ei(n)
} else u.edge = Wr(e.site, u.site)
}
}
function ai(t, e) {
var n = t.site,
r = n[0],
i = n[1],
o = i - e;
if (!o) return r;
var s = t.P;
if (!s) return - 1 / 0;
var a = (n = s.site)[0],
u = n[1],
c = u - e;
if (!c) return a;
var l = a - r,
h = 1 / o - 1 / c,
f = l / c;
return h ? ( - f + Math.sqrt(f * f - 2 * h * (l * l / ( - 2 * c) - u + c / 2 + i - o / 2))) / h + r: (r + a) / 2
}
function ui(t, e, n) {
return (t[0] - n[0]) * (e[1] - t[1]) - (t[0] - e[0]) * (n[1] - t[1])
}
function ci(t, e) {
return e[1] - t[1] || e[0] - t[0]
}
function li(t, e) {
var n, r, i, o = t.sort(ci).pop();
for (au = [], ou = new Array(t.length), iu = new Ur, su = new Ur;;) if (i = ru, o && (!i || o[1] < i.y || o[1] === i.y && o[0] < i.x)) o[0] === n && o[1] === r || (si(o), n = o[0], r = o[1]),
o = t.pop();
else {
if (!i) break;
oi(i.arc)
}
if (function() {
for (var t, e, n, r, i = 0,
o = ou.length; i < o; ++i) if ((t = ou[i]) && (r = (e = t.halfedges).length)) {
var s = new Array(r),
a = new Array(r);
for (n = 0; n < r; ++n) s[n] = n,
a[n] = Kr(t, au[e[n]]);
for (s.sort(function(t, e) {
return a[e] - a[t]
}), n = 0; n < r; ++n) a[n] = e[s[n]];
for (n = 0; n < r; ++n) e[n] = a[n]
}
} (), e) {
var s = +e[0][0],
a = +e[0][1],
u = +e[1][0],
c = +e[1][1]; !
function(t, e, n, r) {
for (var i, o = au.length; o--;) Qr(i = au[o], t, e, n, r) && Zr(i, t, e, n, r) && (Math.abs(i[0][0] - i[1][0]) > lu || Math.abs(i[0][1] - i[1][1]) > lu) || delete au[o]
} (s, a, u, c),
function(t, e, n, r) {
var i, o, s, a, u, c, l, h, f, p, d, g, y = ou.length,
v = !0;
for (i = 0; i < y; ++i) if (o = ou[i]) {
for (s = o.site, a = (u = o.halfedges).length; a--;) au[u[a]] || u.splice(a, 1);
for (a = 0, c = u.length; a < c;) d = (p = ti(o, au[u[a]]))[0],
g = p[1],
h = (l = $r(o, au[u[++a % c]]))[0],
f = l[1],
(Math.abs(d - h) > lu || Math.abs(g - f) > lu) && (u.splice(a, 0, au.push(Hr(s, p, Math.abs(d - t) < lu && r - g > lu ? [t, Math.abs(h - t) < lu ? f: r] : Math.abs(g - r) < lu && n - d > lu ? [Math.abs(f - r) < lu ? h: n, r] : Math.abs(d - n) < lu && g - e > lu ? [n, Math.abs(h - n) < lu ? f: e] : Math.abs(g - e) < lu && d - t > lu ? [Math.abs(f - e) < lu ? h: t, e] : null)) - 1), ++c);
c && (v = !1)
}
if (v) {
var m, _, w, b = 1 / 0;
for (i = 0, v = null; i < y; ++i)(o = ou[i]) && (w = (m = (s = o.site)[0] - t) * m + (_ = s[1] - e) * _) < b && (b = w, v = o);
if (v) {
var x = [t, e],
E = [t, r],
M = [n, r],
I = [n, e];
v.halfedges.push(au.push(Hr(s = v.site, x, E)) - 1, au.push(Hr(s, E, M)) - 1, au.push(Hr(s, M, I)) - 1, au.push(Hr(s, I, x)) - 1)
}
}
for (i = 0; i < y; ++i)(o = ou[i]) && (o.halfedges.length || delete ou[i])
} (s, a, u, c)
}
this.edges = au,
this.cells = ou,
iu = su = au = ou = null
}
function hi(t) {
return (t = t.slice()).push(t[0]),
o([t])
}
function fi(t, e, n, r) {
var i = (r = r || {}).steps || 64,
s = r.units || "kilometers",
a = r.angle || 0,
u = r.pivot || t,
c = r.properties || t.properties || {};
if (!t) throw new Error("center is required");
if (!e) throw new Error("xSemiAxis is required");
if (!n) throw new Error("ySemiAxis is required");
if (!M(r)) throw new Error("options must be an object");
if (!E(i)) throw new Error("steps must be a number");
if (!E(a)) throw new Error("angle must be a number");
var l = z(t);
if ("degrees" === s) var h = w(a);
else e = nr(t, e, 90, {
units: s
}),
n = nr(t, n, 0, {
units: s
}),
e = z(e)[0] - l[0],
n = z(n)[1] - l[1];
for (var f = [], p = 0; p < i; p += 1) {
var d = -360 * p / i,
g = e * n / Math.sqrt(Math.pow(n, 2) + Math.pow(e, 2) * Math.pow(pi(d), 2)),
y = e * n / Math.sqrt(Math.pow(e, 2) + Math.pow(n, 2) / Math.pow(pi(d), 2));
if (d < -90 && d >= -270 && (g = -g), d < -180 && d >= -360 && (y = -y), "degrees" === s) {
var v = g * Math.cos(h) + y * Math.sin(h),
m = y * Math.cos(h) - g * Math.sin(h);
g = v,
y = m
}
f.push([g + l[0], y + l[1]])
}
return f.push(f[0]),
"degrees" === s ? o([f], c) : pr(o([f], c), a, {
pivot: u
})
}
function pi(t) {
var e = t * Math.PI / 180;
return Math.tan(e)
}
function di(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.properties,
i = e.weight;
if (!t) throw new Error("geojson is required");
var o = 0,
s = 0,
a = 0;
return R(t,
function(t, e, n) {
var r = n[i];
if (r = void 0 === r || null === r ? 1 : r, !E(r)) throw new Error("weight value must be a number for feature index " + e); (r = Number(r)) > 0 && C(t,
function(t) {
o += t[0] * r,
s += t[1] * r,
a += r
})
}),
r([o / a, s / a], n)
}
function gi(t, e, n, i) {
var o = n.properties.tolerance || .001,
s = 0,
a = 0,
u = 0,
c = 0;
if (A(n,
function(e) {
var n = e.properties.weight,
r = void 0 === n || null === n ? 1 : n;
if (r = Number(r), !E(r)) throw new Error("weight value must be a number");
if (r > 0) {
c += 1;
var i = r * Ft(e, t);
0 === i && (i = 1);
var o = r / i;
s += e.geometry.coordinates[0] * o,
a += e.geometry.coordinates[1] * o,
u += o
}
}), c < 1) throw new Error("no features to measure");
var l = s / u,
h = a / u;
return 1 === c || 0 === i || Math.abs(l - e[0]) < o && Math.abs(h - e[1]) < o ? r([l, h], {
medianCandidates: n.properties.medianCandidates
}) : (n.properties.medianCandidates.push([l, h]), gi([l, h], t, n, i - 1))
}
function yi(t, e) {
return {
x: t[0] - e[0],
y: t[1] - e[1]
}
}
function vi(t) {
if (M(t) && (t = t.bbox), t && !Array.isArray(t)) throw new Error("bbox is invalid");
return t ?
function(t) {
return [Math.random() * (t[2] - t[0]) + t[0], Math.random() * (t[3] - t[1]) + t[1]]
} (t) : [360 * bi(), 180 * bi()]
}
function mi(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.bbox;
void 0 !== t && null !== t || (t = 1);
for (var i = [], o = 0; o < t; o++) i.push(r(vi(n)));
return c(i)
}
function _i(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.bbox,
r = e.num_vertices,
i = e.max_radial_length;
void 0 !== t && null !== t || (t = 1),
E(r) || (r = 10),
E(i) || (i = 10);
for (var s = [], a = 0; a < t; a++) {
var u = [],
l = Array.apply(null, new Array(r + 1)).map(Math.random);
l.forEach(function(t, e, n) {
n[e] = e > 0 ? t + n[e - 1] : t
}),
l.forEach(function(t) {
t = 2 * t * Math.PI / l[l.length - 1];
var e = Math.random();
u.push([e * i * Math.sin(t), e * i * Math.cos(t)])
}),
u[u.length - 1] = u[0],
u = u.map(function(t) {
return function(e) {
return [e[0] + t[0], e[1] + t[1]]
}
} (vi(n))),
s.push(o([u]))
}
return c(s)
}
function wi(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.bbox,
r = e.num_vertices,
i = e.max_length,
o = e.max_rotation;
void 0 !== t && null !== t || (t = 1),
(!E(r) || r < 2) && (r = 10),
E(i) || (i = 1e-4),
E(o) || (o = Math.PI / 8);
for (var s = [], u = 0; u < t; u++) {
for (var l = [vi(n)], h = 0; h < r - 1; h++) {
var f = (0 === h ? 2 * Math.random() * Math.PI: Math.tan((l[h][1] - l[h - 1][1]) / (l[h][0] - l[h - 1][0]))) + (Math.random() - .5) * o * 2,
p = Math.random() * i;
l.push([l[h][0] + p * Math.cos(f), l[h][1] + p * Math.sin(f)])
}
s.push(a(l))
}
return c(s)
}
function bi() {
return Math.random() - .5
}
function xi(t, e) {
if (!t) throw new Error("geojson is required");
if ("FeatureCollection" !== t.type) throw new Error("geojson must be a FeatureCollection");
if (void 0 === e || null === e) throw new Error("filter is required");
var n = [];
return A(t,
function(t) {
Si(t.properties, e) && n.push(t)
}),
c(n)
}
function Ei(t, e, n) {
if (!t) throw new Error("geojson is required");
if ("FeatureCollection" !== t.type) throw new Error("geojson must be a FeatureCollection");
if (void 0 === e || null === e) throw new Error("property is required");
for (var r = Ii(t, e), i = Object.keys(r), o = 0; o < i.length; o++) {
for (var s = i[o], a = r[s], u = [], l = 0; l < a.length; l++) u.push(t.features[a[l]]);
n(c(u), s, o)
}
}
function Mi(t, e, n, r) {
var i = r;
return Ei(t, e,
function(t, e, o) {
i = 0 === o && void 0 === r ? t: n(i, t, e, o)
}),
i
}
function Ii(t, e) {
var n = {};
return A(t,
function(t, r) {
var i = t.properties || {};
if (i.hasOwnProperty(e)) {
var o = i[e];
n.hasOwnProperty(o) ? n[o].push(r) : n[o] = [r]
}
}),
n
}
function Si(t, e) {
if (void 0 === t) return ! 1;
var n = typeof e;
if ("number" === n || "string" === n) return t.hasOwnProperty(e);
if (Array.isArray(e)) {
for (var r = 0; r < e.length; r++) if (!Si(t, e[r])) return ! 1;
return ! 0
}
return Ci(t, e)
}
function Ci(t, e) {
for (var n = Object.keys(e), r = 0; r < n.length; r++) {
var i = n[r];
if (t[i] !== e[i]) return ! 1
}
return ! 0
}
function Ni(t, e) {
if (!e) return {};
if (!e.length) return {};
for (var n = {},
r = 0; r < e.length; r++) {
var i = e[r];
t.hasOwnProperty(i) && (n[i] = t[i])
}
return n
}
function Pi() {}
function Li(t) {
this.message = t || ""
}
function Ai(t) {
this.message = t || ""
}
function Oi() {}
function Ti(t) {
return null === t ? Tc: t.color
}
function Ri(t) {
return null === t ? null: t.parent
}
function Di(t, e) {
null !== t && (t.color = e)
}
function ki(t) {
return null === t ? null: t.left
}
function Fi(t) {
return null === t ? null: t.right
}
function ji() {
this.root_ = null,
this.size_ = 0
}
function qi() {}
function Bi() {
this.array_ = [],
arguments[0] instanceof mc && this.addAll(arguments[0])
}
function Gi() {}
function Ui(t) {
this.message = t || ""
}
function zi() {
this.array_ = []
}
function Yi(t) {
switch (t.type) {
case "Polygon":
return mn(t) > 1 ? t: null;
case "MultiPolygon":
var e = [];
if (k(t,
function(t) {
mn(t) > 1 && e.push(t.geometry.coordinates)
}), e.length) return {
type: "MultiPolygon",
coordinates: e
}
}
}
function Xi() {
this.reset()
}
function Vi(t, e, n) {
var r = t.s = e + n,
i = r - e,
o = r - i;
t.t = e - o + (n - i)
}
function Wi(t) {
return t > 1 ? qp: t < -1 ? -qp: Math.asin(t)
}
function Hi() {}
function Ji(t, e) {
t && td.hasOwnProperty(t.type) && td[t.type](t, e)
}
function Zi(t, e, n) {
var r, i = -1,
o = t.length - n;
for (e.lineStart(); ++i < o;) r = t[i],
e.point(r[0], r[1], r[2]);
e.lineEnd()
}
function Qi(t, e) {
var n = -1,
r = t.length;
for (e.polygonStart(); ++n < r;) Zi(t[n], e, 1);
e.polygonEnd()
}
function Ki(t) {
return [Vp(t[1], t[0]), Wi(t[2])]
}
function $i(t) {
var e = t[0],
n = t[1],
r = Wp(n);
return [r * Wp(e), r * Zp(e), Zp(n)]
}
function to(t, e) {
return t[0] * e[0] + t[1] * e[1] + t[2] * e[2]
}
function eo(t, e) {
return [t[1] * e[2] - t[2] * e[1], t[2] * e[0] - t[0] * e[2], t[0] * e[1] - t[1] * e[0]]
}
function no(t, e) {
t[0] += e[0],
t[1] += e[1],
t[2] += e[2]
}
function ro(t, e) {
return [t[0] * e, t[1] * e, t[2] * e]
}
function io(t) {
var e = Qp(t[0] * t[0] + t[1] * t[1] + t[2] * t[2]);
t[0] /= e,
t[1] /= e,
t[2] /= e
}
function oo(t, e) {
return [t > jp ? t - Gp: t < -jp ? t + Gp: t, e]
}
function so(t, e, n) {
return (t %= Gp) ? e || n ? nd(uo(t), co(e, n)) : uo(t) : e || n ? co(e, n) : oo
}
function ao(t) {
return function(e, n) {
return e += t,
[e > jp ? e - Gp: e < -jp ? e + Gp: e, n]
}
}
function uo(t) {
var e = ao(t);
return e.invert = ao( - t),
e
}
function co(t, e) {
function n(t, e) {
var n = Wp(e),
a = Wp(t) * n,
u = Zp(t) * n,
c = Zp(e),
l = c * r + a * i;
return [Vp(u * o - l * s, a * r - c * i), Wi(l * o + u * s)]
}
var r = Wp(t),
i = Zp(t),
o = Wp(e),
s = Zp(e);
return n.invert = function(t, e) {
var n = Wp(e),
a = Wp(t) * n,
u = Zp(t) * n,
c = Zp(e),
l = c * o - u * s;
return [Vp(u * o + c * s, a * r + l * i), Wi(l * r - a * i)]
},
n
}
function lo(t, e) { (e = $i(e))[0] -= t,
io(e);
var n = function(t) {
return t > 1 ? 0 : t < -1 ? jp: Math.acos(t)
} ( - e[1]);
return (( - e[2] < 0 ? -n: n) + Gp - Fp) % Gp
}
function ho(t, e, n, r) {
this.x = t,
this.z = e,
this.o = n,
this.e = r,
this.v = !1,
this.n = this.p = null
}
function fo(t) {
if (e = t.length) {
for (var e, n, r = 0,
i = t[0]; ++r < e;) i.n = n = t[r],
n.p = i,
i = n;
i.n = n = t[0],
n.p = i
}
}
function po(t, e, n, r) {
function i(i, o) {
return t <= i && i <= n && e <= o && o <= r
}
function o(i, o, a, c) {
var l = 0,
h = 0;
if (null == i || (l = s(i, a)) !== (h = s(o, a)) || u(i, o) < 0 ^ a > 0) do {
c.point(0 === l || 3 === l ? t: n, l > 1 ? r: e)
} while (( l = ( l + a + 4 ) % 4) !== h);
else c.point(o[0], o[1])
}
function s(r, i) {
return Yp(r[0] - t) < Fp ? i > 0 ? 0 : 3 : Yp(r[0] - n) < Fp ? i > 0 ? 2 : 1 : Yp(r[1] - e) < Fp ? i > 0 ? 1 : 0 : i > 0 ? 3 : 2
}
function a(t, e) {
return u(t.x, e.x)
}
function u(t, e) {
var n = s(t, 1),
r = s(e, 1);
return n !== r ? n - r: 0 === n ? e[1] - t[1] : 1 === n ? t[0] - e[0] : 2 === n ? t[1] - e[1] : e[0] - t[0]
}
return function(s) {
function u(t, e) {
i(t, e) && b.point(t, e)
}
function c(o, s) {
var a = i(o, s);
if (h && f.push([o, s]), _) p = o,
d = s,
g = a,
_ = !1,
a && (b.lineStart(), b.point(o, s));
else if (a && m) b.point(o, s);
else {
var u = [y = Math.max(hd, Math.min(ld, y)), v = Math.max(hd, Math.min(ld, v))],
c = [o = Math.max(hd, Math.min(ld, o)), s = Math.max(hd, Math.min(ld, s))];
od(u, c, t, e, n, r) ? (m || (b.lineStart(), b.point(u[0], u[1])), b.point(c[0], c[1]), a || b.lineEnd(), w = !1) : a && (b.lineStart(), b.point(o, s), w = !1)
}
y = o,
v = s,
m = a
}
var l, h, f, p, d, g, y, v, m, _, w, b = s,
x = id(),
E = {
point: u,
lineStart: function() {
E.point = c,
h && h.push(f = []),
_ = !0,
m = !1,
y = v = NaN
},
lineEnd: function() {
l && (c(p, d), g && m && x.rejoin(), l.push(x.result())),
E.point = u,
m && b.lineEnd()
},
polygonStart: function() {
b = x,
l = [],
h = [],
w = !0
},
polygonEnd: function() {
var e = function() {
for (var e = 0,
n = 0,
i = h.length; n < i; ++n) for (var o, s, a = h[n], u = 1, c = a.length, l = a[0], f = l[0], p = l[1]; u < c; ++u) o = f,
s = p,
f = (l = a[u])[0],
p = l[1],
s <= r ? p > r && (f - o) * (r - s) > (p - s) * (t - o) && ++e: p <= r && (f - o) * (r - s) < (p - s) * (t - o) && --e;
return e
} (),
n = w && e,
i = (l = cd(l)).length; (n || i) && (s.polygonStart(), n && (s.lineStart(), o(null, null, 1, s), s.lineEnd()), i && ad(l, a, e, o, s), s.polygonEnd()),
b = s,
l = h = f = null
}
};
return E
}
}
function go(t) {
return t.length > 1
}
function yo(t, e) {
return ((t = t.x)[0] < 0 ? t[1] - qp - Fp: qp - t[1]) - ((e = e.x)[0] < 0 ? e[1] - qp - Fp: qp - e[1])
}
function vo(t) {
return function(e) {
var n = new mo;
for (var r in t) n[r] = t[r];
return n.stream = e,
n
}
}
function mo() {}
function _o(t, e, n) {
var r = e[1][0] - e[0][0],
i = e[1][1] - e[0][1],
o = t.clipExtent && t.clipExtent();
t.scale(150).translate([0, 0]),
null != o && t.clipExtent(null),
ed(n, t.stream(md));
var s = md.result(),
a = Math.min(r / (s[1][0] - s[0][0]), i / (s[1][1] - s[0][1])),
u = +e[0][0] + (r - a * (s[1][0] + s[0][0])) / 2,
c = +e[0][1] + (i - a * (s[1][1] + s[0][1])) / 2;
return null != o && t.clipExtent(o),
t.scale(150 * a).translate([u, c])
}
function wo(t) {
return function(t) {
function e(t) {
return t = c(t[0] * zp, t[1] * zp),
[t[0] * g + s, a - t[1] * g]
}
function n(t, e) {
return t = o(t, e),
[t[0] * g + s, a - t[1] * g]
}
function r() {
c = nd(u = so(w, b, x), o);
var t = o(m, _);
return s = y - t[0] * g,
a = v + t[1] * g,
i()
}
function i() {
return p = d = null,
e
}
var o, s, a, u, c, l, h, f, p, d, g = 150,
y = 480,
v = 250,
m = 0,
_ = 0,
w = 0,
b = 0,
x = 0,
E = null,
M = wd,
I = null,
S = pd,
C = .5,
N = Md(n, C);
return e.stream = function(t) {
return p && d === t ? p: p = Id(M(u, N(S(d = t))))
},
e.clipAngle = function(t) {
return arguments.length ? (M = +t ? bd(E = t * zp, 6 * zp) : (E = null, wd), i()) : E * Up
},
e.clipExtent = function(t) {
return arguments.length ? (S = null == t ? (I = l = h = f = null, pd) : po(I = +t[0][0], l = +t[0][1], h = +t[1][0], f = +t[1][1]), i()) : null == I ? null: [[I, l], [h, f]]
},
e.scale = function(t) {
return arguments.length ? (g = +t, r()) : g
},
e.translate = function(t) {
return arguments.length ? (y = +t[0], v = +t[1], r()) : [y, v]
},
e.center = function(t) {
return arguments.length ? (m = t[0] % 360 * zp, _ = t[1] % 360 * zp, r()) : [m * Up, _ * Up]
},
e.rotate = function(t) {
return arguments.length ? (w = t[0] % 360 * zp, b = t[1] % 360 * zp, x = t.length > 2 ? t[2] % 360 * zp: 0, r()) : [w * Up, b * Up, x * Up]
},
e.precision = function(t) {
return arguments.length ? (N = Md(n, C = t * t), i()) : Qp(C)
},
e.fitExtent = function(t, n) {
return _o(e, t, n)
},
e.fitSize = function(t, n) {
return function(t, e, n) {
return _o(t, [[0, 0], e], n)
} (e, t, n)
},
function() {
return o = t.apply(this, arguments),
e.invert = o.invert &&
function(t) {
return (t = c.invert((t[0] - s) / g, (a - t[1]) / g)) && [t[0] * Up, t[1] * Up]
},
r()
}
} (function() {
return t
})()
}
function bo(t, e) {
return [t, Jp(Kp((qp + e) / 2))]
}
function xo(t, e) {
return [Jp(Kp((qp + e) / 2)), -t]
}
function Eo(t, n, r, i) {
var o = t.properties || {},
s = "Feature" === t.type ? t.geometry: t;
if ("GeometryCollection" === s.type) {
var a = [];
return R(t,
function(t) {
var e = Eo(t, n, r, i);
e && a.push(e)
}),
c(a)
}
var u, l = U(t),
h = l[1] > 50 && l[3] > 50;
u = h ? {
type: s.type,
coordinates: Io(s.coordinates, Co(s))
}: cn(s);
var f = (new xl).read(u),
p = g(y(n, r), "meters"),
d = df.bufferOp(f, p);
if (d = (new El).write(d), !Mo(d.coordinates)) {
var v;
return (v = h ? {
type: d.type,
coordinates: So(d.coordinates, Co(s))
}: ln(d)).geometry ? v: e(v, o)
}
}
function Mo(t) {
return Array.isArray(t[0]) ? Mo(t[0]) : isNaN(t[0])
}
function Io(t, e) {
return "object" != typeof t[0] ? e(t) : t.map(function(t) {
return Io(t, e)
})
}
function So(t, e) {
return "object" != typeof t[0] ? e.invert(t) : t.map(function(t) {
return So(t, e)
})
}
function Co(t) {
var e = ge(t).geometry.coordinates.reverse(),
n = e.map(function(t) {
return - t
});
return Sd().center(e).rotate(n).scale(ko)
}
function No() {
for (var t = new xl,
e = t.read(JSON.stringify(arguments[0].geometry)), n = 1; n < arguments.length; n++) e = Rp.union(e, t.read(JSON.stringify(arguments[n].geometry)));
return e = (new El).write(e),
{
type: "Feature",
geometry: e,
properties: arguments[0].properties
}
}
function Po(t, n) {
var r = J(t),
i = J(n);
if (te(Ln(i, {
precision: 4
})).coordinates[0].length < 4) return null;
if (te(Ln(r, {
precision: 4
})).coordinates[0].length < 4) return null;
var o = new xl,
s = o.read(Ln(r)),
a = o.read(Ln(i)),
u = Ip.intersection(s, a);
return u.isEmpty() ? null: e((new El).write(u))
}
function Lo(t, e) {
return function(t, e, n) {
var r, i;
if (!Array.isArray(e)) throw new Error("Get closest expects an array as second argument");
return e.forEach(function(e, o) {
var s = n(e, t);
s >= 0 && (void 0 === i || s < i) && (i = s, r = o)
}),
r
} (t, e,
function(t, e) {
return t - e
})
}
function Ao(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.properties || {},
i = n.triangles,
s = n.mask;
if (null === e || void 0 === e) throw new Error("cellSide is required");
if (!E(e)) throw new Error("cellSide is invalid");
if (!t) throw new Error("bbox is required");
if (!Array.isArray(t)) throw new Error("bbox must be array");
if (4 !== t.length) throw new Error("bbox must contain 4 numbers");
if (s && -1 === ["Polygon", "MultiPolygon"].indexOf(Q(s))) throw new Error("options.mask must be a (Multi)Polygon");
var a = t[0],
u = t[1],
l = t[2],
h = t[3],
f = (u + h) / 2,
p = (a + l) / 2,
d = 2 * e / Ft([a, f], [l, f], n) * (l - a),
g = 2 * e / Ft([p, u], [p, h], n) * (h - u),
y = d / 2,
v = 2 * y,
m = Math.sqrt(3) / 2 * g,
_ = l - a,
w = h - u,
b = .75 * v,
x = m,
I = (_ - v) / (v - y / 2),
S = Math.floor(I),
C = (S * b - y / 2 - _) / 2 - y / 2 + b / 2,
N = Math.floor((w - m) / m),
P = (w - N * m) / 2,
L = N * m - w > m / 2;
L && (P -= m / 4);
for (var A = [], O = [], T = 0; T < 6; T++) {
var R = 2 * Math.PI / 6 * T;
A.push(Math.cos(R)),
O.push(Math.sin(R))
}
for (var D = [], k = 0; k <= S; k++) for (var F = 0; F <= N; F++) {
var j = k % 2 == 1;
if (! (0 === F && j || 0 === F && L)) {
var q = k * b + a - C,
B = F * x + u + P;
if (j && (B -= m / 2), !0 === i)(function(t, e, n, r, i, s) {
for (var a = [], u = 0; u < 6; u++) {
var c = [];
c.push(t),
c.push([t[0] + e * i[u], t[1] + n * s[u]]),
c.push([t[0] + e * i[(u + 1) % 6], t[1] + n * s[(u + 1) % 6]]),
c.push(t),
a.push(o([c], r))
}
return a
})([q, B], d / 2, g / 2, r, A, O).forEach(function(t) {
s ? Po(s, t) && D.push(t) : D.push(t)
});
else {
var G = function(t, e, n, r, i, s) {
for (var a = [], u = 0; u < 6; u++) {
var c = t[0] + e * i[u],
l = t[1] + n * s[u];
a.push([c, l])
}
return a.push(a[0].slice()),
o([a], r)
} ([q, B], d / 2, g / 2, r, A, O);
s ? Po(s, G) && D.push(G) : D.push(G)
}
}
}
return c(D)
}
function Oo(t) {
if (t.features.length <= 1) return t;
var e = function(t) {
var e = Vo(),
n = [];
return k(t,
function(t, e) {
var r = U(t);
n.push({
minX: r[0],
minY: r[1],
maxX: r[2],
maxY: r[3],
geojson: t,
index: e
})
}),
e.load(n),
e
} (t),
n = [],
r = {};
return k(t,
function(t, i) {
if (r[i]) return ! 0;
for (e.remove({
index: i
},
To), r[i] = !0;;) {
var o = U(t),
s = e.search({
minX: o[0],
minY: o[1],
maxX: o[2],
maxY: o[3]
});
if (s.length > 0) {
var a = s.map(function(t) {
return r[t.index] = !0,
e.remove({
index: t.index
},
To),
t.geojson
});
a.push(t),
t = No.apply(this, a)
}
if (0 === s.length) break
}
n.push(t)
}),
c(n)
}
function To(t, e) {
return t.index === e.index
}
function Ro(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.properties,
i = n.mask,
s = [];
if (null === e || void 0 === e) throw new Error("cellSide is required");
if (!E(e)) throw new Error("cellSide is invalid");
if (!t) throw new Error("bbox is required");
if (!Array.isArray(t)) throw new Error("bbox must be array");
if (4 !== t.length) throw new Error("bbox must contain 4 numbers");
if (i && -1 === ["Polygon", "MultiPolygon"].indexOf(Q(i))) throw new Error("options.mask must be a (Multi)Polygon");
for (var a = t[0], u = t[1], l = t[2], h = t[3], f = e / Ft([a, u], [l, u], n) * (l - a), p = e / Ft([a, u], [a, h], n) * (h - u), d = l - a, g = h - u, y = Math.floor(d / f), v = Math.floor(g / p), m = (g - v * p) / 2, _ = a + (d - y * f) / 2, w = 0; w < y; w++) {
for (var b = u + m,
x = 0; x < v; x++) {
var I = o([[[_, b], [_, b + p], [_ + f, b + p], [_ + f, b], [_, b]]], r);
i ? Po(i, I) && s.push(I) : s.push(I),
b += p
}
_ += f
}
return c(s)
}
function Do(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.properties,
i = n.mask,
s = [];
if (null === e || void 0 === e) throw new Error("cellSide is required");
if (!E(e)) throw new Error("cellSide is invalid");
if (!t) throw new Error("bbox is required");
if (!Array.isArray(t)) throw new Error("bbox must be array");
if (4 !== t.length) throw new Error("bbox must contain 4 numbers");
if (i && -1 === ["Polygon", "MultiPolygon"].indexOf(Q(i))) throw new Error("options.mask must be a (Multi)Polygon");
for (var a = e / Ft([t[0], t[1]], [t[2], t[1]], n) * (t[2] - t[0]), u = e / Ft([t[0], t[1]], [t[0], t[3]], n) * (t[3] - t[1]), l = 0, h = t[0]; h <= t[2];) {
for (var f = 0,
p = t[1]; p <= t[3];) {
var d = null,
g = null;
l % 2 == 0 && f % 2 == 0 ? (d = o([[[h, p], [h, p + u], [h + a, p], [h, p]]], r), g = o([[[h, p + u], [h + a, p + u], [h + a, p], [h, p + u]]], r)) : l % 2 == 0 && f % 2 == 1 ? (d = o([[[h, p], [h + a, p + u], [h + a, p], [h, p]]], r), g = o([[[h, p], [h, p + u], [h + a, p + u], [h, p]]], r)) : f % 2 == 0 && l % 2 == 1 ? (d = o([[[h, p], [h, p + u], [h + a, p + u], [h, p]]], r), g = o([[[h, p], [h + a, p + u], [h + a, p], [h, p]]], r)) : f % 2 == 1 && l % 2 == 1 && (d = o([[[h, p], [h, p + u], [h + a, p], [h, p]]], r), g = o([[[h, p + u], [h + a, p + u], [h + a, p], [h, p + u]]], r)),
i ? (Po(i, d) && s.push(d), Po(i, g) && s.push(g)) : (s.push(d), s.push(g)),
p += u,
f++
}
l++,
h += a
}
return c(s)
}
var ko = 6371008.8,
Fo = {
meters: ko,
metres: ko,
millimeters: 1e3 * ko,
millimetres: 1e3 * ko,
centimeters: 100 * ko,
centimetres: 100 * ko,
kilometers: ko / 1e3,
kilometres: ko / 1e3,
miles: ko / 1609.344,
nauticalmiles: ko / 1852,
inches: 39.37 * ko,
yards: ko / 1.0936,
feet: 3.28084 * ko,
radians: 1,
degrees: ko / 111325
},
jo = {
meters: 1,
metres: 1,
millimeters: 1e3,
millimetres: 1e3,
centimeters: 100,
centimetres: 100,
kilometers: .001,
kilometres: .001,
miles: 1 / 1609.344,
nauticalmiles: 1 / 1852,
inches: 39.37,
yards: 1 / 1.0936,
feet: 3.28084,
radians: 1 / ko,
degrees: 1 / 111325
},
qo = {
meters: 1,
metres: 1,
millimeters: 1e6,
millimetres: 1e6,
centimeters: 1e4,
centimetres: 1e4,
kilometers: 1e-6,
kilometres: 1e-6,
acres: 247105e-9,
miles: 3.86e-7,
yards: 1.195990046,
feet: 10.763910417,
inches: 1550.003100006
},
Bo = Object.freeze({
earthRadius: ko,
factors: Fo,
unitsFactors: jo,
areaFactors: qo,
feature: e,
geometry: n,
point: r,
points: i,
polygon: o,
polygons: s,
lineString: a,
lineStrings: u,
featureCollection: c,
multiLineString: l,
multiPoint: h,
multiPolygon: f,
geometryCollection: p,
round: d,
radiansToLength: g,
lengthToRadians: y,
lengthToDegrees: v,
bearingToAzimuth: m,
radiansToDegrees: _,
degreesToRadians: w,
convertLength: b,
convertArea: x,
isNumber: E,
isObject: M,
validateBBox: I,
validateId: S,
radians2degrees: function() {
throw new Error("method has been renamed to `radiansToDegrees`")
},
degrees2radians: function() {
throw new Error("method has been renamed to `degreesToRadians`")
},
distanceToDegrees: function() {
throw new Error("method has been renamed to `lengthToDegrees`")
},
distanceToRadians: function() {
throw new Error("method has been renamed to `lengthToRadians`")
},
radiansToDistance: function() {
throw new Error("method has been renamed to `radiansToLength`")
},
bearingToAngle: function() {
throw new Error("method has been renamed to `bearingToAzimuth`")
},
convertDistance: function() {
throw new Error("method has been renamed to `convertLength`")
}
}),
Go = Object.freeze({
coordEach: C,
coordReduce: N,
propEach: P,
propReduce: L,
featureEach: A,
featureReduce: O,
coordAll: T,
geomEach: R,
geomReduce: D,
flattenEach: k,
flattenReduce: F,
segmentEach: j,
segmentReduce: q,
lineEach: B,
lineReduce: G
}),
Uo = Object.freeze({
getCoord: z,
getCoords: Y,
containsNumber: X,
geojsonType: V,
featureOf: W,
collectionOf: H,
getGeom: J,
getGeomType: Z,
getType: Q
}),
zo = {
successCallback: null,
verbose: !1
},
Yo = {},
Xo = it,
Vo = st;
st.prototype = {
all: function() {
return this._all(this.data, [])
},
search: function(t) {
var e = this.data,
n = [],
r = this.toBBox;
if (!gt(t, e)) return n;
for (var i, o, s, a, u = []; e;) {
for (i = 0, o = e.children.length; i < o; i++) s = e.children[i],
gt(t, a = e.leaf ? r(s) : s) && (e.leaf ? n.push(s) : dt(t, a) ? this._all(s, n) : u.push(s));
e = u.pop()
}
return n
},
collides: function(t) {
var e = this.data,
n = this.toBBox;
if (!gt(t, e)) return ! 1;
for (var r, i, o, s, a = []; e;) {
for (r = 0, i = e.children.length; r < i; r++) if (o = e.children[r], s = e.leaf ? n(o) : o, gt(t, s)) {
if (e.leaf || dt(t, s)) return ! 0;
a.push(o)
}
e = a.pop()
}
return ! 1
},
load: function(t) {
if (!t || !t.length) return this;
if (t.length < this._minEntries) {
for (var e = 0,
n = t.length; e < n; e++) this.insert(t[e]);
return this
}
var r = this._build(t.slice(), 0, t.length - 1, 0);
if (this.data.children.length) if (this.data.height === r.height) this._splitRoot(this.data, r);
else {
if (this.data.height < r.height) {
var i = this.data;
this.data = r,
r = i
}
this._insert(r, this.data.height - r.height - 1, !0)
} else this.data = r;
return this
},
insert: function(t) {
return t && this._insert(t, this.data.height - 1),
this
},
clear: function() {
return this.data = yt([]),
this
},
remove: function(t, e) {
if (!t) return this;
for (var n, r, i, o, s = this.data,
a = this.toBBox(t), u = [], c = []; s || u.length;) {
if (s || (s = u.pop(), r = u[u.length - 1], n = c.pop(), o = !0), s.leaf && -1 !== (i = function(t, e, n) {
if (!n) return e.indexOf(t);
for (var r = 0; r < e.length; r++) if (n(t, e[r])) return r;
return - 1
} (t, s.children, e))) return s.children.splice(i, 1),
u.push(s),
this._condense(u),
this;
o || s.leaf || !dt(s, a) ? r ? (n++, s = r.children[n], o = !1) : s = null: (u.push(s), c.push(n), n = 0, r = s, s = s.children[0])
}
return this
},
toBBox: function(t) {
return t
},
compareMinX: lt,
compareMinY: ht,
toJSON: function() {
return this.data
},
fromJSON: function(t) {
return this.data = t,
this
},
_all: function(t, e) {
for (var n = []; t;) t.leaf ? e.push.apply(e, t.children) : n.push.apply(n, t.children),
t = n.pop();
return e
},
_build: function(t, e, n, r) {
var i, o = n - e + 1,
s = this._maxEntries;
if (o <= s) return i = yt(t.slice(e, n + 1)),
at(i, this.toBBox),
i;
r || (r = Math.ceil(Math.log(o) / Math.log(s)), s = Math.ceil(o / Math.pow(s, r - 1))),
(i = yt([])).leaf = !1,
i.height = r;
var a, u, c, l, h = Math.ceil(o / s),
f = h * Math.ceil(Math.sqrt(s));
for (vt(t, e, n, f, this.compareMinX), a = e; a <= n; a += f) for (vt(t, a, c = Math.min(a + f - 1, n), h, this.compareMinY), u = a; u <= c; u += h) l = Math.min(u + h - 1, c),
i.children.push(this._build(t, u, l, r - 1));
return at(i, this.toBBox),
i
},
_chooseSubtree: function(t, e, n, r) {
for (var i, o, s, a, u, c, l, h; r.push(e), !e.leaf && r.length - 1 !== n;) {
for (l = h = 1 / 0, i = 0, o = e.children.length; i < o; i++) u = ft(s = e.children[i]),
(c = function(t, e) {
return (Math.max(e.maxX, t.maxX) - Math.min(e.minX, t.minX)) * (Math.max(e.maxY, t.maxY) - Math.min(e.minY, t.minY))
} (t, s) - u) < h ? (h = c, l = u < l ? u: l, a = s) : c === h && u < l && (l = u, a = s);
e = a || e.children[0]
}
return e
},
_insert: function(t, e, n) {
var r = this.toBBox,
i = n ? t: r(t),
o = [],
s = this._chooseSubtree(i, this.data, e, o);
for (s.children.push(t), ct(s, i); e >= 0 && o[e].children.length > this._maxEntries;) this._split(o, e),
e--;
this._adjustParentBBoxes(i, o, e)
},
_split: function(t, e) {
var n = t[e],
r = n.children.length,
i = this._minEntries;
this._chooseSplitAxis(n, i, r);
var o = this._chooseSplitIndex(n, i, r),
s = yt(n.children.splice(o, n.children.length - o));
s.height = n.height,
s.leaf = n.leaf,
at(n, this.toBBox),
at(s, this.toBBox),
e ? t[e - 1].children.push(s) : this._splitRoot(n, s)
},
_splitRoot: function(t, e) {
this.data = yt([t, e]),
this.data.height = t.height + 1,
this.data.leaf = !1,
at(this.data, this.toBBox)
},
_chooseSplitIndex: function(t, e, n) {
var r, i, o, s, a, u, c, l;
for (u = c = 1 / 0, r = e; r <= n - e; r++) s = function(t, e) {
var n = Math.max(t.minX, e.minX),
r = Math.max(t.minY, e.minY),
i = Math.min(t.maxX, e.maxX),
o = Math.min(t.maxY, e.maxY);
return Math.max(0, i - n) * Math.max(0, o - r)
} (i = ut(t, 0, r, this.toBBox), o = ut(t, r, n, this.toBBox)),
a = ft(i) + ft(o),
s < u ? (u = s, l = r, c = a < c ? a: c) : s === u && a < c && (c = a, l = r);
return l
},
_chooseSplitAxis: function(t, e, n) {
var r = t.leaf ? this.compareMinX: lt,
i = t.leaf ? this.compareMinY: ht;
this._allDistMargin(t, e, n, r) < this._allDistMargin(t, e, n, i) && t.children.sort(r)
},
_allDistMargin: function(t, e, n, r) {
t.children.sort(r);
var i, o, s = this.toBBox,
a = ut(t, 0, e, s),
u = ut(t, n - e, n, s),
c = pt(a) + pt(u);
for (i = e; i < n - e; i++) o = t.children[i],
ct(a, t.leaf ? s(o) : o),
c += pt(a);
for (i = n - e - 1; i >= e; i--) o = t.children[i],
ct(u, t.leaf ? s(o) : o),
c += pt(u);
return c
},
_adjustParentBBoxes: function(t, e, n) {
for (var r = n; r >= 0; r--) ct(e[r], t)
},
_condense: function(t) {
for (var e, n = t.length - 1; n >= 0; n--) 0 === t[n].children.length ? n > 0 ? (e = t[n - 1].children).splice(e.indexOf(t[n]), 1) : this.clear() : at(t[n], this.toBBox)
},
_initFormat: function(t) {
var e = ["return a", " - b", ";"];
this.compareMinX = new Function("a", "b", e.join(t[0])),
this.compareMinY = new Function("a", "b", e.join(t[1])),
this.toBBox = new Function("a", "return {minX: a" + t[0] + ", minY: a" + t[1] + ", maxX: a" + t[2] + ", maxY: a" + t[3] + "};")
}
};
var Wo = function(t, e, n) {
var r = t * e,
i = Ho * t,
o = i - (i - t),
s = t - o,
a = Ho * e,
u = a - (a - e),
c = e - u,
l = s * c - (r - o * u - s * u - o * c);
return n ? (n[0] = l, n[1] = r, n) : [l, r]
},
Ho = +(Math.pow(2, 27) + 1),
Jo = function(t, e) {
var n = 0 | t.length,
r = 0 | e.length;
if (1 === n && 1 === r) return function(t, e) {
var n = t + e,
r = n - t,
i = t - (n - r) + (e - r);
return i ? [i, n] : [n]
} (t[0], e[0]);
var i, o, s = n + r,
a = new Array(s),
u = 0,
c = 0,
l = 0,
h = Math.abs,
f = t[c],
p = h(f),
d = e[l],
g = h(d);
p < g ? (o = f, (c += 1) < n && (p = h(f = t[c]))) : (o = d, (l += 1) < r && (g = h(d = e[l]))),
c < n && p < g || l >= r ? (i = f, (c += 1) < n && (p = h(f = t[c]))) : (i = d, (l += 1) < r && (g = h(d = e[l])));
for (var y, v, m = i + o,
_ = m - i,
w = o - _,
b = w,
x = m; c < n && l < r;) p < g ? (i = f, (c += 1) < n && (p = h(f = t[c]))) : (i = d, (l += 1) < r && (g = h(d = e[l]))),
(w = (o = b) - (_ = (m = i + o) - i)) && (a[u++] = w),
b = x - ((y = x + m) - (v = y - x)) + (m - v),
x = y;
for (; c < n;)(w = (o = b) - (_ = (m = (i = f) + o) - i)) && (a[u++] = w),
b = x - ((y = x + m) - (v = y - x)) + (m - v),
x = y,
(c += 1) < n && (f = t[c]);
for (; l < r;)(w = (o = b) - (_ = (m = (i = d) + o) - i)) && (a[u++] = w),
b = x - ((y = x + m) - (v = y - x)) + (m - v),
x = y,
(l += 1) < r && (d = e[l]);
return b && (a[u++] = b),
x && (a[u++] = x),
u || (a[u++] = 0),
a.length = u,
a
},
Zo = function(t, e, n) {
var r = t + e,
i = r - t,
o = e - i,
s = t - (r - i);
return n ? (n[0] = s + o, n[1] = r, n) : [s + o, r]
},
Qo = function(t, e) {
var n = t.length;
if (1 === n) {
var r = Wo(t[0], e);
return r[0] ? r: [r[1]]
}
var i = new Array(2 * n),
o = [.1, .1],
s = [.1, .1],
a = 0;
Wo(t[0], e, o),
o[0] && (i[a++] = o[0]);
for (var u = 1; u < n; ++u) {
Wo(t[u], e, s);
var c = o[1];
Zo(c, s[0], o),
o[0] && (i[a++] = o[0]);
var l = s[1],
h = o[1],
f = l + h,
p = h - (f - l);
o[1] = f,
p && (i[a++] = p)
}
return o[1] && (i[a++] = o[1]),
0 === a && (i[a++] = 0),
i.length = a,
i
},
Ko = function(t, e) {
var n = 0 | t.length,
r = 0 | e.length;
if (1 === n && 1 === r) return function(t, e) {
var n = t + e,
r = n - t,
i = t - (n - r) + (e - r);
return i ? [i, n] : [n]
} (t[0], -e[0]);
var i, o, s = n + r,
a = new Array(s),
u = 0,
c = 0,
l = 0,
h = Math.abs,
f = t[c],
p = h(f),
d = -e[l],
g = h(d);
p < g ? (o = f, (c += 1) < n && (p = h(f = t[c]))) : (o = d, (l += 1) < r && (g = h(d = -e[l]))),
c < n && p < g || l >= r ? (i = f, (c += 1) < n && (p = h(f = t[c]))) : (i = d, (l += 1) < r && (g = h(d = -e[l])));
for (var y, v, m = i + o,
_ = m - i,
w = o - _,
b = w,
x = m; c < n && l < r;) p < g ? (i = f, (c += 1) < n && (p = h(f = t[c]))) : (i = d, (l += 1) < r && (g = h(d = -e[l]))),
(w = (o = b) - (_ = (m = i + o) - i)) && (a[u++] = w),
b = x - ((y = x + m) - (v = y - x)) + (m - v),
x = y;
for (; c < n;)(w = (o = b) - (_ = (m = (i = f) + o) - i)) && (a[u++] = w),
b = x - ((y = x + m) - (v = y - x)) + (m - v),
x = y,
(c += 1) < n && (f = t[c]);
for (; l < r;)(w = (o = b) - (_ = (m = (i = d) + o) - i)) && (a[u++] = w),
b = x - ((y = x + m) - (v = y - x)) + (m - v),
x = y,
(l += 1) < r && (d = -e[l]);
return b && (a[u++] = b),
x && (a[u++] = x),
u || (a[u++] = 0),
a.length = u,
a
},
$o = mt(function(t) {
function e(t, e) {
for (var n = new Array(t.length - 1), r = 1; r < t.length; ++r) for (var i = n[r - 1] = new Array(t.length - 1), o = 0, s = 0; o < t.length; ++o) o !== e && (i[s++] = t[r][o]);
return n
}
function n(t) {
return 1 & t ? "-": ""
}
function r(t) {
if (1 === t.length) return t[0];
if (2 === t.length) return ["sum(", t[0], ",", t[1], ")"].join("");
var e = t.length >> 1;
return ["sum(", r(t.slice(0, e)), ",", r(t.slice(e)), ")"].join("")
}
function i(t) {
if (2 === t.length) return [["sum(prod(", t[0][0], ",", t[1][1], "),prod(-", t[0][1], ",", t[1][0], "))"].join("")];
for (var o = [], s = 0; s < t.length; ++s) o.push(["scale(", r(i(e(t, s))), ",", n(s), t[0][s], ")"].join(""));
return o
}
function o(t) {
for (var n = [], o = [], s = function(t) {
for (var e = new Array(t), n = 0; n < t; ++n) {
e[n] = new Array(t);
for (var r = 0; r < t; ++r) e[n][r] = ["m", r, "[", t - n - 1, "]"].join("")
}
return e
} (t), a = [], u = 0; u < t; ++u) 0 == (1 & u) ? n.push.apply(n, i(e(s, u))) : o.push.apply(o, i(e(s, u))),
a.push("m" + u);
var c = r(n),
l = r(o),
h = "orientation" + t + "Exact",
f = ["function ", h, "(", a.join(), "){var p=", c, ",n=", l, ",d=sub(p,n);return d[d.length-1];};return ", h].join("");
return new Function("sum", "prod", "scale", "sub", f)(Jo, Wo, Qo, Ko)
}
var s = o(3),
a = o(4),
u = [function() {
return 0
},
function() {
return 0
},
function(t, e) {
return e[0] - t[0]
},
function(t, e, n) {
var r, i = (t[1] - n[1]) * (e[0] - n[0]),
o = (t[0] - n[0]) * (e[1] - n[1]),
a = i - o;
if (i > 0) {
if (o <= 0) return a;
r = i + o
} else {
if (! (i < 0)) return a;
if (o >= 0) return a;
r = -(i + o)
}
var u = 3.3306690738754716e-16 * r;
return a >= u || a <= -u ? a: s(t, e, n)
},
function(t, e, n, r) {
var i = t[0] - r[0],
o = e[0] - r[0],
s = n[0] - r[0],
u = t[1] - r[1],
c = e[1] - r[1],
l = n[1] - r[1],
h = t[2] - r[2],
f = e[2] - r[2],
p = n[2] - r[2],
d = o * l,
g = s * c,
y = s * u,
v = i * l,
m = i * c,
_ = o * u,
w = h * (d - g) + f * (y - v) + p * (m - _),
b = 7.771561172376103e-16 * ((Math.abs(d) + Math.abs(g)) * Math.abs(h) + (Math.abs(y) + Math.abs(v)) * Math.abs(f) + (Math.abs(m) + Math.abs(_)) * Math.abs(p));
return w > b || -w > b ? w: a(t, e, n, r)
}]; !
function() {
for (; u.length <= 5;) u.push(o(u.length));
for (var e = [], n = ["slow"], r = 0; r <= 5; ++r) e.push("a" + r),
n.push("o" + r);
var i = ["function getOrientation(", e.join(), "){switch(arguments.length){case 0:case 1:return 0;"];
for (r = 2; r <= 5; ++r) i.push("case ", r, ":return o", r, "(", e.slice(0, r).join(), ");");
i.push("}var s=new Array(arguments.length);for(var i=0;i<arguments.length;++i){s[i]=arguments[i]};return slow(s);}return getOrientation"),
n.push(i.join(""));
var s = Function.apply(void 0, n);
for (t.exports = s.apply(void 0, [function(t) {
var e = u[t.length];
return e || (e = u[t.length] = o(t.length)),
e.apply(void 0, t)
}].concat(u)), r = 0; r <= 5; ++r) t.exports[r] = u[r]
} ()
}),
ts = function(t) {
var e = t.length;
if (e < 3) {
for (var n = new Array(e), r = 0; r < e; ++r) n[r] = r;
return 2 === e && t[0][0] === t[1][0] && t[0][1] === t[1][1] ? [0] : n
}
var i = new Array(e);
for (r = 0; r < e; ++r) i[r] = r;
i.sort(function(e, n) {
return t[e][0] - t[n][0] || t[e][1] - t[n][1]
});
var o = [i[0], i[1]],
s = [i[0], i[1]];
for (r = 2; r < e; ++r) {
for (var a = i[r], u = t[a], c = o.length; c > 1 && es(t[o[c - 2]], t[o[c - 1]], u) <= 0;) c -= 1,
o.pop();
for (o.push(a), c = s.length; c > 1 && es(t[s[c - 2]], t[s[c - 1]], u) >= 0;) c -= 1,
s.pop();
s.push(a)
}
n = new Array(s.length + o.length - 2);
for (var l = 0,
h = (r = 0, o.length); r < h; ++r) n[l++] = o[r];
for (var f = s.length - 2; f > 0; --f) n[l++] = s[f];
return n
},
es = $o[3],
ns = _t,
rs = _t;
_t.prototype = {
push: function(t) {
this.data.push(t),
this.length++,
this._up(this.length - 1)
},
pop: function() {
if (0 !== this.length) {
var t = this.data[0];
return this.length--,
this.length > 0 && (this.data[0] = this.data[this.length], this._down(0)),
this.data.pop(),
t
}
},
peek: function() {
return this.data[0]
},
_up: function(t) {
for (var e = this.data,
n = this.compare,
r = e[t]; t > 0;) {
var i = t - 1 >> 1,
o = e[i];
if (n(r, o) >= 0) break;
e[t] = o,
t = i
}
e[t] = r
},
_down: function(t) {
for (var e = this.data,
n = this.compare,
r = this.length >> 1,
i = e[t]; t < r;) {
var o = 1 + (t << 1),
s = o + 1,
a = e[o];
if (s < this.length && n(e[s], a) < 0 && (o = s, a = e[s]), n(a, i) >= 0) break;
e[t] = a,
t = o
}
e[t] = i
}
},
ns.
default = rs;
var is = function(t, e) {
for (var n = t[0], r = t[1], i = !1, o = 0, s = e.length - 1; o < e.length; s = o++) {
var a = e[o][0],
u = e[o][1],
c = e[s][0],
l = e[s][1];
u > r != l > r && n < (c - a) * (r - u) / (l - u) + a && (i = !i)
}
return i
},
os = $o[3],
ss = wt,
as = wt;
ss.
default = as;
var us = function(t) {
return t
},
cs = function(t) {
if (null == t) return us;
var e, n, r = t.scale[0],
i = t.scale[1],
o = t.translate[0],
s = t.translate[1];
return function(t, a) {
a || (e = n = 0);
var u = 2,
c = t.length,
l = new Array(c);
for (l[0] = (e += t[0]) * r + o, l[1] = (n += t[1]) * i + s; u < c;) l[u] = t[u],
++u;
return l
}
},
ls = function(t, e) {
for (var n, r = t.length,
i = r - e; i < --r;) n = t[i],
t[i++] = t[r],
t[r] = n
},
hs = function(t, e) {
function n(t, e) {
for (var n in t) {
var i = t[n];
delete e[i.start],
delete i.start,
delete i.end,
i.forEach(function(t) {
r[t < 0 ? ~t: t] = 1
}),
s.push(i)
}
}
var r = {},
i = {},
o = {},
s = [],
a = -1;
return e.forEach(function(n, r) {
var i, o = t.arcs[n < 0 ? ~n: n];
o.length < 3 && !o[1][0] && !o[1][1] && (i = e[++a], e[a] = n, e[r] = i)
}),
e.forEach(function(e) {
var n, r, s = function(e) {
var n, r = t.arcs[e < 0 ? ~e: e],
i = r[0];
return t.transform ? (n = [0, 0], r.forEach(function(t) {
n[0] += t[0],
n[1] += t[1]
})) : n = r[r.length - 1],
e < 0 ? [n, i] : [i, n]
} (e),
a = s[0],
u = s[1];
if (n = o[a]) if (delete o[n.end], n.push(e), n.end = u, r = i[u]) {
delete i[r.start];
var c = r === n ? n: n.concat(r);
i[c.start = n.start] = o[c.end = r.end] = c
} else i[n.start] = o[n.end] = n;
else if (n = i[u]) if (delete i[n.start], n.unshift(e), n.start = a, r = o[a]) {
delete o[r.end];
var l = r === n ? n: r.concat(n);
i[l.start = r.start] = o[l.end = n.end] = l
} else i[n.start] = o[n.end] = n;
else i[(n = [e]).start = a] = o[n.end = u] = n
}),
n(o, i),
n(i, o),
e.forEach(function(t) {
r[t < 0 ? ~t: t] || s.push([t])
}),
s
},
fs = function(t) {
return zt(t, Yt.apply(this, arguments))
},
ps = function(t, e, n, r, i, o) {
3 === arguments.length && (r = o = Array, i = null);
for (var s = new r(t = 1 << Math.max(4, Math.ceil(Math.log(t) / Math.LN2))), a = new o(t), u = t - 1, c = 0; c < t; ++c) s[c] = i;
return {
set: function(r, o) {
for (var c = e(r) & u, l = s[c], h = 0; l != i;) {
if (n(l, r)) return a[c] = o;
if (++h >= t) throw new Error("full hashmap");
l = s[c = c + 1 & u]
}
return s[c] = r,
a[c] = o,
o
},
maybeSet: function(r, o) {
for (var c = e(r) & u, l = s[c], h = 0; l != i;) {
if (n(l, r)) return a[c];
if (++h >= t) throw new Error("full hashmap");
l = s[c = c + 1 & u]
}
return s[c] = r,
a[c] = o,
o
},
get: function(r, o) {
for (var c = e(r) & u, l = s[c], h = 0; l != i;) {
if (n(l, r)) return a[c];
if (++h >= t) break;
l = s[c = c + 1 & u]
}
return o
},
keys: function() {
for (var t = [], e = 0, n = s.length; e < n; ++e) {
var r = s[e];
r != i && t.push(r)
}
return t
}
}
},
ds = function(t, e) {
return t[0] === e[0] && t[1] === e[1]
},
gs = new ArrayBuffer(16),
ys = new Float64Array(gs),
vs = new Uint32Array(gs),
ms = function(t) {
ys[0] = t[0],
ys[1] = t[1];
var e = vs[0] ^ vs[1];
return 2147483647 & (e = e << 5 ^ e >> 7 ^ vs[2] ^ vs[3])
},
_s = function(t) {
function e(t, e, n, r) {
if (f[n] !== t) {
f[n] = t;
var i = p[n];
if (i >= 0) {
var o = d[n];
i === e && o === r || i === r && o === e || (++y, g[n] = 1)
} else p[n] = e,
d[n] = r
}
}
function n(t) {
return ms(u[t])
}
function r(t, e) {
return ds(u[t], u[e])
}
var i, o, s, a, u = t.coordinates,
c = t.lines,
l = t.rings,
h = function() {
for (var t = ps(1.4 * u.length, n, r, Int32Array, -1, Int32Array), e = new Int32Array(u.length), i = 0, o = u.length; i < o; ++i) e[i] = t.maybeSet(i, i);
return e
} (),
f = new Int32Array(u.length),
p = new Int32Array(u.length),
d = new Int32Array(u.length),
g = new Int8Array(u.length),
y = 0;
for (i = 0, o = u.length; i < o; ++i) f[i] = p[i] = d[i] = -1;
for (i = 0, o = c.length; i < o; ++i) {
var v = c[i],
m = v[0],
_ = v[1];
for (s = h[m], a = h[++m], ++y, g[s] = 1; ++m <= _;) e(i, s, s = a, a = h[m]); ++y,
g[a] = 1
}
for (i = 0, o = u.length; i < o; ++i) f[i] = -1;
for (i = 0, o = l.length; i < o; ++i) {
var w = l[i],
b = w[0] + 1,
x = w[1];
for (e(i, h[x - 1], s = h[b - 1], a = h[b]); ++b <= x;) e(i, s, s = a, a = h[b])
}
f = p = d = null;
var E, M = function(t, e, n, r, i) {
3 === arguments.length && (r = Array, i = null);
for (var o = new r(t = 1 << Math.max(4, Math.ceil(Math.log(t) / Math.LN2))), s = t - 1, a = 0; a < t; ++a) o[a] = i;
return {
add: function(r) {
for (var a = e(r) & s, u = o[a], c = 0; u != i;) {
if (n(u, r)) return ! 0;
if (++c >= t) throw new Error("full hashset");
u = o[a = a + 1 & s]
}
return o[a] = r,
!0
},
has: function(r) {
for (var a = e(r) & s, u = o[a], c = 0; u != i;) {
if (n(u, r)) return ! 0;
if (++c >= t) break;
u = o[a = a + 1 & s]
}
return ! 1
},
values: function() {
for (var t = [], e = 0, n = o.length; e < n; ++e) {
var r = o[e];
r != i && t.push(r)
}
return t
}
}
} (1.4 * y, ms, ds);
for (i = 0, o = u.length; i < o; ++i) g[E = h[i]] && M.add(u[E]);
return M
},
ws = function(t) {
var e, n, r, i = _s(t),
o = t.coordinates,
s = t.lines,
a = t.rings;
for (n = 0, r = s.length; n < r; ++n) for (var u = s[n], c = u[0], l = u[1]; ++c < l;) i.has(o[c]) && (e = {
0 : c,
1 : u[1]
},
u[1] = c, u = u.next = e);
for (n = 0, r = a.length; n < r; ++n) for (var h = a[n], f = h[0], p = f, d = h[1], g = i.has(o[f]); ++p < d;) i.has(o[p]) && (g ? (e = {
0 : p,
1 : h[1]
},
h[1] = p, h = h.next = e) : (function(t, e, n, r) {
Xt(t, e, n),
Xt(t, e, e + r),
Xt(t, e + r, n)
} (o, f, d, d - p), o[d] = o[f], g = !0, p = f));
return t
},
bs = function(t) {
function e(t) {
var e, n, r, i, o, s, a, u;
if (r = p.get(e = c[t[0]])) for (a = 0, u = r.length; a < u; ++a) if (i = r[a],
function(t, e) {
var n = t[0],
r = e[0],
i = t[1];
if (n - i != r - e[1]) return ! 1;
for (; n <= i; ++n, ++r) if (!ds(c[n], c[r])) return ! 1;
return ! 0
} (i, t)) return t[0] = i[0],
void(t[1] = i[1]);
if (o = p.get(n = c[t[1]])) for (a = 0, u = o.length; a < u; ++a) if (s = o[a],
function(t, e) {
var n = t[0],
r = e[0],
i = t[1],
o = e[1];
if (n - i != r - o) return ! 1;
for (; n <= i; ++n, --o) if (!ds(c[n], c[o])) return ! 1;
return ! 0
} (s, t)) return t[1] = s[0],
void(t[0] = s[1]);
r ? r.push(t) : p.set(e, [t]),
o ? o.push(t) : p.set(n, [t]),
d.push(t)
}
function n(t, e) {
var n = t[0],
r = e[0],
o = t[1] - n;
if (o !== e[1] - r) return ! 1;
for (var s = i(t), a = i(e), u = 0; u < o; ++u) if (!ds(c[n + (u + s) % o], c[r + (u + a) % o])) return ! 1;
return ! 0
}
function r(t, e) {
var n = t[0],
r = e[0],
o = t[1],
s = e[1],
a = o - n;
if (a !== s - r) return ! 1;
for (var u = i(t), l = a - i(e), h = 0; h < a; ++h) if (!ds(c[n + (h + u) % a], c[s - (h + l) % a])) return ! 1;
return ! 0
}
function i(t) {
for (var e = t[0], n = t[1], r = e, i = r, o = c[r]; ++r < n;) {
var s = c[r]; (s[0] < o[0] || s[0] === o[0] && s[1] < o[1]) && (i = r, o = s)
}
return i - e
}
var o, s, a, u, c = t.coordinates,
l = t.lines,
h = t.rings,
f = l.length + h.length;
for (delete t.lines, delete t.rings, a = 0, u = l.length; a < u; ++a) for (o = l[a]; o = o.next;)++f;
for (a = 0, u = h.length; a < u; ++a) for (s = h[a]; s = s.next;)++f;
var p = ps(2 * f * 1.4, ms, ds),
d = t.arcs = [];
for (a = 0, u = l.length; a < u; ++a) {
o = l[a];
do {
e(o)
} while ( o = o . next )
}
for (a = 0, u = h.length; a < u; ++a) if ((s = h[a]).next) do {
e(s)
} while ( s = s . next );
else !
function(t) {
var e, o, s, a, u;
if (o = p.get(e = c[t[0]])) for (a = 0, u = o.length; a < u; ++a) {
if (s = o[a], n(s, t)) return t[0] = s[0],
void(t[1] = s[1]);
if (r(s, t)) return t[0] = s[1],
void(t[1] = s[0])
}
if (o = p.get(e = c[t[0] + i(t)])) for (a = 0, u = o.length; a < u; ++a) {
if (s = o[a], n(s, t)) return t[0] = s[0],
void(t[1] = s[1]);
if (r(s, t)) return t[0] = s[1],
void(t[1] = s[0])
}
o ? o.push(t) : p.set(e, [t]),
d.push(t)
} (s);
return t
},
xs = function(t, e) {
function n(t) {
t && l.hasOwnProperty(t.type) && l[t.type](t)
}
function r(t) {
var e = [];
do {
var n = c.get(t);
e.push(t[0] < t[1] ? n: ~n)
} while ( t = t . next );
return e
}
function i(t) {
return t.map(r)
}
var o = function(t) {
function e(t) {
null != t && c.hasOwnProperty(t.type) && c[t.type](t)
}
function n(t) {
var e = t[0],
n = t[1];
e < o && (o = e),
e > a && (a = e),
n < s && (s = n),
n > u && (u = n)
}
function r(t) {
t.forEach(n)
}
function i(t) {
t.forEach(r)
}
var o = 1 / 0,
s = 1 / 0,
a = -1 / 0,
u = -1 / 0,
c = {
GeometryCollection: function(t) {
t.geometries.forEach(e)
},
Point: function(t) {
n(t.coordinates)
},
MultiPoint: function(t) {
t.coordinates.forEach(n)
},
LineString: function(t) {
r(t.arcs)
},
MultiLineString: function(t) {
t.arcs.forEach(r)
},
Polygon: function(t) {
t.arcs.forEach(r)
},
MultiPolygon: function(t) {
t.arcs.forEach(i)
}
};
for (var l in t) e(t[l]);
return a >= o && u >= s ? [o, s, a, u] : void 0
} (t = function(t) {
var e, n = {};
for (e in t) n[e] = Vt(t[e]);
return n
} (t)),
s = e > 0 && o &&
function(t, e, n) {
function r(t) {
return [Math.round((t[0] - c) * p), Math.round((t[1] - l) * d)]
}
function i(t, e) {
for (var n, r, i, o, s, a = -1,
u = 0,
h = t.length,
f = new Array(h); ++a < h;) n = t[a],
o = Math.round((n[0] - c) * p),
s = Math.round((n[1] - l) * d),
o === r && s === i || (f[u++] = [r = o, i = s]);
for (f.length = u; u < e;) u = f.push([f[0][0], f[0][1]]);
return f
}
function o(t) {
return i(t, 2)
}
function s(t) {
return i(t, 4)
}
function a(t) {
return t.map(s)
}
function u(t) {
null != t && g.hasOwnProperty(t.type) && g[t.type](t)
}
var c = e[0],
l = e[1],
h = e[2],
f = e[3],
p = h - c ? (n - 1) / (h - c) : 1,
d = f - l ? (n - 1) / (f - l) : 1,
g = {
GeometryCollection: function(t) {
t.geometries.forEach(u)
},
Point: function(t) {
t.coordinates = r(t.coordinates)
},
MultiPoint: function(t) {
t.coordinates = t.coordinates.map(r)
},
LineString: function(t) {
t.arcs = o(t.arcs)
},
MultiLineString: function(t) {
t.arcs = t.arcs.map(o)
},
Polygon: function(t) {
t.arcs = a(t.arcs)
},
MultiPolygon: function(t) {
t.arcs = t.arcs.map(a)
}
};
for (var y in t) u(t[y]);
return {
scale: [1 / p, 1 / d],
translate: [c, l]
}
} (t, o, e),
a = bs(ws(function(t) {
function e(t) {
t && c.hasOwnProperty(t.type) && c[t.type](t)
}
function n(t) {
for (var e = 0,
n = t.length; e < n; ++e) u[++o] = t[e];
var r = {
0 : o - n + 1,
1 : o
};
return s.push(r),
r
}
function r(t) {
for (var e = 0,
n = t.length; e < n; ++e) u[++o] = t[e];
var r = {
0 : o - n + 1,
1 : o
};
return a.push(r),
r
}
function i(t) {
return t.map(r)
}
var o = -1,
s = [],
a = [],
u = [],
c = {
GeometryCollection: function(t) {
t.geometries.forEach(e)
},
LineString: function(t) {
t.arcs = n(t.arcs)
},
MultiLineString: function(t) {
t.arcs = t.arcs.map(n)
},
Polygon: function(t) {
t.arcs = t.arcs.map(r)
},
MultiPolygon: function(t) {
t.arcs = t.arcs.map(i)
}
};
for (var l in t) e(t[l]);
return {
type: "Topology",
coordinates: u,
lines: s,
rings: a,
objects: t
}
} (t))),
u = a.coordinates,
c = ps(1.4 * a.arcs.length, Jt, Zt);
t = a.objects,
a.bbox = o,
a.arcs = a.arcs.map(function(t, e) {
return c.set(t, e),
u.slice(t[0], t[1] + 1)
}),
delete a.coordinates,
u = null;
var l = {
GeometryCollection: function(t) {
t.geometries.forEach(n)
},
LineString: function(t) {
t.arcs = r(t.arcs)
},
MultiLineString: function(t) {
t.arcs = t.arcs.map(r)
},
Polygon: function(t) {
t.arcs = t.arcs.map(r)
},
MultiPolygon: function(t) {
t.arcs = t.arcs.map(i)
}
};
for (var h in t) n(t[h]);
return s && (a.transform = s, a.arcs = function(t) {
for (var e = -1,
n = t.length; ++e < n;) {
for (var r, i, o = t[e], s = 0, a = 1, u = o.length, c = o[0], l = c[0], h = c[1]; ++s < u;) r = (c = o[s])[0],
i = c[1],
r === l && i === h || (o[a++] = [r - l, i - h], l = r, h = i);
1 === a && (o[a++] = [0, 0]),
o.length = a
}
return t
} (a.arcs)),
a
},
Es = function(t) {
this.points = t.points || [],
this.duration = t.duration || 1e4,
this.sharpness = t.sharpness || .85,
this.centers = [],
this.controls = [],
this.stepLength = t.stepLength || 60,
this.length = this.points.length,
this.delay = 0;
for (var e = 0; e < this.length; e++) this.points[e].z = this.points[e].z || 0;
for (e = 0; e < this.length - 1; e++) {
var n = this.points[e],
r = this.points[e + 1];
this.centers.push({
x: (n.x + r.x) / 2,
y: (n.y + r.y) / 2,
z: (n.z + r.z) / 2
})
}
for (this.controls.push([this.points[0], this.points[0]]), e = 0; e < this.centers.length - 1; e++) {
n = this.centers[e],
r = this.centers[e + 1];
var i = this.points[e + 1].x - (this.centers[e].x + this.centers[e + 1].x) / 2,
o = this.points[e + 1].y - (this.centers[e].y + this.centers[e + 1].y) / 2,
s = this.points[e + 1].z - (this.centers[e].y + this.centers[e + 1].z) / 2;
this.controls.push([{
x: (1 - this.sharpness) * this.points[e + 1].x + this.sharpness * (this.centers[e].x + i),
y: (1 - this.sharpness) * this.points[e + 1].y + this.sharpness * (this.centers[e].y + o),
z: (1 - this.sharpness) * this.points[e + 1].z + this.sharpness * (this.centers[e].z + s)
},
{
x: (1 - this.sharpness) * this.points[e + 1].x + this.sharpness * (this.centers[e + 1].x + i),
y: (1 - this.sharpness) * this.points[e + 1].y + this.sharpness * (this.centers[e + 1].y + o),
z: (1 - this.sharpness) * this.points[e + 1].z + this.sharpness * (this.centers[e + 1].z + s)
}])
}
return this.controls.push([this.points[this.length - 1], this.points[this.length - 1]]),
this.steps = this.cacheSteps(this.stepLength),
this
};
Es.prototype.cacheSteps = function(t) {
var e = [],
n = this.pos(0);
e.push(0);
for (var r = 0; r < this.duration; r += 10) {
var i = this.pos(r);
Math.sqrt((i.x - n.x) * (i.x - n.x) + (i.y - n.y) * (i.y - n.y) + (i.z - n.z) * (i.z - n.z)) > t && (e.push(r), n = i)
}
return e
},
Es.prototype.vector = function(t) {
var e = this.pos(t + 10),
n = this.pos(t - 10);
return {
angle: 180 * Math.atan2(e.y - n.y, e.x - n.x) / 3.14,
speed: Math.sqrt((n.x - e.x) * (n.x - e.x) + (n.y - e.y) * (n.y - e.y) + (n.z - e.z) * (n.z - e.z))
}
},
Es.prototype.pos = function(t) {
var e = t - this.delay;
e < 0 && (e = 0),
e > this.duration && (e = this.duration - 1);
var n = e / this.duration;
if (n >= 1) return this.points[this.length - 1];
var r = Math.floor((this.points.length - 1) * n);
return function(t, e, n, r, i) {
var o = function(t) {
var e = t * t;
return [e * t, 3 * e * (1 - t), 3 * t * (1 - t) * (1 - t), (1 - t) * (1 - t) * (1 - t)]
} (t);
return {
x: i.x * o[0] + r.x * o[1] + n.x * o[2] + e.x * o[3],
y: i.y * o[0] + r.y * o[1] + n.y * o[2] + e.y * o[3],
z: i.z * o[0] + r.z * o[1] + n.z * o[2] + e.z * o[3]
}
} ((this.length - 1) * n - r, this.points[r], this.controls[r][1], this.controls[r + 1][0], this.points[r + 1])
};
var Ms = _e,
Is = _e;
_e.deviation = function(t, e, n, r) {
var i = e && e.length,
o = i ? e[0] * n: t.length,
s = Math.abs(Re(t, 0, o, n));
if (i) for (var a = 0,
u = e.length; a < u; a++) {
var c = e[a] * n,
l = a < u - 1 ? e[a + 1] * n: t.length;
s -= Math.abs(Re(t, c, l, n))
}
var h = 0;
for (a = 0; a < r.length; a += 3) {
var f = r[a] * n,
p = r[a + 1] * n,
d = r[a + 2] * n;
h += Math.abs((t[f] - t[d]) * (t[p + 1] - t[f + 1]) - (t[f] - t[p]) * (t[d + 1] - t[f + 1]))
}
return 0 === s && 0 === h ? 0 : Math.abs((h - s) / s)
},
_e.flatten = function(t) {
for (var e = t[0][0].length, n = {
vertices: [],
holes: [],
dimensions: e
},
r = 0, i = 0; i < t.length; i++) {
for (var o = 0; o < t[i].length; o++) for (var s = 0; s < e; s++) n.vertices.push(t[i][o][s]);
i > 0 && (r += t[i - 1].length, n.holes.push(r))
}
return n
},
Ms.
default = Is,
Be.prototype = {
all: function() {
return this._all(this.data, [])
},
search: function(t) {
var e = this.data,
n = [],
r = this.toBBox;
if (!Je(t, e)) return n;
for (var i, o, s, a, u = []; e;) {
for (i = 0, o = e.children.length; i < o; i++) s = e.children[i],
Je(t, a = e.leaf ? r(s) : s) && (e.leaf ? n.push(s) : He(t, a) ? this._all(s, n) : u.push(s));
e = u.pop()
}
return n
},
collides: function(t) {
var e = this.data,
n = this.toBBox;
if (!Je(t, e)) return ! 1;
for (var r, i, o, s, a = []; e;) {
for (r = 0, i = e.children.length; r < i; r++) if (o = e.children[r], s = e.leaf ? n(o) : o, Je(t, s)) {
if (e.leaf || He(t, s)) return ! 0;
a.push(o)
}
e = a.pop()
}
return ! 1
},
load: function(t) {
if (!t || !t.length) return this;
if (t.length < this._minEntries) {
for (var e = 0,
n = t.length; e < n; e++) this.insert(t[e]);
return this
}
var r = this._build(t.slice(), 0, t.length - 1, 0);
if (this.data.children.length) if (this.data.height === r.height) this._splitRoot(this.data, r);
else {
if (this.data.height < r.height) {
var i = this.data;
this.data = r,
r = i
}
this._insert(r, this.data.height - r.height - 1, !0)
} else this.data = r;
return this
},
insert: function(t) {
return t && this._insert(t, this.data.height - 1),
this
},
clear: function() {
return this.data = Ze([]),
this
},
remove: function(t, e) {
if (!t) return this;
for (var n, r, i, o, s = this.data,
a = this.toBBox(t), u = [], c = []; s || u.length;) {
if (s || (s = u.pop(), r = u[u.length - 1], n = c.pop(), o = !0), s.leaf && -1 !== (i = function(t, e, n) {
if (!n) return e.indexOf(t);
for (var r = 0; r < e.length; r++) if (n(t, e[r])) return r;
return - 1
} (t, s.children, e))) return s.children.splice(i, 1),
u.push(s),
this._condense(u),
this;
o || s.leaf || !He(s, a) ? r ? (n++, s = r.children[n], o = !1) : s = null: (u.push(s), c.push(n), n = 0, r = s, s = s.children[0])
}
return this
},
toBBox: function(t) {
return t
},
compareMinX: Ye,
compareMinY: Xe,
toJSON: function() {
return this.data
},
fromJSON: function(t) {
return this.data = t,
this
},
_all: function(t, e) {
for (var n = []; t;) t.leaf ? e.push.apply(e, t.children) : n.push.apply(n, t.children),
t = n.pop();
return e
},
_build: function(t, e, n, r) {
var i, o = n - e + 1,
s = this._maxEntries;
if (o <= s) return i = Ze(t.slice(e, n + 1)),
Ge(i, this.toBBox),
i;
r || (r = Math.ceil(Math.log(o) / Math.log(s)), s = Math.ceil(o / Math.pow(s, r - 1))),
(i = Ze([])).leaf = !1,
i.height = r;
var a, u, c, l, h = Math.ceil(o / s),
f = h * Math.ceil(Math.sqrt(s));
for (Qe(t, e, n, f, this.compareMinX), a = e; a <= n; a += f) for (Qe(t, a, c = Math.min(a + f - 1, n), h, this.compareMinY), u = a; u <= c; u += h) l = Math.min(u + h - 1, c),
i.children.push(this._build(t, u, l, r - 1));
return Ge(i, this.toBBox),
i
},
_chooseSubtree: function(t, e, n, r) {
for (var i, o, s, a, u, c, l, h; r.push(e), !e.leaf && r.length - 1 !== n;) {
for (l = h = 1 / 0, i = 0, o = e.children.length; i < o; i++) u = Ve(s = e.children[i]),
(c = function(t, e) {
return (Math.max(e.maxX, t.maxX) - Math.min(e.minX, t.minX)) * (Math.max(e.maxY, t.maxY) - Math.min(e.minY, t.minY))
} (t, s) - u) < h ? (h = c, l = u < l ? u: l, a = s) : c === h && u < l && (l = u, a = s);
e = a || e.children[0]
}
return e
},
_insert: function(t, e, n) {
var r = this.toBBox,
i = n ? t: r(t),
o = [],
s = this._chooseSubtree(i, this.data, e, o);
for (s.children.push(t), ze(s, i); e >= 0 && o[e].children.length > this._maxEntries;) this._split(o, e),
e--;
this._adjustParentBBoxes(i, o, e)
},
_split: function(t, e) {
var n = t[e],
r = n.children.length,
i = this._minEntries;
this._chooseSplitAxis(n, i, r);
var o = this._chooseSplitIndex(n, i, r),
s = Ze(n.children.splice(o, n.children.length - o));
s.height = n.height,
s.leaf = n.leaf,
Ge(n, this.toBBox),
Ge(s, this.toBBox),
e ? t[e - 1].children.push(s) : this._splitRoot(n, s)
},
_splitRoot: function(t, e) {
this.data = Ze([t, e]),
this.data.height = t.height + 1,
this.data.leaf = !1,
Ge(this.data, this.toBBox)
},
_chooseSplitIndex: function(t, e, n) {
var r, i, o, s, a, u, c, l;
for (u = c = 1 / 0, r = e; r <= n - e; r++) s = function(t, e) {
var n = Math.max(t.minX, e.minX),
r = Math.max(t.minY, e.minY),
i = Math.min(t.maxX, e.maxX),
o = Math.min(t.maxY, e.maxY);
return Math.max(0, i - n) * Math.max(0, o - r)
} (i = Ue(t, 0, r, this.toBBox), o = Ue(t, r, n, this.toBBox)),
a = Ve(i) + Ve(o),
s < u ? (u = s, l = r, c = a < c ? a: c) : s === u && a < c && (c = a, l = r);
return l
},
_chooseSplitAxis: function(t, e, n) {
var r = t.leaf ? this.compareMinX: Ye,
i = t.leaf ? this.compareMinY: Xe;
this._allDistMargin(t, e, n, r) < this._allDistMargin(t, e, n, i) && t.children.sort(r)
},
_allDistMargin: function(t, e, n, r) {
t.children.sort(r);
var i, o, s = this.toBBox,
a = Ue(t, 0, e, s),
u = Ue(t, n - e, n, s),
c = We(a) + We(u);
for (i = e; i < n - e; i++) o = t.children[i],
ze(a, t.leaf ? s(o) : o),
c += We(a);
for (i = n - e - 1; i >= e; i--) o = t.children[i],
ze(u, t.leaf ? s(o) : o),
c += We(u);
return c
},
_adjustParentBBoxes: function(t, e, n) {
for (var r = n; r >= 0; r--) ze(e[r], t)
},
_condense: function(t) {
for (var e, n = t.length - 1; n >= 0; n--) 0 === t[n].children.length ? n > 0 ? (e = t[n - 1].children).splice(e.indexOf(t[n]), 1) : this.clear() : Ge(t[n], this.toBBox)
},
_initFormat: function(t) {
var e = ["return a", " - b", ";"];
this.compareMinX = new Function("a", "b", e.join(t[0])),
this.compareMinY = new Function("a", "b", e.join(t[1])),
this.toBBox = new Function("a", "return {minX: a" + t[0] + ", minY: a" + t[1] + ", maxX: a" + t[2] + ", maxY: a" + t[3] + "};")
}
};
var Ss = Object.freeze({
toMercator: cn,
toWgs84: ln
}),
Cs = 6378137,
Ns = function(t, e, n) {
function r(t, n, r, i) {
var u = o[t][n],
c = o[t][n + 1],
l = o[r][i],
h = o[r][i + 1],
f = function(t, e, n, r) {
if (An(t, n) || An(t, r) || An(e, n) || An(r, n)) return null;
var i = t[0],
o = t[1],
s = e[0],
a = e[1],
u = n[0],
c = n[1],
l = r[0],
h = r[1],
f = (i - s) * (c - h) - (o - a) * (u - l);
return 0 === f ? null: [((i * a - o * s) * (u - l) - (i - s) * (u * h - c * l)) / f, ((i * a - o * s) * (c - h) - (o - a) * (u * h - c * l)) / f]
} (u, c, l, h);
if (null !== f) {
var p, d;
if (p = c[0] !== u[0] ? (f[0] - u[0]) / (c[0] - u[0]) : (f[1] - u[1]) / (c[1] - u[1]), d = h[0] !== l[0] ? (f[0] - l[0]) / (h[0] - l[0]) : (f[1] - l[1]) / (h[1] - l[1]), !(p >= 1 || p <= 0 || d >= 1 || d <= 0)) {
var g = f,
y = !a[g];
y && (a[g] = !0),
e ? s.push(e(f, t, n, u, c, p, r, i, l, h, d, y)) : s.push(f)
}
}
}
function i(t, e) {
var n, r, i, s, a = o[t][e],
u = o[t][e + 1];
return a[0] < u[0] ? (n = a[0], r = u[0]) : (n = u[0], r = a[0]),
a[1] < u[1] ? (i = a[1], s = u[1]) : (i = u[1], s = a[1]),
{
minX: n,
minY: i,
maxX: r,
maxY: s,
ring: t,
edge: e
}
}
if ("Polygon" !== t.geometry.type) throw new Error("The input feature must be a Polygon");
void 0 === n && (n = 1);
var o = t.geometry.coordinates,
s = [],
a = {};
if (n) {
for (var u = [], c = 0; c < o.length; c++) for (var l = 0; l < o[c].length - 1; l++) u.push(i(c, l));
var h = Vo();
h.load(u)
}
for (var f = 0; f < o.length; f++) for (var p = 0; p < o[f].length - 1; p++) if (n) h.search(i(f, p)).forEach(function(t) {
var e = t.ring,
n = t.edge;
r(f, p, e, n)
});
else for (var d = 0; d < o.length; d++) for (var g = 0; g < o[d].length - 1; g++) r(f, p, d, g);
return e || (s = {
type: "Feature",
geometry: {
type: "MultiPoint",
coordinates: s
}
}),
s
},
Ps = function(t) {
function e() {
for (var t = [], e = 0; e < d.features.length; e++) - 1 == d.features[e].properties.parent && t.push(e);
if (t.length > 1) for (e = 0; e < t.length; e++) {
for (var n = -1,
r = 0; r < d.features.length; r++) t[e] != r && Lt(d.features[t[e]].geometry.coordinates[0][0], d.features[r], {
ignoreBoundary: !0
}) && mn(d.features[r]) < 1 / 0 && (n = r);
d.features[t[e]].properties.parent = n
}
}
function n() {
for (var t = 0; t < d.features.length; t++) if ( - 1 == d.features[t].properties.parent) {
var e = d.features[t].properties.winding;
d.features[t].properties.netWinding = e,
r(t, e)
}
}
function r(t, e) {
for (var n = 0; n < d.features.length; n++) if (d.features[n].properties.parent == t) {
var i = e + d.features[n].properties.winding;
d.features[n].properties.netWinding = i,
r(n, i)
}
}
if ("Feature" != t.type) throw new Error("The input must a geojson object of type Feature");
if (void 0 === t.geometry || null == t.geometry) throw new Error("The input must a geojson object with a non-empty geometry");
if ("Polygon" != t.geometry.type) throw new Error("The input must be a geojson Polygon");
for (var i = t.geometry.coordinates.length,
s = [], a = 0; a < i; a++) {
var u = t.geometry.coordinates[a];
Tn(u[0], u[u.length - 1]) || u.push(u[0]),
s.push.apply(s, u.slice(0, u.length - 1))
}
if (!
function(t) {
for (var e = {},
n = 1,
r = 0,
i = t.length; r < i; ++r) {
if (e.hasOwnProperty(t[r])) {
n = 0;
break
}
e[t[r]] = 1
}
return n
} (s)) throw new Error("The input polygon may not have duplicate vertices (except for the first and last vertex of each ring)");
var l = s.length,
h = Ns(t,
function(t, e, n, r, i, o, s, a, u, c, l, h) {
return [t, e, n, r, i, o, s, a, u, c, l, h]
}),
f = h.length;
if (0 == f) {
var p = [];
for (a = 0; a < i; a++) p.push(o([t.geometry.coordinates[a]], {
parent: -1,
winding: function(t) {
for (var e = 0,
n = 0; n < t.length - 1; n++) t[n][0] < t[e][0] && (e = n);
if (On([t[(e - 1).modulo(t.length - 1)], t[e], t[(e + 1).modulo(t.length - 1)]], !0)) var r = 1;
else r = -1;
return r
} (t.geometry.coordinates[a])
}));
var d = c(p);
return e(),
n(),
d
}
var g = [],
y = [];
for (a = 0; a < i; a++) {
g.push([]);
for (var v = 0; v < t.geometry.coordinates[a].length - 1; v++) g[a].push([new Ls(t.geometry.coordinates[a][(v + 1).modulo(t.geometry.coordinates[a].length - 1)], 1, [a, v], [a, (v + 1).modulo(t.geometry.coordinates[a].length - 1)], void 0)]),
y.push(new As(t.geometry.coordinates[a][v], [a, (v - 1).modulo(t.geometry.coordinates[a].length - 1)], [a, v], void 0, void 0, !1, !0))
}
for (a = 0; a < f; a++) g[h[a][1]][h[a][2]].push(new Ls(h[a][0], h[a][5], [h[a][1], h[a][2]], [h[a][6], h[a][7]], void 0)),
h[a][11] && y.push(new As(h[a][0], [h[a][1], h[a][2]], [h[a][6], h[a][7]], void 0, void 0, !0, !0));
var m = y.length;
for (a = 0; a < g.length; a++) for (v = 0; v < g[a].length; v++) g[a][v].sort(function(t, e) {
return t.param < e.param ? -1 : 1
});
var _ = [];
for (a = 0; a < m; a++) _.push({
minX: y[a].coord[0],
minY: y[a].coord[1],
maxX: y[a].coord[0],
maxY: y[a].coord[1],
index: a
});
var w = Vo();
for (w.load(_), a = 0; a < g.length; a++) for (v = 0; v < g[a].length; v++) for (var b = 0; b < g[a][v].length; b++) {
E = b == g[a][v].length - 1 ? g[a][(v + 1).modulo(t.geometry.coordinates[a].length - 1)][0].coord: g[a][v][b + 1].coord;
var x = w.search({
minX: E[0],
minY: E[1],
maxX: E[0],
maxY: E[1]
})[0];
g[a][v][b].nxtIsectAlongEdgeIn = x.index
}
for (a = 0; a < g.length; a++) for (v = 0; v < g[a].length; v++) for (b = 0; b < g[a][v].length; b++) {
var E = g[a][v][b].coord,
M = (x = w.search({
minX: E[0],
minY: E[1],
maxX: E[0],
maxY: E[1]
})[0]).index;
M < l ? y[M].nxtIsectAlongRingAndEdge2 = g[a][v][b].nxtIsectAlongEdgeIn: Tn(y[M].ringAndEdge1, g[a][v][b].ringAndEdgeIn) ? y[M].nxtIsectAlongRingAndEdge1 = g[a][v][b].nxtIsectAlongEdgeIn: y[M].nxtIsectAlongRingAndEdge2 = g[a][v][b].nxtIsectAlongEdgeIn
}
var I = [];
for (a = 0, v = 0; v < i; v++) {
var S = a;
for (b = 0; b < t.geometry.coordinates[v].length - 1; b++) y[a].coord[0] < y[S].coord[0] && (S = a),
a++;
var C = y[S].nxtIsectAlongRingAndEdge2;
for (b = 0; b < y.length; b++) if (y[b].nxtIsectAlongRingAndEdge1 == S || y[b].nxtIsectAlongRingAndEdge2 == S) {
var N = b;
break
}
var P = On([y[N].coord, y[S].coord, y[C].coord], !0) ? 1 : -1;
I.push({
isect: S,
parent: -1,
winding: P
})
}
for (I.sort(function(t, e) {
return y[t.isect].coord > y[e.isect].coord ? -1 : 1
}), p = []; I.length > 0;) {
var L = I.pop(),
A = L.isect,
O = L.parent,
T = L.winding,
R = p.length,
D = [y[A].coord],
k = A;
if (y[A].ringAndEdge1Walkable) var F = y[A].ringAndEdge1,
j = y[A].nxtIsectAlongRingAndEdge1;
else F = y[A].ringAndEdge2,
j = y[A].nxtIsectAlongRingAndEdge2;
for (; ! Tn(y[A].coord, y[j].coord);) {
D.push(y[j].coord);
var q = void 0;
for (a = 0; a < I.length; a++) if (I[a].isect == j) {
q = a;
break
}
if (void 0 != q && I.splice(q, 1), Tn(F, y[j].ringAndEdge1)) {
if (F = y[j].ringAndEdge2, y[j].ringAndEdge2Walkable = !1, y[j].ringAndEdge1Walkable) {
var B = {
isect: j
};
On([y[k].coord, y[j].coord, y[y[j].nxtIsectAlongRingAndEdge2].coord], 1 == T) ? (B.parent = O, B.winding = -T) : (B.parent = R, B.winding = T),
I.push(B)
}
k = j,
j = y[j].nxtIsectAlongRingAndEdge2
} else F = y[j].ringAndEdge1,
y[j].ringAndEdge1Walkable = !1,
y[j].ringAndEdge2Walkable && (B = {
isect: j
},
On([y[k].coord, y[j].coord, y[y[j].nxtIsectAlongRingAndEdge1].coord], 1 == T) ? (B.parent = O, B.winding = -T) : (B.parent = R, B.winding = T), I.push(B)),
k = j,
j = y[j].nxtIsectAlongRingAndEdge1
}
D.push(y[j].coord),
p.push(o([D], {
index: R,
parent: O,
winding: T,
netWinding: void 0
}))
}
return d = c(p),
e(),
n(),
d
},
Ls = function(t, e, n, r, i) {
this.coord = t,
this.param = e,
this.ringAndEdgeIn = n,
this.ringAndEdgeOut = r,
this.nxtIsectAlongEdgeIn = i
},
As = function(t, e, n, r, i, o, s) {
this.coord = t,
this.ringAndEdge1 = e,
this.ringAndEdge2 = n,
this.nxtIsectAlongRingAndEdge1 = r,
this.nxtIsectAlongRingAndEdge2 = i,
this.ringAndEdge1Walkable = o,
this.ringAndEdge2Walkable = s
};
Number.prototype.modulo = function(t) {
return (this % t + t) % t
};
var Os = Math.PI / 180,
Ts = 180 / Math.PI,
Rs = function(t, e) {
this.lon = t,
this.lat = e,
this.x = Os * t,
this.y = Os * e
};
Rs.prototype.view = function() {
return String(this.lon).slice(0, 4) + "," + String(this.lat).slice(0, 4)
},
Rs.prototype.antipode = function() {
var t = -1 * this.lat,
e = this.lon < 0 ? 180 + this.lon: -1 * (180 - this.lon);
return new Rs(e, t)
};
var Ds = function() {
this.coords = [],
this.length = 0
};
Ds.prototype.move_to = function(t) {
this.length++,
this.coords.push(t)
};
var ks = function(t) {
this.properties = t || {},
this.geometries = []
};
ks.prototype.json = function() {
if (this.geometries.length <= 0) return {
geometry: {
type: "LineString",
coordinates: null
},
type: "Feature",
properties: this.properties
};
if (1 === this.geometries.length) return {
geometry: {
type: "LineString",
coordinates: this.geometries[0].coords
},
type: "Feature",
properties: this.properties
};
for (var t = [], e = 0; e < this.geometries.length; e++) t.push(this.geometries[e].coords);
return {
geometry: {
type: "MultiLineString",
coordinates: t
},
type: "Feature",
properties: this.properties
}
},
ks.prototype.wkt = function() {
for (var t = "",
e = "LINESTRING(",
n = function(t) {
e += t[0] + " " + t[1] + ","
},
r = 0; r < this.geometries.length; r++) {
if (0 === this.geometries[r].coords.length) return "LINESTRING(empty)";
this.geometries[r].coords.forEach(n),
t += e.substring(0, e.length - 1) + ")"
}
return t
};
var Fs = function(t, e, n) {
if (!t || void 0 === t.x || void 0 === t.y) throw new Error("GreatCircle constructor expects two args: start and end objects with x and y properties");
if (!e || void 0 === e.x || void 0 === e.y) throw new Error("GreatCircle constructor expects two args: start and end objects with x and y properties");
this.start = new Rs(t.x, t.y),
this.end = new Rs(e.x, e.y),
this.properties = n || {};
var r = this.start.x - this.end.x,
i = this.start.y - this.end.y,
o = Math.pow(Math.sin(i / 2), 2) + Math.cos(this.start.y) * Math.cos(this.end.y) * Math.pow(Math.sin(r / 2), 2);
if (this.g = 2 * Math.asin(Math.sqrt(o)), this.g === Math.PI) throw new Error("it appears " + t.view() + " and " + e.view() + " are 'antipodal', e.g diametrically opposite, thus there is no single route but rather infinite");
if (isNaN(this.g)) throw new Error("could not calculate great circle between " + t + " and " + e)
};
Fs.prototype.interpolate = function(t) {
var e = Math.sin((1 - t) * this.g) / Math.sin(this.g),
n = Math.sin(t * this.g) / Math.sin(this.g),
r = e * Math.cos(this.start.y) * Math.cos(this.start.x) + n * Math.cos(this.end.y) * Math.cos(this.end.x),
i = e * Math.cos(this.start.y) * Math.sin(this.start.x) + n * Math.cos(this.end.y) * Math.sin(this.end.x),
o = e * Math.sin(this.start.y) + n * Math.sin(this.end.y),
s = Ts * Math.atan2(o, Math.sqrt(Math.pow(r, 2) + Math.pow(i, 2)));
return [Ts * Math.atan2(i, r), s]
},
Fs.prototype.Arc = function(t, e) {
var n = [];
if (!t || t <= 2) n.push([this.start.lon, this.start.lat]),
n.push([this.end.lon, this.end.lat]);
else for (var r = 1 / (t - 1), i = 0; i < t; ++i) {
var o = r * i,
s = this.interpolate(o);
n.push(s)
}
for (var a = !1,
u = 0,
c = e && e.offset ? e.offset: 10, l = 180 - c, h = -180 + c, f = 360 - c, p = 1; p < n.length; ++p) {
var d = n[p - 1][0],
g = n[p][0],
y = Math.abs(g - d);
y > f && (g > l && d < h || d > l && g < h) ? a = !0 : y > u && (u = y)
}
var v = [];
if (a && u < c) {
var m = [];
v.push(m);
for (var _ = 0; _ < n.length; ++_) {
var w = parseFloat(n[_][0]);
if (_ > 0 && Math.abs(w - n[_ - 1][0]) > f) {
var b = parseFloat(n[_ - 1][0]),
x = parseFloat(n[_ - 1][1]),
E = parseFloat(n[_][0]),
M = parseFloat(n[_][1]);
if (b > -180 && b < h && 180 === E && _ + 1 < n.length && n[_ - 1][0] > -180 && n[_ - 1][0] < h) {
m.push([ - 180, n[_][1]]),
_++,
m.push([n[_][0], n[_][1]]);
continue
}
if (b > l && b < 180 && -180 === E && _ + 1 < n.length && n[_ - 1][0] > l && n[_ - 1][0] < 180) {
m.push([180, n[_][1]]),
_++,
m.push([n[_][0], n[_][1]]);
continue
}
if (b < h && E > l) {
var I = b;
b = E,
E = I;
var S = x;
x = M,
M = S
}
if (b > l && E < h && (E += 360), b <= 180 && E >= 180 && b < E) {
var C = (180 - b) / (E - b),
N = C * M + (1 - C) * x;
m.push([n[_ - 1][0] > l ? 180 : -180, N]),
(m = []).push([n[_ - 1][0] > l ? -180 : 180, N]),
v.push(m)
} else m = [],
v.push(m);
m.push([w, n[_][1]])
} else m.push([n[_][0], n[_][1]])
}
} else {
var P = [];
v.push(P);
for (var L = 0; L < n.length; ++L) P.push([n[L][0], n[L][1]])
}
for (var A = new ks(this.properties), O = 0; O < v.length; ++O) {
var T = new Ds;
A.geometries.push(T);
for (var R = v[O], D = 0; D < R.length; ++D) T.move_to(R[D])
}
return A
};
var js = Xn;
Xn.polyline = Xn,
Xn.polygon = function(t, e) {
var n, r, i, o, s, a, u;
for (r = 1; r <= 8; r *= 2) {
for (n = [], o = !(Wn(i = t[t.length - 1], e) & r), s = 0; s < t.length; s++)(u = !(Wn(a = t[s], e) & r)) !== o && n.push(Vn(i, a, r, e)),
u && n.push(a),
i = a,
o = u;
if (! (t = n).length) break
}
return n
};
var qs = Array.prototype.slice,
Bs = {
successCallback: null,
verbose: !1,
polygons: !1
},
Gs = {},
Us = 64,
zs = 16,
Ys = 4,
Xs = 1,
Vs = [],
Ws = [],
Hs = [],
Js = [],
Zs = [],
Qs = [],
Ks = [],
$s = [],
ta = [],
ea = [],
na = [],
ra = [],
ia = [],
oa = [],
sa = [],
aa = [],
ua = [],
ca = [],
la = [],
ha = [],
fa = [],
pa = [],
da = [],
ga = [];
Ks[85] = ea[85] = -1,
$s[85] = na[85] = 0,
ta[85] = ra[85] = 1,
la[85] = pa[85] = 1,
ha[85] = da[85] = 0,
fa[85] = ga[85] = 1,
Vs[85] = Js[85] = 0,
Ws[85] = Zs[85] = -1,
Hs[85] = sa[85] = 0,
aa[85] = ia[85] = 0,
ua[85] = oa[85] = 1,
Qs[85] = ca[85] = 1,
pa[1] = pa[169] = 0,
da[1] = da[169] = -1,
ga[1] = ga[169] = 0,
ia[1] = ia[169] = -1,
oa[1] = oa[169] = 0,
sa[1] = sa[169] = 0,
ea[4] = ea[166] = 0,
na[4] = na[166] = -1,
ra[4] = ra[166] = 1,
aa[4] = aa[166] = 1,
ua[4] = ua[166] = 0,
ca[4] = ca[166] = 0,
Ks[16] = Ks[154] = 0,
$s[16] = $s[154] = 1,
ta[16] = ta[154] = 1,
Js[16] = Js[154] = 1,
Zs[16] = Zs[154] = 0,
Qs[16] = Qs[154] = 1,
la[64] = la[106] = 0,
ha[64] = ha[106] = 1,
fa[64] = fa[106] = 0,
Vs[64] = Vs[106] = -1,
Ws[64] = Ws[106] = 0,
Hs[64] = Hs[106] = 1,
la[2] = la[168] = 0,
ha[2] = ha[168] = -1,
fa[2] = fa[168] = 1,
pa[2] = pa[168] = 0,
da[2] = da[168] = -1,
ga[2] = ga[168] = 0,
ia[2] = ia[168] = -1,
oa[2] = oa[168] = 0,
sa[2] = sa[168] = 0,
aa[2] = aa[168] = -1,
ua[2] = ua[168] = 0,
ca[2] = ca[168] = 1,
Ks[8] = Ks[162] = 0,
$s[8] = $s[162] = -1,
ta[8] = ta[162] = 0,
ea[8] = ea[162] = 0,
na[8] = na[162] = -1,
ra[8] = ra[162] = 1,
ia[8] = ia[162] = 1,
oa[8] = oa[162] = 0,
sa[8] = sa[162] = 1,
aa[8] = aa[162] = 1,
ua[8] = ua[162] = 0,
ca[8] = ca[162] = 0,
Ks[32] = Ks[138] = 0,
$s[32] = $s[138] = 1,
ta[32] = ta[138] = 1,
ea[32] = ea[138] = 0,
na[32] = na[138] = 1,
ra[32] = ra[138] = 0,
Vs[32] = Vs[138] = 1,
Ws[32] = Ws[138] = 0,
Hs[32] = Hs[138] = 0,
Js[32] = Js[138] = 1,
Zs[32] = Zs[138] = 0,
Qs[32] = Qs[138] = 1,
pa[128] = pa[42] = 0,
da[128] = da[42] = 1,
ga[128] = ga[42] = 1,
la[128] = la[42] = 0,
ha[128] = ha[42] = 1,
fa[128] = fa[42] = 0,
Vs[128] = Vs[42] = -1,
Ws[128] = Ws[42] = 0,
Hs[128] = Hs[42] = 1,
Js[128] = Js[42] = -1,
Zs[128] = Zs[42] = 0,
Qs[128] = Qs[42] = 0,
ea[5] = ea[165] = -1,
na[5] = na[165] = 0,
ra[5] = ra[165] = 0,
pa[5] = pa[165] = 1,
da[5] = da[165] = 0,
ga[5] = ga[165] = 0,
aa[20] = aa[150] = 0,
ua[20] = ua[150] = 1,
ca[20] = ca[150] = 1,
Js[20] = Js[150] = 0,
Zs[20] = Zs[150] = -1,
Qs[20] = Qs[150] = 1,
Ks[80] = Ks[90] = -1,
$s[80] = $s[90] = 0,
ta[80] = ta[90] = 1,
la[80] = la[90] = 1,
ha[80] = ha[90] = 0,
fa[80] = fa[90] = 1,
ia[65] = ia[105] = 0,
oa[65] = oa[105] = 1,
sa[65] = sa[105] = 0,
Vs[65] = Vs[105] = 0,
Ws[65] = Ws[105] = -1,
Hs[65] = Hs[105] = 0,
Ks[160] = Ks[10] = -1,
$s[160] = $s[10] = 0,
ta[160] = ta[10] = 1,
ea[160] = ea[10] = -1,
na[160] = na[10] = 0,
ra[160] = ra[10] = 0,
pa[160] = pa[10] = 1,
da[160] = da[10] = 0,
ga[160] = ga[10] = 0,
la[160] = la[10] = 1,
ha[160] = ha[10] = 0,
fa[160] = fa[10] = 1,
aa[130] = aa[40] = 0,
ua[130] = ua[40] = 1,
ca[130] = ca[40] = 1,
ia[130] = ia[40] = 0,
oa[130] = oa[40] = 1,
sa[130] = sa[40] = 0,
Vs[130] = Vs[40] = 0,
Ws[130] = Ws[40] = -1,
Hs[130] = Hs[40] = 0,
Js[130] = Js[40] = 0,
Zs[130] = Zs[40] = -1,
Qs[130] = Qs[40] = 1,
ea[37] = ea[133] = 0,
na[37] = na[133] = 1,
ra[37] = ra[133] = 1,
pa[37] = pa[133] = 0,
da[37] = da[133] = 1,
ga[37] = ga[133] = 0,
Vs[37] = Vs[133] = -1,
Ws[37] = Ws[133] = 0,
Hs[37] = Hs[133] = 0,
Js[37] = Js[133] = 1,
Zs[37] = Zs[133] = 0,
Qs[37] = Qs[133] = 0,
aa[148] = aa[22] = -1,
ua[148] = ua[22] = 0,
ca[148] = ca[22] = 0,
pa[148] = pa[22] = 0,
da[148] = da[22] = -1,
ga[148] = ga[22] = 1,
la[148] = la[22] = 0,
ha[148] = ha[22] = 1,
fa[148] = fa[22] = 1,
Js[148] = Js[22] = -1,
Zs[148] = Zs[22] = 0,
Qs[148] = Qs[22] = 1,
Ks[82] = Ks[88] = 0,
$s[82] = $s[88] = -1,
ta[82] = ta[88] = 1,
aa[82] = aa[88] = 1,
ua[82] = ua[88] = 0,
ca[82] = ca[88] = 1,
ia[82] = ia[88] = -1,
oa[82] = oa[88] = 0,
sa[82] = sa[88] = 1,
la[82] = la[88] = 0,
ha[82] = ha[88] = -1,
fa[82] = fa[88] = 0,
Ks[73] = Ks[97] = 0,
$s[73] = $s[97] = 1,
ta[73] = ta[97] = 0,
ea[73] = ea[97] = 0,
na[73] = na[97] = -1,
ra[73] = ra[97] = 0,
ia[73] = ia[97] = 1,
oa[73] = oa[97] = 0,
sa[73] = sa[97] = 0,
Vs[73] = Vs[97] = 1,
Ws[73] = Ws[97] = 0,
Hs[73] = Hs[97] = 1,
Ks[145] = Ks[25] = 0,
$s[145] = $s[25] = -1,
ta[145] = ta[25] = 0,
ia[145] = ia[25] = 1,
oa[145] = oa[25] = 0,
sa[145] = sa[25] = 1,
pa[145] = pa[25] = 0,
da[145] = da[25] = 1,
ga[145] = ga[25] = 1,
Js[145] = Js[25] = -1,
Zs[145] = Zs[25] = 0,
Qs[145] = Qs[25] = 0,
ea[70] = ea[100] = 0,
na[70] = na[100] = 1,
ra[70] = ra[100] = 0,
aa[70] = aa[100] = -1,
ua[70] = ua[100] = 0,
ca[70] = ca[100] = 1,
la[70] = la[100] = 0,
ha[70] = ha[100] = -1,
fa[70] = fa[100] = 1,
Vs[70] = Vs[100] = 1,
Ws[70] = Ws[100] = 0,
Hs[70] = Hs[100] = 0,
ea[101] = ea[69] = 0,
na[101] = na[69] = 1,
ra[101] = ra[69] = 0,
Vs[101] = Vs[69] = 1,
Ws[101] = Ws[69] = 0,
Hs[101] = Hs[69] = 0,
pa[149] = pa[21] = 0,
da[149] = da[21] = 1,
ga[149] = ga[21] = 1,
Js[149] = Js[21] = -1,
Zs[149] = Zs[21] = 0,
Qs[149] = Qs[21] = 0,
aa[86] = aa[84] = -1,
ua[86] = ua[84] = 0,
ca[86] = ca[84] = 1,
la[86] = la[84] = 0,
ha[86] = ha[84] = -1,
fa[86] = fa[84] = 1,
Ks[89] = Ks[81] = 0,
$s[89] = $s[81] = -1,
ta[89] = ta[81] = 0,
ia[89] = ia[81] = 1,
oa[89] = oa[81] = 0,
sa[89] = sa[81] = 1,
Ks[96] = Ks[74] = 0,
$s[96] = $s[74] = 1,
ta[96] = ta[74] = 0,
ea[96] = ea[74] = -1,
na[96] = na[74] = 0,
ra[96] = ra[74] = 1,
la[96] = la[74] = 1,
ha[96] = ha[74] = 0,
fa[96] = fa[74] = 0,
Vs[96] = Vs[74] = 1,
Ws[96] = Ws[74] = 0,
Hs[96] = Hs[74] = 1,
Ks[24] = Ks[146] = 0,
$s[24] = $s[146] = -1,
ta[24] = ta[146] = 1,
aa[24] = aa[146] = 1,
ua[24] = ua[146] = 0,
ca[24] = ca[146] = 1,
ia[24] = ia[146] = 0,
oa[24] = oa[146] = 1,
sa[24] = sa[146] = 1,
Js[24] = Js[146] = 0,
Zs[24] = Zs[146] = -1,
Qs[24] = Qs[146] = 0,
ea[6] = ea[164] = -1,
na[6] = na[164] = 0,
ra[6] = ra[164] = 1,
aa[6] = aa[164] = -1,
ua[6] = ua[164] = 0,
ca[6] = ca[164] = 0,
pa[6] = pa[164] = 0,
da[6] = da[164] = -1,
ga[6] = ga[164] = 1,
la[6] = la[164] = 1,
ha[6] = ha[164] = 0,
fa[6] = fa[164] = 0,
ia[129] = ia[41] = 0,
oa[129] = oa[41] = 1,
sa[129] = sa[41] = 1,
pa[129] = pa[41] = 0,
da[129] = da[41] = 1,
ga[129] = ga[41] = 0,
Vs[129] = Vs[41] = -1,
Ws[129] = Ws[41] = 0,
Hs[129] = Hs[41] = 0,
Js[129] = Js[41] = 0,
Zs[129] = Zs[41] = -1,
Qs[129] = Qs[41] = 0,
aa[66] = aa[104] = 0,
ua[66] = ua[104] = 1,
ca[66] = ca[104] = 0,
ia[66] = ia[104] = -1,
oa[66] = oa[104] = 0,
sa[66] = sa[104] = 1,
la[66] = la[104] = 0,
ha[66] = ha[104] = -1,
fa[66] = fa[104] = 0,
Vs[66] = Vs[104] = 0,
Ws[66] = Ws[104] = -1,
Hs[66] = Hs[104] = 1,
Ks[144] = Ks[26] = -1,
$s[144] = $s[26] = 0,
ta[144] = ta[26] = 0,
pa[144] = pa[26] = 1,
da[144] = da[26] = 0,
ga[144] = ga[26] = 1,
la[144] = la[26] = 0,
ha[144] = ha[26] = 1,
fa[144] = fa[26] = 1,
Js[144] = Js[26] = -1,
Zs[144] = Zs[26] = 0,
Qs[144] = Qs[26] = 1,
ea[36] = ea[134] = 0,
na[36] = na[134] = 1,
ra[36] = ra[134] = 1,
aa[36] = aa[134] = 0,
ua[36] = ua[134] = 1,
ca[36] = ca[134] = 0,
Vs[36] = Vs[134] = 0,
Ws[36] = Ws[134] = -1,
Hs[36] = Hs[134] = 1,
Js[36] = Js[134] = 1,
Zs[36] = Zs[134] = 0,
Qs[36] = Qs[134] = 0,
Ks[9] = Ks[161] = -1,
$s[9] = $s[161] = 0,
ta[9] = ta[161] = 0,
ea[9] = ea[161] = 0,
na[9] = na[161] = -1,
ra[9] = ra[161] = 0,
ia[9] = ia[161] = 1,
oa[9] = oa[161] = 0,
sa[9] = sa[161] = 0,
pa[9] = pa[161] = 1,
da[9] = da[161] = 0,
ga[9] = ga[161] = 1,
Ks[136] = 0,
$s[136] = 1,
ta[136] = 1,
ea[136] = 0,
na[136] = 1,
ra[136] = 0,
aa[136] = -1,
ua[136] = 0,
ca[136] = 1,
ia[136] = -1,
oa[136] = 0,
sa[136] = 0,
pa[136] = 0,
da[136] = -1,
ga[136] = 0,
la[136] = 0,
ha[136] = -1,
fa[136] = 1,
Vs[136] = 1,
Ws[136] = 0,
Hs[136] = 0,
Js[136] = 1,
Zs[136] = 0,
Qs[136] = 1,
Ks[34] = 0,
$s[34] = -1,
ta[34] = 0,
ea[34] = 0,
na[34] = -1,
ra[34] = 1,
aa[34] = 1,
ua[34] = 0,
ca[34] = 0,
ia[34] = 1,
oa[34] = 0,
sa[34] = 1,
pa[34] = 0,
da[34] = 1,
ga[34] = 1,
la[34] = 0,
ha[34] = 1,
fa[34] = 0,
Vs[34] = -1,
Ws[34] = 0,
Hs[34] = 1,
Js[34] = -1,
Zs[34] = 0,
Qs[34] = 0,
Ks[35] = 0,
$s[35] = 1,
ta[35] = 1,
ea[35] = 0,
na[35] = -1,
ra[35] = 1,
aa[35] = 1,
ua[35] = 0,
ca[35] = 0,
ia[35] = -1,
oa[35] = 0,
sa[35] = 0,
pa[35] = 0,
da[35] = -1,
ga[35] = 0,
la[35] = 0,
ha[35] = 1,
fa[35] = 0,
Vs[35] = -1,
Ws[35] = 0,
Hs[35] = 1,
Js[35] = 1,
Zs[35] = 0,
Qs[35] = 1,
Ks[153] = 0,
$s[153] = 1,
ta[153] = 1,
ia[153] = -1,
oa[153] = 0,
sa[153] = 0,
pa[153] = 0,
da[153] = -1,
ga[153] = 0,
Js[153] = 1,
Zs[153] = 0,
Qs[153] = 1,
ea[102] = 0,
na[102] = -1,
ra[102] = 1,
aa[102] = 1,
ua[102] = 0,
ca[102] = 0,
la[102] = 0,
ha[102] = 1,
fa[102] = 0,
Vs[102] = -1,
Ws[102] = 0,
Hs[102] = 1,
Ks[155] = 0,
$s[155] = -1,
ta[155] = 0,
ia[155] = 1,
oa[155] = 0,
sa[155] = 1,
pa[155] = 0,
da[155] = 1,
ga[155] = 1,
Js[155] = -1,
Zs[155] = 0,
Qs[155] = 0,
ea[103] = 0,
na[103] = 1,
ra[103] = 0,
aa[103] = -1,
ua[103] = 0,
ca[103] = 1,
la[103] = 0,
ha[103] = -1,
fa[103] = 1,
Vs[103] = 1,
Ws[103] = 0,
Hs[103] = 0,
Ks[152] = 0,
$s[152] = 1,
ta[152] = 1,
aa[152] = -1,
ua[152] = 0,
ca[152] = 1,
ia[152] = -1,
oa[152] = 0,
sa[152] = 0,
pa[152] = 0,
da[152] = -1,
ga[152] = 0,
la[152] = 0,
ha[152] = -1,
fa[152] = 1,
Js[152] = 1,
Zs[152] = 0,
Qs[152] = 1,
Ks[156] = 0,
$s[156] = -1,
ta[156] = 1,
aa[156] = 1,
ua[156] = 0,
ca[156] = 1,
ia[156] = -1,
oa[156] = 0,
sa[156] = 0,
pa[156] = 0,
da[156] = -1,
ga[156] = 0,
la[156] = 0,
ha[156] = 1,
fa[156] = 1,
Js[156] = -1,
Zs[156] = 0,
Qs[156] = 1,
Ks[137] = 0,
$s[137] = 1,
ta[137] = 1,
ea[137] = 0,
na[137] = 1,
ra[137] = 0,
ia[137] = -1,
oa[137] = 0,
sa[137] = 0,
pa[137] = 0,
da[137] = -1,
ga[137] = 0,
Vs[137] = 1,
Ws[137] = 0,
Hs[137] = 0,
Js[137] = 1,
Zs[137] = 0,
Qs[137] = 1,
Ks[139] = 0,
$s[139] = 1,
ta[139] = 1,
ea[139] = 0,
na[139] = -1,
ra[139] = 0,
ia[139] = 1,
oa[139] = 0,
sa[139] = 0,
pa[139] = 0,
da[139] = 1,
ga[139] = 0,
Vs[139] = -1,
Ws[139] = 0,
Hs[139] = 0,
Js[139] = 1,
Zs[139] = 0,
Qs[139] = 1,
Ks[98] = 0,
$s[98] = -1,
ta[98] = 0,
ea[98] = 0,
na[98] = -1,
ra[98] = 1,
aa[98] = 1,
ua[98] = 0,
ca[98] = 0,
ia[98] = 1,
oa[98] = 0,
sa[98] = 1,
la[98] = 0,
ha[98] = 1,
fa[98] = 0,
Vs[98] = -1,
Ws[98] = 0,
Hs[98] = 1,
Ks[99] = 0,
$s[99] = 1,
ta[99] = 0,
ea[99] = 0,
na[99] = -1,
ra[99] = 1,
aa[99] = 1,
ua[99] = 0,
ca[99] = 0,
ia[99] = -1,
oa[99] = 0,
sa[99] = 1,
la[99] = 0,
ha[99] = -1,
fa[99] = 0,
Vs[99] = 1,
Ws[99] = 0,
Hs[99] = 1,
ea[38] = 0,
na[38] = -1,
ra[38] = 1,
aa[38] = 1,
ua[38] = 0,
ca[38] = 0,
pa[38] = 0,
da[38] = 1,
ga[38] = 1,
la[38] = 0,
ha[38] = 1,
fa[38] = 0,
Vs[38] = -1,
Ws[38] = 0,
Hs[38] = 1,
Js[38] = -1,
Zs[38] = 0,
Qs[38] = 0,
ea[39] = 0,
na[39] = 1,
ra[39] = 1,
aa[39] = -1,
ua[39] = 0,
ca[39] = 0,
pa[39] = 0,
da[39] = -1,
ga[39] = 1,
la[39] = 0,
ha[39] = 1,
fa[39] = 0,
Vs[39] = -1,
Ws[39] = 0,
Hs[39] = 1,
Js[39] = 1,
Zs[39] = 0,
Qs[39] = 0;
var ya = function(t) {
return [[t.bottomleft, 0], [0, 0], [0, t.leftbottom]]
},
va = function(t) {
return [[1, t.rightbottom], [1, 0], [t.bottomright, 0]]
},
ma = function(t) {
return [[t.topright, 1], [1, 1], [1, t.righttop]]
},
_a = function(t) {
return [[0, t.lefttop], [0, 1], [t.topleft, 1]]
},
wa = function(t) {
return [[t.bottomright, 0], [t.bottomleft, 0], [0, t.leftbottom], [0, t.lefttop]]
},
ba = function(t) {
return [[t.bottomright, 0], [t.bottomleft, 0], [1, t.righttop], [1, t.rightbottom]]
},
xa = function(t) {
return [[1, t.righttop], [1, t.rightbottom], [t.topleft, 1], [t.topright, 1]]
},
Ea = function(t) {
return [[0, t.leftbottom], [0, t.lefttop], [t.topleft, 1], [t.topright, 1]]
},
Ma = [],
Ia = [],
Sa = [],
Ca = [],
Na = [],
Pa = [],
La = [],
Aa = [];
Ca[1] = Na[1] = 18,
Ca[169] = Na[169] = 18,
Sa[4] = Ia[4] = 12,
Sa[166] = Ia[166] = 12,
Ma[16] = Aa[16] = 4,
Ma[154] = Aa[154] = 4,
Pa[64] = La[64] = 22,
Pa[106] = La[106] = 22,
Sa[2] = Pa[2] = 17,
Ca[2] = Na[2] = 18,
Sa[168] = Pa[168] = 17,
Ca[168] = Na[168] = 18,
Ma[8] = Ca[8] = 9,
Ia[8] = Sa[8] = 12,
Ma[162] = Ca[162] = 9,
Ia[162] = Sa[162] = 12,
Ma[32] = Aa[32] = 4,
Ia[32] = La[32] = 1,
Ma[138] = Aa[138] = 4,
Ia[138] = La[138] = 1,
Na[128] = Aa[128] = 21,
Pa[128] = La[128] = 22,
Na[42] = Aa[42] = 21,
Pa[42] = La[42] = 22,
Ia[5] = Na[5] = 14,
Ia[165] = Na[165] = 14,
Sa[20] = Aa[20] = 6,
Sa[150] = Aa[150] = 6,
Ma[80] = Pa[80] = 11,
Ma[90] = Pa[90] = 11,
Ca[65] = La[65] = 3,
Ca[105] = La[105] = 3,
Ma[160] = Pa[160] = 11,
Ia[160] = Na[160] = 14,
Ma[10] = Pa[10] = 11,
Ia[10] = Na[10] = 14,
Sa[130] = Aa[130] = 6,
Ca[130] = La[130] = 3,
Sa[40] = Aa[40] = 6,
Ca[40] = La[40] = 3,
Ia[101] = La[101] = 1,
Ia[69] = La[69] = 1,
Na[149] = Aa[149] = 21,
Na[21] = Aa[21] = 21,
Sa[86] = Pa[86] = 17,
Sa[84] = Pa[84] = 17,
Ma[89] = Ca[89] = 9,
Ma[81] = Ca[81] = 9,
Ma[96] = La[96] = 0,
Ia[96] = Pa[96] = 15,
Ma[74] = La[74] = 0,
Ia[74] = Pa[74] = 15,
Ma[24] = Sa[24] = 8,
Ca[24] = Aa[24] = 7,
Ma[146] = Sa[146] = 8,
Ca[146] = Aa[146] = 7,
Ia[6] = Pa[6] = 15,
Sa[6] = Na[6] = 16,
Ia[164] = Pa[164] = 15,
Sa[164] = Na[164] = 16,
Ca[129] = Aa[129] = 7,
Na[129] = La[129] = 20,
Ca[41] = Aa[41] = 7,
Na[41] = La[41] = 20,
Sa[66] = La[66] = 2,
Ca[66] = Pa[66] = 19,
Sa[104] = La[104] = 2,
Ca[104] = Pa[104] = 19,
Ma[144] = Na[144] = 10,
Pa[144] = Aa[144] = 23,
Ma[26] = Na[26] = 10,
Pa[26] = Aa[26] = 23,
Ia[36] = Aa[36] = 5,
Sa[36] = La[36] = 2,
Ia[134] = Aa[134] = 5,
Sa[134] = La[134] = 2,
Ma[9] = Na[9] = 10,
Ia[9] = Ca[9] = 13,
Ma[161] = Na[161] = 10,
Ia[161] = Ca[161] = 13,
Ia[37] = Aa[37] = 5,
Na[37] = La[37] = 20,
Ia[133] = Aa[133] = 5,
Na[133] = La[133] = 20,
Sa[148] = Na[148] = 16,
Pa[148] = Aa[148] = 23,
Sa[22] = Na[22] = 16,
Pa[22] = Aa[22] = 23,
Ma[82] = Sa[82] = 8,
Ca[82] = Pa[82] = 19,
Ma[88] = Sa[88] = 8,
Ca[88] = Pa[88] = 19,
Ma[73] = La[73] = 0,
Ia[73] = Ca[73] = 13,
Ma[97] = La[97] = 0,
Ia[97] = Ca[97] = 13,
Ma[145] = Ca[145] = 9,
Na[145] = Aa[145] = 21,
Ma[25] = Ca[25] = 9,
Na[25] = Aa[25] = 21,
Ia[70] = La[70] = 1,
Sa[70] = Pa[70] = 17,
Ia[100] = La[100] = 1,
Sa[100] = Pa[100] = 17,
Ma[34] = Ca[34] = 9,
Ia[34] = Sa[34] = 12,
Na[34] = Aa[34] = 21,
Pa[34] = La[34] = 22,
Ma[136] = Aa[136] = 4,
Ia[136] = La[136] = 1,
Sa[136] = Pa[136] = 17,
Ca[136] = Na[136] = 18,
Ma[35] = Aa[35] = 4,
Ia[35] = Sa[35] = 12,
Ca[35] = Na[35] = 18,
Pa[35] = La[35] = 22,
Ma[153] = Aa[153] = 4,
Ca[153] = Na[153] = 18,
Ia[102] = Sa[102] = 12,
Pa[102] = La[102] = 22,
Ma[155] = Ca[155] = 9,
Na[155] = Aa[155] = 23,
Ia[103] = La[103] = 1,
Sa[103] = Pa[103] = 17,
Ma[152] = Aa[152] = 4,
Sa[152] = Pa[152] = 17,
Ca[152] = Na[152] = 18,
Ma[156] = Sa[156] = 8,
Ca[156] = Na[156] = 18,
Pa[156] = Aa[156] = 23,
Ma[137] = Aa[137] = 4,
Ia[137] = La[137] = 1,
Ca[137] = Na[137] = 18,
Ma[139] = Aa[139] = 4,
Ia[139] = Ca[139] = 13,
Na[139] = La[139] = 20,
Ma[98] = Ca[98] = 9,
Ia[98] = Sa[98] = 12,
Pa[98] = La[98] = 22,
Ma[99] = La[99] = 0,
Ia[99] = Sa[99] = 12,
Ca[99] = Pa[99] = 19,
Ia[38] = Sa[38] = 12,
Na[38] = Aa[38] = 21,
Pa[38] = La[38] = 22,
Ia[39] = Aa[39] = 5,
Sa[39] = Na[39] = 16,
Pa[39] = La[39] = 22;
var Oa = [];
Oa[1] = Oa[169] = ya,
Oa[4] = Oa[166] = va,
Oa[16] = Oa[154] = ma,
Oa[64] = Oa[106] = _a,
Oa[168] = Oa[2] = wa,
Oa[162] = Oa[8] = ba,
Oa[138] = Oa[32] = xa,
Oa[42] = Oa[128] = Ea,
Oa[5] = Oa[165] = function(t) {
return [[0, 0], [0, t.leftbottom], [1, t.rightbottom], [1, 0]]
},
Oa[20] = Oa[150] = function(t) {
return [[1, 0], [t.bottomright, 0], [t.topright, 1], [1, 1]]
},
Oa[80] = Oa[90] = function(t) {
return [[1, 1], [1, t.righttop], [0, t.lefttop], [0, 1]]
},
Oa[65] = Oa[105] = function(t) {
return [[t.bottomleft, 0], [0, 0], [0, 1], [t.topleft, 1]]
},
Oa[160] = Oa[10] = function(t) {
return [[1, t.righttop], [1, t.rightbottom], [0, t.leftbottom], [0, t.lefttop]]
},
Oa[130] = Oa[40] = function(t) {
return [[t.topleft, 1], [t.topright, 1], [t.bottomright, 0], [t.bottomleft, 0]]
},
Oa[85] = function() {
return [[0, 0], [0, 1], [1, 1], [1, 0]]
},
Oa[101] = Oa[69] = function(t) {
return [[1, t.rightbottom], [1, 0], [0, 0], [0, 1], [t.topleft, 1]]
},
Oa[149] = Oa[21] = function(t) {
return [[t.topright, 1], [1, 1], [1, 0], [0, 0], [0, t.leftbottom]]
},
Oa[86] = Oa[84] = function(t) {
return [[1, 0], [t.bottomright, 0], [0, t.lefttop], [0, 1], [1, 1]]
},
Oa[89] = Oa[81] = function(t) {
return [[1, 1], [1, t.righttop], [t.bottomleft, 0], [0, 0], [0, 1]]
},
Oa[96] = Oa[74] = function(t) {
return [[1, t.righttop], [1, t.rightbottom], [0, t.lefttop], [0, 1], [t.topleft, 1]]
},
Oa[24] = Oa[146] = function(t) {
return [[1, 1], [1, t.righttop], [t.bottomright, 0], [t.bottomleft, 0], [t.topright, 1]]
},
Oa[6] = Oa[164] = function(t) {
return [[1, t.rightbottom], [1, 0], [t.bottomright, 0], [0, t.leftbottom], [0, t.lefttop]]
},
Oa[129] = Oa[41] = function(t) {
return [[t.topright, 1], [t.bottomleft, 0], [0, 0], [0, t.leftbottom], [t.topleft, 1]]
},
Oa[66] = Oa[104] = function(t) {
return [[t.bottomright, 0], [t.bottomleft, 0], [0, t.lefttop], [0, 1], [t.topleft, 1]]
},
Oa[144] = Oa[26] = function(t) {
return [[1, 1], [1, t.righttop], [0, t.leftbottom], [0, t.lefttop], [t.topright, 1]]
},
Oa[36] = Oa[134] = function(t) {
return [[1, t.rightbottom], [1, 0], [t.bottomright, 0], [t.topleft, 1], [t.topright, 1]]
},
Oa[9] = Oa[161] = function(t) {
return [[1, t.righttop], [1, t.rightbottom], [t.bottomleft, 0], [0, 0], [0, t.leftbottom]]
},
Oa[37] = Oa[133] = function(t) {
return [[1, t.rightbottom], [1, 0], [0, 0], [0, t.leftbottom], [t.topleft, 1], [t.topright, 1]]
},
Oa[148] = Oa[22] = function(t) {
return [[1, 1], [1, 0], [t.bottomright, 0], [0, t.leftbottom], [0, t.lefttop], [t.topright, 1]]
},
Oa[82] = Oa[88] = function(t) {
return [[1, 1], [1, t.righttop], [t.bottomright, 0], [t.bottomleft, 0], [0, t.lefttop], [0, 1]]
},
Oa[73] = Oa[97] = function(t) {
return [[1, t.righttop], [1, t.rightbottom], [t.bottomleft, 0], [0, 0], [0, 1], [t.topleft, 1]]
},
Oa[145] = Oa[25] = function(t) {
return [[1, 1], [1, t.righttop], [t.bottomleft, 0], [0, 0], [0, t.leftbottom], [t.topright, 1]]
},
Oa[70] = Oa[100] = function(t) {
return [[1, t.rightbottom], [1, 0], [t.bottomright, 0], [0, t.lefttop], [0, 1], [t.topleft, 1]]
},
Oa[34] = function(t) {
return [Ea(t), ba(t)]
},
Oa[35] = function(t) {
return [[1, t.righttop], [1, t.rightbottom], [t.bottomright, 0], [t.bottomleft, 0], [0, t.leftbottom], [0, t.lefttop], [t.topleft, 1], [t.topright, 1]]
},
Oa[136] = function(t) {
return [xa(t), wa(t)]
},
Oa[153] = function(t) {
return [ma(t), ya(t)]
},
Oa[102] = function(t) {
return [va(t), _a(t)]
},
Oa[155] = function(t) {
return [[1, 1], [1, t.righttop], [t.bottomleft, 0], [0, 0], [0, t.leftbottom], [t.topright, 1]]
},
Oa[103] = function(t) {
return [[1, t.rightbottom], [1, 0], [t.bottomright, 0], [0, t.lefttop], [0, 1], [t.topleft, 1]]
},
Oa[152] = function(t) {
return [ma(t), wa(t)]
},
Oa[156] = function(t) {
return [[1, 1], [1, t.righttop], [t.bottomright, 0], [t.bottomleft, 0], [0, t.leftbottom], [0, t.lefttop], [t.topright, 1]]
},
Oa[137] = function(t) {
return [xa(t), ya(t)]
},
Oa[139] = function(t) {
return [[1, t.righttop], [1, t.rightbottom], [t.bottomleft, 0], [0, 0], [0, t.leftbottom], [t.topleft, 1], [t.topright, 1]]
},
Oa[98] = function(t) {
return [ba(t), _a(t)]
},
Oa[99] = function(t) {
return [[1, t.righttop], [1, t.rightbottom], [t.bottomright, 0], [t.bottomleft, 0], [0, t.lefttop], [0, 1], [t.topleft, 1]]
},
Oa[38] = function(t) {
return [va(t), Ea(t)]
},
Oa[39] = function(t) {
return [[1, t.rightbottom], [1, 0], [t.bottomright, 0], [0, t.leftbottom], [0, t.lefttop], [t.topleft, 1], [t.topright, 1]]
};
var Ta = function t(e) {
this.id = t.buildId(e),
this.coordinates = e,
this.innerEdges = [],
this.outerEdges = [],
this.outerEdgesSorted = !1
};
Ta.buildId = function(t) {
return t.join(",")
},
Ta.prototype.removeInnerEdge = function(t) {
this.innerEdges = this.innerEdges.filter(function(e) {
return e.from.id !== t.from.id
})
},
Ta.prototype.removeOuterEdge = function(t) {
this.outerEdges = this.outerEdges.filter(function(e) {
return e.to.id !== t.to.id
})
},
Ta.prototype.addOuterEdge = function(t) {
this.outerEdges.push(t),
this.outerEdgesSorted = !1
},
Ta.prototype.sortOuterEdges = function() {
var t = this;
this.outerEdgesSorted || (this.outerEdges.sort(function(e, n) {
var r = e.to,
i = n.to;
if (r.coordinates[0] - t.coordinates[0] >= 0 && i.coordinates[0] - t.coordinates[0] < 0) return 1;
if (r.coordinates[0] - t.coordinates[0] < 0 && i.coordinates[0] - t.coordinates[0] >= 0) return - 1;
if (r.coordinates[0] - t.coordinates[0] == 0 && i.coordinates[0] - t.coordinates[0] == 0) return r.coordinates[1] - t.coordinates[1] >= 0 || i.coordinates[1] - t.coordinates[1] >= 0 ? r.coordinates[1] - i.coordinates[1] : i.coordinates[1] - r.coordinates[1];
var o = wr(t.coordinates, r.coordinates, i.coordinates);
return o < 0 ? 1 : o > 0 ? -1 : Math.pow(r.coordinates[0] - t.coordinates[0], 2) + Math.pow(r.coordinates[1] - t.coordinates[1], 2) - (Math.pow(i.coordinates[0] - t.coordinates[0], 2) + Math.pow(i.coordinates[1] - t.coordinates[1], 2))
}), this.outerEdgesSorted = !0)
},
Ta.prototype.getOuterEdges = function() {
return this.sortOuterEdges(),
this.outerEdges
},
Ta.prototype.getOuterEdge = function(t) {
return this.sortOuterEdges(),
this.outerEdges[t]
},
Ta.prototype.addInnerEdge = function(t) {
this.innerEdges.push(t)
};
var Ra = function(t, e) {
this.from = t,
this.to = e,
this.next = void 0,
this.label = void 0,
this.symetric = void 0,
this.ring = void 0,
this.from.addOuterEdge(this),
this.to.addInnerEdge(this)
};
Ra.prototype.getSymetric = function() {
return this.symetric || (this.symetric = new Ra(this.to, this.from), this.symetric.symetric = this),
this.symetric
},
Ra.prototype.deleteEdge = function() {
this.from.removeOuterEdge(this),
this.to.removeInnerEdge(this)
},
Ra.prototype.isEqual = function(t) {
return this.from.id === t.from.id && this.to.id === t.to.id
},
Ra.prototype.toString = function() {
return "Edge { " + this.from.id + " -> " + this.to.id + " }"
},
Ra.prototype.toLineString = function() {
return a([this.from.coordinates, this.to.coordinates])
},
Ra.prototype.compareTo = function(t) {
return wr(t.from.coordinates, t.to.coordinates, this.to.coordinates)
};
var Da = function() {
this.edges = [],
this.polygon = void 0,
this.envelope = void 0
},
ka = {
length: {
configurable: !0
}
};
Da.prototype.push = function(t) {
this[this.edges.length] = t,
this.edges.push(t),
this.polygon = this.envelope = void 0
},
Da.prototype.get = function(t) {
return this.edges[t]
},
ka.length.get = function() {
return this.edges.length
},
Da.prototype.forEach = function(t) {
this.edges.forEach(t)
},
Da.prototype.map = function(t) {
return this.edges.map(t)
},
Da.prototype.some = function(t) {
return this.edges.some(t)
},
Da.prototype.isValid = function() {
return ! 0
},
Da.prototype.isHole = function() {
var t = this,
e = this.edges.reduce(function(e, n, r) {
return n.from.coordinates[1] > t.edges[e].from.coordinates[1] && (e = r),
e
},
0),
n = (0 === e ? this.length: e) - 1,
r = (e + 1) % this.length,
i = wr(this.edges[n].from.coordinates, this.edges[e].from.coordinates, this.edges[r].from.coordinates);
return 0 === i ? this.edges[n].from.coordinates[0] > this.edges[r].from.coordinates[0] : i > 0
},
Da.prototype.toMultiPoint = function() {
return h(this.edges.map(function(t) {
return t.from.coordinates
}))
},
Da.prototype.toPolygon = function() {
if (this.polygon) return this.polygon;
var t = this.edges.map(function(t) {
return t.from.coordinates
});
return t.push(this.edges[0].from.coordinates),
this.polygon = o([t])
},
Da.prototype.getEnvelope = function() {
return this.envelope ? this.envelope: this.envelope = le(this.toPolygon())
},
Da.findEdgeRingContaining = function(t, e) {
var n, i, o = t.getEnvelope();
return e.forEach(function(e) {
var s = e.getEnvelope();
if (i && (n = i.getEnvelope()), !
function(t, e) {
var n = t.geometry.coordinates.map(function(t) {
return t[0]
}),
r = t.geometry.coordinates.map(function(t) {
return t[1]
}),
i = e.geometry.coordinates.map(function(t) {
return t[0]
}),
o = e.geometry.coordinates.map(function(t) {
return t[1]
});
return Math.max(null, n) === Math.max(null, i) && Math.max(null, r) === Math.max(null, o) && Math.min(null, n) === Math.min(null, i) && Math.min(null, r) === Math.min(null, o)
} (s, o) && br(s, o)) {
var a = t.map(function(t) {
return t.from.coordinates
}).find(function(t) {
return ! e.some(function(e) {
return function(t, e) {
return t[0] === e[0] && t[1] === e[1]
} (t, e.from.coordinates)
})
});
a && e.inside(r(a)) && (i && !br(n, s) || (i = e))
}
}),
i
},
Da.prototype.inside = function(t) {
return Lt(t, this.toPolygon())
},
Object.defineProperties(Da.prototype, ka);
var Fa = function() {
this.edges = [],
this.nodes = {}
};
Fa.fromGeoJson = function(t) { !
function(t) {
if (!t) throw new Error("No geojson passed");
if ("FeatureCollection" !== t.type && "GeometryCollection" !== t.type && "MultiLineString" !== t.type && "LineString" !== t.type && "Feature" !== t.type) throw new Error("Invalid input type '" + t.type + "'. Geojson must be FeatureCollection, GeometryCollection, LineString, MultiLineString or Feature")
} (t);
var e = new Fa;
return k(t,
function(t) {
W(t, "LineString", "Graph::fromGeoJson"),
N(t,
function(t, n) {
if (t) {
var r = e.getNode(t),
i = e.getNode(n);
e.addEdge(r, i)
}
return n
})
}),
e
},
Fa.prototype.getNode = function(t) {
var e = Ta.buildId(t),
n = this.nodes[e];
return n || (n = this.nodes[e] = new Ta(t)),
n
},
Fa.prototype.addEdge = function(t, e) {
var n = new Ra(t, e),
r = n.getSymetric();
this.edges.push(n),
this.edges.push(r)
},
Fa.prototype.deleteDangles = function() {
var t = this;
Object.keys(this.nodes).map(function(e) {
return t.nodes[e]
}).forEach(function(e) {
return t._removeIfDangle(e)
})
},
Fa.prototype._removeIfDangle = function(t) {
var e = this;
if (t.innerEdges.length <= 1) {
var n = t.getOuterEdges().map(function(t) {
return t.to
});
this.removeNode(t),
n.forEach(function(t) {
return e._removeIfDangle(t)
})
}
},
Fa.prototype.deleteCutEdges = function() {
var t = this;
this._computeNextCWEdges(),
this._findLabeledEdgeRings(),
this.edges.forEach(function(e) {
e.label === e.symetric.label && (t.removeEdge(e.symetric), t.removeEdge(e))
})
},
Fa.prototype._computeNextCWEdges = function(t) {
var e = this;
void 0 === t ? Object.keys(this.nodes).forEach(function(t) {
return e._computeNextCWEdges(e.nodes[t])
}) : t.getOuterEdges().forEach(function(e, n) {
t.getOuterEdge((0 === n ? t.getOuterEdges().length: n) - 1).symetric.next = e
})
},
Fa.prototype._computeNextCCWEdges = function(t, e) {
for (var n, r, i = t.getOuterEdges(), o = i.length - 1; o >= 0; --o) {
var s = i[o],
a = s.symetric,
u = void 0,
c = void 0;
s.label === e && (u = s),
a.label === e && (c = a),
u && c && (c && (r = c), u && (r && (r.next = u, r = void 0), n || (n = u)))
}
r && (r.next = n)
},
Fa.prototype._findLabeledEdgeRings = function() {
var t = [],
e = 0;
return this.edges.forEach(function(n) {
if (! (n.label >= 0)) {
t.push(n);
var r = n;
do {
r.label = e, r = r.next
} while (! n . isEqual ( r ));
e++
}
}),
t
},
Fa.prototype.getEdgeRings = function() {
var t = this;
this._computeNextCWEdges(),
this.edges.forEach(function(t) {
t.label = void 0
}),
this._findLabeledEdgeRings().forEach(function(e) {
t._findIntersectionNodes(e).forEach(function(n) {
t._computeNextCCWEdges(n, e.label)
})
});
var e = [];
return this.edges.forEach(function(n) {
n.ring || e.push(t._findEdgeRing(n))
}),
e
},
Fa.prototype._findIntersectionNodes = function(t) {
var e = [],
n = t;
do { !
function() {
var r = 0;
n.from.getOuterEdges().forEach(function(e) {
e.label === t.label && ++r
}),
r > 1 && e.push(n.from),
n = n.next
} ()
} while (! t . isEqual ( n ));
return e
},
Fa.prototype._findEdgeRing = function(t) {
var e = t,
n = new Da;
do {
n.push(e), e.ring = n, e = e.next
} while (! t . isEqual ( e ));
return n
},
Fa.prototype.removeNode = function(t) {
var e = this;
t.getOuterEdges().forEach(function(t) {
return e.removeEdge(t)
}),
t.innerEdges.forEach(function(t) {
return e.removeEdge(t)
}),
delete this.nodes[t.id]
},
Fa.prototype.removeEdge = function(t) {
this.edges = this.edges.filter(function(e) {
return ! e.isEqual(t)
}),
t.deleteEdge()
};
var ja = mt(function(t, e) {
function n(t) {
var e = [];
for (var n in t) e.push(n);
return e
} (t.exports = "function" == typeof Object.keys ? Object.keys: n).shim = n
}),
qa = (ja.shim, mt(function(t, e) {
function n(t) {
return "[object Arguments]" == Object.prototype.toString.call(t)
}
function r(t) {
return t && "object" == typeof t && "number" == typeof t.length && Object.prototype.hasOwnProperty.call(t, "callee") && !Object.prototype.propertyIsEnumerable.call(t, "callee") || !1
}
var i = "[object Arguments]" ==
function() {
return Object.prototype.toString.call(arguments)
} (); (e = t.exports = i ? n: r).supported = n,
e.unsupported = r
})),
Ba = (qa.supported, qa.unsupported, mt(function(t) {
function e(t) {
return null === t || void 0 === t
}
function n(t) {
return ! (!t || "object" != typeof t || "number" != typeof t.length || "function" != typeof t.copy || "function" != typeof t.slice || t.length > 0 && "number" != typeof t[0])
}
var r = Array.prototype.slice,
i = t.exports = function(t, o, s) {
return s || (s = {}),
t === o || (t instanceof Date && o instanceof Date ? t.getTime() === o.getTime() : !t || !o || "object" != typeof t && "object" != typeof o ? s.strict ? t === o: t == o: function(t, o, s) {
var a, u;
if (e(t) || e(o)) return ! 1;
if (t.prototype !== o.prototype) return ! 1;
if (qa(t)) return !! qa(o) && (t = r.call(t), o = r.call(o), i(t, o, s));
if (n(t)) {
if (!n(o)) return ! 1;
if (t.length !== o.length) return ! 1;
for (a = 0; a < t.length; a++) if (t[a] !== o[a]) return ! 1;
return ! 0
}
try {
var c = ja(t),
l = ja(o)
} catch(t) {
return ! 1
}
if (c.length != l.length) return ! 1;
for (c.sort(), l.sort(), a = c.length - 1; a >= 0; a--) if (c[a] != l[a]) return ! 1;
for (a = c.length - 1; a >= 0; a--) if (u = c[a], !i(t[u], o[u], s)) return ! 1;
return typeof t == typeof o
} (t, o, s))
}
})),
Ga = function(t) {
this.precision = t && t.precision ? t.precision: 17,
this.direction = !(!t || !t.direction) && t.direction,
this.pseudoNode = !(!t || !t.pseudoNode) && t.pseudoNode,
this.objectComparator = t && t.objectComparator ? t.objectComparator: Or
};
Ga.prototype.compare = function(t, e) {
if (t.type !== e.type || !Ar(t, e)) return ! 1;
switch (t.type) {
case "Point":
return this.compareCoord(t.coordinates, e.coordinates);
case "LineString":
return this.compareLine(t.coordinates, e.coordinates, 0, !1);
case "Polygon":
return this.comparePolygon(t, e);
case "Feature":
return this.compareFeature(t, e);
default:
if (0 === t.type.indexOf("Multi")) {
var n = this,
r = Lr(t),
i = Lr(e);
return r.every(function(t) {
return this.some(function(e) {
return n.compare(t, e)
})
},
i)
}
}
return ! 1
},
Ga.prototype.compareCoord = function(t, e) {
if (t.length !== e.length) return ! 1;
for (var n = 0; n < t.length; n++) if (t[n].toFixed(this.precision) !== e[n].toFixed(this.precision)) return ! 1;
return ! 0
},
Ga.prototype.compareLine = function(t, e, n, r) {
if (!Ar(t, e)) return ! 1;
var i = this.pseudoNode ? t: this.removePseudo(t),
o = this.pseudoNode ? e: this.removePseudo(e);
if (!r || this.compareCoord(i[0], o[0]) || (o = this.fixStartIndex(o, i))) {
var s = this.compareCoord(i[n], o[n]);
return this.direction || s ? this.comparePath(i, o) : !!this.compareCoord(i[n], o[o.length - (1 + n)]) && this.comparePath(i.slice().reverse(), o)
}
},
Ga.prototype.fixStartIndex = function(t, e) {
for (var n, r = -1,
i = 0; i < t.length; i++) if (this.compareCoord(t[i], e[0])) {
r = i;
break
}
return r >= 0 && (n = [].concat(t.slice(r, t.length), t.slice(1, r + 1))),
n
},
Ga.prototype.comparePath = function(t, e) {
var n = this;
return t.every(function(t, e) {
return n.compareCoord(t, this[e])
},
e)
},
Ga.prototype.comparePolygon = function(t, e) {
if (this.compareLine(t.coordinates[0], e.coordinates[0], 1, !0)) {
var n = t.coordinates.slice(1, t.coordinates.length),
r = e.coordinates.slice(1, e.coordinates.length),
i = this;
return n.every(function(t) {
return this.some(function(e) {
return i.compareLine(t, e, 1, !0)
})
},
r)
}
return ! 1
},
Ga.prototype.compareFeature = function(t, e) {
return ! (t.id !== e.id || !this.objectComparator(t.properties, e.properties) || !this.compareBBox(t, e)) && this.compare(t.geometry, e.geometry)
},
Ga.prototype.compareBBox = function(t, e) {
return !! (!t.bbox && !e.bbox || t.bbox && e.bbox && this.compareCoord(t.bbox, e.bbox))
},
Ga.prototype.removePseudo = function(t) {
return t
};
var Ua = Ga,
za = mt(function(t) {
function e(t, e, n, r) {
this.dataset = [],
this.epsilon = 1,
this.minPts = 2,
this.distance = this._euclideanDistance,
this.clusters = [],
this.noise = [],
this._visited = [],
this._assigned = [],
this._datasetLength = 0,
this._init(t, e, n, r)
}
e.prototype.run = function(t, e, n, r) {
this._init(t, e, n, r);
for (var i = 0; i < this._datasetLength; i++) if (1 !== this._visited[i]) {
this._visited[i] = 1;
var o = this._regionQuery(i);
if (o.length < this.minPts) this.noise.push(i);
else {
var s = this.clusters.length;
this.clusters.push([]),
this._addToCluster(i, s),
this._expandCluster(s, o)
}
}
return this.clusters
},
e.prototype._init = function(t, e, n, r) {
if (t) {
if (! (t instanceof Array)) throw Error("Dataset must be of type array, " + typeof t + " given");
this.dataset = t,
this.clusters = [],
this.noise = [],
this._datasetLength = t.length,
this._visited = new Array(this._datasetLength),
this._assigned = new Array(this._datasetLength)
}
e && (this.epsilon = e),
n && (this.minPts = n),
r && (this.distance = r)
},
e.prototype._expandCluster = function(t, e) {
for (var n = 0; n < e.length; n++) {
var r = e[n];
if (1 !== this._visited[r]) {
this._visited[r] = 1;
var i = this._regionQuery(r);
i.length >= this.minPts && (e = this._mergeArrays(e, i))
}
1 !== this._assigned[r] && this._addToCluster(r, t)
}
},
e.prototype._addToCluster = function(t, e) {
this.clusters[e].push(t),
this._assigned[t] = 1
},
e.prototype._regionQuery = function(t) {
for (var e = [], n = 0; n < this._datasetLength; n++) this.distance(this.dataset[t], this.dataset[n]) < this.epsilon && e.push(n);
return e
},
e.prototype._mergeArrays = function(t, e) {
for (var n = e.length,
r = 0; r < n; r++) {
var i = e[r];
t.indexOf(i) < 0 && t.push(i)
}
return t
},
e.prototype._euclideanDistance = function(t, e) {
for (var n = 0,
r = Math.min(t.length, e.length); r--;) n += (t[r] - e[r]) * (t[r] - e[r]);
return Math.sqrt(n)
},
t.exports && (t.exports = e)
}),
Ya = mt(function(t) {
function e(t, e, n) {
this.k = 3,
this.dataset = [],
this.assignments = [],
this.centroids = [],
this.init(t, e, n)
}
e.prototype.init = function(t, e, n) {
this.assignments = [],
this.centroids = [],
void 0 !== t && (this.dataset = t),
void 0 !== e && (this.k = e),
void 0 !== n && (this.distance = n)
},
e.prototype.run = function(t, e) {
this.init(t, e);
for (var n = this.dataset.length,
r = 0; r < this.k; r++) this.centroids[r] = this.randomCentroid();
for (var i = !0; i;) {
i = this.assign();
for (var o = 0; o < this.k; o++) {
for (var s = new Array(l), a = 0, u = 0; u < l; u++) s[u] = 0;
for (var c = 0; c < n; c++) {
var l = this.dataset[c].length;
if (o === this.assignments[c]) {
for (u = 0; u < l; u++) s[u] += this.dataset[c][u];
a++
}
}
if (a > 0) {
for (u = 0; u < l; u++) s[u] /= a;
this.centroids[o] = s
} else this.centroids[o] = this.randomCentroid(),
i = !0
}
}
return this.getClusters()
},
e.prototype.randomCentroid = function() {
var t, e, n = this.dataset.length - 1;
do {
e = Math.round(Math.random() * n), t = this.dataset[e]
} while ( this . centroids . indexOf ( t ) >= 0);
return t
},
e.prototype.assign = function() {
for (var t, e = !1,
n = this.dataset.length,
r = 0; r < n; r++)(t = this.argmin(this.dataset[r], this.centroids, this.distance)) != this.assignments[r] && (this.assignments[r] = t, e = !0);
return e
},
e.prototype.getClusters = function() {
for (var t, e = new Array(this.k), n = 0; n < this.assignments.length; n++) void 0 === e[t = this.assignments[n]] && (e[t] = []),
e[t].push(n);
return e
},
e.prototype.argmin = function(t, e, n) {
for (var r, i = Number.MAX_VALUE,
o = 0,
s = e.length,
a = 0; a < s; a++)(r = n(t, e[a])) < i && (i = r, o = a);
return o
},
e.prototype.distance = function(t, e) {
for (var n = 0,
r = Math.min(t.length, e.length); r--;) {
var i = t[r] - e[r];
n += i * i
}
return Math.sqrt(n)
},
t.exports && (t.exports = e)
}),
Xa = mt(function(t) {
function e(t, e, n) {
this._queue = [],
this._priorities = [],
this._sorting = "desc",
this._init(t, e, n)
}
e.prototype.insert = function(t, e) {
for (var n = this._queue.length,
r = n; r--;) {
var i = this._priorities[r];
"desc" === this._sorting ? e > i && (n = r) : e < i && (n = r)
}
this._insertAt(t, e, n)
},
e.prototype.remove = function(t) {
for (var e = this._queue.length; e--;) if (t === this._queue[e]) {
this._queue.splice(e, 1),
this._priorities.splice(e, 1);
break
}
},
e.prototype.forEach = function(t) {
this._queue.forEach(t)
},
e.prototype.getElements = function() {
return this._queue
},
e.prototype.getElementPriority = function(t) {
return this._priorities[t]
},
e.prototype.getPriorities = function() {
return this._priorities
},
e.prototype.getElementsWithPriorities = function() {
for (var t = [], e = 0, n = this._queue.length; e < n; e++) t.push([this._queue[e], this._priorities[e]]);
return t
},
e.prototype._init = function(t, e, n) {
if (t && e) {
if (this._queue = [], this._priorities = [], t.length !== e.length) throw new Error("Arrays must have the same length");
for (var r = 0; r < t.length; r++) this.insert(t[r], e[r])
}
n && (this._sorting = n)
},
e.prototype._insertAt = function(t, e, n) {
this._queue.length === n ? (this._queue.push(t), this._priorities.push(e)) : (this._queue.splice(n, 0, t), this._priorities.splice(n, 0, e))
},
t.exports && (t.exports = e)
}),
Va = mt(function(t) {
function e(t, e, n, r) {
this.epsilon = 1,
this.minPts = 1,
this.distance = this._euclideanDistance,
this._reachability = [],
this._processed = [],
this._coreDistance = 0,
this._orderedList = [],
this._init(t, e, n, r)
}
if (t.exports) var n = Xa;
e.prototype.run = function(t, e, r, i) {
this._init(t, e, r, i);
for (var o = 0,
s = this.dataset.length; o < s; o++) if (1 !== this._processed[o]) {
this._processed[o] = 1,
this.clusters.push([o]);
var a = this.clusters.length - 1;
this._orderedList.push(o);
var u = new n(null, null, "asc"),
c = this._regionQuery(o);
void 0 !== this._distanceToCore(o) && (this._updateQueue(o, c, u), this._expandCluster(a, u))
}
return this.clusters
},
e.prototype.getReachabilityPlot = function() {
for (var t = [], e = 0, n = this._orderedList.length; e < n; e++) {
var r = this._orderedList[e],
i = this._reachability[r];
t.push([r, i])
}
return t
},
e.prototype._init = function(t, e, n, r) {
if (t) {
if (! (t instanceof Array)) throw Error("Dataset must be of type array, " + typeof t + " given");
this.dataset = t,
this.clusters = [],
this._reachability = new Array(this.dataset.length),
this._processed = new Array(this.dataset.length),
this._coreDistance = 0,
this._orderedList = []
}
e && (this.epsilon = e),
n && (this.minPts = n),
r && (this.distance = r)
},
e.prototype._updateQueue = function(t, e, n) {
var r = this;
this._coreDistance = this._distanceToCore(t),
e.forEach(function(e) {
if (void 0 === r._processed[e]) {
var i = r.distance(r.dataset[t], r.dataset[e]),
o = Math.max(r._coreDistance, i);
void 0 === r._reachability[e] ? (r._reachability[e] = o, n.insert(e, o)) : o < r._reachability[e] && (r._reachability[e] = o, n.remove(e), n.insert(e, o))
}
})
},
e.prototype._expandCluster = function(t, e) {
for (var n = e.getElements(), r = 0, i = n.length; r < i; r++) {
var o = n[r];
if (void 0 === this._processed[o]) {
var s = this._regionQuery(o);
this._processed[o] = 1,
this.clusters[t].push(o),
this._orderedList.push(o),
void 0 !== this._distanceToCore(o) && (this._updateQueue(o, s, e), this._expandCluster(t, e))
}
}
},
e.prototype._distanceToCore = function(t) {
for (var e = this.epsilon,
n = 0; n < e; n++) if (this._regionQuery(t, n).length >= this.minPts) return n
},
e.prototype._regionQuery = function(t, e) {
e = e || this.epsilon;
for (var n = [], r = 0, i = this.dataset.length; r < i; r++) this.distance(this.dataset[t], this.dataset[r]) < e && n.push(r);
return n
},
e.prototype._euclideanDistance = function(t, e) {
for (var n = 0,
r = Math.min(t.length, e.length); r--;) n += (t[r] - e[r]) * (t[r] - e[r]);
return Math.sqrt(n)
},
t.exports && (t.exports = e)
}),
Wa = mt(function(t) {
t.exports && (t.exports = {
DBSCAN: za,
KMEANS: Ya,
OPTICS: Va,
PriorityQueue: Xa
})
}),
Ha = (Wa.DBSCAN, Wa.KMEANS, Wa.OPTICS, Wa.PriorityQueue,
function(t, e, n) {
for (var r = t.length,
i = 0,
o = 0; o < r; o++) {
var s = (t[o] || 0) - (e[o] || 0);
i += s * s
}
return n ? Math.sqrt(i) : i
}),
Ja = Ha,
Za = function(t, e, n) {
var r = Math.abs(t - e);
return n ? r: r * r
},
Qa = Ha,
Ka = function(t, e) {
for (var n = {},
r = [], i = e << 2, o = t.length, s = t[0].length > 0; r.length < e && i-->0;) {
var a = t[Math.floor(Math.random() * o)],
u = s ? a.join("_") : "" + a;
n[u] || (n[u] = !0, r.push(a))
}
if (r.length < e) throw new Error("Error initializating clusters");
return r
},
$a = function(t, e) {
var n = t[0].length ? Ja: Za,
r = [],
i = t.length,
o = t[0].length > 0,
s = t[Math.floor(Math.random() * i)];
for (o && s.join("_"), r.push(s); r.length < e;) {
for (var a = [], u = r.length, c = 0, l = [], h = 0; h < i; h++) {
for (var f = 1 / 0,
p = 0; p < u; p++) {
var d = n(t[h], r[p]);
d <= f && (f = d)
}
a[h] = f
}
for (var g = 0; g < i; g++) c += a[g];
for (var y = 0; y < i; y++) l[y] = {
i: y,
v: t[y],
pr: a[y] / c,
cs: 0
};
l.sort(function(t, e) {
return t.pr - e.pr
}),
l[0].cs = l[0].pr;
for (var v = 1; v < i; v++) l[v].cs = l[v - 1].cs + l[v].pr;
for (var m = Math.random(), _ = 0; _ < i - 1 && l[_++].cs < m;);
r.push(l[_ - 1].v)
}
return r
},
tu = function(t, e, n, r) {
var i = [],
o = [],
s = [],
a = [],
u = !1,
c = r || 1e4,
l = t.length,
h = t[0].length,
f = h > 0,
p = [];
if (n) i = "kmrand" == n ? Ka(t, e) : "kmpp" == n ? $a(t, e) : n;
else for (var d = {}; i.length < e;) {
var g = Math.floor(Math.random() * l);
d[g] || (d[g] = !0, i.push(t[g]))
}
do {
Rr(e, 0, p);
for (var y = 0; y < l; y++) {
for (var v = 1 / 0,
m = 0,
_ = 0; _ < e; _++)(a = f ? Qa(t[y], i[_]) : Math.abs(t[y] - i[_])) <= v && (v = a, m = _);
s[y] = m,
p[m]++
}
for (var w = [], b = (o = [], 0); b < e; b++) w[b] = f ? Rr(h, 0, w[b]) : 0, o[b] = i[b];
if (f) {
for (var x = 0; x < e; x++) i[x] = [];
for (var E = 0; E < l; E++) for (var M = w[s[E]], I = t[E], S = 0; S < h; S++) M[S] += I[S];
u = !0;
for (var C = 0; C < e; C++) {
for (var N = i[C], P = w[C], L = o[C], A = p[C], O = 0; O < h; O++) N[O] = P[O] / A || 0;
if (u) for (var T = 0; T < h; T++) if (L[T] != N[T]) {
u = !1;
break
}
}
} else {
for (var R = 0; R < l; R++) w[s[R]] += t[R];
for (var D = 0; D < e; D++) i[D] = w[D] / p[D] || 0;
u = !0;
for (var k = 0; k < e; k++) if (o[k] != i[k]) {
u = !1;
break
}
}
u = u || --c <= 0
} while (! u );
return {
it: 1e4 - c,
k: e,
idxs: s,
centroids: i
}
},
eu = {
search: function(t, e, n, r) {
t.cleanDirty();
var i = (r = r || {}).heuristic || eu.heuristics.manhattan,
o = r.closest || !1,
s = new qr(function(t) {
return t.f
}),
a = e;
for (e.h = i(e, n), s.push(e); s.size() > 0;) {
var u = s.pop();
if (u === n) return kr(u);
u.closed = !0;
for (var c = t.neighbors(u), l = 0, h = c.length; l < h; ++l) {
var f = c[l];
if (!f.closed && !f.isWall()) {
var p = u.g + f.getCost(u),
d = f.visited; (!d || p < f.g) && (f.visited = !0, f.parent = u, f.h = f.h || i(f, n), f.g = p, f.f = f.g + f.h, t.markDirty(f), o && (f.h < a.h || f.h === a.h && f.g < a.g) && (a = f), d ? s.rescoreElement(f) : s.push(f))
}
}
}
return o ? kr(a) : []
},
heuristics: {
manhattan: function(t, e) {
return Math.abs(e.x - t.x) + Math.abs(e.y - t.y)
},
diagonal: function(t, e) {
var n = Math.sqrt(2),
r = Math.abs(e.x - t.x),
i = Math.abs(e.y - t.y);
return 1 * (r + i) + (n - 2) * Math.min(r, i)
}
},
cleanNode: function(t) {
t.f = 0,
t.g = 0,
t.h = 0,
t.visited = !1,
t.closed = !1,
t.parent = null
}
};
Fr.prototype.init = function() {
this.dirtyNodes = [];
for (var t = 0; t < this.nodes.length; t++) eu.cleanNode(this.nodes[t])
},
Fr.prototype.cleanDirty = function() {
for (var t = 0; t < this.dirtyNodes.length; t++) eu.cleanNode(this.dirtyNodes[t]);
this.dirtyNodes = []
},
Fr.prototype.markDirty = function(t) {
this.dirtyNodes.push(t)
},
Fr.prototype.neighbors = function(t) {
var e = [],
n = t.x,
r = t.y,
i = this.grid;
return i[n - 1] && i[n - 1][r] && e.push(i[n - 1][r]),
i[n + 1] && i[n + 1][r] && e.push(i[n + 1][r]),
i[n] && i[n][r - 1] && e.push(i[n][r - 1]),
i[n] && i[n][r + 1] && e.push(i[n][r + 1]),
this.diagonal && (i[n - 1] && i[n - 1][r - 1] && e.push(i[n - 1][r - 1]), i[n + 1] && i[n + 1][r - 1] && e.push(i[n + 1][r - 1]), i[n - 1] && i[n - 1][r + 1] && e.push(i[n - 1][r + 1]), i[n + 1] && i[n + 1][r + 1] && e.push(i[n + 1][r + 1])),
e
},
Fr.prototype.toString = function() {
for (var t, e, n, r, i = [], o = this.grid, s = 0, a = o.length; s < a; s++) {
for (t = [], n = 0, r = (e = o[s]).length; n < r; n++) t.push(e[n].weight);
i.push(t.join(" "))
}
return i.join("\n")
},
jr.prototype.toString = function() {
return "[" + this.x + " " + this.y + "]"
},
jr.prototype.getCost = function(t) {
return t && t.x !== this.x && t.y !== this.y ? 1.41421 * this.weight: this.weight
},
jr.prototype.isWall = function() {
return 0 === this.weight
},
qr.prototype = {
push: function(t) {
this.content.push(t),
this.sinkDown(this.content.length - 1)
},
pop: function() {
var t = this.content[0],
e = this.content.pop();
return this.content.length > 0 && (this.content[0] = e, this.bubbleUp(0)),
t
},
remove: function(t) {
var e = this.content.indexOf(t),
n = this.content.pop();
e !== this.content.length - 1 && (this.content[e] = n, this.scoreFunction(n) < this.scoreFunction(t) ? this.sinkDown(e) : this.bubbleUp(e))
},
size: function() {
return this.content.length
},
rescoreElement: function(t) {
this.sinkDown(this.content.indexOf(t))
},
sinkDown: function(t) {
for (var e = this.content[t]; t > 0;) {
var n = (t + 1 >> 1) - 1,
r = this.content[n];
if (! (this.scoreFunction(e) < this.scoreFunction(r))) break;
this.content[n] = e,
this.content[t] = r,
t = n
}
},
bubbleUp: function(t) {
for (var e = this.content.length,
n = this.content[t], r = this.scoreFunction(n);;) {
var i, o = t + 1 << 1,
s = o - 1,
a = null;
if (s < e) {
var u = this.content[s]; (i = this.scoreFunction(u)) < r && (a = s)
}
if (o < e) {
var c = this.content[o];
this.scoreFunction(c) < (null === a ? r: i) && (a = o)
}
if (null === a) break;
this.content[t] = this.content[a],
this.content[a] = n,
t = a
}
}
};
var nu = function(t) {
return function() {
return t
}
};
Ur.prototype = {
constructor: Ur,
insert: function(t, e) {
var n, r, i;
if (t) {
if (e.P = t, e.N = t.N, t.N && (t.N.P = e), t.N = e, t.R) {
for (t = t.R; t.L;) t = t.L;
t.L = e
} else t.R = e;
n = t
} else this._ ? (t = Vr(this._), e.P = null, e.N = t, t.P = t.L = e, n = t) : (e.P = e.N = null, this._ = e, n = null);
for (e.L = e.R = null, e.U = n, e.C = !0, t = e; n && n.C;) n === (r = n.U).L ? (i = r.R) && i.C ? (n.C = i.C = !1, r.C = !0, t = r) : (t === n.R && (Yr(this, n), n = (t = n).U), n.C = !1, r.C = !0, Xr(this, r)) : (i = r.L) && i.C ? (n.C = i.C = !1, r.C = !0, t = r) : (t === n.L && (Xr(this, n), n = (t = n).U), n.C = !1, r.C = !0, Yr(this, r)),
n = t.U;
this._.C = !1
},
remove: function(t) {
t.N && (t.N.P = t.P),
t.P && (t.P.N = t.N),
t.N = t.P = null;
var e, n, r, i = t.U,
o = t.L,
s = t.R;
if (n = o ? s ? Vr(s) : o: s, i ? i.L === t ? i.L = n: i.R = n: this._ = n, o && s ? (r = n.C, n.C = t.C, n.L = o, o.U = n, n !== s ? (i = n.U, n.U = t.U, t = n.R, i.L = t, n.R = s, s.U = n) : (n.U = i, i = n, t = n.R)) : (r = t.C, t = n), t && (t.U = i), !r) if (t && t.C) t.C = !1;
else {
do {
if (t === this._) break;
if (t === i.L) {
if ((e = i.R).C && (e.C = !1, i.C = !0, Yr(this, i), e = i.R), e.L && e.L.C || e.R && e.R.C) {
e.R && e.R.C || (e.L.C = !1, e.C = !0, Xr(this, e), e = i.R),
e.C = i.C,
i.C = e.R.C = !1,
Yr(this, i),
t = this._;
break
}
} else if ((e = i.L).C && (e.C = !1, i.C = !0, Xr(this, i), e = i.L), e.L && e.L.C || e.R && e.R.C) {
e.L && e.L.C || (e.R.C = !1, e.C = !0, Yr(this, e), e = i.L),
e.C = i.C,
i.C = e.L.C = !1,
Xr(this, i),
t = this._;
break
}
e.C = !0, t = i, i = i.U
} while (! t . C );
t && (t.C = !1)
}
}
};
var ru, iu, ou, su, au, uu = [],
cu = [],
lu = 1e-6,
hu = 1e-12;
li.prototype = {
constructor: li,
polygons: function() {
var t = this.edges;
return this.cells.map(function(e) {
var n = e.halfedges.map(function(n) {
return $r(e, t[n])
});
return n.data = e.site.data,
n
})
},
triangles: function() {
var t = [],
e = this.edges;
return this.cells.forEach(function(n, r) {
if (o = (i = n.halfedges).length) for (var i, o, s, a = n.site,
u = -1,
c = e[i[o - 1]], l = c.left === a ? c.right: c.left; ++u < o;) s = l,
l = (c = e[i[u]]).left === a ? c.right: c.left,
s && l && r < s.index && r < l.index && ui(a, s, l) < 0 && t.push([a.data, s.data, l.data])
}),
t
},
links: function() {
return this.edges.filter(function(t) {
return t.right
}).map(function(t) {
return {
source: t.left.data,
target: t.right.data
}
})
},
find: function(t, e, n) {
for (var r, i, o = this,
s = o._found || 0,
a = o.cells.length; ! (i = o.cells[s]);) if (++s >= a) return null;
var u = t - i.site[0],
c = e - i.site[1],
l = u * u + c * c;
do {
i = o.cells[r = s], s = null, i.halfedges.forEach(function(n) {
var r = o.edges[n],
a = r.left;
if (a !== i.site && a || (a = r.right)) {
var u = t - a[0],
c = e - a[1],
h = u * u + c * c;
h < l && (l = h, s = a.index)
}
})
} while ( null !== s );
return o._found = r,
null == n || l <= n * n ? i.site: null
}
};
var fu = function() {
function t(t) {
return new li(t.map(function(r, i) {
var o = [Math.round(e(r, i, t) / lu) * lu, Math.round(n(r, i, t) / lu) * lu];
return o.index = i,
o.data = r,
o
}), r)
}
var e = Br,
n = Gr,
r = null;
return t.polygons = function(e) {
return t(e).polygons()
},
t.links = function(e) {
return t(e).links()
},
t.triangles = function(e) {
return t(e).triangles()
},
t.x = function(n) {
return arguments.length ? (e = "function" == typeof n ? n: nu( + n), t) : e
},
t.y = function(e) {
return arguments.length ? (n = "function" == typeof e ? e: nu( + e), t) : n
},
t.extent = function(e) {
return arguments.length ? (r = null == e ? null: [[ + e[0][0], +e[0][1]], [ + e[1][0], +e[1][1]]], t) : r && [[r[0][0], r[0][1]], [r[1][0], r[1][1]]]
},
t.size = function(e) {
return arguments.length ? (r = null == e ? null: [[0, 0], [ + e[0], +e[1]]], t) : r && [r[1][0] - r[0][0], r[1][1] - r[0][1]]
},
t
},
pu = Object.freeze({
randomPosition: vi,
randomPoint: mi,
randomPolygon: _i,
randomLineString: wi
}),
du = Object.freeze({
getCluster: xi,
clusterEach: Ei,
clusterReduce: Mi,
createBins: Ii,
applyFilter: Si,
propertiesContainsFilter: Ci,
filterProperties: Ni
});
"fill" in Array.prototype || Object.defineProperty(Array.prototype, "fill", {
configurable: !0,
value: function(t) {
if (void 0 === this || null === this) throw new TypeError(this + " is not an object");
var e = Object(this),
n = Math.max(Math.min(e.length, 9007199254740991), 0) || 0,
r = 1 in arguments ? parseInt(Number(arguments[1]), 10) || 0 : 0;
r = r < 0 ? Math.max(n + r, 0) : Math.min(r, n);
var i = 2 in arguments && void 0 !== arguments[2] ? parseInt(Number(arguments[2]), 10) || 0 : n;
for (i = i < 0 ? Math.max(n + arguments[2], 0) : Math.min(i, n); r < i;) e[r] = t,
++r;
return e
},
writable: !0
}),
Number.isFinite = Number.isFinite ||
function(t) {
return "number" == typeof t && isFinite(t)
},
Number.isInteger = Number.isInteger ||
function(t) {
return "number" == typeof t && isFinite(t) && Math.floor(t) === t
},
Number.parseFloat = Number.parseFloat || parseFloat,
Number.isNaN = Number.isNaN ||
function(t) {
return t != t
},
Math.trunc = Math.trunc ||
function(t) {
return t < 0 ? Math.ceil(t) : Math.floor(t)
};
var gu = function() {};
gu.prototype.interfaces_ = function() {
return []
},
gu.prototype.getClass = function() {
return gu
},
gu.prototype.equalsWithTolerance = function(t, e, n) {
return Math.abs(t - e) <= n
};
var yu = function() {},
vu = function() {},
mu = {
MAX_VALUE: {
configurable: !0
}
};
vu.isNaN = function(t) {
return Number.isNaN(t)
},
vu.doubleToLongBits = function(t) {
return t
},
vu.longBitsToDouble = function(t) {
return t
},
vu.isInfinite = function(t) {
return ! Number.isFinite(t)
},
mu.MAX_VALUE.get = function() {
return Number.MAX_VALUE
},
Object.defineProperties(vu, mu);
var _u = function() {},
wu = function() {},
bu = function() {},
xu = function t() {
if (this.x = null, this.y = null, this.z = null, 0 === arguments.length) this.x = 0,
this.y = 0,
this.z = t.NULL_ORDINATE;
else if (1 === arguments.length) {
var e = arguments[0];
this.x = e.x,
this.y = e.y,
this.z = e.z
} else 2 === arguments.length ? (this.x = arguments[0], this.y = arguments[1], this.z = t.NULL_ORDINATE) : 3 === arguments.length && (this.x = arguments[0], this.y = arguments[1], this.z = arguments[2])
},
Eu = {
DimensionalComparator: {
configurable: !0
},
serialVersionUID: {
configurable: !0
},
NULL_ORDINATE: {
configurable: !0
},
X: {
configurable: !0
},
Y: {
configurable: !0
},
Z: {
configurable: !0
}
};
xu.prototype.setOrdinate = function(t, e) {
switch (t) {
case xu.X:
this.x = e;
break;
case xu.Y:
this.y = e;
break;
case xu.Z:
this.z = e;
break;
default:
throw new yu("Invalid ordinate index: " + t)
}
},
xu.prototype.equals2D = function() {
if (1 === arguments.length) {
var t = arguments[0];
return this.x === t.x && this.y === t.y
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return !! gu.equalsWithTolerance(this.x, e.x, n) && !!gu.equalsWithTolerance(this.y, e.y, n)
}
},
xu.prototype.getOrdinate = function(t) {
switch (t) {
case xu.X:
return this.x;
case xu.Y:
return this.y;
case xu.Z:
return this.z
}
throw new yu("Invalid ordinate index: " + t)
},
xu.prototype.equals3D = function(t) {
return this.x === t.x && this.y === t.y && (this.z === t.z || vu.isNaN(this.z)) && vu.isNaN(t.z)
},
xu.prototype.equals = function(t) {
return t instanceof xu && this.equals2D(t)
},
xu.prototype.equalInZ = function(t, e) {
return gu.equalsWithTolerance(this.z, t.z, e)
},
xu.prototype.compareTo = function(t) {
var e = t;
return this.x < e.x ? -1 : this.x > e.x ? 1 : this.y < e.y ? -1 : this.y > e.y ? 1 : 0
},
xu.prototype.clone = function() {},
xu.prototype.copy = function() {
return new xu(this)
},
xu.prototype.toString = function() {
return "(" + this.x + ", " + this.y + ", " + this.z + ")"
},
xu.prototype.distance3D = function(t) {
var e = this.x - t.x,
n = this.y - t.y,
r = this.z - t.z;
return Math.sqrt(e * e + n * n + r * r)
},
xu.prototype.distance = function(t) {
var e = this.x - t.x,
n = this.y - t.y;
return Math.sqrt(e * e + n * n)
},
xu.prototype.hashCode = function() {
var t = 17;
return t = 37 * t + xu.hashCode(this.x),
t = 37 * t + xu.hashCode(this.y)
},
xu.prototype.setCoordinate = function(t) {
this.x = t.x,
this.y = t.y,
this.z = t.z
},
xu.prototype.interfaces_ = function() {
return [_u, wu, Pi]
},
xu.prototype.getClass = function() {
return xu
},
xu.hashCode = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = vu.doubleToLongBits(t);
return Math.trunc((e ^ e) >>> 32)
}
},
Eu.DimensionalComparator.get = function() {
return Mu
},
Eu.serialVersionUID.get = function() {
return 0x5cbf2c235c7e5800
},
Eu.NULL_ORDINATE.get = function() {
return vu.NaN
},
Eu.X.get = function() {
return 0
},
Eu.Y.get = function() {
return 1
},
Eu.Z.get = function() {
return 2
},
Object.defineProperties(xu, Eu);
var Mu = function(t) {
if (this._dimensionsToTest = 2, 0 === arguments.length);
else if (1 === arguments.length) {
var e = arguments[0];
if (2 !== e && 3 !== e) throw new yu("only 2 or 3 dimensions may be specified");
this._dimensionsToTest = e
}
};
Mu.prototype.compare = function(t, e) {
var n = t,
r = e,
i = Mu.compare(n.x, r.x);
if (0 !== i) return i;
var o = Mu.compare(n.y, r.y);
return 0 !== o ? o: this._dimensionsToTest <= 2 ? 0 : Mu.compare(n.z, r.z)
},
Mu.prototype.interfaces_ = function() {
return [bu]
},
Mu.prototype.getClass = function() {
return Mu
},
Mu.compare = function(t, e) {
return t < e ? -1 : t > e ? 1 : vu.isNaN(t) ? vu.isNaN(e) ? 0 : -1 : vu.isNaN(e) ? 1 : 0
};
var Iu = function() {};
Iu.prototype.create = function() {},
Iu.prototype.interfaces_ = function() {
return []
},
Iu.prototype.getClass = function() {
return Iu
};
var Su = function() {},
Cu = {
INTERIOR: {
configurable: !0
},
BOUNDARY: {
configurable: !0
},
EXTERIOR: {
configurable: !0
},
NONE: {
configurable: !0
}
};
Su.prototype.interfaces_ = function() {
return []
},
Su.prototype.getClass = function() {
return Su
},
Su.toLocationSymbol = function(t) {
switch (t) {
case Su.EXTERIOR:
return "e";
case Su.BOUNDARY:
return "b";
case Su.INTERIOR:
return "i";
case Su.NONE:
return "-"
}
throw new yu("Unknown location value: " + t)
},
Cu.INTERIOR.get = function() {
return 0
},
Cu.BOUNDARY.get = function() {
return 1
},
Cu.EXTERIOR.get = function() {
return 2
},
Cu.NONE.get = function() {
return - 1
},
Object.defineProperties(Su, Cu);
var Nu = function(t, e) {
return t.interfaces_ && t.interfaces_().indexOf(e) > -1
},
Pu = function() {},
Lu = {
LOG_10: {
configurable: !0
}
};
Pu.prototype.interfaces_ = function() {
return []
},
Pu.prototype.getClass = function() {
return Pu
},
Pu.log10 = function(t) {
var e = Math.log(t);
return vu.isInfinite(e) ? e: vu.isNaN(e) ? e: e / Pu.LOG_10
},
Pu.min = function(t, e, n, r) {
var i = t;
return e < i && (i = e),
n < i && (i = n),
r < i && (i = r),
i
},
Pu.clamp = function() {
if ("number" == typeof arguments[2] && "number" == typeof arguments[0] && "number" == typeof arguments[1]) {
var t = arguments[0],
e = arguments[1],
n = arguments[2];
return t < e ? e: t > n ? n: t
}
if (Number.isInteger(arguments[2]) && Number.isInteger(arguments[0]) && Number.isInteger(arguments[1])) {
var r = arguments[0],
i = arguments[1],
o = arguments[2];
return r < i ? i: r > o ? o: r
}
},
Pu.wrap = function(t, e) {
return t < 0 ? e - -t % e: t % e
},
Pu.max = function() {
if (3 === arguments.length) {
var t = arguments[0],
e = arguments[1],
n = arguments[2],
r = t;
return e > r && (r = e),
n > r && (r = n),
r
}
if (4 === arguments.length) {
var i = arguments[0],
o = arguments[1],
s = arguments[2],
a = arguments[3],
u = i;
return o > u && (u = o),
s > u && (u = s),
a > u && (u = a),
u
}
},
Pu.average = function(t, e) {
return (t + e) / 2
},
Lu.LOG_10.get = function() {
return Math.log(10)
},
Object.defineProperties(Pu, Lu);
var Au = function(t) {
this.str = t
};
Au.prototype.append = function(t) {
this.str += t
},
Au.prototype.setCharAt = function(t, e) {
this.str = this.str.substr(0, t) + e + this.str.substr(t + 1)
},
Au.prototype.toString = function(t) {
return this.str
};
var Ou = function(t) {
this.value = t
};
Ou.prototype.intValue = function() {
return this.value
},
Ou.prototype.compareTo = function(t) {
return this.value < t ? -1 : this.value > t ? 1 : 0
},
Ou.isNaN = function(t) {
return Number.isNaN(t)
};
var Tu = function() {};
Tu.isWhitespace = function(t) {
return t <= 32 && t >= 0 || 127 === t
},
Tu.toUpperCase = function(t) {
return t.toUpperCase()
};
var Ru = function t() {
if (this._hi = 0, this._lo = 0, 0 === arguments.length) this.init(0);
else if (1 === arguments.length) {
if ("number" == typeof arguments[0]) {
var e = arguments[0];
this.init(e)
} else if (arguments[0] instanceof t) {
var n = arguments[0];
this.init(n)
} else if ("string" == typeof arguments[0]) {
var r = arguments[0];
t.call(this, t.parse(r))
}
} else if (2 === arguments.length) {
var i = arguments[0],
o = arguments[1];
this.init(i, o)
}
},
Du = {
PI: {
configurable: !0
},
TWO_PI: {
configurable: !0
},
PI_2: {
configurable: !0
},
E: {
configurable: !0
},
NaN: {
configurable: !0
},
EPS: {
configurable: !0
},
SPLIT: {
configurable: !0
},
MAX_PRINT_DIGITS: {
configurable: !0
},
TEN: {
configurable: !0
},
ONE: {
configurable: !0
},
SCI_NOT_EXPONENT_CHAR: {
configurable: !0
},
SCI_NOT_ZERO: {
configurable: !0
}
};
Ru.prototype.le = function(t) {
return (this._hi < t._hi || this._hi === t._hi) && this._lo <= t._lo
},
Ru.prototype.extractSignificantDigits = function(t, e) {
var n = this.abs(),
r = Ru.magnitude(n._hi),
i = Ru.TEN.pow(r); (n = n.divide(i)).gt(Ru.TEN) ? (n = n.divide(Ru.TEN), r += 1) : n.lt(Ru.ONE) && (n = n.multiply(Ru.TEN), r -= 1);
for (var o = r + 1,
s = new Au,
a = Ru.MAX_PRINT_DIGITS - 1,
u = 0; u <= a; u++) {
t && u === o && s.append(".");
var c = Math.trunc(n._hi);
if (c < 0) break;
var l = !1,
h = 0;
c > 9 ? (l = !0, h = "9") : h = "0" + c,
s.append(h),
n = n.subtract(Ru.valueOf(c)).multiply(Ru.TEN),
l && n.selfAdd(Ru.TEN);
var f = !0,
p = Ru.magnitude(n._hi);
if (p < 0 && Math.abs(p) >= a - u && (f = !1), !f) break
}
return e[0] = r,
s.toString()
},
Ru.prototype.sqr = function() {
return this.multiply(this)
},
Ru.prototype.doubleValue = function() {
return this._hi + this._lo
},
Ru.prototype.subtract = function() {
if (arguments[0] instanceof Ru) {
var t = arguments[0];
return this.add(t.negate())
}
if ("number" == typeof arguments[0]) {
var e = arguments[0];
return this.add( - e)
}
},
Ru.prototype.equals = function() {
if (1 === arguments.length) {
var t = arguments[0];
return this._hi === t._hi && this._lo === t._lo
}
},
Ru.prototype.isZero = function() {
return 0 === this._hi && 0 === this._lo
},
Ru.prototype.selfSubtract = function() {
if (arguments[0] instanceof Ru) {
var t = arguments[0];
return this.isNaN() ? this: this.selfAdd( - t._hi, -t._lo)
}
if ("number" == typeof arguments[0]) {
var e = arguments[0];
return this.isNaN() ? this: this.selfAdd( - e, 0)
}
},
Ru.prototype.getSpecialNumberString = function() {
return this.isZero() ? "0.0": this.isNaN() ? "NaN ": null
},
Ru.prototype.min = function(t) {
return this.le(t) ? this: t
},
Ru.prototype.selfDivide = function() {
if (1 === arguments.length) {
if (arguments[0] instanceof Ru) {
var t = arguments[0];
return this.selfDivide(t._hi, t._lo)
}
if ("number" == typeof arguments[0]) {
var e = arguments[0];
return this.selfDivide(e, 0)
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = null,
o = null,
s = null,
a = null,
u = null,
c = null,
l = null,
h = null;
return u = this._hi / n,
c = Ru.SPLIT * u,
i = c - u,
h = Ru.SPLIT * n,
i = c - i,
o = u - i,
s = h - n,
l = u * n,
s = h - s,
a = n - s,
h = i * s - l + i * a + o * s + o * a,
c = (this._hi - l - h + this._lo - u * r) / n,
h = u + c,
this._hi = h,
this._lo = u - h + c,
this
}
},
Ru.prototype.dump = function() {
return "DD<" + this._hi + ", " + this._lo + ">"
},
Ru.prototype.divide = function() {
if (arguments[0] instanceof Ru) {
var t = arguments[0],
e = null,
n = null,
r = null,
i = null,
o = null,
s = null,
a = null,
u = null;
return n = (o = this._hi / t._hi) - (e = (s = Ru.SPLIT * o) - (e = s - o)),
u = e * (r = (u = Ru.SPLIT * t._hi) - (r = u - t._hi)) - (a = o * t._hi) + e * (i = t._hi - r) + n * r + n * i,
s = (this._hi - a - u + this._lo - o * t._lo) / t._hi,
new Ru(u = o + s, o - u + s)
}
if ("number" == typeof arguments[0]) {
var c = arguments[0];
return vu.isNaN(c) ? Ru.createNaN() : Ru.copy(this).selfDivide(c, 0)
}
},
Ru.prototype.ge = function(t) {
return (this._hi > t._hi || this._hi === t._hi) && this._lo >= t._lo
},
Ru.prototype.pow = function(t) {
if (0 === t) return Ru.valueOf(1);
var e = new Ru(this),
n = Ru.valueOf(1),
r = Math.abs(t);
if (r > 1) for (; r > 0;) r % 2 == 1 && n.selfMultiply(e),
(r /= 2) > 0 && (e = e.sqr());
else n = e;
return t < 0 ? n.reciprocal() : n
},
Ru.prototype.ceil = function() {
if (this.isNaN()) return Ru.NaN;
var t = Math.ceil(this._hi),
e = 0;
return t === this._hi && (e = Math.ceil(this._lo)),
new Ru(t, e)
},
Ru.prototype.compareTo = function(t) {
var e = t;
return this._hi < e._hi ? -1 : this._hi > e._hi ? 1 : this._lo < e._lo ? -1 : this._lo > e._lo ? 1 : 0
},
Ru.prototype.rint = function() {
return this.isNaN() ? this: this.add(.5).floor()
},
Ru.prototype.setValue = function() {
if (arguments[0] instanceof Ru) {
var t = arguments[0];
return this.init(t),
this
}
if ("number" == typeof arguments[0]) {
var e = arguments[0];
return this.init(e),
this
}
},
Ru.prototype.max = function(t) {
return this.ge(t) ? this: t
},
Ru.prototype.sqrt = function() {
if (this.isZero()) return Ru.valueOf(0);
if (this.isNegative()) return Ru.NaN;
var t = 1 / Math.sqrt(this._hi),
e = this._hi * t,
n = Ru.valueOf(e),
r = this.subtract(n.sqr())._hi * (.5 * t);
return n.add(r)
},
Ru.prototype.selfAdd = function() {
if (1 === arguments.length) {
if (arguments[0] instanceof Ru) {
var t = arguments[0];
return this.selfAdd(t._hi, t._lo)
}
if ("number" == typeof arguments[0]) {
var e = arguments[0],
n = null,
r = null,
i = null,
o = null,
s = null,
a = null;
return i = this._hi + e,
s = i - this._hi,
o = i - s,
o = e - s + (this._hi - o),
a = o + this._lo,
n = i + a,
r = a + (i - n),
this._hi = n + r,
this._lo = r + (n - this._hi),
this
}
} else if (2 === arguments.length) {
var u = arguments[0],
c = arguments[1],
l = null,
h = null,
f = null,
p = null,
d = null,
g = null,
y = null;
p = this._hi + u,
h = this._lo + c,
d = p - (g = p - this._hi),
f = h - (y = h - this._lo);
var v = (l = p + (g = (d = u - g + (this._hi - d)) + h)) + (g = (f = c - y + (this._lo - f)) + (g + (p - l))),
m = g + (l - v);
return this._hi = v,
this._lo = m,
this
}
},
Ru.prototype.selfMultiply = function() {
if (1 === arguments.length) {
if (arguments[0] instanceof Ru) {
var t = arguments[0];
return this.selfMultiply(t._hi, t._lo)
}
if ("number" == typeof arguments[0]) {
var e = arguments[0];
return this.selfMultiply(e, 0)
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = null,
o = null,
s = null,
a = null,
u = null,
c = null;
i = (u = Ru.SPLIT * this._hi) - this._hi,
c = Ru.SPLIT * n,
i = u - i,
o = this._hi - i,
s = c - n;
var l = (u = this._hi * n) + (c = i * (s = c - s) - u + i * (a = n - s) + o * s + o * a + (this._hi * r + this._lo * n)),
h = c + (i = u - l);
return this._hi = l,
this._lo = h,
this
}
},
Ru.prototype.selfSqr = function() {
return this.selfMultiply(this)
},
Ru.prototype.floor = function() {
if (this.isNaN()) return Ru.NaN;
var t = Math.floor(this._hi),
e = 0;
return t === this._hi && (e = Math.floor(this._lo)),
new Ru(t, e)
},
Ru.prototype.negate = function() {
return this.isNaN() ? this: new Ru( - this._hi, -this._lo)
},
Ru.prototype.clone = function() {},
Ru.prototype.multiply = function() {
if (arguments[0] instanceof Ru) {
var t = arguments[0];
return t.isNaN() ? Ru.createNaN() : Ru.copy(this).selfMultiply(t)
}
if ("number" == typeof arguments[0]) {
var e = arguments[0];
return vu.isNaN(e) ? Ru.createNaN() : Ru.copy(this).selfMultiply(e, 0)
}
},
Ru.prototype.isNaN = function() {
return vu.isNaN(this._hi)
},
Ru.prototype.intValue = function() {
return Math.trunc(this._hi)
},
Ru.prototype.toString = function() {
var t = Ru.magnitude(this._hi);
return t >= -3 && t <= 20 ? this.toStandardNotation() : this.toSciNotation()
},
Ru.prototype.toStandardNotation = function() {
var t = this.getSpecialNumberString();
if (null !== t) return t;
var e = new Array(1).fill(null),
n = this.extractSignificantDigits(!0, e),
r = e[0] + 1,
i = n;
if ("." === n.charAt(0)) i = "0" + n;
else if (r < 0) i = "0." + Ru.stringOfChar("0", -r) + n;
else if ( - 1 === n.indexOf(".")) {
var o = r - n.length;
i = n + Ru.stringOfChar("0", o) + ".0"
}
return this.isNegative() ? "-" + i: i
},
Ru.prototype.reciprocal = function() {
var t = null,
e = null,
n = null,
r = null,
i = null,
o = null,
s = null,
a = null;
e = (i = 1 / this._hi) - (t = (o = Ru.SPLIT * i) - (t = o - i)),
n = (a = Ru.SPLIT * this._hi) - this._hi;
var u = i + (o = (1 - (s = i * this._hi) - (a = t * (n = a - n) - s + t * (r = this._hi - n) + e * n + e * r) - i * this._lo) / this._hi);
return new Ru(u, i - u + o)
},
Ru.prototype.toSciNotation = function() {
if (this.isZero()) return Ru.SCI_NOT_ZERO;
var t = this.getSpecialNumberString();
if (null !== t) return t;
var e = new Array(1).fill(null),
n = this.extractSignificantDigits(!1, e),
r = Ru.SCI_NOT_EXPONENT_CHAR + e[0];
if ("0" === n.charAt(0)) throw new Error("Found leading zero: " + n);
var i = "";
n.length > 1 && (i = n.substring(1));
var o = n.charAt(0) + "." + i;
return this.isNegative() ? "-" + o + r: o + r
},
Ru.prototype.abs = function() {
return this.isNaN() ? Ru.NaN: this.isNegative() ? this.negate() : new Ru(this)
},
Ru.prototype.isPositive = function() {
return (this._hi > 0 || 0 === this._hi) && this._lo > 0
},
Ru.prototype.lt = function(t) {
return (this._hi < t._hi || this._hi === t._hi) && this._lo < t._lo
},
Ru.prototype.add = function() {
if (arguments[0] instanceof Ru) {
var t = arguments[0];
return Ru.copy(this).selfAdd(t)
}
if ("number" == typeof arguments[0]) {
var e = arguments[0];
return Ru.copy(this).selfAdd(e)
}
},
Ru.prototype.init = function() {
if (1 === arguments.length) {
if ("number" == typeof arguments[0]) {
var t = arguments[0];
this._hi = t,
this._lo = 0
} else if (arguments[0] instanceof Ru) {
var e = arguments[0];
this._hi = e._hi,
this._lo = e._lo
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
this._hi = n,
this._lo = r
}
},
Ru.prototype.gt = function(t) {
return (this._hi > t._hi || this._hi === t._hi) && this._lo > t._lo
},
Ru.prototype.isNegative = function() {
return (this._hi < 0 || 0 === this._hi) && this._lo < 0
},
Ru.prototype.trunc = function() {
return this.isNaN() ? Ru.NaN: this.isPositive() ? this.floor() : this.ceil()
},
Ru.prototype.signum = function() {
return this._hi > 0 ? 1 : this._hi < 0 ? -1 : this._lo > 0 ? 1 : this._lo < 0 ? -1 : 0
},
Ru.prototype.interfaces_ = function() {
return [Pi, _u, wu]
},
Ru.prototype.getClass = function() {
return Ru
},
Ru.sqr = function(t) {
return Ru.valueOf(t).selfMultiply(t)
},
Ru.valueOf = function() {
if ("string" == typeof arguments[0]) {
var t = arguments[0];
return Ru.parse(t)
}
if ("number" == typeof arguments[0]) {
var e = arguments[0];
return new Ru(e)
}
},
Ru.sqrt = function(t) {
return Ru.valueOf(t).sqrt()
},
Ru.parse = function(t) {
for (var e = 0,
n = t.length; Tu.isWhitespace(t.charAt(e));) e++;
var r = !1;
if (e < n) {
var i = t.charAt(e);
"-" !== i && "+" !== i || (e++, "-" === i && (r = !0))
}
for (var o = new Ru,
s = 0,
a = 0,
u = 0; ! (e >= n);) {
var c = t.charAt(e);
if (e++, Tu.isDigit(c)) {
var l = c - "0";
o.selfMultiply(Ru.TEN),
o.selfAdd(l),
s++
} else {
if ("." !== c) {
if ("e" === c || "E" === c) {
var h = t.substring(e);
try {
u = Ou.parseInt(h)
} catch(e) {
throw e instanceof Error ? new Error("Invalid exponent " + h + " in string " + t) : e
}
break
}
throw new Error("Unexpected character '" + c + "' at position " + e + " in string " + t)
}
a = s
}
}
var f = o,
p = s - a - u;
if (0 === p) f = o;
else if (p > 0) {
var d = Ru.TEN.pow(p);
f = o.divide(d)
} else if (p < 0) {
var g = Ru.TEN.pow( - p);
f = o.multiply(g)
}
return r ? f.negate() : f
},
Ru.createNaN = function() {
return new Ru(vu.NaN, vu.NaN)
},
Ru.copy = function(t) {
return new Ru(t)
},
Ru.magnitude = function(t) {
var e = Math.abs(t),
n = Math.log(e) / Math.log(10),
r = Math.trunc(Math.floor(n));
return 10 * Math.pow(10, r) <= e && (r += 1),
r
},
Ru.stringOfChar = function(t, e) {
for (var n = new Au,
r = 0; r < e; r++) n.append(t);
return n.toString()
},
Du.PI.get = function() {
return new Ru(3.141592653589793, 1.2246467991473532e-16)
},
Du.TWO_PI.get = function() {
return new Ru(6.283185307179586, 2.4492935982947064e-16)
},
Du.PI_2.get = function() {
return new Ru(1.5707963267948966, 6.123233995736766e-17)
},
Du.E.get = function() {
return new Ru(2.718281828459045, 1.4456468917292502e-16)
},
Du.NaN.get = function() {
return new Ru(vu.NaN, vu.NaN)
},
Du.EPS.get = function() {
return 1.23259516440783e-32
},
Du.SPLIT.get = function() {
return 134217729
},
Du.MAX_PRINT_DIGITS.get = function() {
return 32
},
Du.TEN.get = function() {
return Ru.valueOf(10)
},
Du.ONE.get = function() {
return Ru.valueOf(1)
},
Du.SCI_NOT_EXPONENT_CHAR.get = function() {
return "E"
},
Du.SCI_NOT_ZERO.get = function() {
return "0.0E0"
},
Object.defineProperties(Ru, Du);
var ku = function() {},
Fu = {
DP_SAFE_EPSILON: {
configurable: !0
}
};
ku.prototype.interfaces_ = function() {
return []
},
ku.prototype.getClass = function() {
return ku
},
ku.orientationIndex = function(t, e, n) {
var r = ku.orientationIndexFilter(t, e, n);
if (r <= 1) return r;
var i = Ru.valueOf(e.x).selfAdd( - t.x),
o = Ru.valueOf(e.y).selfAdd( - t.y),
s = Ru.valueOf(n.x).selfAdd( - e.x),
a = Ru.valueOf(n.y).selfAdd( - e.y);
return i.selfMultiply(a).selfSubtract(o.selfMultiply(s)).signum()
},
ku.signOfDet2x2 = function(t, e, n, r) {
return t.multiply(r).selfSubtract(e.multiply(n)).signum()
},
ku.intersection = function(t, e, n, r) {
var i = Ru.valueOf(r.y).selfSubtract(n.y).selfMultiply(Ru.valueOf(e.x).selfSubtract(t.x)),
o = Ru.valueOf(r.x).selfSubtract(n.x).selfMultiply(Ru.valueOf(e.y).selfSubtract(t.y)),
s = i.subtract(o),
a = Ru.valueOf(r.x).selfSubtract(n.x).selfMultiply(Ru.valueOf(t.y).selfSubtract(n.y)),
u = Ru.valueOf(r.y).selfSubtract(n.y).selfMultiply(Ru.valueOf(t.x).selfSubtract(n.x)),
c = a.subtract(u).selfDivide(s).doubleValue(),
l = Ru.valueOf(t.x).selfAdd(Ru.valueOf(e.x).selfSubtract(t.x).selfMultiply(c)).doubleValue(),
h = Ru.valueOf(e.x).selfSubtract(t.x).selfMultiply(Ru.valueOf(t.y).selfSubtract(n.y)),
f = Ru.valueOf(e.y).selfSubtract(t.y).selfMultiply(Ru.valueOf(t.x).selfSubtract(n.x)),
p = h.subtract(f).selfDivide(s).doubleValue(),
d = Ru.valueOf(n.y).selfAdd(Ru.valueOf(r.y).selfSubtract(n.y).selfMultiply(p)).doubleValue();
return new xu(l, d)
},
ku.orientationIndexFilter = function(t, e, n) {
var r = null,
i = (t.x - n.x) * (e.y - n.y),
o = (t.y - n.y) * (e.x - n.x),
s = i - o;
if (i > 0) {
if (o <= 0) return ku.signum(s);
r = i + o
} else {
if (! (i < 0)) return ku.signum(s);
if (o >= 0) return ku.signum(s);
r = -i - o
}
var a = ku.DP_SAFE_EPSILON * r;
return s >= a || -s >= a ? ku.signum(s) : 2
},
ku.signum = function(t) {
return t > 0 ? 1 : t < 0 ? -1 : 0
},
Fu.DP_SAFE_EPSILON.get = function() {
return 1e-15
},
Object.defineProperties(ku, Fu);
var ju = function() {},
qu = {
X: {
configurable: !0
},
Y: {
configurable: !0
},
Z: {
configurable: !0
},
M: {
configurable: !0
}
};
qu.X.get = function() {
return 0
},
qu.Y.get = function() {
return 1
},
qu.Z.get = function() {
return 2
},
qu.M.get = function() {
return 3
},
ju.prototype.setOrdinate = function(t, e, n) {},
ju.prototype.size = function() {},
ju.prototype.getOrdinate = function(t, e) {},
ju.prototype.getCoordinate = function() {},
ju.prototype.getCoordinateCopy = function(t) {},
ju.prototype.getDimension = function() {},
ju.prototype.getX = function(t) {},
ju.prototype.clone = function() {},
ju.prototype.expandEnvelope = function(t) {},
ju.prototype.copy = function() {},
ju.prototype.getY = function(t) {},
ju.prototype.toCoordinateArray = function() {},
ju.prototype.interfaces_ = function() {
return [wu]
},
ju.prototype.getClass = function() {
return ju
},
Object.defineProperties(ju, qu);
var Bu = function() {},
Gu = function(t) {
function e() {
t.call(this, "Projective point not representable on the Cartesian plane.")
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Bu),
Uu = function() {};
Uu.arraycopy = function(t, e, n, r, i) {
for (var o = 0,
s = e; s < e + i; s++) n[r + o] = t[s],
o++
},
Uu.getProperty = function(t) {
return {
"line.separator": "\n"
} [t]
};
var zu = function t() {
if (this.x = null, this.y = null, this.w = null, 0 === arguments.length) this.x = 0,
this.y = 0,
this.w = 1;
else if (1 === arguments.length) {
var e = arguments[0];
this.x = e.x,
this.y = e.y,
this.w = 1
} else if (2 === arguments.length) {
if ("number" == typeof arguments[0] && "number" == typeof arguments[1]) {
var n = arguments[0],
r = arguments[1];
this.x = n,
this.y = r,
this.w = 1
} else if (arguments[0] instanceof t && arguments[1] instanceof t) {
var i = arguments[0],
o = arguments[1];
this.x = i.y * o.w - o.y * i.w,
this.y = o.x * i.w - i.x * o.w,
this.w = i.x * o.y - o.x * i.y
} else if (arguments[0] instanceof xu && arguments[1] instanceof xu) {
var s = arguments[0],
a = arguments[1];
this.x = s.y - a.y,
this.y = a.x - s.x,
this.w = s.x * a.y - a.x * s.y
}
} else if (3 === arguments.length) {
var u = arguments[0],
c = arguments[1],
l = arguments[2];
this.x = u,
this.y = c,
this.w = l
} else if (4 === arguments.length) {
var h = arguments[0],
f = arguments[1],
p = arguments[2],
d = arguments[3],
g = h.y - f.y,
y = f.x - h.x,
v = h.x * f.y - f.x * h.y,
m = p.y - d.y,
_ = d.x - p.x,
w = p.x * d.y - d.x * p.y;
this.x = y * w - _ * v,
this.y = m * v - g * w,
this.w = g * _ - m * y
}
};
zu.prototype.getY = function() {
var t = this.y / this.w;
if (vu.isNaN(t) || vu.isInfinite(t)) throw new Gu;
return t
},
zu.prototype.getX = function() {
var t = this.x / this.w;
if (vu.isNaN(t) || vu.isInfinite(t)) throw new Gu;
return t
},
zu.prototype.getCoordinate = function() {
var t = new xu;
return t.x = this.getX(),
t.y = this.getY(),
t
},
zu.prototype.interfaces_ = function() {
return []
},
zu.prototype.getClass = function() {
return zu
},
zu.intersection = function(t, e, n, r) {
var i = t.y - e.y,
o = e.x - t.x,
s = t.x * e.y - e.x * t.y,
a = n.y - r.y,
u = r.x - n.x,
c = n.x * r.y - r.x * n.y,
l = i * u - a * o,
h = (o * c - u * s) / l,
f = (a * s - i * c) / l;
if (vu.isNaN(h) || vu.isInfinite(h) || vu.isNaN(f) || vu.isInfinite(f)) throw new Gu;
return new xu(h, f)
};
var Yu = function t() {
if (this._minx = null, this._maxx = null, this._miny = null, this._maxy = null, 0 === arguments.length) this.init();
else if (1 === arguments.length) {
if (arguments[0] instanceof xu) {
var e = arguments[0];
this.init(e.x, e.x, e.y, e.y)
} else if (arguments[0] instanceof t) {
var n = arguments[0];
this.init(n)
}
} else if (2 === arguments.length) {
var r = arguments[0],
i = arguments[1];
this.init(r.x, i.x, r.y, i.y)
} else if (4 === arguments.length) {
var o = arguments[0],
s = arguments[1],
a = arguments[2],
u = arguments[3];
this.init(o, s, a, u)
}
},
Xu = {
serialVersionUID: {
configurable: !0
}
};
Yu.prototype.getArea = function() {
return this.getWidth() * this.getHeight()
},
Yu.prototype.equals = function(t) {
if (! (t instanceof Yu)) return ! 1;
var e = t;
return this.isNull() ? e.isNull() : this._maxx === e.getMaxX() && this._maxy === e.getMaxY() && this._minx === e.getMinX() && this._miny === e.getMinY()
},
Yu.prototype.intersection = function(t) {
if (this.isNull() || t.isNull() || !this.intersects(t)) return new Yu;
var e = this._minx > t._minx ? this._minx: t._minx,
n = this._miny > t._miny ? this._miny: t._miny,
r = this._maxx < t._maxx ? this._maxx: t._maxx,
i = this._maxy < t._maxy ? this._maxy: t._maxy;
return new Yu(e, r, n, i)
},
Yu.prototype.isNull = function() {
return this._maxx < this._minx
},
Yu.prototype.getMaxX = function() {
return this._maxx
},
Yu.prototype.covers = function() {
if (1 === arguments.length) {
if (arguments[0] instanceof xu) {
var t = arguments[0];
return this.covers(t.x, t.y)
}
if (arguments[0] instanceof Yu) {
var e = arguments[0];
return ! this.isNull() && !e.isNull() && e.getMinX() >= this._minx && e.getMaxX() <= this._maxx && e.getMinY() >= this._miny && e.getMaxY() <= this._maxy
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
return ! this.isNull() && n >= this._minx && n <= this._maxx && r >= this._miny && r <= this._maxy
}
},
Yu.prototype.intersects = function() {
if (1 === arguments.length) {
if (arguments[0] instanceof Yu) {
var t = arguments[0];
return ! this.isNull() && !t.isNull() && !(t._minx > this._maxx || t._maxx < this._minx || t._miny > this._maxy || t._maxy < this._miny)
}
if (arguments[0] instanceof xu) {
var e = arguments[0];
return this.intersects(e.x, e.y)
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
return ! this.isNull() && !(n > this._maxx || n < this._minx || r > this._maxy || r < this._miny)
}
},
Yu.prototype.getMinY = function() {
return this._miny
},
Yu.prototype.getMinX = function() {
return this._minx
},
Yu.prototype.expandToInclude = function() {
if (1 === arguments.length) {
if (arguments[0] instanceof xu) {
var t = arguments[0];
this.expandToInclude(t.x, t.y)
} else if (arguments[0] instanceof Yu) {
var e = arguments[0];
if (e.isNull()) return null;
this.isNull() ? (this._minx = e.getMinX(), this._maxx = e.getMaxX(), this._miny = e.getMinY(), this._maxy = e.getMaxY()) : (e._minx < this._minx && (this._minx = e._minx), e._maxx > this._maxx && (this._maxx = e._maxx), e._miny < this._miny && (this._miny = e._miny), e._maxy > this._maxy && (this._maxy = e._maxy))
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
this.isNull() ? (this._minx = n, this._maxx = n, this._miny = r, this._maxy = r) : (n < this._minx && (this._minx = n), n > this._maxx && (this._maxx = n), r < this._miny && (this._miny = r), r > this._maxy && (this._maxy = r))
}
},
Yu.prototype.minExtent = function() {
if (this.isNull()) return 0;
var t = this.getWidth(),
e = this.getHeight();
return t < e ? t: e
},
Yu.prototype.getWidth = function() {
return this.isNull() ? 0 : this._maxx - this._minx
},
Yu.prototype.compareTo = function(t) {
var e = t;
return this.isNull() ? e.isNull() ? 0 : -1 : e.isNull() ? 1 : this._minx < e._minx ? -1 : this._minx > e._minx ? 1 : this._miny < e._miny ? -1 : this._miny > e._miny ? 1 : this._maxx < e._maxx ? -1 : this._maxx > e._maxx ? 1 : this._maxy < e._maxy ? -1 : this._maxy > e._maxy ? 1 : 0
},
Yu.prototype.translate = function(t, e) {
if (this.isNull()) return null;
this.init(this.getMinX() + t, this.getMaxX() + t, this.getMinY() + e, this.getMaxY() + e)
},
Yu.prototype.toString = function() {
return "Env[" + this._minx + " : " + this._maxx + ", " + this._miny + " : " + this._maxy + "]"
},
Yu.prototype.setToNull = function() {
this._minx = 0,
this._maxx = -1,
this._miny = 0,
this._maxy = -1
},
Yu.prototype.getHeight = function() {
return this.isNull() ? 0 : this._maxy - this._miny
},
Yu.prototype.maxExtent = function() {
if (this.isNull()) return 0;
var t = this.getWidth(),
e = this.getHeight();
return t > e ? t: e
},
Yu.prototype.expandBy = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.expandBy(t, t)
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (this.isNull()) return null;
this._minx -= e,
this._maxx += e,
this._miny -= n,
this._maxy += n,
(this._minx > this._maxx || this._miny > this._maxy) && this.setToNull()
}
},
Yu.prototype.contains = function() {
if (1 === arguments.length) {
if (arguments[0] instanceof Yu) {
var t = arguments[0];
return this.covers(t)
}
if (arguments[0] instanceof xu) {
var e = arguments[0];
return this.covers(e)
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
return this.covers(n, r)
}
},
Yu.prototype.centre = function() {
return this.isNull() ? null: new xu((this.getMinX() + this.getMaxX()) / 2, (this.getMinY() + this.getMaxY()) / 2)
},
Yu.prototype.init = function() {
if (0 === arguments.length) this.setToNull();
else if (1 === arguments.length) {
if (arguments[0] instanceof xu) {
var t = arguments[0];
this.init(t.x, t.x, t.y, t.y)
} else if (arguments[0] instanceof Yu) {
var e = arguments[0];
this._minx = e._minx,
this._maxx = e._maxx,
this._miny = e._miny,
this._maxy = e._maxy
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
this.init(n.x, r.x, n.y, r.y)
} else if (4 === arguments.length) {
var i = arguments[0],
o = arguments[1],
s = arguments[2],
a = arguments[3];
i < o ? (this._minx = i, this._maxx = o) : (this._minx = o, this._maxx = i),
s < a ? (this._miny = s, this._maxy = a) : (this._miny = a, this._maxy = s)
}
},
Yu.prototype.getMaxY = function() {
return this._maxy
},
Yu.prototype.distance = function(t) {
if (this.intersects(t)) return 0;
var e = 0;
this._maxx < t._minx ? e = t._minx - this._maxx: this._minx > t._maxx && (e = this._minx - t._maxx);
var n = 0;
return this._maxy < t._miny ? n = t._miny - this._maxy: this._miny > t._maxy && (n = this._miny - t._maxy),
0 === e ? n: 0 === n ? e: Math.sqrt(e * e + n * n)
},
Yu.prototype.hashCode = function() {
var t = 17;
return t = 37 * t + xu.hashCode(this._minx),
t = 37 * t + xu.hashCode(this._maxx),
t = 37 * t + xu.hashCode(this._miny),
t = 37 * t + xu.hashCode(this._maxy)
},
Yu.prototype.interfaces_ = function() {
return [_u, Pi]
},
Yu.prototype.getClass = function() {
return Yu
},
Yu.intersects = function() {
if (3 === arguments.length) {
var t = arguments[0],
e = arguments[1],
n = arguments[2];
return n.x >= (t.x < e.x ? t.x: e.x) && n.x <= (t.x > e.x ? t.x: e.x) && n.y >= (t.y < e.y ? t.y: e.y) && n.y <= (t.y > e.y ? t.y: e.y)
}
if (4 === arguments.length) {
var r = arguments[0],
i = arguments[1],
o = arguments[2],
s = arguments[3],
a = Math.min(o.x, s.x),
u = Math.max(o.x, s.x),
c = Math.min(r.x, i.x),
l = Math.max(r.x, i.x);
return ! (c > u || l < a || (a = Math.min(o.y, s.y), u = Math.max(o.y, s.y), c = Math.min(r.y, i.y), l = Math.max(r.y, i.y), c > u || l < a))
}
},
Xu.serialVersionUID.get = function() {
return 0x51845cd552189800
},
Object.defineProperties(Yu, Xu);
var Vu = {
typeStr: /^\s*(\w+)\s*\(\s*(.*)\s*\)\s*$/,
emptyTypeStr: /^\s*(\w+)\s*EMPTY\s*$/,
spaces: /\s+/,
parenComma: /\)\s*,\s*\(/,
doubleParenComma: /\)\s*\)\s*,\s*\(\s*\(/,
trimParens: /^\s*\(?(.*?)\)?\s*$/
},
Wu = function(t) {
this.geometryFactory = t || new yl
};
Wu.prototype.read = function(t) {
var e, n, r;
t = t.replace(/[\n\r]/g, " ");
var i = Vu.typeStr.exec(t);
if ( - 1 !== t.search("EMPTY") && ((i = Vu.emptyTypeStr.exec(t))[2] = void 0), i && (n = i[1].toLowerCase(), r = i[2], Ju[n] && (e = Ju[n].apply(this, [r]))), void 0 === e) throw new Error("Could not parse WKT " + t);
return e
},
Wu.prototype.write = function(t) {
return this.extractGeometry(t)
},
Wu.prototype.extractGeometry = function(t) {
var e = t.getGeometryType().toLowerCase();
if (!Hu[e]) return null;
var n = e.toUpperCase();
return t.isEmpty() ? n + " EMPTY": n + "(" + Hu[e].apply(this, [t]) + ")"
};
var Hu = {
coordinate: function(t) {
return t.x + " " + t.y
},
point: function(t) {
return Hu.coordinate.call(this, t._coordinates._coordinates[0])
},
multipoint: function(t) {
for (var e = [], n = 0, r = t._geometries.length; n < r; ++n) e.push("(" + Hu.point.apply(this, [t._geometries[n]]) + ")");
return e.join(",")
},
linestring: function(t) {
for (var e = [], n = 0, r = t._points._coordinates.length; n < r; ++n) e.push(Hu.coordinate.apply(this, [t._points._coordinates[n]]));
return e.join(",")
},
linearring: function(t) {
for (var e = [], n = 0, r = t._points._coordinates.length; n < r; ++n) e.push(Hu.coordinate.apply(this, [t._points._coordinates[n]]));
return e.join(",")
},
multilinestring: function(t) {
for (var e = [], n = 0, r = t._geometries.length; n < r; ++n) e.push("(" + Hu.linestring.apply(this, [t._geometries[n]]) + ")");
return e.join(",")
},
polygon: function(t) {
var e = [];
e.push("(" + Hu.linestring.apply(this, [t._shell]) + ")");
for (var n = 0,
r = t._holes.length; n < r; ++n) e.push("(" + Hu.linestring.apply(this, [t._holes[n]]) + ")");
return e.join(",")
},
multipolygon: function(t) {
for (var e = [], n = 0, r = t._geometries.length; n < r; ++n) e.push("(" + Hu.polygon.apply(this, [t._geometries[n]]) + ")");
return e.join(",")
},
geometrycollection: function(t) {
for (var e = [], n = 0, r = t._geometries.length; n < r; ++n) e.push(this.extractGeometry(t._geometries[n]));
return e.join(",")
}
},
Ju = {
point: function(t) {
if (void 0 === t) return this.geometryFactory.createPoint();
var e = t.trim().split(Vu.spaces);
return this.geometryFactory.createPoint(new xu(Number.parseFloat(e[0]), Number.parseFloat(e[1])))
},
multipoint: function(t) {
if (void 0 === t) return this.geometryFactory.createMultiPoint();
for (var e, n = t.trim().split(","), r = [], i = 0, o = n.length; i < o; ++i) e = n[i].replace(Vu.trimParens, "$1"),
r.push(Ju.point.apply(this, [e]));
return this.geometryFactory.createMultiPoint(r)
},
linestring: function(t) {
if (void 0 === t) return this.geometryFactory.createLineString();
for (var e, n = t.trim().split(","), r = [], i = 0, o = n.length; i < o; ++i) e = n[i].trim().split(Vu.spaces),
r.push(new xu(Number.parseFloat(e[0]), Number.parseFloat(e[1])));
return this.geometryFactory.createLineString(r)
},
linearring: function(t) {
if (void 0 === t) return this.geometryFactory.createLinearRing();
for (var e, n = t.trim().split(","), r = [], i = 0, o = n.length; i < o; ++i) e = n[i].trim().split(Vu.spaces),
r.push(new xu(Number.parseFloat(e[0]), Number.parseFloat(e[1])));
return this.geometryFactory.createLinearRing(r)
},
multilinestring: function(t) {
if (void 0 === t) return this.geometryFactory.createMultiLineString();
for (var e, n = t.trim().split(Vu.parenComma), r = [], i = 0, o = n.length; i < o; ++i) e = n[i].replace(Vu.trimParens, "$1"),
r.push(Ju.linestring.apply(this, [e]));
return this.geometryFactory.createMultiLineString(r)
},
polygon: function(t) {
if (void 0 === t) return this.geometryFactory.createPolygon();
for (var e, n, r, i, o = t.trim().split(Vu.parenComma), s = [], a = 0, u = o.length; a < u; ++a) e = o[a].replace(Vu.trimParens, "$1"),
n = Ju.linestring.apply(this, [e]),
r = this.geometryFactory.createLinearRing(n._points),
0 === a ? i = r: s.push(r);
return this.geometryFactory.createPolygon(i, s)
},
multipolygon: function(t) {
if (void 0 === t) return this.geometryFactory.createMultiPolygon();
for (var e, n = t.trim().split(Vu.doubleParenComma), r = [], i = 0, o = n.length; i < o; ++i) e = n[i].replace(Vu.trimParens, "$1"),
r.push(Ju.polygon.apply(this, [e]));
return this.geometryFactory.createMultiPolygon(r)
},
geometrycollection: function(t) {
if (void 0 === t) return this.geometryFactory.createGeometryCollection();
for (var e = (t = t.replace(/,\s*([A-Za-z])/g, "|$1")).trim().split("|"), n = [], r = 0, i = e.length; r < i; ++r) n.push(this.read(e[r]));
return this.geometryFactory.createGeometryCollection(n)
}
},
Zu = function(t) {
this.parser = new Wu(t)
};
Zu.prototype.write = function(t) {
return this.parser.write(t)
},
Zu.toLineString = function(t, e) {
if (2 !== arguments.length) throw new Error("Not implemented");
return "LINESTRING ( " + t.x + " " + t.y + ", " + e.x + " " + e.y + " )"
};
var Qu = function(t) {
function e(e) {
t.call(this, e),
this.name = "RuntimeException",
this.message = e,
this.stack = (new t).stack
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e
} (Error),
Ku = function(t) {
function e() {
if (t.call(this), 0 === arguments.length) t.call(this);
else if (1 === arguments.length) {
var e = arguments[0];
t.call(this, e)
}
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Qu),
$u = function() {};
$u.prototype.interfaces_ = function() {
return []
},
$u.prototype.getClass = function() {
return $u
},
$u.shouldNeverReachHere = function() {
if (0 === arguments.length) $u.shouldNeverReachHere(null);
else if (1 === arguments.length) {
var t = arguments[0];
throw new Ku("Should never reach here" + (null !== t ? ": " + t: ""))
}
},
$u.isTrue = function() {
var t, e;
if (1 === arguments.length) t = arguments[0],
$u.isTrue(t, null);
else if (2 === arguments.length && (t = arguments[0], e = arguments[1], !t)) throw null === e ? new Ku: new Ku(e)
},
$u.equals = function() {
var t, e, n;
if (2 === arguments.length) t = arguments[0],
e = arguments[1],
$u.equals(t, e, null);
else if (3 === arguments.length && (t = arguments[0], e = arguments[1], n = arguments[2], !e.equals(t))) throw new Ku("Expected " + t + " but encountered " + e + (null !== n ? ": " + n: ""))
};
var tc = function() {
this._result = null,
this._inputLines = Array(2).fill().map(function() {
return Array(2)
}),
this._intPt = new Array(2).fill(null),
this._intLineIndex = null,
this._isProper = null,
this._pa = null,
this._pb = null,
this._precisionModel = null,
this._intPt[0] = new xu,
this._intPt[1] = new xu,
this._pa = this._intPt[0],
this._pb = this._intPt[1],
this._result = 0
},
ec = {
DONT_INTERSECT: {
configurable: !0
},
DO_INTERSECT: {
configurable: !0
},
COLLINEAR: {
configurable: !0
},
NO_INTERSECTION: {
configurable: !0
},
POINT_INTERSECTION: {
configurable: !0
},
COLLINEAR_INTERSECTION: {
configurable: !0
}
};
tc.prototype.getIndexAlongSegment = function(t, e) {
return this.computeIntLineIndex(),
this._intLineIndex[t][e]
},
tc.prototype.getTopologySummary = function() {
var t = new Au;
return this.isEndPoint() && t.append(" endpoint"),
this._isProper && t.append(" proper"),
this.isCollinear() && t.append(" collinear"),
t.toString()
},
tc.prototype.computeIntersection = function(t, e, n, r) {
this._inputLines[0][0] = t,
this._inputLines[0][1] = e,
this._inputLines[1][0] = n,
this._inputLines[1][1] = r,
this._result = this.computeIntersect(t, e, n, r)
},
tc.prototype.getIntersectionNum = function() {
return this._result
},
tc.prototype.computeIntLineIndex = function() {
if (0 === arguments.length) null === this._intLineIndex && (this._intLineIndex = Array(2).fill().map(function() {
return Array(2)
}), this.computeIntLineIndex(0), this.computeIntLineIndex(1));
else if (1 === arguments.length) {
var t = arguments[0];
this.getEdgeDistance(t, 0) > this.getEdgeDistance(t, 1) ? (this._intLineIndex[t][0] = 0, this._intLineIndex[t][1] = 1) : (this._intLineIndex[t][0] = 1, this._intLineIndex[t][1] = 0)
}
},
tc.prototype.isProper = function() {
return this.hasIntersection() && this._isProper
},
tc.prototype.setPrecisionModel = function(t) {
this._precisionModel = t
},
tc.prototype.isInteriorIntersection = function() {
if (0 === arguments.length) return !! this.isInteriorIntersection(0) || !!this.isInteriorIntersection(1);
if (1 === arguments.length) {
for (var t = arguments[0], e = 0; e < this._result; e++) if (!this._intPt[e].equals2D(this._inputLines[t][0]) && !this._intPt[e].equals2D(this._inputLines[t][1])) return ! 0;
return ! 1
}
},
tc.prototype.getIntersection = function(t) {
return this._intPt[t]
},
tc.prototype.isEndPoint = function() {
return this.hasIntersection() && !this._isProper
},
tc.prototype.hasIntersection = function() {
return this._result !== tc.NO_INTERSECTION
},
tc.prototype.getEdgeDistance = function(t, e) {
return tc.computeEdgeDistance(this._intPt[e], this._inputLines[t][0], this._inputLines[t][1])
},
tc.prototype.isCollinear = function() {
return this._result === tc.COLLINEAR_INTERSECTION
},
tc.prototype.toString = function() {
return Zu.toLineString(this._inputLines[0][0], this._inputLines[0][1]) + " - " + Zu.toLineString(this._inputLines[1][0], this._inputLines[1][1]) + this.getTopologySummary()
},
tc.prototype.getEndpoint = function(t, e) {
return this._inputLines[t][e]
},
tc.prototype.isIntersection = function(t) {
for (var e = 0; e < this._result; e++) if (this._intPt[e].equals2D(t)) return ! 0;
return ! 1
},
tc.prototype.getIntersectionAlongSegment = function(t, e) {
return this.computeIntLineIndex(),
this._intPt[this._intLineIndex[t][e]]
},
tc.prototype.interfaces_ = function() {
return []
},
tc.prototype.getClass = function() {
return tc
},
tc.computeEdgeDistance = function(t, e, n) {
var r = Math.abs(n.x - e.x),
i = Math.abs(n.y - e.y),
o = -1;
if (t.equals(e)) o = 0;
else if (t.equals(n)) o = r > i ? r: i;
else {
var s = Math.abs(t.x - e.x),
a = Math.abs(t.y - e.y);
0 !== (o = r > i ? s: a) || t.equals(e) || (o = Math.max(s, a))
}
return $u.isTrue(!(0 === o && !t.equals(e)), "Bad distance calculation"),
o
},
tc.nonRobustComputeEdgeDistance = function(t, e, n) {
var r = t.x - e.x,
i = t.y - e.y,
o = Math.sqrt(r * r + i * i);
return $u.isTrue(!(0 === o && !t.equals(e)), "Invalid distance calculation"),
o
},
ec.DONT_INTERSECT.get = function() {
return 0
},
ec.DO_INTERSECT.get = function() {
return 1
},
ec.COLLINEAR.get = function() {
return 2
},
ec.NO_INTERSECTION.get = function() {
return 0
},
ec.POINT_INTERSECTION.get = function() {
return 1
},
ec.COLLINEAR_INTERSECTION.get = function() {
return 2
},
Object.defineProperties(tc, ec);
var nc = function(t) {
function e() {
t.apply(this, arguments)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.isInSegmentEnvelopes = function(t) {
var e = new Yu(this._inputLines[0][0], this._inputLines[0][1]),
n = new Yu(this._inputLines[1][0], this._inputLines[1][1]);
return e.contains(t) && n.contains(t)
},
e.prototype.computeIntersection = function() {
if (3 !== arguments.length) return t.prototype.computeIntersection.apply(this, arguments);
var e = arguments[0],
n = arguments[1],
r = arguments[2];
if (this._isProper = !1, Yu.intersects(n, r, e) && 0 === oc.orientationIndex(n, r, e) && 0 === oc.orientationIndex(r, n, e)) return this._isProper = !0,
(e.equals(n) || e.equals(r)) && (this._isProper = !1),
this._result = t.POINT_INTERSECTION,
null;
this._result = t.NO_INTERSECTION
},
e.prototype.normalizeToMinimum = function(t, e, n, r, i) {
i.x = this.smallestInAbsValue(t.x, e.x, n.x, r.x),
i.y = this.smallestInAbsValue(t.y, e.y, n.y, r.y),
t.x -= i.x,
t.y -= i.y,
e.x -= i.x,
e.y -= i.y,
n.x -= i.x,
n.y -= i.y,
r.x -= i.x,
r.y -= i.y
},
e.prototype.safeHCoordinateIntersection = function(t, n, r, i) {
var o = null;
try {
o = zu.intersection(t, n, r, i)
} catch(s) {
if (! (s instanceof Gu)) throw s;
o = e.nearestEndpoint(t, n, r, i)
}
return o
},
e.prototype.intersection = function(t, n, r, i) {
var o = this.intersectionWithNormalization(t, n, r, i);
return this.isInSegmentEnvelopes(o) || (o = new xu(e.nearestEndpoint(t, n, r, i))),
null !== this._precisionModel && this._precisionModel.makePrecise(o),
o
},
e.prototype.smallestInAbsValue = function(t, e, n, r) {
var i = t,
o = Math.abs(i);
return Math.abs(e) < o && (i = e, o = Math.abs(e)),
Math.abs(n) < o && (i = n, o = Math.abs(n)),
Math.abs(r) < o && (i = r),
i
},
e.prototype.checkDD = function(t, e, n, r, i) {
var o = ku.intersection(t, e, n, r),
s = this.isInSegmentEnvelopes(o);
Uu.out.println("DD in env = " + s + " --------------------- " + o),
i.distance(o) > 1e-4 && Uu.out.println("Distance = " + i.distance(o))
},
e.prototype.intersectionWithNormalization = function(t, e, n, r) {
var i = new xu(t),
o = new xu(e),
s = new xu(n),
a = new xu(r),
u = new xu;
this.normalizeToEnvCentre(i, o, s, a, u);
var c = this.safeHCoordinateIntersection(i, o, s, a);
return c.x += u.x,
c.y += u.y,
c
},
e.prototype.computeCollinearIntersection = function(e, n, r, i) {
var o = Yu.intersects(e, n, r),
s = Yu.intersects(e, n, i),
a = Yu.intersects(r, i, e),
u = Yu.intersects(r, i, n);
return o && s ? (this._intPt[0] = r, this._intPt[1] = i, t.COLLINEAR_INTERSECTION) : a && u ? (this._intPt[0] = e, this._intPt[1] = n, t.COLLINEAR_INTERSECTION) : o && a ? (this._intPt[0] = r, this._intPt[1] = e, !r.equals(e) || s || u ? t.COLLINEAR_INTERSECTION: t.POINT_INTERSECTION) : o && u ? (this._intPt[0] = r, this._intPt[1] = n, !r.equals(n) || s || a ? t.COLLINEAR_INTERSECTION: t.POINT_INTERSECTION) : s && a ? (this._intPt[0] = i, this._intPt[1] = e, !i.equals(e) || o || u ? t.COLLINEAR_INTERSECTION: t.POINT_INTERSECTION) : s && u ? (this._intPt[0] = i, this._intPt[1] = n, !i.equals(n) || o || a ? t.COLLINEAR_INTERSECTION: t.POINT_INTERSECTION) : t.NO_INTERSECTION
},
e.prototype.normalizeToEnvCentre = function(t, e, n, r, i) {
var o = t.x < e.x ? t.x: e.x,
s = t.y < e.y ? t.y: e.y,
a = t.x > e.x ? t.x: e.x,
u = t.y > e.y ? t.y: e.y,
c = n.x < r.x ? n.x: r.x,
l = n.y < r.y ? n.y: r.y,
h = n.x > r.x ? n.x: r.x,
f = n.y > r.y ? n.y: r.y,
p = ((o > c ? o: c) + (a < h ? a: h)) / 2,
d = ((s > l ? s: l) + (u < f ? u: f)) / 2;
i.x = p,
i.y = d,
t.x -= i.x,
t.y -= i.y,
e.x -= i.x,
e.y -= i.y,
n.x -= i.x,
n.y -= i.y,
r.x -= i.x,
r.y -= i.y
},
e.prototype.computeIntersect = function(e, n, r, i) {
if (this._isProper = !1, !Yu.intersects(e, n, r, i)) return t.NO_INTERSECTION;
var o = oc.orientationIndex(e, n, r),
s = oc.orientationIndex(e, n, i);
if (o > 0 && s > 0 || o < 0 && s < 0) return t.NO_INTERSECTION;
var a = oc.orientationIndex(r, i, e),
u = oc.orientationIndex(r, i, n);
return a > 0 && u > 0 || a < 0 && u < 0 ? t.NO_INTERSECTION: 0 === o && 0 === s && 0 === a && 0 === u ? this.computeCollinearIntersection(e, n, r, i) : (0 === o || 0 === s || 0 === a || 0 === u ? (this._isProper = !1, e.equals2D(r) || e.equals2D(i) ? this._intPt[0] = e: n.equals2D(r) || n.equals2D(i) ? this._intPt[0] = n: 0 === o ? this._intPt[0] = new xu(r) : 0 === s ? this._intPt[0] = new xu(i) : 0 === a ? this._intPt[0] = new xu(e) : 0 === u && (this._intPt[0] = new xu(n))) : (this._isProper = !0, this._intPt[0] = this.intersection(e, n, r, i)), t.POINT_INTERSECTION)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e.nearestEndpoint = function(t, e, n, r) {
var i = t,
o = oc.distancePointLine(t, n, r),
s = oc.distancePointLine(e, n, r);
return s < o && (o = s, i = e),
(s = oc.distancePointLine(n, t, e)) < o && (o = s, i = n),
(s = oc.distancePointLine(r, t, e)) < o && (o = s, i = r),
i
},
e
} (tc),
rc = function() {};
rc.prototype.interfaces_ = function() {
return []
},
rc.prototype.getClass = function() {
return rc
},
rc.orientationIndex = function(t, e, n) {
var r = e.x - t.x,
i = e.y - t.y,
o = n.x - e.x,
s = n.y - e.y;
return rc.signOfDet2x2(r, i, o, s)
},
rc.signOfDet2x2 = function(t, e, n, r) {
var i = null,
o = null,
s = null;
if (i = 1, 0 === t || 0 === r) return 0 === e || 0 === n ? 0 : e > 0 ? n > 0 ? -i: i: n > 0 ? i: -i;
if (0 === e || 0 === n) return r > 0 ? t > 0 ? i: -i: t > 0 ? -i: i;
if (e > 0 ? r > 0 ? e <= r || (i = -i, o = t, t = n, n = o, o = e, e = r, r = o) : e <= -r ? (i = -i, n = -n, r = -r) : (o = t, t = -n, n = o, o = e, e = -r, r = o) : r > 0 ? -e <= r ? (i = -i, t = -t, e = -e) : (o = -t, t = n, n = o, o = -e, e = r, r = o) : e >= r ? (t = -t, e = -e, n = -n, r = -r) : (i = -i, o = -t, t = -n, n = o, o = -e, e = -r, r = o), t > 0) {
if (! (n > 0)) return i;
if (! (t <= n)) return i
} else {
if (n > 0) return - i;
if (! (t >= n)) return - i;
i = -i,
t = -t,
n = -n
}
for (;;) {
if (s = Math.floor(n / t), n -= s * t, (r -= s * e) < 0) return - i;
if (r > e) return i;
if (t > n + n) {
if (e < r + r) return i
} else {
if (e > r + r) return - i;
n = t - n,
r = e - r,
i = -i
}
if (0 === r) return 0 === n ? 0 : -i;
if (0 === n) return i;
if (s = Math.floor(t / n), t -= s * n, (e -= s * r) < 0) return i;
if (e > r) return - i;
if (n > t + t) {
if (r < e + e) return - i
} else {
if (r > e + e) return i;
t = n - t,
e = r - e,
i = -i
}
if (0 === e) return 0 === t ? 0 : i;
if (0 === t) return - i
}
};
var ic = function() {
this._p = null,
this._crossingCount = 0,
this._isPointOnSegment = !1;
var t = arguments[0];
this._p = t
};
ic.prototype.countSegment = function(t, e) {
if (t.x < this._p.x && e.x < this._p.x) return null;
if (this._p.x === e.x && this._p.y === e.y) return this._isPointOnSegment = !0,
null;
if (t.y === this._p.y && e.y === this._p.y) {
var n = t.x,
r = e.x;
return n > r && (n = e.x, r = t.x),
this._p.x >= n && this._p.x <= r && (this._isPointOnSegment = !0),
null
}
if (t.y > this._p.y && e.y <= this._p.y || e.y > this._p.y && t.y <= this._p.y) {
var i = t.x - this._p.x,
o = t.y - this._p.y,
s = e.x - this._p.x,
a = e.y - this._p.y,
u = rc.signOfDet2x2(i, o, s, a);
if (0 === u) return this._isPointOnSegment = !0,
null;
a < o && (u = -u),
u > 0 && this._crossingCount++
}
},
ic.prototype.isPointInPolygon = function() {
return this.getLocation() !== Su.EXTERIOR
},
ic.prototype.getLocation = function() {
return this._isPointOnSegment ? Su.BOUNDARY: this._crossingCount % 2 == 1 ? Su.INTERIOR: Su.EXTERIOR
},
ic.prototype.isOnSegment = function() {
return this._isPointOnSegment
},
ic.prototype.interfaces_ = function() {
return []
},
ic.prototype.getClass = function() {
return ic
},
ic.locatePointInRing = function() {
if (arguments[0] instanceof xu && Nu(arguments[1], ju)) {
for (var t = arguments[0], e = arguments[1], n = new ic(t), r = new xu, i = new xu, o = 1; o < e.size(); o++) if (e.getCoordinate(o, r), e.getCoordinate(o - 1, i), n.countSegment(r, i), n.isOnSegment()) return n.getLocation();
return n.getLocation()
}
if (arguments[0] instanceof xu && arguments[1] instanceof Array) {
for (var s = arguments[0], a = arguments[1], u = new ic(s), c = 1; c < a.length; c++) {
var l = a[c],
h = a[c - 1];
if (u.countSegment(l, h), u.isOnSegment()) return u.getLocation()
}
return u.getLocation()
}
};
var oc = function() {},
sc = {
CLOCKWISE: {
configurable: !0
},
RIGHT: {
configurable: !0
},
COUNTERCLOCKWISE: {
configurable: !0
},
LEFT: {
configurable: !0
},
COLLINEAR: {
configurable: !0
},
STRAIGHT: {
configurable: !0
}
};
oc.prototype.interfaces_ = function() {
return []
},
oc.prototype.getClass = function() {
return oc
},
oc.orientationIndex = function(t, e, n) {
return ku.orientationIndex(t, e, n)
},
oc.signedArea = function() {
if (arguments[0] instanceof Array) {
var t = arguments[0];
if (t.length < 3) return 0;
for (var e = 0,
n = t[0].x, r = 1; r < t.length - 1; r++) {
var i = t[r].x - n,
o = t[r + 1].y;
e += i * (t[r - 1].y - o)
}
return e / 2
}
if (Nu(arguments[0], ju)) {
var s = arguments[0],
a = s.size();
if (a < 3) return 0;
var u = new xu,
c = new xu,
l = new xu;
s.getCoordinate(0, c),
s.getCoordinate(1, l);
var h = c.x;
l.x -= h;
for (var f = 0,
p = 1; p < a - 1; p++) u.y = c.y,
c.x = l.x,
c.y = l.y,
s.getCoordinate(p + 1, l),
l.x -= h,
f += c.x * (u.y - l.y);
return f / 2
}
},
oc.distanceLineLine = function(t, e, n, r) {
if (t.equals(e)) return oc.distancePointLine(t, n, r);
if (n.equals(r)) return oc.distancePointLine(r, t, e);
var i = !1;
if (Yu.intersects(t, e, n, r)) {
var o = (e.x - t.x) * (r.y - n.y) - (e.y - t.y) * (r.x - n.x);
if (0 === o) i = !0;
else {
var s = (t.y - n.y) * (r.x - n.x) - (t.x - n.x) * (r.y - n.y),
a = ((t.y - n.y) * (e.x - t.x) - (t.x - n.x) * (e.y - t.y)) / o,
u = s / o; (u < 0 || u > 1 || a < 0 || a > 1) && (i = !0)
}
} else i = !0;
return i ? Pu.min(oc.distancePointLine(t, n, r), oc.distancePointLine(e, n, r), oc.distancePointLine(n, t, e), oc.distancePointLine(r, t, e)) : 0
},
oc.isPointInRing = function(t, e) {
return oc.locatePointInRing(t, e) !== Su.EXTERIOR
},
oc.computeLength = function(t) {
var e = t.size();
if (e <= 1) return 0;
var n = 0,
r = new xu;
t.getCoordinate(0, r);
for (var i = r.x,
o = r.y,
s = 1; s < e; s++) {
t.getCoordinate(s, r);
var a = r.x,
u = r.y,
c = a - i,
l = u - o;
n += Math.sqrt(c * c + l * l),
i = a,
o = u
}
return n
},
oc.isCCW = function(t) {
var e = t.length - 1;
if (e < 3) throw new yu("Ring has fewer than 4 points, so orientation cannot be determined");
for (var n = t[0], r = 0, i = 1; i <= e; i++) {
var o = t[i];
o.y > n.y && (n = o, r = i)
}
var s = r;
do { (s -= 1) < 0 && (s = e)
} while ( t [ s ].equals2D(n) && s !== r);
var a = r;
do {
a = (a + 1) % e
} while ( t [ a ].equals2D(n) && a !== r);
var u = t[s],
c = t[a];
if (u.equals2D(n) || c.equals2D(n) || u.equals2D(c)) return ! 1;
var l = oc.computeOrientation(u, n, c);
return 0 === l ? u.x > c.x: l > 0
},
oc.locatePointInRing = function(t, e) {
return ic.locatePointInRing(t, e)
},
oc.distancePointLinePerpendicular = function(t, e, n) {
var r = (n.x - e.x) * (n.x - e.x) + (n.y - e.y) * (n.y - e.y),
i = ((e.y - t.y) * (n.x - e.x) - (e.x - t.x) * (n.y - e.y)) / r;
return Math.abs(i) * Math.sqrt(r)
},
oc.computeOrientation = function(t, e, n) {
return oc.orientationIndex(t, e, n)
},
oc.distancePointLine = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
if (0 === e.length) throw new yu("Line array must contain at least one vertex");
for (var n = t.distance(e[0]), r = 0; r < e.length - 1; r++) {
var i = oc.distancePointLine(t, e[r], e[r + 1]);
i < n && (n = i)
}
return n
}
if (3 === arguments.length) {
var o = arguments[0],
s = arguments[1],
a = arguments[2];
if (s.x === a.x && s.y === a.y) return o.distance(s);
var u = (a.x - s.x) * (a.x - s.x) + (a.y - s.y) * (a.y - s.y),
c = ((o.x - s.x) * (a.x - s.x) + (o.y - s.y) * (a.y - s.y)) / u;
if (c <= 0) return o.distance(s);
if (c >= 1) return o.distance(a);
var l = ((s.y - o.y) * (a.x - s.x) - (s.x - o.x) * (a.y - s.y)) / u;
return Math.abs(l) * Math.sqrt(u)
}
},
oc.isOnLine = function(t, e) {
for (var n = new nc,
r = 1; r < e.length; r++) {
var i = e[r - 1],
o = e[r];
if (n.computeIntersection(t, i, o), n.hasIntersection()) return ! 0
}
return ! 1
},
sc.CLOCKWISE.get = function() {
return - 1
},
sc.RIGHT.get = function() {
return oc.CLOCKWISE
},
sc.COUNTERCLOCKWISE.get = function() {
return 1
},
sc.LEFT.get = function() {
return oc.COUNTERCLOCKWISE
},
sc.COLLINEAR.get = function() {
return 0
},
sc.STRAIGHT.get = function() {
return oc.COLLINEAR
},
Object.defineProperties(oc, sc);
var ac = function() {};
ac.prototype.filter = function(t) {},
ac.prototype.interfaces_ = function() {
return []
},
ac.prototype.getClass = function() {
return ac
};
var uc = function() {
var t = arguments[0];
this._envelope = null,
this._factory = null,
this._SRID = null,
this._userData = null,
this._factory = t,
this._SRID = t.getSRID()
},
cc = {
serialVersionUID: {
configurable: !0
},
SORTINDEX_POINT: {
configurable: !0
},
SORTINDEX_MULTIPOINT: {
configurable: !0
},
SORTINDEX_LINESTRING: {
configurable: !0
},
SORTINDEX_LINEARRING: {
configurable: !0
},
SORTINDEX_MULTILINESTRING: {
configurable: !0
},
SORTINDEX_POLYGON: {
configurable: !0
},
SORTINDEX_MULTIPOLYGON: {
configurable: !0
},
SORTINDEX_GEOMETRYCOLLECTION: {
configurable: !0
},
geometryChangedFilter: {
configurable: !0
}
};
uc.prototype.isGeometryCollection = function() {
return this.getSortIndex() === uc.SORTINDEX_GEOMETRYCOLLECTION
},
uc.prototype.getFactory = function() {
return this._factory
},
uc.prototype.getGeometryN = function(t) {
return this
},
uc.prototype.getArea = function() {
return 0
},
uc.prototype.isRectangle = function() {
return ! 1
},
uc.prototype.equals = function() {
if (arguments[0] instanceof uc) {
var t = arguments[0];
return null !== t && this.equalsTopo(t)
}
if (arguments[0] instanceof Object) {
var e = arguments[0];
if (! (e instanceof uc)) return ! 1;
var n = e;
return this.equalsExact(n)
}
},
uc.prototype.equalsExact = function(t) {
return this === t || this.equalsExact(t, 0)
},
uc.prototype.geometryChanged = function() {
this.apply(uc.geometryChangedFilter)
},
uc.prototype.geometryChangedAction = function() {
this._envelope = null
},
uc.prototype.equalsNorm = function(t) {
return null !== t && this.norm().equalsExact(t.norm())
},
uc.prototype.getLength = function() {
return 0
},
uc.prototype.getNumGeometries = function() {
return 1
},
uc.prototype.compareTo = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = t;
return this.getSortIndex() !== e.getSortIndex() ? this.getSortIndex() - e.getSortIndex() : this.isEmpty() && e.isEmpty() ? 0 : this.isEmpty() ? -1 : e.isEmpty() ? 1 : this.compareToSameClass(t)
}
if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
return this.getSortIndex() !== n.getSortIndex() ? this.getSortIndex() - n.getSortIndex() : this.isEmpty() && n.isEmpty() ? 0 : this.isEmpty() ? -1 : n.isEmpty() ? 1 : this.compareToSameClass(n, r)
}
},
uc.prototype.getUserData = function() {
return this._userData
},
uc.prototype.getSRID = function() {
return this._SRID
},
uc.prototype.getEnvelope = function() {
return this.getFactory().toGeometry(this.getEnvelopeInternal())
},
uc.prototype.checkNotGeometryCollection = function(t) {
if (t.getSortIndex() === uc.SORTINDEX_GEOMETRYCOLLECTION) throw new yu("This method does not support GeometryCollection arguments")
},
uc.prototype.equal = function(t, e, n) {
return 0 === n ? t.equals(e) : t.distance(e) <= n
},
uc.prototype.norm = function() {
var t = this.copy();
return t.normalize(),
t
},
uc.prototype.getPrecisionModel = function() {
return this._factory.getPrecisionModel()
},
uc.prototype.getEnvelopeInternal = function() {
return null === this._envelope && (this._envelope = this.computeEnvelopeInternal()),
new Yu(this._envelope)
},
uc.prototype.setSRID = function(t) {
this._SRID = t
},
uc.prototype.setUserData = function(t) {
this._userData = t
},
uc.prototype.compare = function(t, e) {
for (var n = t.iterator(), r = e.iterator(); n.hasNext() && r.hasNext();) {
var i = n.next(),
o = r.next(),
s = i.compareTo(o);
if (0 !== s) return s
}
return n.hasNext() ? 1 : r.hasNext() ? -1 : 0
},
uc.prototype.hashCode = function() {
return this.getEnvelopeInternal().hashCode()
},
uc.prototype.isGeometryCollectionOrDerived = function() {
return this.getSortIndex() === uc.SORTINDEX_GEOMETRYCOLLECTION || this.getSortIndex() === uc.SORTINDEX_MULTIPOINT || this.getSortIndex() === uc.SORTINDEX_MULTILINESTRING || this.getSortIndex() === uc.SORTINDEX_MULTIPOLYGON
},
uc.prototype.interfaces_ = function() {
return [wu, _u, Pi]
},
uc.prototype.getClass = function() {
return uc
},
uc.hasNonEmptyElements = function(t) {
for (var e = 0; e < t.length; e++) if (!t[e].isEmpty()) return ! 0;
return ! 1
},
uc.hasNullElements = function(t) {
for (var e = 0; e < t.length; e++) if (null === t[e]) return ! 0;
return ! 1
},
cc.serialVersionUID.get = function() {
return 0x799ea46522854c00
},
cc.SORTINDEX_POINT.get = function() {
return 0
},
cc.SORTINDEX_MULTIPOINT.get = function() {
return 1
},
cc.SORTINDEX_LINESTRING.get = function() {
return 2
},
cc.SORTINDEX_LINEARRING.get = function() {
return 3
},
cc.SORTINDEX_MULTILINESTRING.get = function() {
return 4
},
cc.SORTINDEX_POLYGON.get = function() {
return 5
},
cc.SORTINDEX_MULTIPOLYGON.get = function() {
return 6
},
cc.SORTINDEX_GEOMETRYCOLLECTION.get = function() {
return 7
},
cc.geometryChangedFilter.get = function() {
return lc
},
Object.defineProperties(uc, cc);
var lc = function() {};
lc.interfaces_ = function() {
return [ac]
},
lc.filter = function(t) {
t.geometryChangedAction()
};
var hc = function() {};
hc.prototype.filter = function(t) {},
hc.prototype.interfaces_ = function() {
return []
},
hc.prototype.getClass = function() {
return hc
};
var fc = function() {},
pc = {
Mod2BoundaryNodeRule: {
configurable: !0
},
EndPointBoundaryNodeRule: {
configurable: !0
},
MultiValentEndPointBoundaryNodeRule: {
configurable: !0
},
MonoValentEndPointBoundaryNodeRule: {
configurable: !0
},
MOD2_BOUNDARY_RULE: {
configurable: !0
},
ENDPOINT_BOUNDARY_RULE: {
configurable: !0
},
MULTIVALENT_ENDPOINT_BOUNDARY_RULE: {
configurable: !0
},
MONOVALENT_ENDPOINT_BOUNDARY_RULE: {
configurable: !0
},
OGC_SFS_BOUNDARY_RULE: {
configurable: !0
}
};
fc.prototype.isInBoundary = function(t) {},
fc.prototype.interfaces_ = function() {
return []
},
fc.prototype.getClass = function() {
return fc
},
pc.Mod2BoundaryNodeRule.get = function() {
return dc
},
pc.EndPointBoundaryNodeRule.get = function() {
return gc
},
pc.MultiValentEndPointBoundaryNodeRule.get = function() {
return yc
},
pc.MonoValentEndPointBoundaryNodeRule.get = function() {
return vc
},
pc.MOD2_BOUNDARY_RULE.get = function() {
return new dc
},
pc.ENDPOINT_BOUNDARY_RULE.get = function() {
return new gc
},
pc.MULTIVALENT_ENDPOINT_BOUNDARY_RULE.get = function() {
return new yc
},
pc.MONOVALENT_ENDPOINT_BOUNDARY_RULE.get = function() {
return new vc
},
pc.OGC_SFS_BOUNDARY_RULE.get = function() {
return fc.MOD2_BOUNDARY_RULE
},
Object.defineProperties(fc, pc);
var dc = function() {};
dc.prototype.isInBoundary = function(t) {
return t % 2 == 1
},
dc.prototype.interfaces_ = function() {
return [fc]
},
dc.prototype.getClass = function() {
return dc
};
var gc = function() {};
gc.prototype.isInBoundary = function(t) {
return t > 0
},
gc.prototype.interfaces_ = function() {
return [fc]
},
gc.prototype.getClass = function() {
return gc
};
var yc = function() {};
yc.prototype.isInBoundary = function(t) {
return t > 1
},
yc.prototype.interfaces_ = function() {
return [fc]
},
yc.prototype.getClass = function() {
return yc
};
var vc = function() {};
vc.prototype.isInBoundary = function(t) {
return 1 === t
},
vc.prototype.interfaces_ = function() {
return [fc]
},
vc.prototype.getClass = function() {
return vc
};
var mc = function() {};
mc.prototype.add = function() {},
mc.prototype.addAll = function() {},
mc.prototype.isEmpty = function() {},
mc.prototype.iterator = function() {},
mc.prototype.size = function() {},
mc.prototype.toArray = function() {},
mc.prototype.remove = function() {};
var _c = function(t) {
function e(e) {
t.call(this),
this.message = e || ""
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
name: {
configurable: !0
}
};
return n.name.get = function() {
return "IndexOutOfBoundsException"
},
Object.defineProperties(e, n),
e
} (Error),
wc = function() {};
wc.prototype.hasNext = function() {},
wc.prototype.next = function() {},
wc.prototype.remove = function() {};
var bc = function(t) {
function e() {
t.apply(this, arguments)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.get = function() {},
e.prototype.set = function() {},
e.prototype.isEmpty = function() {},
e
} (mc); (Li.prototype = new Error).name = "NoSuchElementException";
var xc = function(t) {
function e() {
t.call(this),
this.array_ = [],
arguments[0] instanceof mc && this.addAll(arguments[0])
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.ensureCapacity = function() {},
e.prototype.interfaces_ = function() {
return [t, mc]
},
e.prototype.add = function(t) {
return 1 === arguments.length ? this.array_.push(t) : this.array_.splice(arguments[0], arguments[1]),
!0
},
e.prototype.clear = function() {
this.array_ = []
},
e.prototype.addAll = function(t) {
for (var e = t.iterator(); e.hasNext();) this.add(e.next());
return ! 0
},
e.prototype.set = function(t, e) {
var n = this.array_[t];
return this.array_[t] = e,
n
},
e.prototype.iterator = function() {
return new Ec(this)
},
e.prototype.get = function(t) {
if (t < 0 || t >= this.size()) throw new _c;
return this.array_[t]
},
e.prototype.isEmpty = function() {
return 0 === this.array_.length
},
e.prototype.size = function() {
return this.array_.length
},
e.prototype.toArray = function() {
for (var t = [], e = 0, n = this.array_.length; e < n; e++) t.push(this.array_[e]);
return t
},
e.prototype.remove = function(t) {
for (var e = !1,
n = 0,
r = this.array_.length; n < r; n++) if (this.array_[n] === t) {
this.array_.splice(n, 1),
e = !0;
break
}
return e
},
e
} (bc),
Ec = function(t) {
function e(e) {
t.call(this),
this.arrayList_ = e,
this.position_ = 0
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.next = function() {
if (this.position_ === this.arrayList_.size()) throw new Li;
return this.arrayList_.get(this.position_++)
},
e.prototype.hasNext = function() {
return this.position_ < this.arrayList_.size()
},
e.prototype.set = function(t) {
return this.arrayList_.set(this.position_ - 1, t)
},
e.prototype.remove = function() {
this.arrayList_.remove(this.arrayList_.get(this.position_))
},
e
} (wc),
Mc = function(t) {
function e() {
if (t.call(this), 0 === arguments.length);
else if (1 === arguments.length) {
var e = arguments[0];
this.ensureCapacity(e.length),
this.add(e, !0)
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
this.ensureCapacity(n.length),
this.add(n, r)
}
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
coordArrayType: {
configurable: !0
}
};
return n.coordArrayType.get = function() {
return new Array(0).fill(null)
},
e.prototype.getCoordinate = function(t) {
return this.get(t)
},
e.prototype.addAll = function() {
if (2 === arguments.length) {
for (var e = arguments[0], n = arguments[1], r = !1, i = e.iterator(); i.hasNext();) this.add(i.next(), n),
r = !0;
return r
}
return t.prototype.addAll.apply(this, arguments)
},
e.prototype.clone = function() {
for (var e = t.prototype.clone.call(this), n = 0; n < this.size(); n++) e.add(n, this.get(n).copy());
return e
},
e.prototype.toCoordinateArray = function() {
return this.toArray(e.coordArrayType)
},
e.prototype.add = function() {
if (1 === arguments.length) {
var e = arguments[0];
t.prototype.add.call(this, e)
} else if (2 === arguments.length) {
if (arguments[0] instanceof Array && "boolean" == typeof arguments[1]) {
var n = arguments[0],
r = arguments[1];
return this.add(n, r, !0),
!0
}
if (arguments[0] instanceof xu && "boolean" == typeof arguments[1]) {
var i = arguments[0];
if (!arguments[1] && this.size() >= 1 && this.get(this.size() - 1).equals2D(i)) return null;
t.prototype.add.call(this, i)
} else if (arguments[0] instanceof Object && "boolean" == typeof arguments[1]) {
var o = arguments[0],
s = arguments[1];
return this.add(o, s),
!0
}
} else if (3 === arguments.length) {
if ("boolean" == typeof arguments[2] && arguments[0] instanceof Array && "boolean" == typeof arguments[1]) {
var a = arguments[0],
u = arguments[1];
if (arguments[2]) for (var c = 0; c < a.length; c++) this.add(a[c], u);
else for (var l = a.length - 1; l >= 0; l--) this.add(a[l], u);
return ! 0
}
if ("boolean" == typeof arguments[2] && Number.isInteger(arguments[0]) && arguments[1] instanceof xu) {
var h = arguments[0],
f = arguments[1];
if (!arguments[2]) {
var p = this.size();
if (p > 0) {
if (h > 0 && this.get(h - 1).equals2D(f)) return null;
if (h < p && this.get(h).equals2D(f)) return null
}
}
t.prototype.add.call(this, h, f)
}
} else if (4 === arguments.length) {
var d = arguments[0],
g = arguments[1],
y = arguments[2],
v = arguments[3],
m = 1;
y > v && (m = -1);
for (var _ = y; _ !== v; _ += m) this.add(d[_], g);
return ! 0
}
},
e.prototype.closeRing = function() {
this.size() > 0 && this.add(new xu(this.get(0)), !1)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
Object.defineProperties(e, n),
e
} (xc),
Ic = function() {},
Sc = {
ForwardComparator: {
configurable: !0
},
BidirectionalComparator: {
configurable: !0
},
coordArrayType: {
configurable: !0
}
};
Sc.ForwardComparator.get = function() {
return Cc
},
Sc.BidirectionalComparator.get = function() {
return Nc
},
Sc.coordArrayType.get = function() {
return new Array(0).fill(null)
},
Ic.prototype.interfaces_ = function() {
return []
},
Ic.prototype.getClass = function() {
return Ic
},
Ic.isRing = function(t) {
return ! (t.length < 4 || !t[0].equals2D(t[t.length - 1]))
},
Ic.ptNotInList = function(t, e) {
for (var n = 0; n < t.length; n++) {
var r = t[n];
if (Ic.indexOf(r, e) < 0) return r
}
return null
},
Ic.scroll = function(t, e) {
var n = Ic.indexOf(e, t);
if (n < 0) return null;
var r = new Array(t.length).fill(null);
Uu.arraycopy(t, n, r, 0, t.length - n),
Uu.arraycopy(t, 0, r, t.length - n, n),
Uu.arraycopy(r, 0, t, 0, t.length)
},
Ic.equals = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
if (t === e) return ! 0;
if (null === t || null === e) return ! 1;
if (t.length !== e.length) return ! 1;
for (var n = 0; n < t.length; n++) if (!t[n].equals(e[n])) return ! 1;
return ! 0
}
if (3 === arguments.length) {
var r = arguments[0],
i = arguments[1],
o = arguments[2];
if (r === i) return ! 0;
if (null === r || null === i) return ! 1;
if (r.length !== i.length) return ! 1;
for (var s = 0; s < r.length; s++) if (0 !== o.compare(r[s], i[s])) return ! 1;
return ! 0
}
},
Ic.intersection = function(t, e) {
for (var n = new Mc,
r = 0; r < t.length; r++) e.intersects(t[r]) && n.add(t[r], !0);
return n.toCoordinateArray()
},
Ic.hasRepeatedPoints = function(t) {
for (var e = 1; e < t.length; e++) if (t[e - 1].equals(t[e])) return ! 0;
return ! 1
},
Ic.removeRepeatedPoints = function(t) {
return Ic.hasRepeatedPoints(t) ? new Mc(t, !1).toCoordinateArray() : t
},
Ic.reverse = function(t) {
for (var e = t.length - 1,
n = Math.trunc(e / 2), r = 0; r <= n; r++) {
var i = t[r];
t[r] = t[e - r],
t[e - r] = i
}
},
Ic.removeNull = function(t) {
for (var e = 0,
n = 0; n < t.length; n++) null !== t[n] && e++;
var r = new Array(e).fill(null);
if (0 === e) return r;
for (var i = 0,
o = 0; o < t.length; o++) null !== t[o] && (r[i++] = t[o]);
return r
},
Ic.copyDeep = function() {
if (1 === arguments.length) {
for (var t = arguments[0], e = new Array(t.length).fill(null), n = 0; n < t.length; n++) e[n] = new xu(t[n]);
return e
}
if (5 === arguments.length) for (var r = arguments[0], i = arguments[1], o = arguments[2], s = arguments[3], a = arguments[4], u = 0; u < a; u++) o[s + u] = new xu(r[i + u])
},
Ic.isEqualReversed = function(t, e) {
for (var n = 0; n < t.length; n++) {
var r = t[n],
i = e[t.length - n - 1];
if (0 !== r.compareTo(i)) return ! 1
}
return ! 0
},
Ic.envelope = function(t) {
for (var e = new Yu,
n = 0; n < t.length; n++) e.expandToInclude(t[n]);
return e
},
Ic.toCoordinateArray = function(t) {
return t.toArray(Ic.coordArrayType)
},
Ic.atLeastNCoordinatesOrNothing = function(t, e) {
return e.length >= t ? e: []
},
Ic.indexOf = function(t, e) {
for (var n = 0; n < e.length; n++) if (t.equals(e[n])) return n;
return - 1
},
Ic.increasingDirection = function(t) {
for (var e = 0; e < Math.trunc(t.length / 2); e++) {
var n = t.length - 1 - e,
r = t[e].compareTo(t[n]);
if (0 !== r) return r
}
return 1
},
Ic.compare = function(t, e) {
for (var n = 0; n < t.length && n < e.length;) {
var r = t[n].compareTo(e[n]);
if (0 !== r) return r;
n++
}
return n < e.length ? -1 : n < t.length ? 1 : 0
},
Ic.minCoordinate = function(t) {
for (var e = null,
n = 0; n < t.length; n++)(null === e || e.compareTo(t[n]) > 0) && (e = t[n]);
return e
},
Ic.extract = function(t, e, n) {
e = Pu.clamp(e, 0, t.length);
var r = (n = Pu.clamp(n, -1, t.length)) - e + 1;
n < 0 && (r = 0),
e >= t.length && (r = 0),
n < e && (r = 0);
var i = new Array(r).fill(null);
if (0 === r) return i;
for (var o = 0,
s = e; s <= n; s++) i[o++] = t[s];
return i
},
Object.defineProperties(Ic, Sc);
var Cc = function() {};
Cc.prototype.compare = function(t, e) {
return Ic.compare(t, e)
},
Cc.prototype.interfaces_ = function() {
return [bu]
},
Cc.prototype.getClass = function() {
return Cc
};
var Nc = function() {};
Nc.prototype.compare = function(t, e) {
var n = t,
r = e;
if (n.length < r.length) return - 1;
if (n.length > r.length) return 1;
if (0 === n.length) return 0;
var i = Ic.compare(n, r);
return Ic.isEqualReversed(n, r) ? 0 : i
},
Nc.prototype.OLDcompare = function(t, e) {
var n = t,
r = e;
if (n.length < r.length) return - 1;
if (n.length > r.length) return 1;
if (0 === n.length) return 0;
for (var i = Ic.increasingDirection(n), o = Ic.increasingDirection(r), s = i > 0 ? 0 : n.length - 1, a = o > 0 ? 0 : n.length - 1, u = 0; u < n.length; u++) {
var c = n[s].compareTo(r[a]);
if (0 !== c) return c;
s += i,
a += o
}
return 0
},
Nc.prototype.interfaces_ = function() {
return [bu]
},
Nc.prototype.getClass = function() {
return Nc
};
var Pc = function() {};
Pc.prototype.get = function() {},
Pc.prototype.put = function() {},
Pc.prototype.size = function() {},
Pc.prototype.values = function() {},
Pc.prototype.entrySet = function() {};
var Lc = function(t) {
function e() {
t.apply(this, arguments)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e
} (Pc); (Ai.prototype = new Error).name = "OperationNotSupported",
(Oi.prototype = new mc).contains = function() {};
var Ac = function(t) {
function e() {
t.call(this),
this.array_ = [],
arguments[0] instanceof mc && this.addAll(arguments[0])
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.contains = function(t) {
for (var e = 0,
n = this.array_.length; e < n; e++) if (this.array_[e] === t) return ! 0;
return ! 1
},
e.prototype.add = function(t) {
return ! this.contains(t) && (this.array_.push(t), !0)
},
e.prototype.addAll = function(t) {
for (var e = t.iterator(); e.hasNext();) this.add(e.next());
return ! 0
},
e.prototype.remove = function(t) {
throw new Error
},
e.prototype.size = function() {
return this.array_.length
},
e.prototype.isEmpty = function() {
return 0 === this.array_.length
},
e.prototype.toArray = function() {
for (var t = [], e = 0, n = this.array_.length; e < n; e++) t.push(this.array_[e]);
return t
},
e.prototype.iterator = function() {
return new Oc(this)
},
e
} (Oi),
Oc = function(t) {
function e(e) {
t.call(this),
this.hashSet_ = e,
this.position_ = 0
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.next = function() {
if (this.position_ === this.hashSet_.size()) throw new Li;
return this.hashSet_.array_[this.position_++]
},
e.prototype.hasNext = function() {
return this.position_ < this.hashSet_.size()
},
e.prototype.remove = function() {
throw new Ai
},
e
} (wc),
Tc = 0; (ji.prototype = new Lc).get = function(t) {
for (var e = this.root_; null !== e;) {
var n = t.compareTo(e.key);
if (n < 0) e = e.left;
else {
if (! (n > 0)) return e.value;
e = e.right
}
}
return null
},
ji.prototype.put = function(t, e) {
if (null === this.root_) return this.root_ = {
key: t,
value: e,
left: null,
right: null,
parent: null,
color: Tc,
getValue: function() {
return this.value
},
getKey: function() {
return this.key
}
},
this.size_ = 1,
null;
var n, r, i = this.root_;
do {
if (n = i, (r = t.compareTo(i.key)) < 0) i = i.left;
else {
if (! (r > 0)) {
var o = i.value;
return i.value = e,
o
}
i = i.right
}
} while ( null !== i );
var s = {
key: t,
left: null,
right: null,
value: e,
parent: n,
color: Tc,
getValue: function() {
return this.value
},
getKey: function() {
return this.key
}
};
return r < 0 ? n.left = s: n.right = s,
this.fixAfterInsertion(s),
this.size_++,
null
},
ji.prototype.fixAfterInsertion = function(t) {
for (t.color = 1; null != t && t !== this.root_ && 1 === t.parent.color;) if (Ri(t) === ki(Ri(Ri(t)))) {
var e = Fi(Ri(Ri(t)));
1 === Ti(e) ? (Di(Ri(t), Tc), Di(e, Tc), Di(Ri(Ri(t)), 1), t = Ri(Ri(t))) : (t === Fi(Ri(t)) && (t = Ri(t), this.rotateLeft(t)), Di(Ri(t), Tc), Di(Ri(Ri(t)), 1), this.rotateRight(Ri(Ri(t))))
} else {
var n = ki(Ri(Ri(t)));
1 === Ti(n) ? (Di(Ri(t), Tc), Di(n, Tc), Di(Ri(Ri(t)), 1), t = Ri(Ri(t))) : (t === ki(Ri(t)) && (t = Ri(t), this.rotateRight(t)), Di(Ri(t), Tc), Di(Ri(Ri(t)), 1), this.rotateLeft(Ri(Ri(t))))
}
this.root_.color = Tc
},
ji.prototype.values = function() {
var t = new xc,
e = this.getFirstEntry();
if (null !== e) for (t.add(e.value); null !== (e = ji.successor(e));) t.add(e.value);
return t
},
ji.prototype.entrySet = function() {
var t = new Ac,
e = this.getFirstEntry();
if (null !== e) for (t.add(e); null !== (e = ji.successor(e));) t.add(e);
return t
},
ji.prototype.rotateLeft = function(t) {
if (null != t) {
var e = t.right;
t.right = e.left,
null != e.left && (e.left.parent = t),
e.parent = t.parent,
null === t.parent ? this.root_ = e: t.parent.left === t ? t.parent.left = e: t.parent.right = e,
e.left = t,
t.parent = e
}
},
ji.prototype.rotateRight = function(t) {
if (null != t) {
var e = t.left;
t.left = e.right,
null != e.right && (e.right.parent = t),
e.parent = t.parent,
null === t.parent ? this.root_ = e: t.parent.right === t ? t.parent.right = e: t.parent.left = e,
e.right = t,
t.parent = e
}
},
ji.prototype.getFirstEntry = function() {
var t = this.root_;
if (null != t) for (; null != t.left;) t = t.left;
return t
},
ji.successor = function(t) {
if (null === t) return null;
if (null !== t.right) {
for (var e = t.right; null !== e.left;) e = e.left;
return e
}
for (var n = t.parent,
r = t; null !== n && r === n.right;) r = n,
n = n.parent;
return n
},
ji.prototype.size = function() {
return this.size_
};
var Rc = function() {};
Rc.prototype.interfaces_ = function() {
return []
},
Rc.prototype.getClass = function() {
return Rc
},
qi.prototype = new Oi,
(Bi.prototype = new qi).contains = function(t) {
for (var e = 0,
n = this.array_.length; e < n; e++) if (0 === this.array_[e].compareTo(t)) return ! 0;
return ! 1
},
Bi.prototype.add = function(t) {
if (this.contains(t)) return ! 1;
for (var e = 0,
n = this.array_.length; e < n; e++) if (1 === this.array_[e].compareTo(t)) return this.array_.splice(e, 0, t),
!0;
return this.array_.push(t),
!0
},
Bi.prototype.addAll = function(t) {
for (var e = t.iterator(); e.hasNext();) this.add(e.next());
return ! 0
},
Bi.prototype.remove = function(t) {
throw new Ai
},
Bi.prototype.size = function() {
return this.array_.length
},
Bi.prototype.isEmpty = function() {
return 0 === this.array_.length
},
Bi.prototype.toArray = function() {
for (var t = [], e = 0, n = this.array_.length; e < n; e++) t.push(this.array_[e]);
return t
},
Bi.prototype.iterator = function() {
return new Dc(this)
};
var Dc = function(t) {
this.treeSet_ = t,
this.position_ = 0
};
Dc.prototype.next = function() {
if (this.position_ === this.treeSet_.size()) throw new Li;
return this.treeSet_.array_[this.position_++]
},
Dc.prototype.hasNext = function() {
return this.position_ < this.treeSet_.size()
},
Dc.prototype.remove = function() {
throw new Ai
};
var kc = function() {};
kc.sort = function() {
var t, e, n, r, i = arguments[0];
if (1 === arguments.length) r = function(t, e) {
return t.compareTo(e)
},
i.sort(r);
else if (2 === arguments.length) n = arguments[1],
r = function(t, e) {
return n.compare(t, e)
},
i.sort(r);
else if (3 === arguments.length) { (e = i.slice(arguments[1], arguments[2])).sort();
var o = i.slice(0, arguments[1]).concat(e, i.slice(arguments[2], i.length));
for (i.splice(0, i.length), t = 0; t < o.length; t++) i.push(o[t])
} else if (4 === arguments.length) for (e = i.slice(arguments[1], arguments[2]), n = arguments[3], r = function(t, e) {
return n.compare(t, e)
},
e.sort(r), o = i.slice(0, arguments[1]).concat(e, i.slice(arguments[2], i.length)), i.splice(0, i.length), t = 0; t < o.length; t++) i.push(o[t])
},
kc.asList = function(t) {
for (var e = new xc,
n = 0,
r = t.length; n < r; n++) e.add(t[n]);
return e
};
var Fc = function() {},
jc = {
P: {
configurable: !0
},
L: {
configurable: !0
},
A: {
configurable: !0
},
FALSE: {
configurable: !0
},
TRUE: {
configurable: !0
},
DONTCARE: {
configurable: !0
},
SYM_FALSE: {
configurable: !0
},
SYM_TRUE: {
configurable: !0
},
SYM_DONTCARE: {
configurable: !0
},
SYM_P: {
configurable: !0
},
SYM_L: {
configurable: !0
},
SYM_A: {
configurable: !0
}
};
jc.P.get = function() {
return 0
},
jc.L.get = function() {
return 1
},
jc.A.get = function() {
return 2
},
jc.FALSE.get = function() {
return - 1
},
jc.TRUE.get = function() {
return - 2
},
jc.DONTCARE.get = function() {
return - 3
},
jc.SYM_FALSE.get = function() {
return "F"
},
jc.SYM_TRUE.get = function() {
return "T"
},
jc.SYM_DONTCARE.get = function() {
return "*"
},
jc.SYM_P.get = function() {
return "0"
},
jc.SYM_L.get = function() {
return "1"
},
jc.SYM_A.get = function() {
return "2"
},
Fc.prototype.interfaces_ = function() {
return []
},
Fc.prototype.getClass = function() {
return Fc
},
Fc.toDimensionSymbol = function(t) {
switch (t) {
case Fc.FALSE:
return Fc.SYM_FALSE;
case Fc.TRUE:
return Fc.SYM_TRUE;
case Fc.DONTCARE:
return Fc.SYM_DONTCARE;
case Fc.P:
return Fc.SYM_P;
case Fc.L:
return Fc.SYM_L;
case Fc.A:
return Fc.SYM_A
}
throw new yu("Unknown dimension value: " + t)
},
Fc.toDimensionValue = function(t) {
switch (Tu.toUpperCase(t)) {
case Fc.SYM_FALSE:
return Fc.FALSE;
case Fc.SYM_TRUE:
return Fc.TRUE;
case Fc.SYM_DONTCARE:
return Fc.DONTCARE;
case Fc.SYM_P:
return Fc.P;
case Fc.SYM_L:
return Fc.L;
case Fc.SYM_A:
return Fc.A
}
throw new yu("Unknown dimension symbol: " + t)
},
Object.defineProperties(Fc, jc);
var qc = function() {};
qc.prototype.filter = function(t) {},
qc.prototype.interfaces_ = function() {
return []
},
qc.prototype.getClass = function() {
return qc
};
var Bc = function() {};
Bc.prototype.filter = function(t, e) {},
Bc.prototype.isDone = function() {},
Bc.prototype.isGeometryChanged = function() {},
Bc.prototype.interfaces_ = function() {
return []
},
Bc.prototype.getClass = function() {
return Bc
};
var Gc = function(t) {
function e(e, n) {
if (t.call(this, n), this._geometries = e || [], t.hasNullElements(this._geometries)) throw new yu("geometries must not contain null elements")
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
serialVersionUID: {
configurable: !0
}
};
return e.prototype.computeEnvelopeInternal = function() {
for (var t = new Yu,
e = 0; e < this._geometries.length; e++) t.expandToInclude(this._geometries[e].getEnvelopeInternal());
return t
},
e.prototype.getGeometryN = function(t) {
return this._geometries[t]
},
e.prototype.getSortIndex = function() {
return t.SORTINDEX_GEOMETRYCOLLECTION
},
e.prototype.getCoordinates = function() {
for (var t = new Array(this.getNumPoints()).fill(null), e = -1, n = 0; n < this._geometries.length; n++) for (var r = this._geometries[n].getCoordinates(), i = 0; i < r.length; i++) t[++e] = r[i];
return t
},
e.prototype.getArea = function() {
for (var t = 0,
e = 0; e < this._geometries.length; e++) t += this._geometries[e].getArea();
return t
},
e.prototype.equalsExact = function() {
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (!this.isEquivalentClass(e)) return ! 1;
var r = e;
if (this._geometries.length !== r._geometries.length) return ! 1;
for (var i = 0; i < this._geometries.length; i++) if (!this._geometries[i].equalsExact(r._geometries[i], n)) return ! 1;
return ! 0
}
return t.prototype.equalsExact.apply(this, arguments)
},
e.prototype.normalize = function() {
for (var t = 0; t < this._geometries.length; t++) this._geometries[t].normalize();
kc.sort(this._geometries)
},
e.prototype.getCoordinate = function() {
return this.isEmpty() ? null: this._geometries[0].getCoordinate()
},
e.prototype.getBoundaryDimension = function() {
for (var t = Fc.FALSE,
e = 0; e < this._geometries.length; e++) t = Math.max(t, this._geometries[e].getBoundaryDimension());
return t
},
e.prototype.getDimension = function() {
for (var t = Fc.FALSE,
e = 0; e < this._geometries.length; e++) t = Math.max(t, this._geometries[e].getDimension());
return t
},
e.prototype.getLength = function() {
for (var t = 0,
e = 0; e < this._geometries.length; e++) t += this._geometries[e].getLength();
return t
},
e.prototype.getNumPoints = function() {
for (var t = 0,
e = 0; e < this._geometries.length; e++) t += this._geometries[e].getNumPoints();
return t
},
e.prototype.getNumGeometries = function() {
return this._geometries.length
},
e.prototype.reverse = function() {
for (var t = this._geometries.length,
e = new Array(t).fill(null), n = 0; n < this._geometries.length; n++) e[n] = this._geometries[n].reverse();
return this.getFactory().createGeometryCollection(e)
},
e.prototype.compareToSameClass = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = new Bi(kc.asList(this._geometries)),
n = new Bi(kc.asList(t._geometries));
return this.compare(e, n)
}
if (2 === arguments.length) {
for (var r = arguments[0], i = arguments[1], o = r, s = this.getNumGeometries(), a = o.getNumGeometries(), u = 0; u < s && u < a;) {
var c = this.getGeometryN(u),
l = o.getGeometryN(u),
h = c.compareToSameClass(l, i);
if (0 !== h) return h;
u++
}
return u < s ? 1 : u < a ? -1 : 0
}
},
e.prototype.apply = function() {
if (Nu(arguments[0], hc)) for (var t = arguments[0], e = 0; e < this._geometries.length; e++) this._geometries[e].apply(t);
else if (Nu(arguments[0], Bc)) {
var n = arguments[0];
if (0 === this._geometries.length) return null;
for (var r = 0; r < this._geometries.length && (this._geometries[r].apply(n), !n.isDone()); r++);
n.isGeometryChanged() && this.geometryChanged()
} else if (Nu(arguments[0], qc)) {
var i = arguments[0];
i.filter(this);
for (var o = 0; o < this._geometries.length; o++) this._geometries[o].apply(i)
} else if (Nu(arguments[0], ac)) {
var s = arguments[0];
s.filter(this);
for (var a = 0; a < this._geometries.length; a++) this._geometries[a].apply(s)
}
},
e.prototype.getBoundary = function() {
return this.checkNotGeometryCollection(this),
$u.shouldNeverReachHere(),
null
},
e.prototype.clone = function() {
var e = t.prototype.clone.call(this);
e._geometries = new Array(this._geometries.length).fill(null);
for (var n = 0; n < this._geometries.length; n++) e._geometries[n] = this._geometries[n].clone();
return e
},
e.prototype.getGeometryType = function() {
return "GeometryCollection"
},
e.prototype.copy = function() {
for (var t = new Array(this._geometries.length).fill(null), n = 0; n < t.length; n++) t[n] = this._geometries[n].copy();
return new e(t, this._factory)
},
e.prototype.isEmpty = function() {
for (var t = 0; t < this._geometries.length; t++) if (!this._geometries[t].isEmpty()) return ! 1;
return ! 0
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
n.serialVersionUID.get = function() {
return - 0x4f07bcb1f857d800
},
Object.defineProperties(e, n),
e
} (uc),
Uc = function(t) {
function e() {
t.apply(this, arguments)
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
serialVersionUID: {
configurable: !0
}
};
return e.prototype.getSortIndex = function() {
return uc.SORTINDEX_MULTILINESTRING
},
e.prototype.equalsExact = function() {
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return !! this.isEquivalentClass(e) && t.prototype.equalsExact.call(this, e, n)
}
return t.prototype.equalsExact.apply(this, arguments)
},
e.prototype.getBoundaryDimension = function() {
return this.isClosed() ? Fc.FALSE: 0
},
e.prototype.isClosed = function() {
if (this.isEmpty()) return ! 1;
for (var t = 0; t < this._geometries.length; t++) if (!this._geometries[t].isClosed()) return ! 1;
return ! 0
},
e.prototype.getDimension = function() {
return 1
},
e.prototype.reverse = function() {
for (var t = this._geometries.length,
e = new Array(t).fill(null), n = 0; n < this._geometries.length; n++) e[t - 1 - n] = this._geometries[n].reverse();
return this.getFactory().createMultiLineString(e)
},
e.prototype.getBoundary = function() {
return new zc(this).getBoundary()
},
e.prototype.getGeometryType = function() {
return "MultiLineString"
},
e.prototype.copy = function() {
for (var t = new Array(this._geometries.length).fill(null), n = 0; n < t.length; n++) t[n] = this._geometries[n].copy();
return new e(t, this._factory)
},
e.prototype.interfaces_ = function() {
return [Rc]
},
e.prototype.getClass = function() {
return e
},
n.serialVersionUID.get = function() {
return 0x7155d2ab4afa8000
},
Object.defineProperties(e, n),
e
} (Gc),
zc = function() {
if (this._geom = null, this._geomFact = null, this._bnRule = null, this._endpointMap = null, 1 === arguments.length) {
var t = arguments[0],
e = fc.MOD2_BOUNDARY_RULE;
this._geom = t,
this._geomFact = t.getFactory(),
this._bnRule = e
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
this._geom = n,
this._geomFact = n.getFactory(),
this._bnRule = r
}
};
zc.prototype.boundaryMultiLineString = function(t) {
if (this._geom.isEmpty()) return this.getEmptyMultiPoint();
var e = this.computeBoundaryCoordinates(t);
return 1 === e.length ? this._geomFact.createPoint(e[0]) : this._geomFact.createMultiPointFromCoords(e)
},
zc.prototype.getBoundary = function() {
return this._geom instanceof Hc ? this.boundaryLineString(this._geom) : this._geom instanceof Uc ? this.boundaryMultiLineString(this._geom) : this._geom.getBoundary()
},
zc.prototype.boundaryLineString = function(t) {
return this._geom.isEmpty() ? this.getEmptyMultiPoint() : t.isClosed() ? this._bnRule.isInBoundary(2) ? t.getStartPoint() : this._geomFact.createMultiPoint() : this._geomFact.createMultiPoint([t.getStartPoint(), t.getEndPoint()])
},
zc.prototype.getEmptyMultiPoint = function() {
return this._geomFact.createMultiPoint()
},
zc.prototype.computeBoundaryCoordinates = function(t) {
var e = new xc;
this._endpointMap = new ji;
for (var n = 0; n < t.getNumGeometries(); n++) {
var r = t.getGeometryN(n);
0 !== r.getNumPoints() && (this.addEndpoint(r.getCoordinateN(0)), this.addEndpoint(r.getCoordinateN(r.getNumPoints() - 1)))
}
for (var i = this._endpointMap.entrySet().iterator(); i.hasNext();) {
var o = i.next(),
s = o.getValue().count;
this._bnRule.isInBoundary(s) && e.add(o.getKey())
}
return Ic.toCoordinateArray(e)
},
zc.prototype.addEndpoint = function(t) {
var e = this._endpointMap.get(t);
null === e && (e = new Yc, this._endpointMap.put(t, e)),
e.count++
},
zc.prototype.interfaces_ = function() {
return []
},
zc.prototype.getClass = function() {
return zc
},
zc.getBoundary = function() {
if (1 === arguments.length) {
var t = arguments[0];
return new zc(t).getBoundary()
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return new zc(e, n).getBoundary()
}
};
var Yc = function() {
this.count = null
};
Yc.prototype.interfaces_ = function() {
return []
},
Yc.prototype.getClass = function() {
return Yc
};
var Xc = function() {},
Vc = {
NEWLINE: {
configurable: !0
},
SIMPLE_ORDINATE_FORMAT: {
configurable: !0
}
};
Xc.prototype.interfaces_ = function() {
return []
},
Xc.prototype.getClass = function() {
return Xc
},
Xc.chars = function(t, e) {
for (var n = new Array(e).fill(null), r = 0; r < e; r++) n[r] = t;
return String(n)
},
Xc.getStackTrace = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = new
function() {},
n = new
function() {} (e);
return t.printStackTrace(n),
e.toString()
}
if (2 === arguments.length) {
for (var r = arguments[0], i = arguments[1], o = "", s = new
function() {} (new
function() {} (Xc.getStackTrace(r))), a = 0; a < i; a++) try {
o += s.readLine() + Xc.NEWLINE
} catch(t) {
if (! (t instanceof Gi)) throw t;
$u.shouldNeverReachHere()
}
return o
}
},
Xc.split = function(t, e) {
for (var n = e.length,
r = new xc,
i = "" + t,
o = i.indexOf(e); o >= 0;) {
var s = i.substring(0, o);
r.add(s),
o = (i = i.substring(o + n)).indexOf(e)
}
i.length > 0 && r.add(i);
for (var a = new Array(r.size()).fill(null), u = 0; u < a.length; u++) a[u] = r.get(u);
return a
},
Xc.toString = function() {
if (1 === arguments.length) {
var t = arguments[0];
return Xc.SIMPLE_ORDINATE_FORMAT.format(t)
}
},
Xc.spaces = function(t) {
return Xc.chars(" ", t)
},
Vc.NEWLINE.get = function() {
return Uu.getProperty("line.separator")
},
Vc.SIMPLE_ORDINATE_FORMAT.get = function() {
return new
function() {} ("0.#")
},
Object.defineProperties(Xc, Vc);
var Wc = function() {};
Wc.prototype.interfaces_ = function() {
return []
},
Wc.prototype.getClass = function() {
return Wc
},
Wc.copyCoord = function(t, e, n, r) {
for (var i = Math.min(t.getDimension(), n.getDimension()), o = 0; o < i; o++) n.setOrdinate(r, o, t.getOrdinate(e, o))
},
Wc.isRing = function(t) {
var e = t.size();
return 0 === e || !(e <= 3) && t.getOrdinate(0, ju.X) === t.getOrdinate(e - 1, ju.X) && t.getOrdinate(0, ju.Y) === t.getOrdinate(e - 1, ju.Y)
},
Wc.isEqual = function(t, e) {
var n = t.size();
if (n !== e.size()) return ! 1;
for (var r = Math.min(t.getDimension(), e.getDimension()), i = 0; i < n; i++) for (var o = 0; o < r; o++) {
var s = t.getOrdinate(i, o),
a = e.getOrdinate(i, o);
if (! (t.getOrdinate(i, o) === e.getOrdinate(i, o) || vu.isNaN(s) && vu.isNaN(a))) return ! 1
}
return ! 0
},
Wc.extend = function(t, e, n) {
var r = t.create(n, e.getDimension()),
i = e.size();
if (Wc.copy(e, 0, r, 0, i), i > 0) for (var o = i; o < n; o++) Wc.copy(e, i - 1, r, o, 1);
return r
},
Wc.reverse = function(t) {
for (var e = t.size() - 1, n = Math.trunc(e / 2), r = 0; r <= n; r++) Wc.swap(t, r, e - r)
},
Wc.swap = function(t, e, n) {
if (e === n) return null;
for (var r = 0; r < t.getDimension(); r++) {
var i = t.getOrdinate(e, r);
t.setOrdinate(e, r, t.getOrdinate(n, r)),
t.setOrdinate(n, r, i)
}
},
Wc.copy = function(t, e, n, r, i) {
for (var o = 0; o < i; o++) Wc.copyCoord(t, e + o, n, r + o)
},
Wc.toString = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = t.size();
if (0 === e) return "()";
var n = t.getDimension(),
r = new Au;
r.append("(");
for (var i = 0; i < e; i++) {
i > 0 && r.append(" ");
for (var o = 0; o < n; o++) o > 0 && r.append(","),
r.append(Xc.toString(t.getOrdinate(i, o)))
}
return r.append(")"),
r.toString()
}
},
Wc.ensureValidRing = function(t, e) {
var n = e.size();
return 0 === n ? e: n <= 3 ? Wc.createClosedRing(t, e, 4) : e.getOrdinate(0, ju.X) === e.getOrdinate(n - 1, ju.X) && e.getOrdinate(0, ju.Y) === e.getOrdinate(n - 1, ju.Y) ? e: Wc.createClosedRing(t, e, n + 1)
},
Wc.createClosedRing = function(t, e, n) {
var r = t.create(n, e.getDimension()),
i = e.size();
Wc.copy(e, 0, r, 0, i);
for (var o = i; o < n; o++) Wc.copy(e, 0, r, o, 1);
return r
};
var Hc = function(t) {
function e(e, n) {
t.call(this, n),
this._points = null,
this.init(e)
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
serialVersionUID: {
configurable: !0
}
};
return e.prototype.computeEnvelopeInternal = function() {
return this.isEmpty() ? new Yu: this._points.expandEnvelope(new Yu)
},
e.prototype.isRing = function() {
return this.isClosed() && this.isSimple()
},
e.prototype.getSortIndex = function() {
return t.SORTINDEX_LINESTRING
},
e.prototype.getCoordinates = function() {
return this._points.toCoordinateArray()
},
e.prototype.equalsExact = function() {
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (!this.isEquivalentClass(e)) return ! 1;
var r = e;
if (this._points.size() !== r._points.size()) return ! 1;
for (var i = 0; i < this._points.size(); i++) if (!this.equal(this._points.getCoordinate(i), r._points.getCoordinate(i), n)) return ! 1;
return ! 0
}
return t.prototype.equalsExact.apply(this, arguments)
},
e.prototype.normalize = function() {
for (var t = 0; t < Math.trunc(this._points.size() / 2); t++) {
var e = this._points.size() - 1 - t;
if (!this._points.getCoordinate(t).equals(this._points.getCoordinate(e))) return this._points.getCoordinate(t).compareTo(this._points.getCoordinate(e)) > 0 && Wc.reverse(this._points),
null
}
},
e.prototype.getCoordinate = function() {
return this.isEmpty() ? null: this._points.getCoordinate(0)
},
e.prototype.getBoundaryDimension = function() {
return this.isClosed() ? Fc.FALSE: 0
},
e.prototype.isClosed = function() {
return ! this.isEmpty() && this.getCoordinateN(0).equals2D(this.getCoordinateN(this.getNumPoints() - 1))
},
e.prototype.getEndPoint = function() {
return this.isEmpty() ? null: this.getPointN(this.getNumPoints() - 1)
},
e.prototype.getDimension = function() {
return 1
},
e.prototype.getLength = function() {
return oc.computeLength(this._points)
},
e.prototype.getNumPoints = function() {
return this._points.size()
},
e.prototype.reverse = function() {
var t = this._points.copy();
return Wc.reverse(t),
this.getFactory().createLineString(t)
},
e.prototype.compareToSameClass = function() {
if (1 === arguments.length) {
for (var t = arguments[0], e = 0, n = 0; e < this._points.size() && n < t._points.size();) {
var r = this._points.getCoordinate(e).compareTo(t._points.getCoordinate(n));
if (0 !== r) return r;
e++,
n++
}
return e < this._points.size() ? 1 : n < t._points.size() ? -1 : 0
}
if (2 === arguments.length) {
var i = arguments[0];
return arguments[1].compare(this._points, i._points)
}
},
e.prototype.apply = function() {
if (Nu(arguments[0], hc)) for (var t = arguments[0], e = 0; e < this._points.size(); e++) t.filter(this._points.getCoordinate(e));
else if (Nu(arguments[0], Bc)) {
var n = arguments[0];
if (0 === this._points.size()) return null;
for (var r = 0; r < this._points.size() && (n.filter(this._points, r), !n.isDone()); r++);
n.isGeometryChanged() && this.geometryChanged()
} else Nu(arguments[0], qc) ? arguments[0].filter(this) : Nu(arguments[0], ac) && arguments[0].filter(this)
},
e.prototype.getBoundary = function() {
return new zc(this).getBoundary()
},
e.prototype.isEquivalentClass = function(t) {
return t instanceof e
},
e.prototype.clone = function() {
var e = t.prototype.clone.call(this);
return e._points = this._points.clone(),
e
},
e.prototype.getCoordinateN = function(t) {
return this._points.getCoordinate(t)
},
e.prototype.getGeometryType = function() {
return "LineString"
},
e.prototype.copy = function() {
return new e(this._points.copy(), this._factory)
},
e.prototype.getCoordinateSequence = function() {
return this._points
},
e.prototype.isEmpty = function() {
return 0 === this._points.size()
},
e.prototype.init = function(t) {
if (null === t && (t = this.getFactory().getCoordinateSequenceFactory().create([])), 1 === t.size()) throw new yu("Invalid number of points in LineString (found " + t.size() + " - must be 0 or >= 2)");
this._points = t
},
e.prototype.isCoordinate = function(t) {
for (var e = 0; e < this._points.size(); e++) if (this._points.getCoordinate(e).equals(t)) return ! 0;
return ! 1
},
e.prototype.getStartPoint = function() {
return this.isEmpty() ? null: this.getPointN(0)
},
e.prototype.getPointN = function(t) {
return this.getFactory().createPoint(this._points.getCoordinate(t))
},
e.prototype.interfaces_ = function() {
return [Rc]
},
e.prototype.getClass = function() {
return e
},
n.serialVersionUID.get = function() {
return 0x2b2b51ba435c8e00
},
Object.defineProperties(e, n),
e
} (uc),
Jc = function() {};
Jc.prototype.interfaces_ = function() {
return []
},
Jc.prototype.getClass = function() {
return Jc
};
var Zc = function(t) {
function e(e, n) {
t.call(this, n),
this._coordinates = e || null,
this.init(this._coordinates)
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
serialVersionUID: {
configurable: !0
}
};
return e.prototype.computeEnvelopeInternal = function() {
if (this.isEmpty()) return new Yu;
var t = new Yu;
return t.expandToInclude(this._coordinates.getX(0), this._coordinates.getY(0)),
t
},
e.prototype.getSortIndex = function() {
return t.SORTINDEX_POINT
},
e.prototype.getCoordinates = function() {
return this.isEmpty() ? [] : [this.getCoordinate()]
},
e.prototype.equalsExact = function() {
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return !! this.isEquivalentClass(e) && (!(!this.isEmpty() || !e.isEmpty()) || this.isEmpty() === e.isEmpty() && this.equal(e.getCoordinate(), this.getCoordinate(), n))
}
return t.prototype.equalsExact.apply(this, arguments)
},
e.prototype.normalize = function() {},
e.prototype.getCoordinate = function() {
return 0 !== this._coordinates.size() ? this._coordinates.getCoordinate(0) : null
},
e.prototype.getBoundaryDimension = function() {
return Fc.FALSE
},
e.prototype.getDimension = function() {
return 0
},
e.prototype.getNumPoints = function() {
return this.isEmpty() ? 0 : 1
},
e.prototype.reverse = function() {
return this.copy()
},
e.prototype.getX = function() {
if (null === this.getCoordinate()) throw new Error("getX called on empty Point");
return this.getCoordinate().x
},
e.prototype.compareToSameClass = function() {
if (1 === arguments.length) {
var t = arguments[0];
return this.getCoordinate().compareTo(t.getCoordinate())
}
if (2 === arguments.length) {
var e = arguments[0];
return arguments[1].compare(this._coordinates, e._coordinates)
}
},
e.prototype.apply = function() {
if (Nu(arguments[0], hc)) {
var t = arguments[0];
if (this.isEmpty()) return null;
t.filter(this.getCoordinate())
} else if (Nu(arguments[0], Bc)) {
var e = arguments[0];
if (this.isEmpty()) return null;
e.filter(this._coordinates, 0),
e.isGeometryChanged() && this.geometryChanged()
} else Nu(arguments[0], qc) ? arguments[0].filter(this) : Nu(arguments[0], ac) && arguments[0].filter(this)
},
e.prototype.getBoundary = function() {
return this.getFactory().createGeometryCollection(null)
},
e.prototype.clone = function() {
var e = t.prototype.clone.call(this);
return e._coordinates = this._coordinates.clone(),
e
},
e.prototype.getGeometryType = function() {
return "Point"
},
e.prototype.copy = function() {
return new e(this._coordinates.copy(), this._factory)
},
e.prototype.getCoordinateSequence = function() {
return this._coordinates
},
e.prototype.getY = function() {
if (null === this.getCoordinate()) throw new Error("getY called on empty Point");
return this.getCoordinate().y
},
e.prototype.isEmpty = function() {
return 0 === this._coordinates.size()
},
e.prototype.init = function(t) {
null === t && (t = this.getFactory().getCoordinateSequenceFactory().create([])),
$u.isTrue(t.size() <= 1),
this._coordinates = t
},
e.prototype.isSimple = function() {
return ! 0
},
e.prototype.interfaces_ = function() {
return [Jc]
},
e.prototype.getClass = function() {
return e
},
n.serialVersionUID.get = function() {
return 0x44077bad161cbc00
},
Object.defineProperties(e, n),
e
} (uc),
Qc = function() {};
Qc.prototype.interfaces_ = function() {
return []
},
Qc.prototype.getClass = function() {
return Qc
};
var Kc = function(t) {
function e(e, n, r) {
if (t.call(this, r), this._shell = null, this._holes = null, null === e && (e = this.getFactory().createLinearRing()), null === n && (n = []), t.hasNullElements(n)) throw new yu("holes must not contain null elements");
if (e.isEmpty() && t.hasNonEmptyElements(n)) throw new yu("shell is empty but holes are not");
this._shell = e,
this._holes = n
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
serialVersionUID: {
configurable: !0
}
};
return e.prototype.computeEnvelopeInternal = function() {
return this._shell.getEnvelopeInternal()
},
e.prototype.getSortIndex = function() {
return t.SORTINDEX_POLYGON
},
e.prototype.getCoordinates = function() {
if (this.isEmpty()) return [];
for (var t = new Array(this.getNumPoints()).fill(null), e = -1, n = this._shell.getCoordinates(), r = 0; r < n.length; r++) t[++e] = n[r];
for (var i = 0; i < this._holes.length; i++) for (var o = this._holes[i].getCoordinates(), s = 0; s < o.length; s++) t[++e] = o[s];
return t
},
e.prototype.getArea = function() {
var t = 0;
t += Math.abs(oc.signedArea(this._shell.getCoordinateSequence()));
for (var e = 0; e < this._holes.length; e++) t -= Math.abs(oc.signedArea(this._holes[e].getCoordinateSequence()));
return t
},
e.prototype.isRectangle = function() {
if (0 !== this.getNumInteriorRing()) return ! 1;
if (null === this._shell) return ! 1;
if (5 !== this._shell.getNumPoints()) return ! 1;
for (var t = this._shell.getCoordinateSequence(), e = this.getEnvelopeInternal(), n = 0; n < 5; n++) {
var r = t.getX(n);
if (r !== e.getMinX() && r !== e.getMaxX()) return ! 1;
var i = t.getY(n);
if (i !== e.getMinY() && i !== e.getMaxY()) return ! 1
}
for (var o = t.getX(0), s = t.getY(0), a = 1; a <= 4; a++) {
var u = t.getX(a),
c = t.getY(a);
if (u !== o == (c !== s)) return ! 1;
o = u,
s = c
}
return ! 0
},
e.prototype.equalsExact = function() {
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (!this.isEquivalentClass(e)) return ! 1;
var r = e,
i = this._shell,
o = r._shell;
if (!i.equalsExact(o, n)) return ! 1;
if (this._holes.length !== r._holes.length) return ! 1;
for (var s = 0; s < this._holes.length; s++) if (!this._holes[s].equalsExact(r._holes[s], n)) return ! 1;
return ! 0
}
return t.prototype.equalsExact.apply(this, arguments)
},
e.prototype.normalize = function() {
if (0 === arguments.length) {
this.normalize(this._shell, !0);
for (var t = 0; t < this._holes.length; t++) this.normalize(this._holes[t], !1);
kc.sort(this._holes)
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (e.isEmpty()) return null;
var r = new Array(e.getCoordinates().length - 1).fill(null);
Uu.arraycopy(e.getCoordinates(), 0, r, 0, r.length);
var i = Ic.minCoordinate(e.getCoordinates());
Ic.scroll(r, i),
Uu.arraycopy(r, 0, e.getCoordinates(), 0, r.length),
e.getCoordinates()[r.length] = r[0],
oc.isCCW(e.getCoordinates()) === n && Ic.reverse(e.getCoordinates())
}
},
e.prototype.getCoordinate = function() {
return this._shell.getCoordinate()
},
e.prototype.getNumInteriorRing = function() {
return this._holes.length
},
e.prototype.getBoundaryDimension = function() {
return 1
},
e.prototype.getDimension = function() {
return 2
},
e.prototype.getLength = function() {
var t = 0;
t += this._shell.getLength();
for (var e = 0; e < this._holes.length; e++) t += this._holes[e].getLength();
return t
},
e.prototype.getNumPoints = function() {
for (var t = this._shell.getNumPoints(), e = 0; e < this._holes.length; e++) t += this._holes[e].getNumPoints();
return t
},
e.prototype.reverse = function() {
var t = this.copy();
t._shell = this._shell.copy().reverse(),
t._holes = new Array(this._holes.length).fill(null);
for (var e = 0; e < this._holes.length; e++) t._holes[e] = this._holes[e].copy().reverse();
return t
},
e.prototype.convexHull = function() {
return this.getExteriorRing().convexHull()
},
e.prototype.compareToSameClass = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = this._shell,
n = t._shell;
return e.compareToSameClass(n)
}
if (2 === arguments.length) {
var r = arguments[0],
i = arguments[1],
o = r,
s = this._shell,
a = o._shell,
u = s.compareToSameClass(a, i);
if (0 !== u) return u;
for (var c = this.getNumInteriorRing(), l = o.getNumInteriorRing(), h = 0; h < c && h < l;) {
var f = this.getInteriorRingN(h),
p = o.getInteriorRingN(h),
d = f.compareToSameClass(p, i);
if (0 !== d) return d;
h++
}
return h < c ? 1 : h < l ? -1 : 0
}
},
e.prototype.apply = function(t) {
if (Nu(t, hc)) {
this._shell.apply(t);
for (var e = 0; e < this._holes.length; e++) this._holes[e].apply(t)
} else if (Nu(t, Bc)) {
if (this._shell.apply(t), !t.isDone()) for (var n = 0; n < this._holes.length && (this._holes[n].apply(t), !t.isDone()); n++);
t.isGeometryChanged() && this.geometryChanged()
} else if (Nu(t, qc)) t.filter(this);
else if (Nu(t, ac)) {
t.filter(this),
this._shell.apply(t);
for (var r = 0; r < this._holes.length; r++) this._holes[r].apply(t)
}
},
e.prototype.getBoundary = function() {
if (this.isEmpty()) return this.getFactory().createMultiLineString();
var t = new Array(this._holes.length + 1).fill(null);
t[0] = this._shell;
for (var e = 0; e < this._holes.length; e++) t[e + 1] = this._holes[e];
return t.length <= 1 ? this.getFactory().createLinearRing(t[0].getCoordinateSequence()) : this.getFactory().createMultiLineString(t)
},
e.prototype.clone = function() {
var e = t.prototype.clone.call(this);
e._shell = this._shell.clone(),
e._holes = new Array(this._holes.length).fill(null);
for (var n = 0; n < this._holes.length; n++) e._holes[n] = this._holes[n].clone();
return e
},
e.prototype.getGeometryType = function() {
return "Polygon"
},
e.prototype.copy = function() {
for (var t = this._shell.copy(), n = new Array(this._holes.length).fill(null), r = 0; r < n.length; r++) n[r] = this._holes[r].copy();
return new e(t, n, this._factory)
},
e.prototype.getExteriorRing = function() {
return this._shell
},
e.prototype.isEmpty = function() {
return this._shell.isEmpty()
},
e.prototype.getInteriorRingN = function(t) {
return this._holes[t]
},
e.prototype.interfaces_ = function() {
return [Qc]
},
e.prototype.getClass = function() {
return e
},
n.serialVersionUID.get = function() {
return - 0x307ffefd8dc97200
},
Object.defineProperties(e, n),
e
} (uc),
$c = function(t) {
function e() {
t.apply(this, arguments)
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
serialVersionUID: {
configurable: !0
}
};
return e.prototype.getSortIndex = function() {
return uc.SORTINDEX_MULTIPOINT
},
e.prototype.isValid = function() {
return ! 0
},
e.prototype.equalsExact = function() {
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return !! this.isEquivalentClass(e) && t.prototype.equalsExact.call(this, e, n)
}
return t.prototype.equalsExact.apply(this, arguments)
},
e.prototype.getCoordinate = function() {
if (1 === arguments.length) {
var e = arguments[0];
return this._geometries[e].getCoordinate()
}
return t.prototype.getCoordinate.apply(this, arguments)
},
e.prototype.getBoundaryDimension = function() {
return Fc.FALSE
},
e.prototype.getDimension = function() {
return 0
},
e.prototype.getBoundary = function() {
return this.getFactory().createGeometryCollection(null)
},
e.prototype.getGeometryType = function() {
return "MultiPoint"
},
e.prototype.copy = function() {
for (var t = new Array(this._geometries.length).fill(null), n = 0; n < t.length; n++) t[n] = this._geometries[n].copy();
return new e(t, this._factory)
},
e.prototype.interfaces_ = function() {
return [Jc]
},
e.prototype.getClass = function() {
return e
},
n.serialVersionUID.get = function() {
return - 0x6fb1ed4162e0fc00
},
Object.defineProperties(e, n),
e
} (Gc),
tl = function(t) {
function e(e, n) {
e instanceof xu && n instanceof yl && (e = n.getCoordinateSequenceFactory().create(e)),
t.call(this, e, n),
this.validateConstruction()
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
MINIMUM_VALID_SIZE: {
configurable: !0
},
serialVersionUID: {
configurable: !0
}
};
return e.prototype.getSortIndex = function() {
return uc.SORTINDEX_LINEARRING
},
e.prototype.getBoundaryDimension = function() {
return Fc.FALSE
},
e.prototype.isClosed = function() {
return !! this.isEmpty() || t.prototype.isClosed.call(this)
},
e.prototype.reverse = function() {
var t = this._points.copy();
return Wc.reverse(t),
this.getFactory().createLinearRing(t)
},
e.prototype.validateConstruction = function() {
if (!this.isEmpty() && !t.prototype.isClosed.call(this)) throw new yu("Points of LinearRing do not form a closed linestring");
if (this.getCoordinateSequence().size() >= 1 && this.getCoordinateSequence().size() < e.MINIMUM_VALID_SIZE) throw new yu("Invalid number of points in LinearRing (found " + this.getCoordinateSequence().size() + " - must be 0 or >= 4)")
},
e.prototype.getGeometryType = function() {
return "LinearRing"
},
e.prototype.copy = function() {
return new e(this._points.copy(), this._factory)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
n.MINIMUM_VALID_SIZE.get = function() {
return 4
},
n.serialVersionUID.get = function() {
return - 0x3b229e262367a600
},
Object.defineProperties(e, n),
e
} (Hc),
el = function(t) {
function e() {
t.apply(this, arguments)
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
serialVersionUID: {
configurable: !0
}
};
return e.prototype.getSortIndex = function() {
return uc.SORTINDEX_MULTIPOLYGON
},
e.prototype.equalsExact = function() {
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return !! this.isEquivalentClass(e) && t.prototype.equalsExact.call(this, e, n)
}
return t.prototype.equalsExact.apply(this, arguments)
},
e.prototype.getBoundaryDimension = function() {
return 1
},
e.prototype.getDimension = function() {
return 2
},
e.prototype.reverse = function() {
for (var t = this._geometries.length,
e = new Array(t).fill(null), n = 0; n < this._geometries.length; n++) e[n] = this._geometries[n].reverse();
return this.getFactory().createMultiPolygon(e)
},
e.prototype.getBoundary = function() {
if (this.isEmpty()) return this.getFactory().createMultiLineString();
for (var t = new xc,
e = 0; e < this._geometries.length; e++) for (var n = this._geometries[e].getBoundary(), r = 0; r < n.getNumGeometries(); r++) t.add(n.getGeometryN(r));
var i = new Array(t.size()).fill(null);
return this.getFactory().createMultiLineString(t.toArray(i))
},
e.prototype.getGeometryType = function() {
return "MultiPolygon"
},
e.prototype.copy = function() {
for (var t = new Array(this._geometries.length).fill(null), n = 0; n < t.length; n++) t[n] = this._geometries[n].copy();
return new e(t, this._factory)
},
e.prototype.interfaces_ = function() {
return [Qc]
},
e.prototype.getClass = function() {
return e
},
n.serialVersionUID.get = function() {
return - 0x7a5aa1369171980
},
Object.defineProperties(e, n),
e
} (Gc),
nl = function(t) {
this._factory = t || null,
this._isUserDataCopied = !1
},
rl = {
NoOpGeometryOperation: {
configurable: !0
},
CoordinateOperation: {
configurable: !0
},
CoordinateSequenceOperation: {
configurable: !0
}
};
nl.prototype.setCopyUserData = function(t) {
this._isUserDataCopied = t
},
nl.prototype.edit = function(t, e) {
if (null === t) return null;
var n = this.editInternal(t, e);
return this._isUserDataCopied && n.setUserData(t.getUserData()),
n
},
nl.prototype.editInternal = function(t, e) {
return null === this._factory && (this._factory = t.getFactory()),
t instanceof Gc ? this.editGeometryCollection(t, e) : t instanceof Kc ? this.editPolygon(t, e) : t instanceof Zc ? e.edit(t, this._factory) : t instanceof Hc ? e.edit(t, this._factory) : ($u.shouldNeverReachHere("Unsupported Geometry class: " + t.getClass().getName()), null)
},
nl.prototype.editGeometryCollection = function(t, e) {
for (var n = e.edit(t, this._factory), r = new xc, i = 0; i < n.getNumGeometries(); i++) {
var o = this.edit(n.getGeometryN(i), e);
null === o || o.isEmpty() || r.add(o)
}
return n.getClass() === $c ? this._factory.createMultiPoint(r.toArray([])) : n.getClass() === Uc ? this._factory.createMultiLineString(r.toArray([])) : n.getClass() === el ? this._factory.createMultiPolygon(r.toArray([])) : this._factory.createGeometryCollection(r.toArray([]))
},
nl.prototype.editPolygon = function(t, e) {
var n = e.edit(t, this._factory);
if (null === n && (n = this._factory.createPolygon(null)), n.isEmpty()) return n;
var r = this.edit(n.getExteriorRing(), e);
if (null === r || r.isEmpty()) return this._factory.createPolygon();
for (var i = new xc,
o = 0; o < n.getNumInteriorRing(); o++) {
var s = this.edit(n.getInteriorRingN(o), e);
null === s || s.isEmpty() || i.add(s)
}
return this._factory.createPolygon(r, i.toArray([]))
},
nl.prototype.interfaces_ = function() {
return []
},
nl.prototype.getClass = function() {
return nl
},
nl.GeometryEditorOperation = function() {},
rl.NoOpGeometryOperation.get = function() {
return il
},
rl.CoordinateOperation.get = function() {
return ol
},
rl.CoordinateSequenceOperation.get = function() {
return sl
},
Object.defineProperties(nl, rl);
var il = function() {};
il.prototype.edit = function(t, e) {
return t
},
il.prototype.interfaces_ = function() {
return [nl.GeometryEditorOperation]
},
il.prototype.getClass = function() {
return il
};
var ol = function() {};
ol.prototype.edit = function(t, e) {
var n = this.editCoordinates(t.getCoordinates(), t);
return null === n ? t: t instanceof tl ? e.createLinearRing(n) : t instanceof Hc ? e.createLineString(n) : t instanceof Zc ? n.length > 0 ? e.createPoint(n[0]) : e.createPoint() : t
},
ol.prototype.interfaces_ = function() {
return [nl.GeometryEditorOperation]
},
ol.prototype.getClass = function() {
return ol
};
var sl = function() {};
sl.prototype.edit = function(t, e) {
return t instanceof tl ? e.createLinearRing(this.edit(t.getCoordinateSequence(), t)) : t instanceof Hc ? e.createLineString(this.edit(t.getCoordinateSequence(), t)) : t instanceof Zc ? e.createPoint(this.edit(t.getCoordinateSequence(), t)) : t
},
sl.prototype.interfaces_ = function() {
return [nl.GeometryEditorOperation]
},
sl.prototype.getClass = function() {
return sl
};
var al = function() {
if (this._dimension = 3, this._coordinates = null, 1 === arguments.length) {
if (arguments[0] instanceof Array) this._coordinates = arguments[0],
this._dimension = 3;
else if (Number.isInteger(arguments[0])) {
var t = arguments[0];
this._coordinates = new Array(t).fill(null);
for (var e = 0; e < t; e++) this._coordinates[e] = new xu
} else if (Nu(arguments[0], ju)) {
var n = arguments[0];
if (null === n) return this._coordinates = new Array(0).fill(null),
null;
this._dimension = n.getDimension(),
this._coordinates = new Array(n.size()).fill(null);
for (var r = 0; r < this._coordinates.length; r++) this._coordinates[r] = n.getCoordinateCopy(r)
}
} else if (2 === arguments.length) if (arguments[0] instanceof Array && Number.isInteger(arguments[1])) {
var i = arguments[0],
o = arguments[1];
this._coordinates = i,
this._dimension = o,
null === i && (this._coordinates = new Array(0).fill(null))
} else if (Number.isInteger(arguments[0]) && Number.isInteger(arguments[1])) {
var s = arguments[0],
a = arguments[1];
this._coordinates = new Array(s).fill(null),
this._dimension = a;
for (var u = 0; u < s; u++) this._coordinates[u] = new xu
}
},
ul = {
serialVersionUID: {
configurable: !0
}
};
al.prototype.setOrdinate = function(t, e, n) {
switch (e) {
case ju.X:
this._coordinates[t].x = n;
break;
case ju.Y:
this._coordinates[t].y = n;
break;
case ju.Z:
this._coordinates[t].z = n;
break;
default:
throw new yu("invalid ordinateIndex")
}
},
al.prototype.size = function() {
return this._coordinates.length
},
al.prototype.getOrdinate = function(t, e) {
switch (e) {
case ju.X:
return this._coordinates[t].x;
case ju.Y:
return this._coordinates[t].y;
case ju.Z:
return this._coordinates[t].z
}
return vu.NaN
},
al.prototype.getCoordinate = function() {
if (1 === arguments.length) {
var t = arguments[0];
return this._coordinates[t]
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
n.x = this._coordinates[e].x,
n.y = this._coordinates[e].y,
n.z = this._coordinates[e].z
}
},
al.prototype.getCoordinateCopy = function(t) {
return new xu(this._coordinates[t])
},
al.prototype.getDimension = function() {
return this._dimension
},
al.prototype.getX = function(t) {
return this._coordinates[t].x
},
al.prototype.clone = function() {
for (var t = new Array(this.size()).fill(null), e = 0; e < this._coordinates.length; e++) t[e] = this._coordinates[e].clone();
return new al(t, this._dimension)
},
al.prototype.expandEnvelope = function(t) {
for (var e = 0; e < this._coordinates.length; e++) t.expandToInclude(this._coordinates[e]);
return t
},
al.prototype.copy = function() {
for (var t = new Array(this.size()).fill(null), e = 0; e < this._coordinates.length; e++) t[e] = this._coordinates[e].copy();
return new al(t, this._dimension)
},
al.prototype.toString = function() {
if (this._coordinates.length > 0) {
var t = new Au(17 * this._coordinates.length);
t.append("("),
t.append(this._coordinates[0]);
for (var e = 1; e < this._coordinates.length; e++) t.append(", "),
t.append(this._coordinates[e]);
return t.append(")"),
t.toString()
}
return "()"
},
al.prototype.getY = function(t) {
return this._coordinates[t].y
},
al.prototype.toCoordinateArray = function() {
return this._coordinates
},
al.prototype.interfaces_ = function() {
return [ju, Pi]
},
al.prototype.getClass = function() {
return al
},
ul.serialVersionUID.get = function() {
return - 0xcb44a778db18e00
},
Object.defineProperties(al, ul);
var cl = function() {},
ll = {
serialVersionUID: {
configurable: !0
},
instanceObject: {
configurable: !0
}
};
cl.prototype.readResolve = function() {
return cl.instance()
},
cl.prototype.create = function() {
if (1 === arguments.length) {
if (arguments[0] instanceof Array) {
var t = arguments[0];
return new al(t)
}
if (Nu(arguments[0], ju)) {
var e = arguments[0];
return new al(e)
}
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
return r > 3 && (r = 3),
r < 2 ? new al(n) : new al(n, r)
}
},
cl.prototype.interfaces_ = function() {
return [Iu, Pi]
},
cl.prototype.getClass = function() {
return cl
},
cl.instance = function() {
return cl.instanceObject
},
ll.serialVersionUID.get = function() {
return - 0x38e49fa6cf6f2e00
},
ll.instanceObject.get = function() {
return new cl
},
Object.defineProperties(cl, ll);
var hl = function(t) {
function e() {
t.call(this),
this.map_ = new Map
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.get = function(t) {
return this.map_.get(t) || null
},
e.prototype.put = function(t, e) {
return this.map_.set(t, e),
e
},
e.prototype.values = function() {
for (var t = new xc,
e = this.map_.values(), n = e.next(); ! n.done;) t.add(n.value),
n = e.next();
return t
},
e.prototype.entrySet = function() {
var t = new Ac;
return this.map_.entries().forEach(function(e) {
return t.add(e)
}),
t
},
e.prototype.size = function() {
return this.map_.size()
},
e
} (Pc),
fl = function t() {
if (this._modelType = null, this._scale = null, 0 === arguments.length) this._modelType = t.FLOATING;
else if (1 === arguments.length) if (arguments[0] instanceof dl) {
var e = arguments[0];
this._modelType = e,
e === t.FIXED && this.setScale(1)
} else if ("number" == typeof arguments[0]) {
var n = arguments[0];
this._modelType = t.FIXED,
this.setScale(n)
} else if (arguments[0] instanceof t) {
var r = arguments[0];
this._modelType = r._modelType,
this._scale = r._scale
}
},
pl = {
serialVersionUID: {
configurable: !0
},
maximumPreciseValue: {
configurable: !0
}
};
fl.prototype.equals = function(t) {
if (! (t instanceof fl)) return ! 1;
var e = t;
return this._modelType === e._modelType && this._scale === e._scale
},
fl.prototype.compareTo = function(t) {
var e = t,
n = this.getMaximumSignificantDigits(),
r = e.getMaximumSignificantDigits();
return new Ou(n).compareTo(new Ou(r))
},
fl.prototype.getScale = function() {
return this._scale
},
fl.prototype.isFloating = function() {
return this._modelType === fl.FLOATING || this._modelType === fl.FLOATING_SINGLE
},
fl.prototype.getType = function() {
return this._modelType
},
fl.prototype.toString = function() {
var t = "UNKNOWN";
return this._modelType === fl.FLOATING ? t = "Floating": this._modelType === fl.FLOATING_SINGLE ? t = "Floating-Single": this._modelType === fl.FIXED && (t = "Fixed (Scale=" + this.getScale() + ")"),
t
},
fl.prototype.makePrecise = function() {
if ("number" == typeof arguments[0]) {
var t = arguments[0];
return vu.isNaN(t) ? t: this._modelType === fl.FLOATING_SINGLE ? t: this._modelType === fl.FIXED ? Math.round(t * this._scale) / this._scale: t
}
if (arguments[0] instanceof xu) {
var e = arguments[0];
if (this._modelType === fl.FLOATING) return null;
e.x = this.makePrecise(e.x),
e.y = this.makePrecise(e.y)
}
},
fl.prototype.getMaximumSignificantDigits = function() {
var t = 16;
return this._modelType === fl.FLOATING ? t = 16 : this._modelType === fl.FLOATING_SINGLE ? t = 6 : this._modelType === fl.FIXED && (t = 1 + Math.trunc(Math.ceil(Math.log(this.getScale()) / Math.log(10)))),
t
},
fl.prototype.setScale = function(t) {
this._scale = Math.abs(t)
},
fl.prototype.interfaces_ = function() {
return [Pi, _u]
},
fl.prototype.getClass = function() {
return fl
},
fl.mostPrecise = function(t, e) {
return t.compareTo(e) >= 0 ? t: e
},
pl.serialVersionUID.get = function() {
return 0x6bee6404e9a25c00
},
pl.maximumPreciseValue.get = function() {
return 9007199254740992
},
Object.defineProperties(fl, pl);
var dl = function t(e) {
this._name = e || null,
t.nameToTypeMap.put(e, this)
},
gl = {
serialVersionUID: {
configurable: !0
},
nameToTypeMap: {
configurable: !0
}
};
dl.prototype.readResolve = function() {
return dl.nameToTypeMap.get(this._name)
},
dl.prototype.toString = function() {
return this._name
},
dl.prototype.interfaces_ = function() {
return [Pi]
},
dl.prototype.getClass = function() {
return dl
},
gl.serialVersionUID.get = function() {
return - 552860263173159e4
},
gl.nameToTypeMap.get = function() {
return new hl
},
Object.defineProperties(dl, gl),
fl.Type = dl,
fl.FIXED = new dl("FIXED"),
fl.FLOATING = new dl("FLOATING"),
fl.FLOATING_SINGLE = new dl("FLOATING SINGLE");
var yl = function t() {
this._precisionModel = new fl,
this._SRID = 0,
this._coordinateSequenceFactory = t.getDefaultCoordinateSequenceFactory(),
0 === arguments.length || (1 === arguments.length ? Nu(arguments[0], Iu) ? this._coordinateSequenceFactory = arguments[0] : arguments[0] instanceof fl && (this._precisionModel = arguments[0]) : 2 === arguments.length ? (this._precisionModel = arguments[0], this._SRID = arguments[1]) : 3 === arguments.length && (this._precisionModel = arguments[0], this._SRID = arguments[1], this._coordinateSequenceFactory = arguments[2]))
},
vl = {
serialVersionUID: {
configurable: !0
}
};
yl.prototype.toGeometry = function(t) {
return t.isNull() ? this.createPoint(null) : t.getMinX() === t.getMaxX() && t.getMinY() === t.getMaxY() ? this.createPoint(new xu(t.getMinX(), t.getMinY())) : t.getMinX() === t.getMaxX() || t.getMinY() === t.getMaxY() ? this.createLineString([new xu(t.getMinX(), t.getMinY()), new xu(t.getMaxX(), t.getMaxY())]) : this.createPolygon(this.createLinearRing([new xu(t.getMinX(), t.getMinY()), new xu(t.getMinX(), t.getMaxY()), new xu(t.getMaxX(), t.getMaxY()), new xu(t.getMaxX(), t.getMinY()), new xu(t.getMinX(), t.getMinY())]), null)
},
yl.prototype.createLineString = function(t) {
return t ? t instanceof Array ? new Hc(this.getCoordinateSequenceFactory().create(t), this) : Nu(t, ju) ? new Hc(t, this) : void 0 : new Hc(this.getCoordinateSequenceFactory().create([]), this)
},
yl.prototype.createMultiLineString = function() {
if (0 === arguments.length) return new Uc(null, this);
if (1 === arguments.length) {
var t = arguments[0];
return new Uc(t, this)
}
},
yl.prototype.buildGeometry = function(t) {
for (var e = null,
n = !1,
r = !1,
i = t.iterator(); i.hasNext();) {
var o = i.next(),
s = o.getClass();
null === e && (e = s),
s !== e && (n = !0),
o.isGeometryCollectionOrDerived() && (r = !0)
}
if (null === e) return this.createGeometryCollection();
if (n || r) return this.createGeometryCollection(yl.toGeometryArray(t));
var a = t.iterator().next();
if (t.size() > 1) {
if (a instanceof Kc) return this.createMultiPolygon(yl.toPolygonArray(t));
if (a instanceof Hc) return this.createMultiLineString(yl.toLineStringArray(t));
if (a instanceof Zc) return this.createMultiPoint(yl.toPointArray(t));
$u.shouldNeverReachHere("Unhandled class: " + a.getClass().getName())
}
return a
},
yl.prototype.createMultiPointFromCoords = function(t) {
return this.createMultiPoint(null !== t ? this.getCoordinateSequenceFactory().create(t) : null)
},
yl.prototype.createPoint = function() {
if (0 === arguments.length) return this.createPoint(this.getCoordinateSequenceFactory().create([]));
if (1 === arguments.length) {
if (arguments[0] instanceof xu) {
var t = arguments[0];
return this.createPoint(null !== t ? this.getCoordinateSequenceFactory().create([t]) : null)
}
if (Nu(arguments[0], ju)) {
var e = arguments[0];
return new Zc(e, this)
}
}
},
yl.prototype.getCoordinateSequenceFactory = function() {
return this._coordinateSequenceFactory
},
yl.prototype.createPolygon = function() {
if (0 === arguments.length) return new Kc(null, null, this);
if (1 === arguments.length) {
if (Nu(arguments[0], ju)) {
var t = arguments[0];
return this.createPolygon(this.createLinearRing(t))
}
if (arguments[0] instanceof Array) {
var e = arguments[0];
return this.createPolygon(this.createLinearRing(e))
}
if (arguments[0] instanceof tl) {
var n = arguments[0];
return this.createPolygon(n, null)
}
} else if (2 === arguments.length) {
var r = arguments[0],
i = arguments[1];
return new Kc(r, i, this)
}
},
yl.prototype.getSRID = function() {
return this._SRID
},
yl.prototype.createGeometryCollection = function() {
if (0 === arguments.length) return new Gc(null, this);
if (1 === arguments.length) {
var t = arguments[0];
return new Gc(t, this)
}
},
yl.prototype.createGeometry = function(t) {
return new nl(this).edit(t, {
edit: function() {
if (2 === arguments.length) {
var t = arguments[0];
return this._coordinateSequenceFactory.create(t)
}
}
})
},
yl.prototype.getPrecisionModel = function() {
return this._precisionModel
},
yl.prototype.createLinearRing = function() {
if (0 === arguments.length) return this.createLinearRing(this.getCoordinateSequenceFactory().create([]));
if (1 === arguments.length) {
if (arguments[0] instanceof Array) {
var t = arguments[0];
return this.createLinearRing(null !== t ? this.getCoordinateSequenceFactory().create(t) : null)
}
if (Nu(arguments[0], ju)) {
var e = arguments[0];
return new tl(e, this)
}
}
},
yl.prototype.createMultiPolygon = function() {
if (0 === arguments.length) return new el(null, this);
if (1 === arguments.length) {
var t = arguments[0];
return new el(t, this)
}
},
yl.prototype.createMultiPoint = function() {
if (0 === arguments.length) return new $c(null, this);
if (1 === arguments.length) {
if (arguments[0] instanceof Array) {
var t = arguments[0];
return new $c(t, this)
}
if (arguments[0] instanceof Array) {
var e = arguments[0];
return this.createMultiPoint(null !== e ? this.getCoordinateSequenceFactory().create(e) : null)
}
if (Nu(arguments[0], ju)) {
var n = arguments[0];
if (null === n) return this.createMultiPoint(new Array(0).fill(null));
for (var r = new Array(n.size()).fill(null), i = 0; i < n.size(); i++) {
var o = this.getCoordinateSequenceFactory().create(1, n.getDimension());
Wc.copy(n, i, o, 0, 1),
r[i] = this.createPoint(o)
}
return this.createMultiPoint(r)
}
}
},
yl.prototype.interfaces_ = function() {
return [Pi]
},
yl.prototype.getClass = function() {
return yl
},
yl.toMultiPolygonArray = function(t) {
var e = new Array(t.size()).fill(null);
return t.toArray(e)
},
yl.toGeometryArray = function(t) {
if (null === t) return null;
var e = new Array(t.size()).fill(null);
return t.toArray(e)
},
yl.getDefaultCoordinateSequenceFactory = function() {
return cl.instance()
},
yl.toMultiLineStringArray = function(t) {
var e = new Array(t.size()).fill(null);
return t.toArray(e)
},
yl.toLineStringArray = function(t) {
var e = new Array(t.size()).fill(null);
return t.toArray(e)
},
yl.toMultiPointArray = function(t) {
var e = new Array(t.size()).fill(null);
return t.toArray(e)
},
yl.toLinearRingArray = function(t) {
var e = new Array(t.size()).fill(null);
return t.toArray(e)
},
yl.toPointArray = function(t) {
var e = new Array(t.size()).fill(null);
return t.toArray(e)
},
yl.toPolygonArray = function(t) {
var e = new Array(t.size()).fill(null);
return t.toArray(e)
},
yl.createPointFromInternalCoord = function(t, e) {
return e.getPrecisionModel().makePrecise(t),
e.getFactory().createPoint(t)
},
vl.serialVersionUID.get = function() {
return - 0x5ea75f2051eeb400
},
Object.defineProperties(yl, vl);
var ml = ["Point", "MultiPoint", "LineString", "MultiLineString", "Polygon", "MultiPolygon"],
_l = function(t) {
this.geometryFactory = t || new yl
};
_l.prototype.read = function(t) {
var e, n = (e = "string" == typeof t ? JSON.parse(t) : t).type;
if (!wl[n]) throw new Error("Unknown GeoJSON type: " + e.type);
return - 1 !== ml.indexOf(n) ? wl[n].apply(this, [e.coordinates]) : "GeometryCollection" === n ? wl[n].apply(this, [e.geometries]) : wl[n].apply(this, [e])
},
_l.prototype.write = function(t) {
var e = t.getGeometryType();
if (!bl[e]) throw new Error("Geometry is not supported");
return bl[e].apply(this, [t])
};
var wl = {
Feature: function(t) {
var e = {};
for (var n in t) e[n] = t[n];
if (t.geometry) {
var r = t.geometry.type;
if (!wl[r]) throw new Error("Unknown GeoJSON type: " + t.type);
e.geometry = this.read(t.geometry)
}
return t.bbox && (e.bbox = wl.bbox.apply(this, [t.bbox])),
e
},
FeatureCollection: function(t) {
var e = {};
if (t.features) {
e.features = [];
for (var n = 0; n < t.features.length; ++n) e.features.push(this.read(t.features[n]))
}
return t.bbox && (e.bbox = this.parse.bbox.apply(this, [t.bbox])),
e
},
coordinates: function(t) {
for (var e = [], n = 0; n < t.length; ++n) {
var r = t[n];
e.push(new xu(r[0], r[1]))
}
return e
},
bbox: function(t) {
return this.geometryFactory.createLinearRing([new xu(t[0], t[1]), new xu(t[2], t[1]), new xu(t[2], t[3]), new xu(t[0], t[3]), new xu(t[0], t[1])])
},
Point: function(t) {
var e = new xu(t[0], t[1]);
return this.geometryFactory.createPoint(e)
},
MultiPoint: function(t) {
for (var e = [], n = 0; n < t.length; ++n) e.push(wl.Point.apply(this, [t[n]]));
return this.geometryFactory.createMultiPoint(e)
},
LineString: function(t) {
var e = wl.coordinates.apply(this, [t]);
return this.geometryFactory.createLineString(e)
},
MultiLineString: function(t) {
for (var e = [], n = 0; n < t.length; ++n) e.push(wl.LineString.apply(this, [t[n]]));
return this.geometryFactory.createMultiLineString(e)
},
Polygon: function(t) {
for (var e = wl.coordinates.apply(this, [t[0]]), n = this.geometryFactory.createLinearRing(e), r = [], i = 1; i < t.length; ++i) {
var o = t[i],
s = wl.coordinates.apply(this, [o]),
a = this.geometryFactory.createLinearRing(s);
r.push(a)
}
return this.geometryFactory.createPolygon(n, r)
},
MultiPolygon: function(t) {
for (var e = [], n = 0; n < t.length; ++n) {
var r = t[n];
e.push(wl.Polygon.apply(this, [r]))
}
return this.geometryFactory.createMultiPolygon(e)
},
GeometryCollection: function(t) {
for (var e = [], n = 0; n < t.length; ++n) {
var r = t[n];
e.push(this.read(r))
}
return this.geometryFactory.createGeometryCollection(e)
}
},
bl = {
coordinate: function(t) {
return [t.x, t.y]
},
Point: function(t) {
return {
type: "Point",
coordinates: bl.coordinate.apply(this, [t.getCoordinate()])
}
},
MultiPoint: function(t) {
for (var e = [], n = 0; n < t._geometries.length; ++n) {
var r = t._geometries[n],
i = bl.Point.apply(this, [r]);
e.push(i.coordinates)
}
return {
type: "MultiPoint",
coordinates: e
}
},
LineString: function(t) {
for (var e = [], n = t.getCoordinates(), r = 0; r < n.length; ++r) {
var i = n[r];
e.push(bl.coordinate.apply(this, [i]))
}
return {
type: "LineString",
coordinates: e
}
},
MultiLineString: function(t) {
for (var e = [], n = 0; n < t._geometries.length; ++n) {
var r = t._geometries[n],
i = bl.LineString.apply(this, [r]);
e.push(i.coordinates)
}
return {
type: "MultiLineString",
coordinates: e
}
},
Polygon: function(t) {
var e = [],
n = bl.LineString.apply(this, [t._shell]);
e.push(n.coordinates);
for (var r = 0; r < t._holes.length; ++r) {
var i = t._holes[r],
o = bl.LineString.apply(this, [i]);
e.push(o.coordinates)
}
return {
type: "Polygon",
coordinates: e
}
},
MultiPolygon: function(t) {
for (var e = [], n = 0; n < t._geometries.length; ++n) {
var r = t._geometries[n],
i = bl.Polygon.apply(this, [r]);
e.push(i.coordinates)
}
return {
type: "MultiPolygon",
coordinates: e
}
},
GeometryCollection: function(t) {
for (var e = [], n = 0; n < t._geometries.length; ++n) {
var r = t._geometries[n],
i = r.getGeometryType();
e.push(bl[i].apply(this, [r]))
}
return {
type: "GeometryCollection",
geometries: e
}
}
},
xl = function(t) {
this.geometryFactory = t || new yl,
this.precisionModel = this.geometryFactory.getPrecisionModel(),
this.parser = new _l(this.geometryFactory)
};
xl.prototype.read = function(t) {
var e = this.parser.read(t);
return this.precisionModel.getType() === fl.FIXED && this.reducePrecision(e),
e
},
xl.prototype.reducePrecision = function(t) {
var e, n;
if (t.coordinate) this.precisionModel.makePrecise(t.coordinate);
else if (t.points) for (e = 0, n = t.points.length; e < n; e++) this.precisionModel.makePrecise(t.points[e]);
else if (t.geometries) for (e = 0, n = t.geometries.length; e < n; e++) this.reducePrecision(t.geometries[e])
};
var El = function() {
this.parser = new _l(this.geometryFactory)
};
El.prototype.write = function(t) {
return this.parser.write(t)
};
var Ml = function() {},
Il = {
ON: {
configurable: !0
},
LEFT: {
configurable: !0
},
RIGHT: {
configurable: !0
}
};
Ml.prototype.interfaces_ = function() {
return []
},
Ml.prototype.getClass = function() {
return Ml
},
Ml.opposite = function(t) {
return t === Ml.LEFT ? Ml.RIGHT: t === Ml.RIGHT ? Ml.LEFT: t
},
Il.ON.get = function() {
return 0
},
Il.LEFT.get = function() {
return 1
},
Il.RIGHT.get = function() {
return 2
},
Object.defineProperties(Ml, Il),
(Ui.prototype = new Error).name = "EmptyStackException",
(zi.prototype = new bc).add = function(t) {
return this.array_.push(t),
!0
},
zi.prototype.get = function(t) {
if (t < 0 || t >= this.size()) throw new Error;
return this.array_[t]
},
zi.prototype.push = function(t) {
return this.array_.push(t),
t
},
zi.prototype.pop = function(t) {
if (0 === this.array_.length) throw new Ui;
return this.array_.pop()
},
zi.prototype.peek = function() {
if (0 === this.array_.length) throw new Ui;
return this.array_[this.array_.length - 1]
},
zi.prototype.empty = function() {
return 0 === this.array_.length
},
zi.prototype.isEmpty = function() {
return this.empty()
},
zi.prototype.search = function(t) {
return this.array_.indexOf(t)
},
zi.prototype.size = function() {
return this.array_.length
},
zi.prototype.toArray = function() {
for (var t = [], e = 0, n = this.array_.length; e < n; e++) t.push(this.array_[e]);
return t
};
var Sl = function() {
this._minIndex = -1,
this._minCoord = null,
this._minDe = null,
this._orientedDe = null
};
Sl.prototype.getCoordinate = function() {
return this._minCoord
},
Sl.prototype.getRightmostSide = function(t, e) {
var n = this.getRightmostSideOfSegment(t, e);
return n < 0 && (n = this.getRightmostSideOfSegment(t, e - 1)),
n < 0 && (this._minCoord = null, this.checkForRightmostCoordinate(t)),
n
},
Sl.prototype.findRightmostEdgeAtVertex = function() {
var t = this._minDe.getEdge().getCoordinates();
$u.isTrue(this._minIndex > 0 && this._minIndex < t.length, "rightmost point expected to be interior vertex of edge");
var e = t[this._minIndex - 1],
n = t[this._minIndex + 1],
r = oc.computeOrientation(this._minCoord, n, e),
i = !1;
e.y < this._minCoord.y && n.y < this._minCoord.y && r === oc.COUNTERCLOCKWISE ? i = !0 : e.y > this._minCoord.y && n.y > this._minCoord.y && r === oc.CLOCKWISE && (i = !0),
i && (this._minIndex = this._minIndex - 1)
},
Sl.prototype.getRightmostSideOfSegment = function(t, e) {
var n = t.getEdge().getCoordinates();
if (e < 0 || e + 1 >= n.length) return - 1;
if (n[e].y === n[e + 1].y) return - 1;
var r = Ml.LEFT;
return n[e].y < n[e + 1].y && (r = Ml.RIGHT),
r
},
Sl.prototype.getEdge = function() {
return this._orientedDe
},
Sl.prototype.checkForRightmostCoordinate = function(t) {
for (var e = t.getEdge().getCoordinates(), n = 0; n < e.length - 1; n++)(null === this._minCoord || e[n].x > this._minCoord.x) && (this._minDe = t, this._minIndex = n, this._minCoord = e[n])
},
Sl.prototype.findRightmostEdgeAtNode = function() {
var t = this._minDe.getNode().getEdges();
this._minDe = t.getRightmostEdge(),
this._minDe.isForward() || (this._minDe = this._minDe.getSym(), this._minIndex = this._minDe.getEdge().getCoordinates().length - 1)
},
Sl.prototype.findEdge = function(t) {
for (var e = t.iterator(); e.hasNext();) {
var n = e.next();
n.isForward() && this.checkForRightmostCoordinate(n)
}
$u.isTrue(0 !== this._minIndex || this._minCoord.equals(this._minDe.getCoordinate()), "inconsistency in rightmost processing"),
0 === this._minIndex ? this.findRightmostEdgeAtNode() : this.findRightmostEdgeAtVertex(),
this._orientedDe = this._minDe,
this.getRightmostSide(this._minDe, this._minIndex) === Ml.LEFT && (this._orientedDe = this._minDe.getSym())
},
Sl.prototype.interfaces_ = function() {
return []
},
Sl.prototype.getClass = function() {
return Sl
};
var Cl = function(t) {
function e(n, r) {
t.call(this, e.msgWithCoord(n, r)),
this.pt = r ? new xu(r) : null,
this.name = "TopologyException"
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.getCoordinate = function() {
return this.pt
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e.msgWithCoord = function(t, e) {
return e ? t: t + " [ " + e + " ]"
},
e
} (Qu),
Nl = function() {
this.array_ = []
};
Nl.prototype.addLast = function(t) {
this.array_.push(t)
},
Nl.prototype.removeFirst = function() {
return this.array_.shift()
},
Nl.prototype.isEmpty = function() {
return 0 === this.array_.length
};
var Pl = function() {
this._finder = null,
this._dirEdgeList = new xc,
this._nodes = new xc,
this._rightMostCoord = null,
this._env = null,
this._finder = new Sl
};
Pl.prototype.clearVisitedEdges = function() {
for (var t = this._dirEdgeList.iterator(); t.hasNext();) t.next().setVisited(!1)
},
Pl.prototype.getRightmostCoordinate = function() {
return this._rightMostCoord
},
Pl.prototype.computeNodeDepth = function(t) {
for (var e = null,
n = t.getEdges().iterator(); n.hasNext();) {
var r = n.next();
if (r.isVisited() || r.getSym().isVisited()) {
e = r;
break
}
}
if (null === e) throw new Cl("unable to find edge to compute depths at " + t.getCoordinate());
t.getEdges().computeDepths(e);
for (var i = t.getEdges().iterator(); i.hasNext();) {
var o = i.next();
o.setVisited(!0),
this.copySymDepths(o)
}
},
Pl.prototype.computeDepth = function(t) {
this.clearVisitedEdges();
var e = this._finder.getEdge();
e.setEdgeDepths(Ml.RIGHT, t),
this.copySymDepths(e),
this.computeDepths(e)
},
Pl.prototype.create = function(t) {
this.addReachable(t),
this._finder.findEdge(this._dirEdgeList),
this._rightMostCoord = this._finder.getCoordinate()
},
Pl.prototype.findResultEdges = function() {
for (var t = this._dirEdgeList.iterator(); t.hasNext();) {
var e = t.next();
e.getDepth(Ml.RIGHT) >= 1 && e.getDepth(Ml.LEFT) <= 0 && !e.isInteriorAreaEdge() && e.setInResult(!0)
}
},
Pl.prototype.computeDepths = function(t) {
var e = new Ac,
n = new Nl,
r = t.getNode();
for (n.addLast(r), e.add(r), t.setVisited(!0); ! n.isEmpty();) {
var i = n.removeFirst();
e.add(i),
this.computeNodeDepth(i);
for (var o = i.getEdges().iterator(); o.hasNext();) {
var s = o.next().getSym();
if (!s.isVisited()) {
var a = s.getNode();
e.contains(a) || (n.addLast(a), e.add(a))
}
}
}
},
Pl.prototype.compareTo = function(t) {
var e = t;
return this._rightMostCoord.x < e._rightMostCoord.x ? -1 : this._rightMostCoord.x > e._rightMostCoord.x ? 1 : 0
},
Pl.prototype.getEnvelope = function() {
if (null === this._env) {
for (var t = new Yu,
e = this._dirEdgeList.iterator(); e.hasNext();) for (var n = e.next().getEdge().getCoordinates(), r = 0; r < n.length - 1; r++) t.expandToInclude(n[r]);
this._env = t
}
return this._env
},
Pl.prototype.addReachable = function(t) {
var e = new zi;
for (e.add(t); ! e.empty();) {
var n = e.pop();
this.add(n, e)
}
},
Pl.prototype.copySymDepths = function(t) {
var e = t.getSym();
e.setDepth(Ml.LEFT, t.getDepth(Ml.RIGHT)),
e.setDepth(Ml.RIGHT, t.getDepth(Ml.LEFT))
},
Pl.prototype.add = function(t, e) {
t.setVisited(!0),
this._nodes.add(t);
for (var n = t.getEdges().iterator(); n.hasNext();) {
var r = n.next();
this._dirEdgeList.add(r);
var i = r.getSym().getNode();
i.isVisited() || e.push(i)
}
},
Pl.prototype.getNodes = function() {
return this._nodes
},
Pl.prototype.getDirectedEdges = function() {
return this._dirEdgeList
},
Pl.prototype.interfaces_ = function() {
return [_u]
},
Pl.prototype.getClass = function() {
return Pl
};
var Ll = function t() {
if (this.location = null, 1 === arguments.length) {
if (arguments[0] instanceof Array) {
var e = arguments[0];
this.init(e.length)
} else if (Number.isInteger(arguments[0])) {
var n = arguments[0];
this.init(1),
this.location[Ml.ON] = n
} else if (arguments[0] instanceof t) {
var r = arguments[0];
if (this.init(r.location.length), null !== r) for (var i = 0; i < this.location.length; i++) this.location[i] = r.location[i]
}
} else if (3 === arguments.length) {
var o = arguments[0],
s = arguments[1],
a = arguments[2];
this.init(3),
this.location[Ml.ON] = o,
this.location[Ml.LEFT] = s,
this.location[Ml.RIGHT] = a
}
};
Ll.prototype.setAllLocations = function(t) {
for (var e = 0; e < this.location.length; e++) this.location[e] = t
},
Ll.prototype.isNull = function() {
for (var t = 0; t < this.location.length; t++) if (this.location[t] !== Su.NONE) return ! 1;
return ! 0
},
Ll.prototype.setAllLocationsIfNull = function(t) {
for (var e = 0; e < this.location.length; e++) this.location[e] === Su.NONE && (this.location[e] = t)
},
Ll.prototype.isLine = function() {
return 1 === this.location.length
},
Ll.prototype.merge = function(t) {
if (t.location.length > this.location.length) {
var e = new Array(3).fill(null);
e[Ml.ON] = this.location[Ml.ON],
e[Ml.LEFT] = Su.NONE,
e[Ml.RIGHT] = Su.NONE,
this.location = e
}
for (var n = 0; n < this.location.length; n++) this.location[n] === Su.NONE && n < t.location.length && (this.location[n] = t.location[n])
},
Ll.prototype.getLocations = function() {
return this.location
},
Ll.prototype.flip = function() {
if (this.location.length <= 1) return null;
var t = this.location[Ml.LEFT];
this.location[Ml.LEFT] = this.location[Ml.RIGHT],
this.location[Ml.RIGHT] = t
},
Ll.prototype.toString = function() {
var t = new Au;
return this.location.length > 1 && t.append(Su.toLocationSymbol(this.location[Ml.LEFT])),
t.append(Su.toLocationSymbol(this.location[Ml.ON])),
this.location.length > 1 && t.append(Su.toLocationSymbol(this.location[Ml.RIGHT])),
t.toString()
},
Ll.prototype.setLocations = function(t, e, n) {
this.location[Ml.ON] = t,
this.location[Ml.LEFT] = e,
this.location[Ml.RIGHT] = n
},
Ll.prototype.get = function(t) {
return t < this.location.length ? this.location[t] : Su.NONE
},
Ll.prototype.isArea = function() {
return this.location.length > 1
},
Ll.prototype.isAnyNull = function() {
for (var t = 0; t < this.location.length; t++) if (this.location[t] === Su.NONE) return ! 0;
return ! 1
},
Ll.prototype.setLocation = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.setLocation(Ml.ON, t)
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
this.location[e] = n
}
},
Ll.prototype.init = function(t) {
this.location = new Array(t).fill(null),
this.setAllLocations(Su.NONE)
},
Ll.prototype.isEqualOnSide = function(t, e) {
return this.location[e] === t.location[e]
},
Ll.prototype.allPositionsEqual = function(t) {
for (var e = 0; e < this.location.length; e++) if (this.location[e] !== t) return ! 1;
return ! 0
},
Ll.prototype.interfaces_ = function() {
return []
},
Ll.prototype.getClass = function() {
return Ll
};
var Al = function t() {
if (this.elt = new Array(2).fill(null), 1 === arguments.length) {
if (Number.isInteger(arguments[0])) {
var e = arguments[0];
this.elt[0] = new Ll(e),
this.elt[1] = new Ll(e)
} else if (arguments[0] instanceof t) {
var n = arguments[0];
this.elt[0] = new Ll(n.elt[0]),
this.elt[1] = new Ll(n.elt[1])
}
} else if (2 === arguments.length) {
var r = arguments[0],
i = arguments[1];
this.elt[0] = new Ll(Su.NONE),
this.elt[1] = new Ll(Su.NONE),
this.elt[r].setLocation(i)
} else if (3 === arguments.length) {
var o = arguments[0],
s = arguments[1],
a = arguments[2];
this.elt[0] = new Ll(o, s, a),
this.elt[1] = new Ll(o, s, a)
} else if (4 === arguments.length) {
var u = arguments[0],
c = arguments[1],
l = arguments[2],
h = arguments[3];
this.elt[0] = new Ll(Su.NONE, Su.NONE, Su.NONE),
this.elt[1] = new Ll(Su.NONE, Su.NONE, Su.NONE),
this.elt[u].setLocations(c, l, h)
}
};
Al.prototype.getGeometryCount = function() {
var t = 0;
return this.elt[0].isNull() || t++,
this.elt[1].isNull() || t++,
t
},
Al.prototype.setAllLocations = function(t, e) {
this.elt[t].setAllLocations(e)
},
Al.prototype.isNull = function(t) {
return this.elt[t].isNull()
},
Al.prototype.setAllLocationsIfNull = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.setAllLocationsIfNull(0, t),
this.setAllLocationsIfNull(1, t)
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
this.elt[e].setAllLocationsIfNull(n)
}
},
Al.prototype.isLine = function(t) {
return this.elt[t].isLine()
},
Al.prototype.merge = function(t) {
for (var e = 0; e < 2; e++) null === this.elt[e] && null !== t.elt[e] ? this.elt[e] = new Ll(t.elt[e]) : this.elt[e].merge(t.elt[e])
},
Al.prototype.flip = function() {
this.elt[0].flip(),
this.elt[1].flip()
},
Al.prototype.getLocation = function() {
if (1 === arguments.length) {
var t = arguments[0];
return this.elt[t].get(Ml.ON)
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return this.elt[e].get(n)
}
},
Al.prototype.toString = function() {
var t = new Au;
return null !== this.elt[0] && (t.append("A:"), t.append(this.elt[0].toString())),
null !== this.elt[1] && (t.append(" B:"), t.append(this.elt[1].toString())),
t.toString()
},
Al.prototype.isArea = function() {
if (0 === arguments.length) return this.elt[0].isArea() || this.elt[1].isArea();
if (1 === arguments.length) {
var t = arguments[0];
return this.elt[t].isArea()
}
},
Al.prototype.isAnyNull = function(t) {
return this.elt[t].isAnyNull()
},
Al.prototype.setLocation = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
this.elt[t].setLocation(Ml.ON, e)
} else if (3 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2];
this.elt[n].setLocation(r, i)
}
},
Al.prototype.isEqualOnSide = function(t, e) {
return this.elt[0].isEqualOnSide(t.elt[0], e) && this.elt[1].isEqualOnSide(t.elt[1], e)
},
Al.prototype.allPositionsEqual = function(t, e) {
return this.elt[t].allPositionsEqual(e)
},
Al.prototype.toLine = function(t) {
this.elt[t].isArea() && (this.elt[t] = new Ll(this.elt[t].location[0]))
},
Al.prototype.interfaces_ = function() {
return []
},
Al.prototype.getClass = function() {
return Al
},
Al.toLineLabel = function(t) {
for (var e = new Al(Su.NONE), n = 0; n < 2; n++) e.setLocation(n, t.getLocation(n));
return e
};
var Ol = function() {
this._startDe = null,
this._maxNodeDegree = -1,
this._edges = new xc,
this._pts = new xc,
this._label = new Al(Su.NONE),
this._ring = null,
this._isHole = null,
this._shell = null,
this._holes = new xc,
this._geometryFactory = null;
var t = arguments[0],
e = arguments[1];
this._geometryFactory = e,
this.computePoints(t),
this.computeRing()
};
Ol.prototype.computeRing = function() {
if (null !== this._ring) return null;
for (var t = new Array(this._pts.size()).fill(null), e = 0; e < this._pts.size(); e++) t[e] = this._pts.get(e);
this._ring = this._geometryFactory.createLinearRing(t),
this._isHole = oc.isCCW(this._ring.getCoordinates())
},
Ol.prototype.isIsolated = function() {
return 1 === this._label.getGeometryCount()
},
Ol.prototype.computePoints = function(t) {
this._startDe = t;
var e = t,
n = !0;
do {
if (null === e) throw new Cl("Found null DirectedEdge");
if (e.getEdgeRing() === this) throw new Cl("Directed Edge visited twice during ring-building at " + e.getCoordinate());
this._edges.add(e);
var r = e.getLabel();
$u.isTrue(r.isArea()), this.mergeLabel(r), this.addPoints(e.getEdge(), e.isForward(), n), n = !1, this.setEdgeRing(e, this), e = this.getNext(e)
} while ( e !== this . _startDe )
},
Ol.prototype.getLinearRing = function() {
return this._ring
},
Ol.prototype.getCoordinate = function(t) {
return this._pts.get(t)
},
Ol.prototype.computeMaxNodeDegree = function() {
this._maxNodeDegree = 0;
var t = this._startDe;
do {
var e = t.getNode().getEdges().getOutgoingDegree(this);
e > this._maxNodeDegree && (this._maxNodeDegree = e), t = this.getNext(t)
} while ( t !== this . _startDe );
this._maxNodeDegree *= 2
},
Ol.prototype.addPoints = function(t, e, n) {
var r = t.getCoordinates();
if (e) {
var i = 1;
n && (i = 0);
for (var o = i; o < r.length; o++) this._pts.add(r[o])
} else {
var s = r.length - 2;
n && (s = r.length - 1);
for (var a = s; a >= 0; a--) this._pts.add(r[a])
}
},
Ol.prototype.isHole = function() {
return this._isHole
},
Ol.prototype.setInResult = function() {
var t = this._startDe;
do {
t.getEdge().setInResult(!0), t = t.getNext()
} while ( t !== this . _startDe )
},
Ol.prototype.containsPoint = function(t) {
var e = this.getLinearRing();
if (!e.getEnvelopeInternal().contains(t)) return ! 1;
if (!oc.isPointInRing(t, e.getCoordinates())) return ! 1;
for (var n = this._holes.iterator(); n.hasNext();) if (n.next().containsPoint(t)) return ! 1;
return ! 0
},
Ol.prototype.addHole = function(t) {
this._holes.add(t)
},
Ol.prototype.isShell = function() {
return null === this._shell
},
Ol.prototype.getLabel = function() {
return this._label
},
Ol.prototype.getEdges = function() {
return this._edges
},
Ol.prototype.getMaxNodeDegree = function() {
return this._maxNodeDegree < 0 && this.computeMaxNodeDegree(),
this._maxNodeDegree
},
Ol.prototype.getShell = function() {
return this._shell
},
Ol.prototype.mergeLabel = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.mergeLabel(t, 0),
this.mergeLabel(t, 1)
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = e.getLocation(n, Ml.RIGHT);
if (r === Su.NONE) return null;
if (this._label.getLocation(n) === Su.NONE) return this._label.setLocation(n, r),
null
}
},
Ol.prototype.setShell = function(t) {
this._shell = t,
null !== t && t.addHole(this)
},
Ol.prototype.toPolygon = function(t) {
for (var e = new Array(this._holes.size()).fill(null), n = 0; n < this._holes.size(); n++) e[n] = this._holes.get(n).getLinearRing();
return t.createPolygon(this.getLinearRing(), e)
},
Ol.prototype.interfaces_ = function() {
return []
},
Ol.prototype.getClass = function() {
return Ol
};
var Tl = function(t) {
function e() {
var e = arguments[0],
n = arguments[1];
t.call(this, e, n)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.setEdgeRing = function(t, e) {
t.setMinEdgeRing(e)
},
e.prototype.getNext = function(t) {
return t.getNextMin()
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Ol),
Rl = function(t) {
function e() {
var e = arguments[0],
n = arguments[1];
t.call(this, e, n)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.buildMinimalRings = function() {
var t = new xc,
e = this._startDe;
do {
if (null === e.getMinEdgeRing()) {
var n = new Tl(e, this._geometryFactory);
t.add(n)
}
e = e.getNext()
} while ( e !== this . _startDe );
return t
},
e.prototype.setEdgeRing = function(t, e) {
t.setEdgeRing(e)
},
e.prototype.linkDirectedEdgesForMinimalEdgeRings = function() {
var t = this._startDe;
do {
t.getNode().getEdges().linkMinimalDirectedEdges(this), t = t.getNext()
} while ( t !== this . _startDe )
},
e.prototype.getNext = function(t) {
return t.getNext()
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Ol),
Dl = function() {
if (this._label = null, this._isInResult = !1, this._isCovered = !1, this._isCoveredSet = !1, this._isVisited = !1, 0 === arguments.length);
else if (1 === arguments.length) {
var t = arguments[0];
this._label = t
}
};
Dl.prototype.setVisited = function(t) {
this._isVisited = t
},
Dl.prototype.setInResult = function(t) {
this._isInResult = t
},
Dl.prototype.isCovered = function() {
return this._isCovered
},
Dl.prototype.isCoveredSet = function() {
return this._isCoveredSet
},
Dl.prototype.setLabel = function(t) {
this._label = t
},
Dl.prototype.getLabel = function() {
return this._label
},
Dl.prototype.setCovered = function(t) {
this._isCovered = t,
this._isCoveredSet = !0
},
Dl.prototype.updateIM = function(t) {
$u.isTrue(this._label.getGeometryCount() >= 2, "found partial label"),
this.computeIM(t)
},
Dl.prototype.isInResult = function() {
return this._isInResult
},
Dl.prototype.isVisited = function() {
return this._isVisited
},
Dl.prototype.interfaces_ = function() {
return []
},
Dl.prototype.getClass = function() {
return Dl
};
var kl = function(t) {
function e() {
t.call(this),
this._coord = null,
this._edges = null;
var e = arguments[0],
n = arguments[1];
this._coord = e,
this._edges = n,
this._label = new Al(0, Su.NONE)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.isIncidentEdgeInResult = function() {
for (var t = this.getEdges().getEdges().iterator(); t.hasNext();) if (t.next().getEdge().isInResult()) return ! 0;
return ! 1
},
e.prototype.isIsolated = function() {
return 1 === this._label.getGeometryCount()
},
e.prototype.getCoordinate = function() {
return this._coord
},
e.prototype.print = function(t) {
t.println("node " + this._coord + " lbl: " + this._label)
},
e.prototype.computeIM = function(t) {},
e.prototype.computeMergedLocation = function(t, e) {
var n = Su.NONE;
if (n = this._label.getLocation(e), !t.isNull(e)) {
var r = t.getLocation(e);
n !== Su.BOUNDARY && (n = r)
}
return n
},
e.prototype.setLabel = function() {
if (2 !== arguments.length) return t.prototype.setLabel.apply(this, arguments);
var e = arguments[0],
n = arguments[1];
null === this._label ? this._label = new Al(e, n) : this._label.setLocation(e, n)
},
e.prototype.getEdges = function() {
return this._edges
},
e.prototype.mergeLabel = function() {
if (arguments[0] instanceof e) {
var t = arguments[0];
this.mergeLabel(t._label)
} else if (arguments[0] instanceof Al) for (var n = arguments[0], r = 0; r < 2; r++) {
var i = this.computeMergedLocation(n, r);
this._label.getLocation(r) === Su.NONE && this._label.setLocation(r, i)
}
},
e.prototype.add = function(t) {
this._edges.insert(t),
t.setNode(this)
},
e.prototype.setLabelBoundary = function(t) {
if (null === this._label) return null;
var e = Su.NONE;
null !== this._label && (e = this._label.getLocation(t));
var n = null;
switch (e) {
case Su.BOUNDARY:
n = Su.INTERIOR;
break;
case Su.INTERIOR:
default:
n = Su.BOUNDARY
}
this._label.setLocation(t, n)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Dl),
Fl = function() {
this.nodeMap = new ji,
this.nodeFact = null;
var t = arguments[0];
this.nodeFact = t
};
Fl.prototype.find = function(t) {
return this.nodeMap.get(t)
},
Fl.prototype.addNode = function() {
if (arguments[0] instanceof xu) {
var t = arguments[0],
e = this.nodeMap.get(t);
return null === e && (e = this.nodeFact.createNode(t), this.nodeMap.put(t, e)),
e
}
if (arguments[0] instanceof kl) {
var n = arguments[0],
r = this.nodeMap.get(n.getCoordinate());
return null === r ? (this.nodeMap.put(n.getCoordinate(), n), n) : (r.mergeLabel(n), r)
}
},
Fl.prototype.print = function(t) {
for (var e = this.iterator(); e.hasNext();) e.next().print(t)
},
Fl.prototype.iterator = function() {
return this.nodeMap.values().iterator()
},
Fl.prototype.values = function() {
return this.nodeMap.values()
},
Fl.prototype.getBoundaryNodes = function(t) {
for (var e = new xc,
n = this.iterator(); n.hasNext();) {
var r = n.next();
r.getLabel().getLocation(t) === Su.BOUNDARY && e.add(r)
}
return e
},
Fl.prototype.add = function(t) {
var e = t.getCoordinate();
this.addNode(e).add(t)
},
Fl.prototype.interfaces_ = function() {
return []
},
Fl.prototype.getClass = function() {
return Fl
};
var jl = function() {},
ql = {
NE: {
configurable: !0
},
NW: {
configurable: !0
},
SW: {
configurable: !0
},
SE: {
configurable: !0
}
};
jl.prototype.interfaces_ = function() {
return []
},
jl.prototype.getClass = function() {
return jl
},
jl.isNorthern = function(t) {
return t === jl.NE || t === jl.NW
},
jl.isOpposite = function(t, e) {
return t !== e && 2 == (t - e + 4) % 4
},
jl.commonHalfPlane = function(t, e) {
if (t === e) return t;
if (2 == (t - e + 4) % 4) return - 1;
var n = t < e ? t: e;
return 0 === n && 3 === (t > e ? t: e) ? 3 : n
},
jl.isInHalfPlane = function(t, e) {
return e === jl.SE ? t === jl.SE || t === jl.SW: t === e || t === e + 1
},
jl.quadrant = function() {
if ("number" == typeof arguments[0] && "number" == typeof arguments[1]) {
var t = arguments[0],
e = arguments[1];
if (0 === t && 0 === e) throw new yu("Cannot compute the quadrant for point ( " + t + ", " + e + " )");
return t >= 0 ? e >= 0 ? jl.NE: jl.SE: e >= 0 ? jl.NW: jl.SW
}
if (arguments[0] instanceof xu && arguments[1] instanceof xu) {
var n = arguments[0],
r = arguments[1];
if (r.x === n.x && r.y === n.y) throw new yu("Cannot compute the quadrant for two identical points " + n);
return r.x >= n.x ? r.y >= n.y ? jl.NE: jl.SE: r.y >= n.y ? jl.NW: jl.SW
}
},
ql.NE.get = function() {
return 0
},
ql.NW.get = function() {
return 1
},
ql.SW.get = function() {
return 2
},
ql.SE.get = function() {
return 3
},
Object.defineProperties(jl, ql);
var Bl = function() {
if (this._edge = null, this._label = null, this._node = null, this._p0 = null, this._p1 = null, this._dx = null, this._dy = null, this._quadrant = null, 1 === arguments.length) {
var t = arguments[0];
this._edge = t
} else if (3 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = arguments[2];
this._edge = e,
this.init(n, r),
this._label = null
} else if (4 === arguments.length) {
var i = arguments[0],
o = arguments[1],
s = arguments[2],
a = arguments[3];
this._edge = i,
this.init(o, s),
this._label = a
}
};
Bl.prototype.compareDirection = function(t) {
return this._dx === t._dx && this._dy === t._dy ? 0 : this._quadrant > t._quadrant ? 1 : this._quadrant < t._quadrant ? -1 : oc.computeOrientation(t._p0, t._p1, this._p1)
},
Bl.prototype.getDy = function() {
return this._dy
},
Bl.prototype.getCoordinate = function() {
return this._p0
},
Bl.prototype.setNode = function(t) {
this._node = t
},
Bl.prototype.print = function(t) {
var e = Math.atan2(this._dy, this._dx),
n = this.getClass().getName(),
r = n.lastIndexOf("."),
i = n.substring(r + 1);
t.print(" " + i + ": " + this._p0 + " - " + this._p1 + " " + this._quadrant + ":" + e + " " + this._label)
},
Bl.prototype.compareTo = function(t) {
var e = t;
return this.compareDirection(e)
},
Bl.prototype.getDirectedCoordinate = function() {
return this._p1
},
Bl.prototype.getDx = function() {
return this._dx
},
Bl.prototype.getLabel = function() {
return this._label
},
Bl.prototype.getEdge = function() {
return this._edge
},
Bl.prototype.getQuadrant = function() {
return this._quadrant
},
Bl.prototype.getNode = function() {
return this._node
},
Bl.prototype.toString = function() {
var t = Math.atan2(this._dy, this._dx),
e = this.getClass().getName(),
n = e.lastIndexOf(".");
return " " + e.substring(n + 1) + ": " + this._p0 + " - " + this._p1 + " " + this._quadrant + ":" + t + " " + this._label
},
Bl.prototype.computeLabel = function(t) {},
Bl.prototype.init = function(t, e) {
this._p0 = t,
this._p1 = e,
this._dx = e.x - t.x,
this._dy = e.y - t.y,
this._quadrant = jl.quadrant(this._dx, this._dy),
$u.isTrue(!(0 === this._dx && 0 === this._dy), "EdgeEnd with identical endpoints found")
},
Bl.prototype.interfaces_ = function() {
return [_u]
},
Bl.prototype.getClass = function() {
return Bl
};
var Gl = function(t) {
function e() {
var e = arguments[0],
n = arguments[1];
if (t.call(this, e), this._isForward = null, this._isInResult = !1, this._isVisited = !1, this._sym = null, this._next = null, this._nextMin = null, this._edgeRing = null, this._minEdgeRing = null, this._depth = [0, -999, -999], this._isForward = n, n) this.init(e.getCoordinate(0), e.getCoordinate(1));
else {
var r = e.getNumPoints() - 1;
this.init(e.getCoordinate(r), e.getCoordinate(r - 1))
}
this.computeDirectedLabel()
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.getNextMin = function() {
return this._nextMin
},
e.prototype.getDepth = function(t) {
return this._depth[t]
},
e.prototype.setVisited = function(t) {
this._isVisited = t
},
e.prototype.computeDirectedLabel = function() {
this._label = new Al(this._edge.getLabel()),
this._isForward || this._label.flip()
},
e.prototype.getNext = function() {
return this._next
},
e.prototype.setDepth = function(t, e) {
if ( - 999 !== this._depth[t] && this._depth[t] !== e) throw new Cl("assigned depths do not match", this.getCoordinate());
this._depth[t] = e
},
e.prototype.isInteriorAreaEdge = function() {
for (var t = !0,
e = 0; e < 2; e++) this._label.isArea(e) && this._label.getLocation(e, Ml.LEFT) === Su.INTERIOR && this._label.getLocation(e, Ml.RIGHT) === Su.INTERIOR || (t = !1);
return t
},
e.prototype.setNextMin = function(t) {
this._nextMin = t
},
e.prototype.print = function(e) {
t.prototype.print.call(this, e),
e.print(" " + this._depth[Ml.LEFT] + "/" + this._depth[Ml.RIGHT]),
e.print(" (" + this.getDepthDelta() + ")"),
this._isInResult && e.print(" inResult")
},
e.prototype.setMinEdgeRing = function(t) {
this._minEdgeRing = t
},
e.prototype.isLineEdge = function() {
var t = this._label.isLine(0) || this._label.isLine(1),
e = !this._label.isArea(0) || this._label.allPositionsEqual(0, Su.EXTERIOR),
n = !this._label.isArea(1) || this._label.allPositionsEqual(1, Su.EXTERIOR);
return t && e && n
},
e.prototype.setEdgeRing = function(t) {
this._edgeRing = t
},
e.prototype.getMinEdgeRing = function() {
return this._minEdgeRing
},
e.prototype.getDepthDelta = function() {
var t = this._edge.getDepthDelta();
return this._isForward || (t = -t),
t
},
e.prototype.setInResult = function(t) {
this._isInResult = t
},
e.prototype.getSym = function() {
return this._sym
},
e.prototype.isForward = function() {
return this._isForward
},
e.prototype.getEdge = function() {
return this._edge
},
e.prototype.printEdge = function(t) {
this.print(t),
t.print(" "),
this._isForward ? this._edge.print(t) : this._edge.printReverse(t)
},
e.prototype.setSym = function(t) {
this._sym = t
},
e.prototype.setVisitedEdge = function(t) {
this.setVisited(t),
this._sym.setVisited(t)
},
e.prototype.setEdgeDepths = function(t, e) {
var n = this.getEdge().getDepthDelta();
this._isForward || (n = -n);
var r = 1;
t === Ml.LEFT && (r = -1);
var i = Ml.opposite(t),
o = e + n * r;
this.setDepth(t, e),
this.setDepth(i, o)
},
e.prototype.getEdgeRing = function() {
return this._edgeRing
},
e.prototype.isInResult = function() {
return this._isInResult
},
e.prototype.setNext = function(t) {
this._next = t
},
e.prototype.isVisited = function() {
return this._isVisited
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e.depthFactor = function(t, e) {
return t === Su.EXTERIOR && e === Su.INTERIOR ? 1 : t === Su.INTERIOR && e === Su.EXTERIOR ? -1 : 0
},
e
} (Bl),
Ul = function() {};
Ul.prototype.createNode = function(t) {
return new kl(t, null)
},
Ul.prototype.interfaces_ = function() {
return []
},
Ul.prototype.getClass = function() {
return Ul
};
var zl = function() {
if (this._edges = new xc, this._nodes = null, this._edgeEndList = new xc, 0 === arguments.length) this._nodes = new Fl(new Ul);
else if (1 === arguments.length) {
var t = arguments[0];
this._nodes = new Fl(t)
}
};
zl.prototype.printEdges = function(t) {
t.println("Edges:");
for (var e = 0; e < this._edges.size(); e++) {
t.println("edge " + e + ":");
var n = this._edges.get(e);
n.print(t),
n.eiList.print(t)
}
},
zl.prototype.find = function(t) {
return this._nodes.find(t)
},
zl.prototype.addNode = function() {
if (arguments[0] instanceof kl) {
var t = arguments[0];
return this._nodes.addNode(t)
}
if (arguments[0] instanceof xu) {
var e = arguments[0];
return this._nodes.addNode(e)
}
},
zl.prototype.getNodeIterator = function() {
return this._nodes.iterator()
},
zl.prototype.linkResultDirectedEdges = function() {
for (var t = this._nodes.iterator(); t.hasNext();) t.next().getEdges().linkResultDirectedEdges()
},
zl.prototype.debugPrintln = function(t) {
Uu.out.println(t)
},
zl.prototype.isBoundaryNode = function(t, e) {
var n = this._nodes.find(e);
if (null === n) return ! 1;
var r = n.getLabel();
return null !== r && r.getLocation(t) === Su.BOUNDARY
},
zl.prototype.linkAllDirectedEdges = function() {
for (var t = this._nodes.iterator(); t.hasNext();) t.next().getEdges().linkAllDirectedEdges()
},
zl.prototype.matchInSameDirection = function(t, e, n, r) {
return !! t.equals(n) && oc.computeOrientation(t, e, r) === oc.COLLINEAR && jl.quadrant(t, e) === jl.quadrant(n, r)
},
zl.prototype.getEdgeEnds = function() {
return this._edgeEndList
},
zl.prototype.debugPrint = function(t) {
Uu.out.print(t)
},
zl.prototype.getEdgeIterator = function() {
return this._edges.iterator()
},
zl.prototype.findEdgeInSameDirection = function(t, e) {
for (var n = 0; n < this._edges.size(); n++) {
var r = this._edges.get(n),
i = r.getCoordinates();
if (this.matchInSameDirection(t, e, i[0], i[1])) return r;
if (this.matchInSameDirection(t, e, i[i.length - 1], i[i.length - 2])) return r
}
return null
},
zl.prototype.insertEdge = function(t) {
this._edges.add(t)
},
zl.prototype.findEdgeEnd = function(t) {
for (var e = this.getEdgeEnds().iterator(); e.hasNext();) {
var n = e.next();
if (n.getEdge() === t) return n
}
return null
},
zl.prototype.addEdges = function(t) {
for (var e = t.iterator(); e.hasNext();) {
var n = e.next();
this._edges.add(n);
var r = new Gl(n, !0),
i = new Gl(n, !1);
r.setSym(i),
i.setSym(r),
this.add(r),
this.add(i)
}
},
zl.prototype.add = function(t) {
this._nodes.add(t),
this._edgeEndList.add(t)
},
zl.prototype.getNodes = function() {
return this._nodes.values()
},
zl.prototype.findEdge = function(t, e) {
for (var n = 0; n < this._edges.size(); n++) {
var r = this._edges.get(n),
i = r.getCoordinates();
if (t.equals(i[0]) && e.equals(i[1])) return r
}
return null
},
zl.prototype.interfaces_ = function() {
return []
},
zl.prototype.getClass = function() {
return zl
},
zl.linkResultDirectedEdges = function(t) {
for (var e = t.iterator(); e.hasNext();) e.next().getEdges().linkResultDirectedEdges()
};
var Yl = function() {
this._geometryFactory = null,
this._shellList = new xc;
var t = arguments[0];
this._geometryFactory = t
};
Yl.prototype.sortShellsAndHoles = function(t, e, n) {
for (var r = t.iterator(); r.hasNext();) {
var i = r.next();
i.isHole() ? n.add(i) : e.add(i)
}
},
Yl.prototype.computePolygons = function(t) {
for (var e = new xc,
n = t.iterator(); n.hasNext();) {
var r = n.next().toPolygon(this._geometryFactory);
e.add(r)
}
return e
},
Yl.prototype.placeFreeHoles = function(t, e) {
for (var n = e.iterator(); n.hasNext();) {
var r = n.next();
if (null === r.getShell()) {
var i = this.findEdgeRingContaining(r, t);
if (null === i) throw new Cl("unable to assign hole to a shell", r.getCoordinate(0));
r.setShell(i)
}
}
},
Yl.prototype.buildMinimalEdgeRings = function(t, e, n) {
for (var r = new xc,
i = t.iterator(); i.hasNext();) {
var o = i.next();
if (o.getMaxNodeDegree() > 2) {
o.linkDirectedEdgesForMinimalEdgeRings();
var s = o.buildMinimalRings(),
a = this.findShell(s);
null !== a ? (this.placePolygonHoles(a, s), e.add(a)) : n.addAll(s)
} else r.add(o)
}
return r
},
Yl.prototype.containsPoint = function(t) {
for (var e = this._shellList.iterator(); e.hasNext();) if (e.next().containsPoint(t)) return ! 0;
return ! 1
},
Yl.prototype.buildMaximalEdgeRings = function(t) {
for (var e = new xc,
n = t.iterator(); n.hasNext();) {
var r = n.next();
if (r.isInResult() && r.getLabel().isArea() && null === r.getEdgeRing()) {
var i = new Rl(r, this._geometryFactory);
e.add(i),
i.setInResult()
}
}
return e
},
Yl.prototype.placePolygonHoles = function(t, e) {
for (var n = e.iterator(); n.hasNext();) {
var r = n.next();
r.isHole() && r.setShell(t)
}
},
Yl.prototype.getPolygons = function() {
return this.computePolygons(this._shellList)
},
Yl.prototype.findEdgeRingContaining = function(t, e) {
for (var n = t.getLinearRing(), r = n.getEnvelopeInternal(), i = n.getCoordinateN(0), o = null, s = null, a = e.iterator(); a.hasNext();) {
var u = a.next(),
c = u.getLinearRing(),
l = c.getEnvelopeInternal();
null !== o && (s = o.getLinearRing().getEnvelopeInternal());
var h = !1;
l.contains(r) && oc.isPointInRing(i, c.getCoordinates()) && (h = !0),
h && (null === o || s.contains(l)) && (o = u)
}
return o
},
Yl.prototype.findShell = function(t) {
for (var e = 0,
n = null,
r = t.iterator(); r.hasNext();) {
var i = r.next();
i.isHole() || (n = i, e++)
}
return $u.isTrue(e <= 1, "found two shells in MinimalEdgeRing list"),
n
},
Yl.prototype.add = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.add(t.getEdgeEnds(), t.getNodes())
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
zl.linkResultDirectedEdges(n);
var r = this.buildMaximalEdgeRings(e),
i = new xc,
o = this.buildMinimalEdgeRings(r, this._shellList, i);
this.sortShellsAndHoles(o, this._shellList, i),
this.placeFreeHoles(this._shellList, i)
}
},
Yl.prototype.interfaces_ = function() {
return []
},
Yl.prototype.getClass = function() {
return Yl
};
var Xl = function() {};
Xl.prototype.getBounds = function() {},
Xl.prototype.interfaces_ = function() {
return []
},
Xl.prototype.getClass = function() {
return Xl
};
var Vl = function() {
this._bounds = null,
this._item = null;
var t = arguments[0],
e = arguments[1];
this._bounds = t,
this._item = e
};
Vl.prototype.getItem = function() {
return this._item
},
Vl.prototype.getBounds = function() {
return this._bounds
},
Vl.prototype.interfaces_ = function() {
return [Xl, Pi]
},
Vl.prototype.getClass = function() {
return Vl
};
var Wl = function() {
this._size = null,
this._items = null,
this._size = 0,
this._items = new xc,
this._items.add(null)
};
Wl.prototype.poll = function() {
if (this.isEmpty()) return null;
var t = this._items.get(1);
return this._items.set(1, this._items.get(this._size)),
this._size -= 1,
this.reorder(1),
t
},
Wl.prototype.size = function() {
return this._size
},
Wl.prototype.reorder = function(t) {
for (var e = null,
n = this._items.get(t); 2 * t <= this._size && ((e = 2 * t) !== this._size && this._items.get(e + 1).compareTo(this._items.get(e)) < 0 && e++, this._items.get(e).compareTo(n) < 0); t = e) this._items.set(t, this._items.get(e));
this._items.set(t, n)
},
Wl.prototype.clear = function() {
this._size = 0,
this._items.clear()
},
Wl.prototype.isEmpty = function() {
return 0 === this._size
},
Wl.prototype.add = function(t) {
this._items.add(null),
this._size += 1;
var e = this._size;
for (this._items.set(0, t); t.compareTo(this._items.get(Math.trunc(e / 2))) < 0; e /= 2) this._items.set(e, this._items.get(Math.trunc(e / 2)));
this._items.set(e, t)
},
Wl.prototype.interfaces_ = function() {
return []
},
Wl.prototype.getClass = function() {
return Wl
};
var Hl = function() {};
Hl.prototype.visitItem = function(t) {},
Hl.prototype.interfaces_ = function() {
return []
},
Hl.prototype.getClass = function() {
return Hl
};
var Jl = function() {};
Jl.prototype.insert = function(t, e) {},
Jl.prototype.remove = function(t, e) {},
Jl.prototype.query = function() {},
Jl.prototype.interfaces_ = function() {
return []
},
Jl.prototype.getClass = function() {
return Jl
};
var Zl = function() {
if (this._childBoundables = new xc, this._bounds = null, this._level = null, 0 === arguments.length);
else if (1 === arguments.length) {
var t = arguments[0];
this._level = t
}
},
Ql = {
serialVersionUID: {
configurable: !0
}
};
Zl.prototype.getLevel = function() {
return this._level
},
Zl.prototype.size = function() {
return this._childBoundables.size()
},
Zl.prototype.getChildBoundables = function() {
return this._childBoundables
},
Zl.prototype.addChildBoundable = function(t) {
$u.isTrue(null === this._bounds),
this._childBoundables.add(t)
},
Zl.prototype.isEmpty = function() {
return this._childBoundables.isEmpty()
},
Zl.prototype.getBounds = function() {
return null === this._bounds && (this._bounds = this.computeBounds()),
this._bounds
},
Zl.prototype.interfaces_ = function() {
return [Xl, Pi]
},
Zl.prototype.getClass = function() {
return Zl
},
Ql.serialVersionUID.get = function() {
return 0x5a1e55ec41369800
},
Object.defineProperties(Zl, Ql);
var Kl = function() {};
Kl.reverseOrder = function() {
return {
compare: function(t, e) {
return e.compareTo(t)
}
}
},
Kl.min = function(t) {
return Kl.sort(t),
t.get(0)
},
Kl.sort = function(t, e) {
var n = t.toArray();
e ? kc.sort(n, e) : kc.sort(n);
for (var r = t.iterator(), i = 0, o = n.length; i < o; i++) r.next(),
r.set(n[i])
},
Kl.singletonList = function(t) {
var e = new xc;
return e.add(t),
e
};
var $l = function() {
this._boundable1 = null,
this._boundable2 = null,
this._distance = null,
this._itemDistance = null;
var t = arguments[0],
e = arguments[1],
n = arguments[2];
this._boundable1 = t,
this._boundable2 = e,
this._itemDistance = n,
this._distance = this.distance()
};
$l.prototype.expandToQueue = function(t, e) {
var n = $l.isComposite(this._boundable1),
r = $l.isComposite(this._boundable2);
if (n && r) return $l.area(this._boundable1) > $l.area(this._boundable2) ? (this.expand(this._boundable1, this._boundable2, t, e), null) : (this.expand(this._boundable2, this._boundable1, t, e), null);
if (n) return this.expand(this._boundable1, this._boundable2, t, e),
null;
if (r) return this.expand(this._boundable2, this._boundable1, t, e),
null;
throw new yu("neither boundable is composite")
},
$l.prototype.isLeaves = function() {
return ! ($l.isComposite(this._boundable1) || $l.isComposite(this._boundable2))
},
$l.prototype.compareTo = function(t) {
var e = t;
return this._distance < e._distance ? -1 : this._distance > e._distance ? 1 : 0
},
$l.prototype.expand = function(t, e, n, r) {
for (var i = t.getChildBoundables().iterator(); i.hasNext();) {
var o = i.next(),
s = new $l(o, e, this._itemDistance);
s.getDistance() < r && n.add(s)
}
},
$l.prototype.getBoundable = function(t) {
return 0 === t ? this._boundable1: this._boundable2
},
$l.prototype.getDistance = function() {
return this._distance
},
$l.prototype.distance = function() {
return this.isLeaves() ? this._itemDistance.distance(this._boundable1, this._boundable2) : this._boundable1.getBounds().distance(this._boundable2.getBounds())
},
$l.prototype.interfaces_ = function() {
return [_u]
},
$l.prototype.getClass = function() {
return $l
},
$l.area = function(t) {
return t.getBounds().getArea()
},
$l.isComposite = function(t) {
return t instanceof Zl
};
var th = function t() {
if (this._root = null, this._built = !1, this._itemBoundables = new xc, this._nodeCapacity = null, 0 === arguments.length) {
var e = t.DEFAULT_NODE_CAPACITY;
this._nodeCapacity = e
} else if (1 === arguments.length) {
var n = arguments[0];
$u.isTrue(n > 1, "Node capacity must be greater than 1"),
this._nodeCapacity = n
}
},
eh = {
IntersectsOp: {
configurable: !0
},
serialVersionUID: {
configurable: !0
},
DEFAULT_NODE_CAPACITY: {
configurable: !0
}
};
th.prototype.getNodeCapacity = function() {
return this._nodeCapacity
},
th.prototype.lastNode = function(t) {
return t.get(t.size() - 1)
},
th.prototype.size = function() {
if (0 === arguments.length) return this.isEmpty() ? 0 : (this.build(), this.size(this._root));
if (1 === arguments.length) {
for (var t = 0,
e = arguments[0].getChildBoundables().iterator(); e.hasNext();) {
var n = e.next();
n instanceof Zl ? t += this.size(n) : n instanceof Vl && (t += 1)
}
return t
}
},
th.prototype.removeItem = function(t, e) {
for (var n = null,
r = t.getChildBoundables().iterator(); r.hasNext();) {
var i = r.next();
i instanceof Vl && i.getItem() === e && (n = i)
}
return null !== n && (t.getChildBoundables().remove(n), !0)
},
th.prototype.itemsTree = function() {
if (0 === arguments.length) {
this.build();
var t = this.itemsTree(this._root);
return null === t ? new xc: t
}
if (1 === arguments.length) {
for (var e = arguments[0], n = new xc, r = e.getChildBoundables().iterator(); r.hasNext();) {
var i = r.next();
if (i instanceof Zl) {
var o = this.itemsTree(i);
null !== o && n.add(o)
} else i instanceof Vl ? n.add(i.getItem()) : $u.shouldNeverReachHere()
}
return n.size() <= 0 ? null: n
}
},
th.prototype.insert = function(t, e) {
$u.isTrue(!this._built, "Cannot insert items into an STR packed R-tree after it has been built."),
this._itemBoundables.add(new Vl(t, e))
},
th.prototype.boundablesAtLevel = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = new xc;
return this.boundablesAtLevel(t, this._root, e),
e
}
if (3 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2];
if ($u.isTrue(n > -2), r.getLevel() === n) return i.add(r),
null;
for (var o = r.getChildBoundables().iterator(); o.hasNext();) {
var s = o.next();
s instanceof Zl ? this.boundablesAtLevel(n, s, i) : ($u.isTrue(s instanceof Vl), -1 === n && i.add(s))
}
return null
}
},
th.prototype.query = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.build();
var e = new xc;
return this.isEmpty() ? e: (this.getIntersectsOp().intersects(this._root.getBounds(), t) && this.query(t, this._root, e), e)
}
if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
if (this.build(), this.isEmpty()) return null;
this.getIntersectsOp().intersects(this._root.getBounds(), n) && this.query(n, this._root, r)
} else if (3 === arguments.length) if (Nu(arguments[2], Hl) && arguments[0] instanceof Object && arguments[1] instanceof Zl) for (var i = arguments[0], o = arguments[1], s = arguments[2], a = o.getChildBoundables(), u = 0; u < a.size(); u++) {
var c = a.get(u);
this.getIntersectsOp().intersects(c.getBounds(), i) && (c instanceof Zl ? this.query(i, c, s) : c instanceof Vl ? s.visitItem(c.getItem()) : $u.shouldNeverReachHere())
} else if (Nu(arguments[2], bc) && arguments[0] instanceof Object && arguments[1] instanceof Zl) for (var l = arguments[0], h = arguments[1], f = arguments[2], p = h.getChildBoundables(), d = 0; d < p.size(); d++) {
var g = p.get(d);
this.getIntersectsOp().intersects(g.getBounds(), l) && (g instanceof Zl ? this.query(l, g, f) : g instanceof Vl ? f.add(g.getItem()) : $u.shouldNeverReachHere())
}
},
th.prototype.build = function() {
if (this._built) return null;
this._root = this._itemBoundables.isEmpty() ? this.createNode(0) : this.createHigherLevels(this._itemBoundables, -1),
this._itemBoundables = null,
this._built = !0
},
th.prototype.getRoot = function() {
return this.build(),
this._root
},
th.prototype.remove = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
return this.build(),
!!this.getIntersectsOp().intersects(this._root.getBounds(), t) && this.remove(t, this._root, e)
}
if (3 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2],
o = this.removeItem(r, i);
if (o) return ! 0;
for (var s = null,
a = r.getChildBoundables().iterator(); a.hasNext();) {
var u = a.next();
if (this.getIntersectsOp().intersects(u.getBounds(), n) && u instanceof Zl && (o = this.remove(n, u, i))) {
s = u;
break
}
}
return null !== s && s.getChildBoundables().isEmpty() && r.getChildBoundables().remove(s),
o
}
},
th.prototype.createHigherLevels = function(t, e) {
$u.isTrue(!t.isEmpty());
var n = this.createParentBoundables(t, e + 1);
return 1 === n.size() ? n.get(0) : this.createHigherLevels(n, e + 1)
},
th.prototype.depth = function() {
if (0 === arguments.length) return this.isEmpty() ? 0 : (this.build(), this.depth(this._root));
if (1 === arguments.length) {
for (var t = 0,
e = arguments[0].getChildBoundables().iterator(); e.hasNext();) {
var n = e.next();
if (n instanceof Zl) {
var r = this.depth(n);
r > t && (t = r)
}
}
return t + 1
}
},
th.prototype.createParentBoundables = function(t, e) {
$u.isTrue(!t.isEmpty());
var n = new xc;
n.add(this.createNode(e));
var r = new xc(t);
Kl.sort(r, this.getComparator());
for (var i = r.iterator(); i.hasNext();) {
var o = i.next();
this.lastNode(n).getChildBoundables().size() === this.getNodeCapacity() && n.add(this.createNode(e)),
this.lastNode(n).addChildBoundable(o)
}
return n
},
th.prototype.isEmpty = function() {
return this._built ? this._root.isEmpty() : this._itemBoundables.isEmpty()
},
th.prototype.interfaces_ = function() {
return [Pi]
},
th.prototype.getClass = function() {
return th
},
th.compareDoubles = function(t, e) {
return t > e ? 1 : t < e ? -1 : 0
},
eh.IntersectsOp.get = function() {
return nh
},
eh.serialVersionUID.get = function() {
return - 0x35ef64c82d4c5400
},
eh.DEFAULT_NODE_CAPACITY.get = function() {
return 10
},
Object.defineProperties(th, eh);
var nh = function() {},
rh = function() {};
rh.prototype.distance = function(t, e) {},
rh.prototype.interfaces_ = function() {
return []
},
rh.prototype.getClass = function() {
return rh
};
var ih = function(t) {
function e(n) {
n = n || e.DEFAULT_NODE_CAPACITY,
t.call(this, n)
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
STRtreeNode: {
configurable: !0
},
serialVersionUID: {
configurable: !0
},
xComparator: {
configurable: !0
},
yComparator: {
configurable: !0
},
intersectsOp: {
configurable: !0
},
DEFAULT_NODE_CAPACITY: {
configurable: !0
}
};
return e.prototype.createParentBoundablesFromVerticalSlices = function(t, e) {
$u.isTrue(t.length > 0);
for (var n = new xc,
r = 0; r < t.length; r++) n.addAll(this.createParentBoundablesFromVerticalSlice(t[r], e));
return n
},
e.prototype.createNode = function(t) {
return new oh(t)
},
e.prototype.size = function() {
return 0 === arguments.length ? t.prototype.size.call(this) : t.prototype.size.apply(this, arguments)
},
e.prototype.insert = function() {
if (2 !== arguments.length) return t.prototype.insert.apply(this, arguments);
var e = arguments[0],
n = arguments[1];
if (e.isNull()) return null;
t.prototype.insert.call(this, e, n)
},
e.prototype.getIntersectsOp = function() {
return e.intersectsOp
},
e.prototype.verticalSlices = function(t, e) {
for (var n = Math.trunc(Math.ceil(t.size() / e)), r = new Array(e).fill(null), i = t.iterator(), o = 0; o < e; o++) {
r[o] = new xc;
for (var s = 0; i.hasNext() && s < n;) {
var a = i.next();
r[o].add(a),
s++
}
}
return r
},
e.prototype.query = function() {
if (1 === arguments.length) {
var e = arguments[0];
return t.prototype.query.call(this, e)
}
if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
t.prototype.query.call(this, n, r)
} else if (3 === arguments.length) if (Nu(arguments[2], Hl) && arguments[0] instanceof Object && arguments[1] instanceof Zl) {
var i = arguments[0],
o = arguments[1],
s = arguments[2];
t.prototype.query.call(this, i, o, s)
} else if (Nu(arguments[2], bc) && arguments[0] instanceof Object && arguments[1] instanceof Zl) {
var a = arguments[0],
u = arguments[1],
c = arguments[2];
t.prototype.query.call(this, a, u, c)
}
},
e.prototype.getComparator = function() {
return e.yComparator
},
e.prototype.createParentBoundablesFromVerticalSlice = function(e, n) {
return t.prototype.createParentBoundables.call(this, e, n)
},
e.prototype.remove = function() {
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return t.prototype.remove.call(this, e, n)
}
return t.prototype.remove.apply(this, arguments)
},
e.prototype.depth = function() {
return 0 === arguments.length ? t.prototype.depth.call(this) : t.prototype.depth.apply(this, arguments)
},
e.prototype.createParentBoundables = function(t, n) {
$u.isTrue(!t.isEmpty());
var r = Math.trunc(Math.ceil(t.size() / this.getNodeCapacity())),
i = new xc(t);
Kl.sort(i, e.xComparator);
var o = this.verticalSlices(i, Math.trunc(Math.ceil(Math.sqrt(r))));
return this.createParentBoundablesFromVerticalSlices(o, n)
},
e.prototype.nearestNeighbour = function() {
if (1 === arguments.length) {
if (Nu(arguments[0], rh)) {
var t = arguments[0],
n = new $l(this.getRoot(), this.getRoot(), t);
return this.nearestNeighbour(n)
}
if (arguments[0] instanceof $l) {
var r = arguments[0];
return this.nearestNeighbour(r, vu.POSITIVE_INFINITY)
}
} else if (2 === arguments.length) {
if (arguments[0] instanceof e && Nu(arguments[1], rh)) {
var i = arguments[0],
o = arguments[1],
s = new $l(this.getRoot(), i.getRoot(), o);
return this.nearestNeighbour(s)
}
if (arguments[0] instanceof $l && "number" == typeof arguments[1]) {
var a = arguments[0],
u = arguments[1],
c = null,
l = new Wl;
for (l.add(a); ! l.isEmpty() && u > 0;) {
var h = l.poll(),
f = h.getDistance();
if (f >= u) break;
h.isLeaves() ? (u = f, c = h) : h.expandToQueue(l, u)
}
return [c.getBoundable(0).getItem(), c.getBoundable(1).getItem()]
}
} else if (3 === arguments.length) {
var p = arguments[0],
d = arguments[1],
g = arguments[2],
y = new Vl(p, d),
v = new $l(this.getRoot(), y, g);
return this.nearestNeighbour(v)[0]
}
},
e.prototype.interfaces_ = function() {
return [Jl, Pi]
},
e.prototype.getClass = function() {
return e
},
e.centreX = function(t) {
return e.avg(t.getMinX(), t.getMaxX())
},
e.avg = function(t, e) {
return (t + e) / 2
},
e.centreY = function(t) {
return e.avg(t.getMinY(), t.getMaxY())
},
n.STRtreeNode.get = function() {
return oh
},
n.serialVersionUID.get = function() {
return 0x39920f7d5f261e0
},
n.xComparator.get = function() {
return {
interfaces_: function() {
return [bu]
},
compare: function(n, r) {
return t.compareDoubles(e.centreX(n.getBounds()), e.centreX(r.getBounds()))
}
}
},
n.yComparator.get = function() {
return {
interfaces_: function() {
return [bu]
},
compare: function(n, r) {
return t.compareDoubles(e.centreY(n.getBounds()), e.centreY(r.getBounds()))
}
}
},
n.intersectsOp.get = function() {
return {
interfaces_: function() {
return [t.IntersectsOp]
},
intersects: function(t, e) {
return t.intersects(e)
}
}
},
n.DEFAULT_NODE_CAPACITY.get = function() {
return 10
},
Object.defineProperties(e, n),
e
} (th),
oh = function(t) {
function e() {
var e = arguments[0];
t.call(this, e)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.computeBounds = function() {
for (var t = null,
e = this.getChildBoundables().iterator(); e.hasNext();) {
var n = e.next();
null === t ? t = new Yu(n.getBounds()) : t.expandToInclude(n.getBounds())
}
return t
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Zl),
sh = function() {};
sh.prototype.interfaces_ = function() {
return []
},
sh.prototype.getClass = function() {
return sh
},
sh.relativeSign = function(t, e) {
return t < e ? -1 : t > e ? 1 : 0
},
sh.compare = function(t, e, n) {
if (e.equals2D(n)) return 0;
var r = sh.relativeSign(e.x, n.x),
i = sh.relativeSign(e.y, n.y);
switch (t) {
case 0:
return sh.compareValue(r, i);
case 1:
return sh.compareValue(i, r);
case 2:
return sh.compareValue(i, -r);
case 3:
return sh.compareValue( - r, i);
case 4:
return sh.compareValue( - r, -i);
case 5:
return sh.compareValue( - i, -r);
case 6:
return sh.compareValue( - i, r);
case 7:
return sh.compareValue(r, -i)
}
return $u.shouldNeverReachHere("invalid octant value"),
0
},
sh.compareValue = function(t, e) {
return t < 0 ? -1 : t > 0 ? 1 : e < 0 ? -1 : e > 0 ? 1 : 0
};
var ah = function() {
this._segString = null,
this.coord = null,
this.segmentIndex = null,
this._segmentOctant = null,
this._isInterior = null;
var t = arguments[0],
e = arguments[1],
n = arguments[2],
r = arguments[3];
this._segString = t,
this.coord = new xu(e),
this.segmentIndex = n,
this._segmentOctant = r,
this._isInterior = !e.equals2D(t.getCoordinate(n))
};
ah.prototype.getCoordinate = function() {
return this.coord
},
ah.prototype.print = function(t) {
t.print(this.coord),
t.print(" seg # = " + this.segmentIndex)
},
ah.prototype.compareTo = function(t) {
var e = t;
return this.segmentIndex < e.segmentIndex ? -1 : this.segmentIndex > e.segmentIndex ? 1 : this.coord.equals2D(e.coord) ? 0 : sh.compare(this._segmentOctant, this.coord, e.coord)
},
ah.prototype.isEndPoint = function(t) {
return 0 === this.segmentIndex && !this._isInterior || this.segmentIndex === t
},
ah.prototype.isInterior = function() {
return this._isInterior
},
ah.prototype.interfaces_ = function() {
return [_u]
},
ah.prototype.getClass = function() {
return ah
};
var uh = function() {
this._nodeMap = new ji,
this._edge = null;
var t = arguments[0];
this._edge = t
};
uh.prototype.getSplitCoordinates = function() {
var t = new Mc;
this.addEndpoints();
for (var e = this.iterator(), n = e.next(); e.hasNext();) {
var r = e.next();
this.addEdgeCoordinates(n, r, t),
n = r
}
return t.toCoordinateArray()
},
uh.prototype.addCollapsedNodes = function() {
var t = new xc;
this.findCollapsesFromInsertedNodes(t),
this.findCollapsesFromExistingVertices(t);
for (var e = t.iterator(); e.hasNext();) {
var n = e.next().intValue();
this.add(this._edge.getCoordinate(n), n)
}
},
uh.prototype.print = function(t) {
t.println("Intersections:");
for (var e = this.iterator(); e.hasNext();) e.next().print(t)
},
uh.prototype.findCollapsesFromExistingVertices = function(t) {
for (var e = 0; e < this._edge.size() - 2; e++) {
var n = this._edge.getCoordinate(e),
r = this._edge.getCoordinate(e + 2);
n.equals2D(r) && t.add(new Ou(e + 1))
}
},
uh.prototype.addEdgeCoordinates = function(t, e, n) {
var r = this._edge.getCoordinate(e.segmentIndex),
i = e.isInterior() || !e.coord.equals2D(r);
n.add(new xu(t.coord), !1);
for (var o = t.segmentIndex + 1; o <= e.segmentIndex; o++) n.add(this._edge.getCoordinate(o));
i && n.add(new xu(e.coord))
},
uh.prototype.iterator = function() {
return this._nodeMap.values().iterator()
},
uh.prototype.addSplitEdges = function(t) {
this.addEndpoints(),
this.addCollapsedNodes();
for (var e = this.iterator(), n = e.next(); e.hasNext();) {
var r = e.next(),
i = this.createSplitEdge(n, r);
t.add(i),
n = r
}
},
uh.prototype.findCollapseIndex = function(t, e, n) {
if (!t.coord.equals2D(e.coord)) return ! 1;
var r = e.segmentIndex - t.segmentIndex;
return e.isInterior() || r--,
1 === r && (n[0] = t.segmentIndex + 1, !0)
},
uh.prototype.findCollapsesFromInsertedNodes = function(t) {
for (var e = new Array(1).fill(null), n = this.iterator(), r = n.next(); n.hasNext();) {
var i = n.next();
this.findCollapseIndex(r, i, e) && t.add(new Ou(e[0])),
r = i
}
},
uh.prototype.getEdge = function() {
return this._edge
},
uh.prototype.addEndpoints = function() {
var t = this._edge.size() - 1;
this.add(this._edge.getCoordinate(0), 0),
this.add(this._edge.getCoordinate(t), t)
},
uh.prototype.createSplitEdge = function(t, e) {
var n = e.segmentIndex - t.segmentIndex + 2,
r = this._edge.getCoordinate(e.segmentIndex),
i = e.isInterior() || !e.coord.equals2D(r);
i || n--;
var o = new Array(n).fill(null),
s = 0;
o[s++] = new xu(t.coord);
for (var a = t.segmentIndex + 1; a <= e.segmentIndex; a++) o[s++] = this._edge.getCoordinate(a);
return i && (o[s] = new xu(e.coord)),
new fh(o, this._edge.getData())
},
uh.prototype.add = function(t, e) {
var n = new ah(this._edge, t, e, this._edge.getSegmentOctant(e)),
r = this._nodeMap.get(n);
return null !== r ? ($u.isTrue(r.coord.equals2D(t), "Found equal nodes with different coordinates"), r) : (this._nodeMap.put(n, n), n)
},
uh.prototype.checkSplitEdgesCorrectness = function(t) {
var e = this._edge.getCoordinates(),
n = t.get(0).getCoordinate(0);
if (!n.equals2D(e[0])) throw new Qu("bad split edge start point at " + n);
var r = t.get(t.size() - 1).getCoordinates(),
i = r[r.length - 1];
if (!i.equals2D(e[e.length - 1])) throw new Qu("bad split edge end point at " + i)
},
uh.prototype.interfaces_ = function() {
return []
},
uh.prototype.getClass = function() {
return uh
};
var ch = function() {};
ch.prototype.interfaces_ = function() {
return []
},
ch.prototype.getClass = function() {
return ch
},
ch.octant = function() {
if ("number" == typeof arguments[0] && "number" == typeof arguments[1]) {
var t = arguments[0],
e = arguments[1];
if (0 === t && 0 === e) throw new yu("Cannot compute the octant for point ( " + t + ", " + e + " )");
var n = Math.abs(t),
r = Math.abs(e);
return t >= 0 ? e >= 0 ? n >= r ? 0 : 1 : n >= r ? 7 : 6 : e >= 0 ? n >= r ? 3 : 2 : n >= r ? 4 : 5
}
if (arguments[0] instanceof xu && arguments[1] instanceof xu) {
var i = arguments[0],
o = arguments[1],
s = o.x - i.x,
a = o.y - i.y;
if (0 === s && 0 === a) throw new yu("Cannot compute the octant for two identical points " + i);
return ch.octant(s, a)
}
};
var lh = function() {};
lh.prototype.getCoordinates = function() {},
lh.prototype.size = function() {},
lh.prototype.getCoordinate = function(t) {},
lh.prototype.isClosed = function() {},
lh.prototype.setData = function(t) {},
lh.prototype.getData = function() {},
lh.prototype.interfaces_ = function() {
return []
},
lh.prototype.getClass = function() {
return lh
};
var hh = function() {};
hh.prototype.addIntersection = function(t, e) {},
hh.prototype.interfaces_ = function() {
return [lh]
},
hh.prototype.getClass = function() {
return hh
};
var fh = function() {
this._nodeList = new uh(this),
this._pts = null,
this._data = null;
var t = arguments[0],
e = arguments[1];
this._pts = t,
this._data = e
};
fh.prototype.getCoordinates = function() {
return this._pts
},
fh.prototype.size = function() {
return this._pts.length
},
fh.prototype.getCoordinate = function(t) {
return this._pts[t]
},
fh.prototype.isClosed = function() {
return this._pts[0].equals(this._pts[this._pts.length - 1])
},
fh.prototype.getSegmentOctant = function(t) {
return t === this._pts.length - 1 ? -1 : this.safeOctant(this.getCoordinate(t), this.getCoordinate(t + 1))
},
fh.prototype.setData = function(t) {
this._data = t
},
fh.prototype.safeOctant = function(t, e) {
return t.equals2D(e) ? 0 : ch.octant(t, e)
},
fh.prototype.getData = function() {
return this._data
},
fh.prototype.addIntersection = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
this.addIntersectionNode(t, e)
} else if (4 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[3],
o = new xu(n.getIntersection(i));
this.addIntersection(o, r)
}
},
fh.prototype.toString = function() {
return Zu.toLineString(new al(this._pts))
},
fh.prototype.getNodeList = function() {
return this._nodeList
},
fh.prototype.addIntersectionNode = function(t, e) {
var n = e,
r = n + 1;
if (r < this._pts.length) {
var i = this._pts[r];
t.equals2D(i) && (n = r)
}
return this._nodeList.add(t, n)
},
fh.prototype.addIntersections = function(t, e, n) {
for (var r = 0; r < t.getIntersectionNum(); r++) this.addIntersection(t, e, n, r)
},
fh.prototype.interfaces_ = function() {
return [hh]
},
fh.prototype.getClass = function() {
return fh
},
fh.getNodedSubstrings = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = new xc;
return fh.getNodedSubstrings(t, e),
e
}
if (2 === arguments.length) for (var n = arguments[0], r = arguments[1], i = n.iterator(); i.hasNext();) i.next().getNodeList().addSplitEdges(r)
};
var ph = function() {
if (this.p0 = null, this.p1 = null, 0 === arguments.length) this.p0 = new xu,
this.p1 = new xu;
else if (1 === arguments.length) {
var t = arguments[0];
this.p0 = new xu(t.p0),
this.p1 = new xu(t.p1)
} else if (2 === arguments.length) this.p0 = arguments[0],
this.p1 = arguments[1];
else if (4 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = arguments[2],
i = arguments[3];
this.p0 = new xu(e, n),
this.p1 = new xu(r, i)
}
},
dh = {
serialVersionUID: {
configurable: !0
}
};
ph.prototype.minX = function() {
return Math.min(this.p0.x, this.p1.x)
},
ph.prototype.orientationIndex = function() {
if (arguments[0] instanceof ph) {
var t = arguments[0],
e = oc.orientationIndex(this.p0, this.p1, t.p0),
n = oc.orientationIndex(this.p0, this.p1, t.p1);
return e >= 0 && n >= 0 ? Math.max(e, n) : e <= 0 && n <= 0 ? Math.max(e, n) : 0
}
if (arguments[0] instanceof xu) {
var r = arguments[0];
return oc.orientationIndex(this.p0, this.p1, r)
}
},
ph.prototype.toGeometry = function(t) {
return t.createLineString([this.p0, this.p1])
},
ph.prototype.isVertical = function() {
return this.p0.x === this.p1.x
},
ph.prototype.equals = function(t) {
if (! (t instanceof ph)) return ! 1;
var e = t;
return this.p0.equals(e.p0) && this.p1.equals(e.p1)
},
ph.prototype.intersection = function(t) {
var e = new nc;
return e.computeIntersection(this.p0, this.p1, t.p0, t.p1),
e.hasIntersection() ? e.getIntersection(0) : null
},
ph.prototype.project = function() {
if (arguments[0] instanceof xu) {
var t = arguments[0];
if (t.equals(this.p0) || t.equals(this.p1)) return new xu(t);
var e = this.projectionFactor(t),
n = new xu;
return n.x = this.p0.x + e * (this.p1.x - this.p0.x),
n.y = this.p0.y + e * (this.p1.y - this.p0.y),
n
}
if (arguments[0] instanceof ph) {
var r = arguments[0],
i = this.projectionFactor(r.p0),
o = this.projectionFactor(r.p1);
if (i >= 1 && o >= 1) return null;
if (i <= 0 && o <= 0) return null;
var s = this.project(r.p0);
i < 0 && (s = this.p0),
i > 1 && (s = this.p1);
var a = this.project(r.p1);
return o < 0 && (a = this.p0),
o > 1 && (a = this.p1),
new ph(s, a)
}
},
ph.prototype.normalize = function() {
this.p1.compareTo(this.p0) < 0 && this.reverse()
},
ph.prototype.angle = function() {
return Math.atan2(this.p1.y - this.p0.y, this.p1.x - this.p0.x)
},
ph.prototype.getCoordinate = function(t) {
return 0 === t ? this.p0: this.p1
},
ph.prototype.distancePerpendicular = function(t) {
return oc.distancePointLinePerpendicular(t, this.p0, this.p1)
},
ph.prototype.minY = function() {
return Math.min(this.p0.y, this.p1.y)
},
ph.prototype.midPoint = function() {
return ph.midPoint(this.p0, this.p1)
},
ph.prototype.projectionFactor = function(t) {
if (t.equals(this.p0)) return 0;
if (t.equals(this.p1)) return 1;
var e = this.p1.x - this.p0.x,
n = this.p1.y - this.p0.y,
r = e * e + n * n;
return r <= 0 ? vu.NaN: ((t.x - this.p0.x) * e + (t.y - this.p0.y) * n) / r
},
ph.prototype.closestPoints = function(t) {
var e = this.intersection(t);
if (null !== e) return [e, e];
var n = new Array(2).fill(null),
r = vu.MAX_VALUE,
i = null,
o = this.closestPoint(t.p0);
r = o.distance(t.p0),
n[0] = o,
n[1] = t.p0;
var s = this.closestPoint(t.p1); (i = s.distance(t.p1)) < r && (r = i, n[0] = s, n[1] = t.p1);
var a = t.closestPoint(this.p0); (i = a.distance(this.p0)) < r && (r = i, n[0] = this.p0, n[1] = a);
var u = t.closestPoint(this.p1);
return (i = u.distance(this.p1)) < r && (r = i, n[0] = this.p1, n[1] = u),
n
},
ph.prototype.closestPoint = function(t) {
var e = this.projectionFactor(t);
return e > 0 && e < 1 ? this.project(t) : this.p0.distance(t) < this.p1.distance(t) ? this.p0: this.p1
},
ph.prototype.maxX = function() {
return Math.max(this.p0.x, this.p1.x)
},
ph.prototype.getLength = function() {
return this.p0.distance(this.p1)
},
ph.prototype.compareTo = function(t) {
var e = t,
n = this.p0.compareTo(e.p0);
return 0 !== n ? n: this.p1.compareTo(e.p1)
},
ph.prototype.reverse = function() {
var t = this.p0;
this.p0 = this.p1,
this.p1 = t
},
ph.prototype.equalsTopo = function(t) {
return this.p0.equals(t.p0) && (this.p1.equals(t.p1) || this.p0.equals(t.p1)) && this.p1.equals(t.p0)
},
ph.prototype.lineIntersection = function(t) {
try {
return zu.intersection(this.p0, this.p1, t.p0, t.p1)
} catch(t) {
if (! (t instanceof Gu)) throw t
}
return null
},
ph.prototype.maxY = function() {
return Math.max(this.p0.y, this.p1.y)
},
ph.prototype.pointAlongOffset = function(t, e) {
var n = this.p0.x + t * (this.p1.x - this.p0.x),
r = this.p0.y + t * (this.p1.y - this.p0.y),
i = this.p1.x - this.p0.x,
o = this.p1.y - this.p0.y,
s = Math.sqrt(i * i + o * o),
a = 0,
u = 0;
if (0 !== e) {
if (s <= 0) throw new Error("Cannot compute offset from zero-length line segment");
a = e * i / s,
u = e * o / s
}
return new xu(n - u, r + a)
},
ph.prototype.setCoordinates = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.setCoordinates(t.p0, t.p1)
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
this.p0.x = e.x,
this.p0.y = e.y,
this.p1.x = n.x,
this.p1.y = n.y
}
},
ph.prototype.segmentFraction = function(t) {
var e = this.projectionFactor(t);
return e < 0 ? e = 0 : (e > 1 || vu.isNaN(e)) && (e = 1),
e
},
ph.prototype.toString = function() {
return "LINESTRING( " + this.p0.x + " " + this.p0.y + ", " + this.p1.x + " " + this.p1.y + ")"
},
ph.prototype.isHorizontal = function() {
return this.p0.y === this.p1.y
},
ph.prototype.distance = function() {
if (arguments[0] instanceof ph) {
var t = arguments[0];
return oc.distanceLineLine(this.p0, this.p1, t.p0, t.p1)
}
if (arguments[0] instanceof xu) {
var e = arguments[0];
return oc.distancePointLine(e, this.p0, this.p1)
}
},
ph.prototype.pointAlong = function(t) {
var e = new xu;
return e.x = this.p0.x + t * (this.p1.x - this.p0.x),
e.y = this.p0.y + t * (this.p1.y - this.p0.y),
e
},
ph.prototype.hashCode = function() {
var t = vu.doubleToLongBits(this.p0.x);
t ^= 31 * vu.doubleToLongBits(this.p0.y);
var e = Math.trunc(t) ^ Math.trunc(t >> 32),
n = vu.doubleToLongBits(this.p1.x);
return n ^= 31 * vu.doubleToLongBits(this.p1.y),
e ^ Math.trunc(n) ^ Math.trunc(n >> 32)
},
ph.prototype.interfaces_ = function() {
return [_u, Pi]
},
ph.prototype.getClass = function() {
return ph
},
ph.midPoint = function(t, e) {
return new xu((t.x + e.x) / 2, (t.y + e.y) / 2)
},
dh.serialVersionUID.get = function() {
return 0x2d2172135f411c00
},
Object.defineProperties(ph, dh);
var gh = function() {
this.tempEnv1 = new Yu,
this.tempEnv2 = new Yu,
this._overlapSeg1 = new ph,
this._overlapSeg2 = new ph
};
gh.prototype.overlap = function() {
if (2 === arguments.length);
else if (4 === arguments.length) {
var t = arguments[0],
e = arguments[1],
n = arguments[2],
r = arguments[3];
t.getLineSegment(e, this._overlapSeg1),
n.getLineSegment(r, this._overlapSeg2),
this.overlap(this._overlapSeg1, this._overlapSeg2)
}
},
gh.prototype.interfaces_ = function() {
return []
},
gh.prototype.getClass = function() {
return gh
};
var yh = function() {
this._pts = null,
this._start = null,
this._end = null,
this._env = null,
this._context = null,
this._id = null;
var t = arguments[0],
e = arguments[1],
n = arguments[2],
r = arguments[3];
this._pts = t,
this._start = e,
this._end = n,
this._context = r
};
yh.prototype.getLineSegment = function(t, e) {
e.p0 = this._pts[t],
e.p1 = this._pts[t + 1]
},
yh.prototype.computeSelect = function(t, e, n, r) {
var i = this._pts[e],
o = this._pts[n];
if (r.tempEnv1.init(i, o), n - e == 1) return r.select(this, e),
null;
if (!t.intersects(r.tempEnv1)) return null;
var s = Math.trunc((e + n) / 2);
e < s && this.computeSelect(t, e, s, r),
s < n && this.computeSelect(t, s, n, r)
},
yh.prototype.getCoordinates = function() {
for (var t = new Array(this._end - this._start + 1).fill(null), e = 0, n = this._start; n <= this._end; n++) t[e++] = this._pts[n];
return t
},
yh.prototype.computeOverlaps = function(t, e) {
this.computeOverlapsInternal(this._start, this._end, t, t._start, t._end, e)
},
yh.prototype.setId = function(t) {
this._id = t
},
yh.prototype.select = function(t, e) {
this.computeSelect(t, this._start, this._end, e)
},
yh.prototype.getEnvelope = function() {
if (null === this._env) {
var t = this._pts[this._start],
e = this._pts[this._end];
this._env = new Yu(t, e)
}
return this._env
},
yh.prototype.getEndIndex = function() {
return this._end
},
yh.prototype.getStartIndex = function() {
return this._start
},
yh.prototype.getContext = function() {
return this._context
},
yh.prototype.getId = function() {
return this._id
},
yh.prototype.computeOverlapsInternal = function(t, e, n, r, i, o) {
var s = this._pts[t],
a = this._pts[e],
u = n._pts[r],
c = n._pts[i];
if (e - t == 1 && i - r == 1) return o.overlap(this, t, n, r),
null;
if (o.tempEnv1.init(s, a), o.tempEnv2.init(u, c), !o.tempEnv1.intersects(o.tempEnv2)) return null;
var l = Math.trunc((t + e) / 2),
h = Math.trunc((r + i) / 2);
t < l && (r < h && this.computeOverlapsInternal(t, l, n, r, h, o), h < i && this.computeOverlapsInternal(t, l, n, h, i, o)),
l < e && (r < h && this.computeOverlapsInternal(l, e, n, r, h, o), h < i && this.computeOverlapsInternal(l, e, n, h, i, o))
},
yh.prototype.interfaces_ = function() {
return []
},
yh.prototype.getClass = function() {
return yh
};
var vh = function() {};
vh.prototype.interfaces_ = function() {
return []
},
vh.prototype.getClass = function() {
return vh
},
vh.getChainStartIndices = function(t) {
var e = 0,
n = new xc;
n.add(new Ou(e));
do {
var r = vh.findChainEnd(t, e);
n.add(new Ou(r)), e = r
} while ( e < t . length - 1 );
return vh.toIntArray(n)
},
vh.findChainEnd = function(t, e) {
for (var n = e; n < t.length - 1 && t[n].equals2D(t[n + 1]);) n++;
if (n >= t.length - 1) return t.length - 1;
for (var r = jl.quadrant(t[n], t[n + 1]), i = e + 1; i < t.length && (t[i - 1].equals2D(t[i]) || jl.quadrant(t[i - 1], t[i]) === r);) i++;
return i - 1
},
vh.getChains = function() {
if (1 === arguments.length) {
var t = arguments[0];
return vh.getChains(t, null)
}
if (2 === arguments.length) {
for (var e = arguments[0], n = arguments[1], r = new xc, i = vh.getChainStartIndices(e), o = 0; o < i.length - 1; o++) {
var s = new yh(e, i[o], i[o + 1], n);
r.add(s)
}
return r
}
},
vh.toIntArray = function(t) {
for (var e = new Array(t.size()).fill(null), n = 0; n < e.length; n++) e[n] = t.get(n).intValue();
return e
};
var mh = function() {};
mh.prototype.computeNodes = function(t) {},
mh.prototype.getNodedSubstrings = function() {},
mh.prototype.interfaces_ = function() {
return []
},
mh.prototype.getClass = function() {
return mh
};
var _h = function() {
if (this._segInt = null, 0 === arguments.length);
else if (1 === arguments.length) {
var t = arguments[0];
this.setSegmentIntersector(t)
}
};
_h.prototype.setSegmentIntersector = function(t) {
this._segInt = t
},
_h.prototype.interfaces_ = function() {
return [mh]
},
_h.prototype.getClass = function() {
return _h
};
var wh = function(t) {
function e(e) {
e ? t.call(this, e) : t.call(this),
this._monoChains = new xc,
this._index = new ih,
this._idCounter = 0,
this._nodedSegStrings = null,
this._nOverlaps = 0
}
t && (e.__proto__ = t),
(e.prototype = Object.create(t && t.prototype)).constructor = e;
var n = {
SegmentOverlapAction: {
configurable: !0
}
};
return e.prototype.getMonotoneChains = function() {
return this._monoChains
},
e.prototype.getNodedSubstrings = function() {
return fh.getNodedSubstrings(this._nodedSegStrings)
},
e.prototype.getIndex = function() {
return this._index
},
e.prototype.add = function(t) {
for (var e = vh.getChains(t.getCoordinates(), t).iterator(); e.hasNext();) {
var n = e.next();
n.setId(this._idCounter++),
this._index.insert(n.getEnvelope(), n),
this._monoChains.add(n)
}
},
e.prototype.computeNodes = function(t) {
this._nodedSegStrings = t;
for (var e = t.iterator(); e.hasNext();) this.add(e.next());
this.intersectChains()
},
e.prototype.intersectChains = function() {
for (var t = new bh(this._segInt), e = this._monoChains.iterator(); e.hasNext();) for (var n = e.next(), r = this._index.query(n.getEnvelope()).iterator(); r.hasNext();) {
var i = r.next();
if (i.getId() > n.getId() && (n.computeOverlaps(i, t), this._nOverlaps++), this._segInt.isDone()) return null
}
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
n.SegmentOverlapAction.get = function() {
return bh
},
Object.defineProperties(e, n),
e
} (_h),
bh = function(t) {
function e() {
t.call(this),
this._si = null;
var e = arguments[0];
this._si = e
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.overlap = function() {
if (4 !== arguments.length) return t.prototype.overlap.apply(this, arguments);
var e = arguments[0],
n = arguments[1],
r = arguments[2],
i = arguments[3],
o = e.getContext(),
s = r.getContext();
this._si.processIntersections(o, n, s, i)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (gh),
xh = function t() {
if (this._quadrantSegments = t.DEFAULT_QUADRANT_SEGMENTS, this._endCapStyle = t.CAP_ROUND, this._joinStyle = t.JOIN_ROUND, this._mitreLimit = t.DEFAULT_MITRE_LIMIT, this._isSingleSided = !1, this._simplifyFactor = t.DEFAULT_SIMPLIFY_FACTOR, 0 === arguments.length);
else if (1 === arguments.length) {
var e = arguments[0];
this.setQuadrantSegments(e)
} else if (2 === arguments.length) {
var n = arguments[0],
r = arguments[1];
this.setQuadrantSegments(n),
this.setEndCapStyle(r)
} else if (4 === arguments.length) {
var i = arguments[0],
o = arguments[1],
s = arguments[2],
a = arguments[3];
this.setQuadrantSegments(i),
this.setEndCapStyle(o),
this.setJoinStyle(s),
this.setMitreLimit(a)
}
},
Eh = {
CAP_ROUND: {
configurable: !0
},
CAP_FLAT: {
configurable: !0
},
CAP_SQUARE: {
configurable: !0
},
JOIN_ROUND: {
configurable: !0
},
JOIN_MITRE: {
configurable: !0
},
JOIN_BEVEL: {
configurable: !0
},
DEFAULT_QUADRANT_SEGMENTS: {
configurable: !0
},
DEFAULT_MITRE_LIMIT: {
configurable: !0
},
DEFAULT_SIMPLIFY_FACTOR: {
configurable: !0
}
};
xh.prototype.getEndCapStyle = function() {
return this._endCapStyle
},
xh.prototype.isSingleSided = function() {
return this._isSingleSided
},
xh.prototype.setQuadrantSegments = function(t) {
this._quadrantSegments = t,
0 === this._quadrantSegments && (this._joinStyle = xh.JOIN_BEVEL),
this._quadrantSegments < 0 && (this._joinStyle = xh.JOIN_MITRE, this._mitreLimit = Math.abs(this._quadrantSegments)),
t <= 0 && (this._quadrantSegments = 1),
this._joinStyle !== xh.JOIN_ROUND && (this._quadrantSegments = xh.DEFAULT_QUADRANT_SEGMENTS)
},
xh.prototype.getJoinStyle = function() {
return this._joinStyle
},
xh.prototype.setJoinStyle = function(t) {
this._joinStyle = t
},
xh.prototype.setSimplifyFactor = function(t) {
this._simplifyFactor = t < 0 ? 0 : t
},
xh.prototype.getSimplifyFactor = function() {
return this._simplifyFactor
},
xh.prototype.getQuadrantSegments = function() {
return this._quadrantSegments
},
xh.prototype.setEndCapStyle = function(t) {
this._endCapStyle = t
},
xh.prototype.getMitreLimit = function() {
return this._mitreLimit
},
xh.prototype.setMitreLimit = function(t) {
this._mitreLimit = t
},
xh.prototype.setSingleSided = function(t) {
this._isSingleSided = t
},
xh.prototype.interfaces_ = function() {
return []
},
xh.prototype.getClass = function() {
return xh
},
xh.bufferDistanceError = function(t) {
var e = Math.PI / 2 / t;
return 1 - Math.cos(e / 2)
},
Eh.CAP_ROUND.get = function() {
return 1
},
Eh.CAP_FLAT.get = function() {
return 2
},
Eh.CAP_SQUARE.get = function() {
return 3
},
Eh.JOIN_ROUND.get = function() {
return 1
},
Eh.JOIN_MITRE.get = function() {
return 2
},
Eh.JOIN_BEVEL.get = function() {
return 3
},
Eh.DEFAULT_QUADRANT_SEGMENTS.get = function() {
return 8
},
Eh.DEFAULT_MITRE_LIMIT.get = function() {
return 5
},
Eh.DEFAULT_SIMPLIFY_FACTOR.get = function() {
return.01
},
Object.defineProperties(xh, Eh);
var Mh = function(t) {
this._distanceTol = null,
this._isDeleted = null,
this._angleOrientation = oc.COUNTERCLOCKWISE,
this._inputLine = t || null
},
Ih = {
INIT: {
configurable: !0
},
DELETE: {
configurable: !0
},
KEEP: {
configurable: !0
},
NUM_PTS_TO_CHECK: {
configurable: !0
}
};
Mh.prototype.isDeletable = function(t, e, n, r) {
var i = this._inputLine[t],
o = this._inputLine[e],
s = this._inputLine[n];
return !! this.isConcave(i, o, s) && !!this.isShallow(i, o, s, r) && this.isShallowSampled(i, o, t, n, r)
},
Mh.prototype.deleteShallowConcavities = function() {
for (var t = 1,
e = this.findNextNonDeletedIndex(t), n = this.findNextNonDeletedIndex(e), r = !1; n < this._inputLine.length;) {
var i = !1;
this.isDeletable(t, e, n, this._distanceTol) && (this._isDeleted[e] = Mh.DELETE, i = !0, r = !0),
t = i ? n: e,
e = this.findNextNonDeletedIndex(t),
n = this.findNextNonDeletedIndex(e)
}
return r
},
Mh.prototype.isShallowConcavity = function(t, e, n, r) {
return oc.computeOrientation(t, e, n) === this._angleOrientation && oc.distancePointLine(e, t, n) < r
},
Mh.prototype.isShallowSampled = function(t, e, n, r, i) {
var o = Math.trunc((r - n) / Mh.NUM_PTS_TO_CHECK);
o <= 0 && (o = 1);
for (var s = n; s < r; s += o) if (!this.isShallow(t, e, this._inputLine[s], i)) return ! 1;
return ! 0
},
Mh.prototype.isConcave = function(t, e, n) {
return oc.computeOrientation(t, e, n) === this._angleOrientation
},
Mh.prototype.simplify = function(t) {
this._distanceTol = Math.abs(t),
t < 0 && (this._angleOrientation = oc.CLOCKWISE),
this._isDeleted = new Array(this._inputLine.length).fill(null);
var e = !1;
do {
e = this.deleteShallowConcavities()
} while ( e );
return this.collapseLine()
},
Mh.prototype.findNextNonDeletedIndex = function(t) {
for (var e = t + 1; e < this._inputLine.length && this._isDeleted[e] === Mh.DELETE;) e++;
return e
},
Mh.prototype.isShallow = function(t, e, n, r) {
return oc.distancePointLine(e, t, n) < r
},
Mh.prototype.collapseLine = function() {
for (var t = new Mc,
e = 0; e < this._inputLine.length; e++) this._isDeleted[e] !== Mh.DELETE && t.add(this._inputLine[e]);
return t.toCoordinateArray()
},
Mh.prototype.interfaces_ = function() {
return []
},
Mh.prototype.getClass = function() {
return Mh
},
Mh.simplify = function(t, e) {
return new Mh(t).simplify(e)
},
Ih.INIT.get = function() {
return 0
},
Ih.DELETE.get = function() {
return 1
},
Ih.KEEP.get = function() {
return 1
},
Ih.NUM_PTS_TO_CHECK.get = function() {
return 10
},
Object.defineProperties(Mh, Ih);
var Sh = function() {
this._ptList = null,
this._precisionModel = null,
this._minimimVertexDistance = 0,
this._ptList = new xc
},
Ch = {
COORDINATE_ARRAY_TYPE: {
configurable: !0
}
};
Sh.prototype.getCoordinates = function() {
return this._ptList.toArray(Sh.COORDINATE_ARRAY_TYPE)
},
Sh.prototype.setPrecisionModel = function(t) {
this._precisionModel = t
},
Sh.prototype.addPt = function(t) {
var e = new xu(t);
if (this._precisionModel.makePrecise(e), this.isRedundant(e)) return null;
this._ptList.add(e)
},
Sh.prototype.revere = function() {},
Sh.prototype.addPts = function(t, e) {
if (e) for (var n = 0; n < t.length; n++) this.addPt(t[n]);
else for (var r = t.length - 1; r >= 0; r--) this.addPt(t[r])
},
Sh.prototype.isRedundant = function(t) {
if (this._ptList.size() < 1) return ! 1;
var e = this._ptList.get(this._ptList.size() - 1);
return t.distance(e) < this._minimimVertexDistance
},
Sh.prototype.toString = function() {
return (new yl).createLineString(this.getCoordinates()).toString()
},
Sh.prototype.closeRing = function() {
if (this._ptList.size() < 1) return null;
var t = new xu(this._ptList.get(0)),
e = this._ptList.get(this._ptList.size() - 1);
if (t.equals(e)) return null;
this._ptList.add(t)
},
Sh.prototype.setMinimumVertexDistance = function(t) {
this._minimimVertexDistance = t
},
Sh.prototype.interfaces_ = function() {
return []
},
Sh.prototype.getClass = function() {
return Sh
},
Ch.COORDINATE_ARRAY_TYPE.get = function() {
return new Array(0).fill(null)
},
Object.defineProperties(Sh, Ch);
var Nh = function() {},
Ph = {
PI_TIMES_2: {
configurable: !0
},
PI_OVER_2: {
configurable: !0
},
PI_OVER_4: {
configurable: !0
},
COUNTERCLOCKWISE: {
configurable: !0
},
CLOCKWISE: {
configurable: !0
},
NONE: {
configurable: !0
}
};
Nh.prototype.interfaces_ = function() {
return []
},
Nh.prototype.getClass = function() {
return Nh
},
Nh.toDegrees = function(t) {
return 180 * t / Math.PI
},
Nh.normalize = function(t) {
for (; t > Math.PI;) t -= Nh.PI_TIMES_2;
for (; t <= -Math.PI;) t += Nh.PI_TIMES_2;
return t
},
Nh.angle = function() {
if (1 === arguments.length) {
var t = arguments[0];
return Math.atan2(t.y, t.x)
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = n.x - e.x,
i = n.y - e.y;
return Math.atan2(i, r)
}
},
Nh.isAcute = function(t, e, n) {
var r = t.x - e.x,
i = t.y - e.y;
return r * (n.x - e.x) + i * (n.y - e.y) > 0
},
Nh.isObtuse = function(t, e, n) {
var r = t.x - e.x,
i = t.y - e.y;
return r * (n.x - e.x) + i * (n.y - e.y) < 0
},
Nh.interiorAngle = function(t, e, n) {
var r = Nh.angle(e, t),
i = Nh.angle(e, n);
return Math.abs(i - r)
},
Nh.normalizePositive = function(t) {
if (t < 0) {
for (; t < 0;) t += Nh.PI_TIMES_2;
t >= Nh.PI_TIMES_2 && (t = 0)
} else {
for (; t >= Nh.PI_TIMES_2;) t -= Nh.PI_TIMES_2;
t < 0 && (t = 0)
}
return t
},
Nh.angleBetween = function(t, e, n) {
var r = Nh.angle(e, t),
i = Nh.angle(e, n);
return Nh.diff(r, i)
},
Nh.diff = function(t, e) {
var n = null;
return (n = t < e ? e - t: t - e) > Math.PI && (n = 2 * Math.PI - n),
n
},
Nh.toRadians = function(t) {
return t * Math.PI / 180
},
Nh.getTurn = function(t, e) {
var n = Math.sin(e - t);
return n > 0 ? Nh.COUNTERCLOCKWISE: n < 0 ? Nh.CLOCKWISE: Nh.NONE
},
Nh.angleBetweenOriented = function(t, e, n) {
var r = Nh.angle(e, t),
i = Nh.angle(e, n) - r;
return i <= -Math.PI ? i + Nh.PI_TIMES_2: i > Math.PI ? i - Nh.PI_TIMES_2: i
},
Ph.PI_TIMES_2.get = function() {
return 2 * Math.PI
},
Ph.PI_OVER_2.get = function() {
return Math.PI / 2
},
Ph.PI_OVER_4.get = function() {
return Math.PI / 4
},
Ph.COUNTERCLOCKWISE.get = function() {
return oc.COUNTERCLOCKWISE
},
Ph.CLOCKWISE.get = function() {
return oc.CLOCKWISE
},
Ph.NONE.get = function() {
return oc.COLLINEAR
},
Object.defineProperties(Nh, Ph);
var Lh = function t() {
this._maxCurveSegmentError = 0,
this._filletAngleQuantum = null,
this._closingSegLengthFactor = 1,
this._segList = null,
this._distance = 0,
this._precisionModel = null,
this._bufParams = null,
this._li = null,
this._s0 = null,
this._s1 = null,
this._s2 = null,
this._seg0 = new ph,
this._seg1 = new ph,
this._offset0 = new ph,
this._offset1 = new ph,
this._side = 0,
this._hasNarrowConcaveAngle = !1;
var e = arguments[0],
n = arguments[1],
r = arguments[2];
this._precisionModel = e,
this._bufParams = n,
this._li = new nc,
this._filletAngleQuantum = Math.PI / 2 / n.getQuadrantSegments(),
n.getQuadrantSegments() >= 8 && n.getJoinStyle() === xh.JOIN_ROUND && (this._closingSegLengthFactor = t.MAX_CLOSING_SEG_LEN_FACTOR),
this.init(r)
},
Ah = {
OFFSET_SEGMENT_SEPARATION_FACTOR: {
configurable: !0
},
INSIDE_TURN_VERTEX_SNAP_DISTANCE_FACTOR: {
configurable: !0
},
CURVE_VERTEX_SNAP_DISTANCE_FACTOR: {
configurable: !0
},
MAX_CLOSING_SEG_LEN_FACTOR: {
configurable: !0
}
};
Lh.prototype.addNextSegment = function(t, e) {
if (this._s0 = this._s1, this._s1 = this._s2, this._s2 = t, this._seg0.setCoordinates(this._s0, this._s1), this.computeOffsetSegment(this._seg0, this._side, this._distance, this._offset0), this._seg1.setCoordinates(this._s1, this._s2), this.computeOffsetSegment(this._seg1, this._side, this._distance, this._offset1), this._s1.equals(this._s2)) return null;
var n = oc.computeOrientation(this._s0, this._s1, this._s2),
r = n === oc.CLOCKWISE && this._side === Ml.LEFT || n === oc.COUNTERCLOCKWISE && this._side === Ml.RIGHT;
0 === n ? this.addCollinear(e) : r ? this.addOutsideTurn(n, e) : this.addInsideTurn(n, e)
},
Lh.prototype.addLineEndCap = function(t, e) {
var n = new ph(t, e),
r = new ph;
this.computeOffsetSegment(n, Ml.LEFT, this._distance, r);
var i = new ph;
this.computeOffsetSegment(n, Ml.RIGHT, this._distance, i);
var o = e.x - t.x,
s = e.y - t.y,
a = Math.atan2(s, o);
switch (this._bufParams.getEndCapStyle()) {
case xh.CAP_ROUND:
this._segList.addPt(r.p1),
this.addFilletArc(e, a + Math.PI / 2, a - Math.PI / 2, oc.CLOCKWISE, this._distance),
this._segList.addPt(i.p1);
break;
case xh.CAP_FLAT:
this._segList.addPt(r.p1),
this._segList.addPt(i.p1);
break;
case xh.CAP_SQUARE:
var u = new xu;
u.x = Math.abs(this._distance) * Math.cos(a),
u.y = Math.abs(this._distance) * Math.sin(a);
var c = new xu(r.p1.x + u.x, r.p1.y + u.y),
l = new xu(i.p1.x + u.x, i.p1.y + u.y);
this._segList.addPt(c),
this._segList.addPt(l)
}
},
Lh.prototype.getCoordinates = function() {
return this._segList.getCoordinates()
},
Lh.prototype.addMitreJoin = function(t, e, n, r) {
var i = !0,
o = null;
try {
o = zu.intersection(e.p0, e.p1, n.p0, n.p1),
(r <= 0 ? 1 : o.distance(t) / Math.abs(r)) > this._bufParams.getMitreLimit() && (i = !1)
} catch(t) {
if (! (t instanceof Gu)) throw t;
o = new xu(0, 0),
i = !1
}
i ? this._segList.addPt(o) : this.addLimitedMitreJoin(e, n, r, this._bufParams.getMitreLimit())
},
Lh.prototype.addFilletCorner = function(t, e, n, r, i) {
var o = e.x - t.x,
s = e.y - t.y,
a = Math.atan2(s, o),
u = n.x - t.x,
c = n.y - t.y,
l = Math.atan2(c, u);
r === oc.CLOCKWISE ? a <= l && (a += 2 * Math.PI) : a >= l && (a -= 2 * Math.PI),
this._segList.addPt(e),
this.addFilletArc(t, a, l, r, i),
this._segList.addPt(n)
},
Lh.prototype.addOutsideTurn = function(t, e) {
if (this._offset0.p1.distance(this._offset1.p0) < this._distance * Lh.OFFSET_SEGMENT_SEPARATION_FACTOR) return this._segList.addPt(this._offset0.p1),
null;
this._bufParams.getJoinStyle() === xh.JOIN_MITRE ? this.addMitreJoin(this._s1, this._offset0, this._offset1, this._distance) : this._bufParams.getJoinStyle() === xh.JOIN_BEVEL ? this.addBevelJoin(this._offset0, this._offset1) : (e && this._segList.addPt(this._offset0.p1), this.addFilletCorner(this._s1, this._offset0.p1, this._offset1.p0, t, this._distance), this._segList.addPt(this._offset1.p0))
},
Lh.prototype.createSquare = function(t) {
this._segList.addPt(new xu(t.x + this._distance, t.y + this._distance)),
this._segList.addPt(new xu(t.x + this._distance, t.y - this._distance)),
this._segList.addPt(new xu(t.x - this._distance, t.y - this._distance)),
this._segList.addPt(new xu(t.x - this._distance, t.y + this._distance)),
this._segList.closeRing()
},
Lh.prototype.addSegments = function(t, e) {
this._segList.addPts(t, e)
},
Lh.prototype.addFirstSegment = function() {
this._segList.addPt(this._offset1.p0)
},
Lh.prototype.addLastSegment = function() {
this._segList.addPt(this._offset1.p1)
},
Lh.prototype.initSideSegments = function(t, e, n) {
this._s1 = t,
this._s2 = e,
this._side = n,
this._seg1.setCoordinates(t, e),
this.computeOffsetSegment(this._seg1, n, this._distance, this._offset1)
},
Lh.prototype.addLimitedMitreJoin = function(t, e, n, r) {
var i = this._seg0.p1,
o = Nh.angle(i, this._seg0.p0),
s = Nh.angleBetweenOriented(this._seg0.p0, i, this._seg1.p1) / 2,
a = Nh.normalize(o + s),
u = Nh.normalize(a + Math.PI),
c = r * n,
l = n - c * Math.abs(Math.sin(s)),
h = i.x + c * Math.cos(u),
f = i.y + c * Math.sin(u),
p = new xu(h, f),
d = new ph(i, p),
g = d.pointAlongOffset(1, l),
y = d.pointAlongOffset(1, -l);
this._side === Ml.LEFT ? (this._segList.addPt(g), this._segList.addPt(y)) : (this._segList.addPt(y), this._segList.addPt(g))
},
Lh.prototype.computeOffsetSegment = function(t, e, n, r) {
var i = e === Ml.LEFT ? 1 : -1,
o = t.p1.x - t.p0.x,
s = t.p1.y - t.p0.y,
a = Math.sqrt(o * o + s * s),
u = i * n * o / a,
c = i * n * s / a;
r.p0.x = t.p0.x - c,
r.p0.y = t.p0.y + u,
r.p1.x = t.p1.x - c,
r.p1.y = t.p1.y + u
},
Lh.prototype.addFilletArc = function(t, e, n, r, i) {
var o = r === oc.CLOCKWISE ? -1 : 1,
s = Math.abs(e - n),
a = Math.trunc(s / this._filletAngleQuantum + .5);
if (a < 1) return null;
for (var u = s / a,
c = 0,
l = new xu; c < s;) {
var h = e + o * c;
l.x = t.x + i * Math.cos(h),
l.y = t.y + i * Math.sin(h),
this._segList.addPt(l),
c += u
}
},
Lh.prototype.addInsideTurn = function(t, e) {
if (this._li.computeIntersection(this._offset0.p0, this._offset0.p1, this._offset1.p0, this._offset1.p1), this._li.hasIntersection()) this._segList.addPt(this._li.getIntersection(0));
else if (this._hasNarrowConcaveAngle = !0, this._offset0.p1.distance(this._offset1.p0) < this._distance * Lh.INSIDE_TURN_VERTEX_SNAP_DISTANCE_FACTOR) this._segList.addPt(this._offset0.p1);
else {
if (this._segList.addPt(this._offset0.p1), this._closingSegLengthFactor > 0) {
var n = new xu((this._closingSegLengthFactor * this._offset0.p1.x + this._s1.x) / (this._closingSegLengthFactor + 1), (this._closingSegLengthFactor * this._offset0.p1.y + this._s1.y) / (this._closingSegLengthFactor + 1));
this._segList.addPt(n);
var r = new xu((this._closingSegLengthFactor * this._offset1.p0.x + this._s1.x) / (this._closingSegLengthFactor + 1), (this._closingSegLengthFactor * this._offset1.p0.y + this._s1.y) / (this._closingSegLengthFactor + 1));
this._segList.addPt(r)
} else this._segList.addPt(this._s1);
this._segList.addPt(this._offset1.p0)
}
},
Lh.prototype.createCircle = function(t) {
var e = new xu(t.x + this._distance, t.y);
this._segList.addPt(e),
this.addFilletArc(t, 0, 2 * Math.PI, -1, this._distance),
this._segList.closeRing()
},
Lh.prototype.addBevelJoin = function(t, e) {
this._segList.addPt(t.p1),
this._segList.addPt(e.p0)
},
Lh.prototype.init = function(t) {
this._distance = t,
this._maxCurveSegmentError = t * (1 - Math.cos(this._filletAngleQuantum / 2)),
this._segList = new Sh,
this._segList.setPrecisionModel(this._precisionModel),
this._segList.setMinimumVertexDistance(t * Lh.CURVE_VERTEX_SNAP_DISTANCE_FACTOR)
},
Lh.prototype.addCollinear = function(t) {
this._li.computeIntersection(this._s0, this._s1, this._s1, this._s2),
this._li.getIntersectionNum() >= 2 && (this._bufParams.getJoinStyle() === xh.JOIN_BEVEL || this._bufParams.getJoinStyle() === xh.JOIN_MITRE ? (t && this._segList.addPt(this._offset0.p1), this._segList.addPt(this._offset1.p0)) : this.addFilletCorner(this._s1, this._offset0.p1, this._offset1.p0, oc.CLOCKWISE, this._distance))
},
Lh.prototype.closeRing = function() {
this._segList.closeRing()
},
Lh.prototype.hasNarrowConcaveAngle = function() {
return this._hasNarrowConcaveAngle
},
Lh.prototype.interfaces_ = function() {
return []
},
Lh.prototype.getClass = function() {
return Lh
},
Ah.OFFSET_SEGMENT_SEPARATION_FACTOR.get = function() {
return.001
},
Ah.INSIDE_TURN_VERTEX_SNAP_DISTANCE_FACTOR.get = function() {
return.001
},
Ah.CURVE_VERTEX_SNAP_DISTANCE_FACTOR.get = function() {
return 1e-6
},
Ah.MAX_CLOSING_SEG_LEN_FACTOR.get = function() {
return 80
},
Object.defineProperties(Lh, Ah);
var Oh = function() {
this._distance = 0,
this._precisionModel = null,
this._bufParams = null;
var t = arguments[0],
e = arguments[1];
this._precisionModel = t,
this._bufParams = e
};
Oh.prototype.getOffsetCurve = function(t, e) {
if (this._distance = e, 0 === e) return null;
var n = e < 0,
r = Math.abs(e),
i = this.getSegGen(r);
t.length <= 1 ? this.computePointCurve(t[0], i) : this.computeOffsetCurve(t, n, i);
var o = i.getCoordinates();
return n && Ic.reverse(o),
o
},
Oh.prototype.computeSingleSidedBufferCurve = function(t, e, n) {
var r = this.simplifyTolerance(this._distance);
if (e) {
n.addSegments(t, !0);
var i = Mh.simplify(t, -r),
o = i.length - 1;
n.initSideSegments(i[o], i[o - 1], Ml.LEFT),
n.addFirstSegment();
for (var s = o - 2; s >= 0; s--) n.addNextSegment(i[s], !0)
} else {
n.addSegments(t, !1);
var a = Mh.simplify(t, r),
u = a.length - 1;
n.initSideSegments(a[0], a[1], Ml.LEFT),
n.addFirstSegment();
for (var c = 2; c <= u; c++) n.addNextSegment(a[c], !0)
}
n.addLastSegment(),
n.closeRing()
},
Oh.prototype.computeRingBufferCurve = function(t, e, n) {
var r = this.simplifyTolerance(this._distance);
e === Ml.RIGHT && (r = -r);
var i = Mh.simplify(t, r),
o = i.length - 1;
n.initSideSegments(i[o - 1], i[0], e);
for (var s = 1; s <= o; s++) {
var a = 1 !== s;
n.addNextSegment(i[s], a)
}
n.closeRing()
},
Oh.prototype.computeLineBufferCurve = function(t, e) {
var n = this.simplifyTolerance(this._distance),
r = Mh.simplify(t, n),
i = r.length - 1;
e.initSideSegments(r[0], r[1], Ml.LEFT);
for (var o = 2; o <= i; o++) e.addNextSegment(r[o], !0);
e.addLastSegment(),
e.addLineEndCap(r[i - 1], r[i]);
var s = Mh.simplify(t, -n),
a = s.length - 1;
e.initSideSegments(s[a], s[a - 1], Ml.LEFT);
for (var u = a - 2; u >= 0; u--) e.addNextSegment(s[u], !0);
e.addLastSegment(),
e.addLineEndCap(s[1], s[0]),
e.closeRing()
},
Oh.prototype.computePointCurve = function(t, e) {
switch (this._bufParams.getEndCapStyle()) {
case xh.CAP_ROUND:
e.createCircle(t);
break;
case xh.CAP_SQUARE:
e.createSquare(t)
}
},
Oh.prototype.getLineCurve = function(t, e) {
if (this._distance = e, e < 0 && !this._bufParams.isSingleSided()) return null;
if (0 === e) return null;
var n = Math.abs(e),
r = this.getSegGen(n);
if (t.length <= 1) this.computePointCurve(t[0], r);
else if (this._bufParams.isSingleSided()) {
var i = e < 0;
this.computeSingleSidedBufferCurve(t, i, r)
} else this.computeLineBufferCurve(t, r);
return r.getCoordinates()
},
Oh.prototype.getBufferParameters = function() {
return this._bufParams
},
Oh.prototype.simplifyTolerance = function(t) {
return t * this._bufParams.getSimplifyFactor()
},
Oh.prototype.getRingCurve = function(t, e, n) {
if (this._distance = n, t.length <= 2) return this.getLineCurve(t, n);
if (0 === n) return Oh.copyCoordinates(t);
var r = this.getSegGen(n);
return this.computeRingBufferCurve(t, e, r),
r.getCoordinates()
},
Oh.prototype.computeOffsetCurve = function(t, e, n) {
var r = this.simplifyTolerance(this._distance);
if (e) {
var i = Mh.simplify(t, -r),
o = i.length - 1;
n.initSideSegments(i[o], i[o - 1], Ml.LEFT),
n.addFirstSegment();
for (var s = o - 2; s >= 0; s--) n.addNextSegment(i[s], !0)
} else {
var a = Mh.simplify(t, r),
u = a.length - 1;
n.initSideSegments(a[0], a[1], Ml.LEFT),
n.addFirstSegment();
for (var c = 2; c <= u; c++) n.addNextSegment(a[c], !0)
}
n.addLastSegment()
},
Oh.prototype.getSegGen = function(t) {
return new Lh(this._precisionModel, this._bufParams, t)
},
Oh.prototype.interfaces_ = function() {
return []
},
Oh.prototype.getClass = function() {
return Oh
},
Oh.copyCoordinates = function(t) {
for (var e = new Array(t.length).fill(null), n = 0; n < e.length; n++) e[n] = new xu(t[n]);
return e
};
var Th = function() {
this._subgraphs = null,
this._seg = new ph,
this._cga = new oc;
var t = arguments[0];
this._subgraphs = t
},
Rh = {
DepthSegment: {
configurable: !0
}
};
Th.prototype.findStabbedSegments = function() {
if (1 === arguments.length) {
for (var t = arguments[0], e = new xc, n = this._subgraphs.iterator(); n.hasNext();) {
var r = n.next(),
i = r.getEnvelope();
t.y < i.getMinY() || t.y > i.getMaxY() || this.findStabbedSegments(t, r.getDirectedEdges(), e)
}
return e
}
if (3 === arguments.length) if (Nu(arguments[2], bc) && arguments[0] instanceof xu && arguments[1] instanceof Gl) {
for (var o = arguments[0], s = arguments[1], a = arguments[2], u = s.getEdge().getCoordinates(), c = 0; c < u.length - 1; c++) if (this._seg.p0 = u[c], this._seg.p1 = u[c + 1], this._seg.p0.y > this._seg.p1.y && this._seg.reverse(), !(Math.max(this._seg.p0.x, this._seg.p1.x) < o.x || this._seg.isHorizontal() || o.y < this._seg.p0.y || o.y > this._seg.p1.y || oc.computeOrientation(this._seg.p0, this._seg.p1, o) === oc.RIGHT)) {
var l = s.getDepth(Ml.LEFT);
this._seg.p0.equals(u[c]) || (l = s.getDepth(Ml.RIGHT));
var h = new Dh(this._seg, l);
a.add(h)
}
} else if (Nu(arguments[2], bc) && arguments[0] instanceof xu && Nu(arguments[1], bc)) for (var f = arguments[0], p = arguments[1], d = arguments[2], g = p.iterator(); g.hasNext();) {
var y = g.next();
y.isForward() && this.findStabbedSegments(f, y, d)
}
},
Th.prototype.getDepth = function(t) {
var e = this.findStabbedSegments(t);
return 0 === e.size() ? 0 : Kl.min(e)._leftDepth
},
Th.prototype.interfaces_ = function() {
return []
},
Th.prototype.getClass = function() {
return Th
},
Rh.DepthSegment.get = function() {
return Dh
},
Object.defineProperties(Th, Rh);
var Dh = function() {
this._upwardSeg = null,
this._leftDepth = null;
var t = arguments[0],
e = arguments[1];
this._upwardSeg = new ph(t),
this._leftDepth = e
};
Dh.prototype.compareTo = function(t) {
var e = t;
if (this._upwardSeg.minX() >= e._upwardSeg.maxX()) return 1;
if (this._upwardSeg.maxX() <= e._upwardSeg.minX()) return - 1;
var n = this._upwardSeg.orientationIndex(e._upwardSeg);
return 0 !== n ? n: 0 != (n = -1 * e._upwardSeg.orientationIndex(this._upwardSeg)) ? n: this._upwardSeg.compareTo(e._upwardSeg)
},
Dh.prototype.compareX = function(t, e) {
var n = t.p0.compareTo(e.p0);
return 0 !== n ? n: t.p1.compareTo(e.p1)
},
Dh.prototype.toString = function() {
return this._upwardSeg.toString()
},
Dh.prototype.interfaces_ = function() {
return [_u]
},
Dh.prototype.getClass = function() {
return Dh
};
var kh = function(t, e, n) {
this.p0 = t || null,
this.p1 = e || null,
this.p2 = n || null
};
kh.prototype.area = function() {
return kh.area(this.p0, this.p1, this.p2)
},
kh.prototype.signedArea = function() {
return kh.signedArea(this.p0, this.p1, this.p2)
},
kh.prototype.interpolateZ = function(t) {
if (null === t) throw new yu("Supplied point is null.");
return kh.interpolateZ(t, this.p0, this.p1, this.p2)
},
kh.prototype.longestSideLength = function() {
return kh.longestSideLength(this.p0, this.p1, this.p2)
},
kh.prototype.isAcute = function() {
return kh.isAcute(this.p0, this.p1, this.p2)
},
kh.prototype.circumcentre = function() {
return kh.circumcentre(this.p0, this.p1, this.p2)
},
kh.prototype.area3D = function() {
return kh.area3D(this.p0, this.p1, this.p2)
},
kh.prototype.centroid = function() {
return kh.centroid(this.p0, this.p1, this.p2)
},
kh.prototype.inCentre = function() {
return kh.inCentre(this.p0, this.p1, this.p2)
},
kh.prototype.interfaces_ = function() {
return []
},
kh.prototype.getClass = function() {
return kh
},
kh.area = function(t, e, n) {
return Math.abs(((n.x - t.x) * (e.y - t.y) - (e.x - t.x) * (n.y - t.y)) / 2)
},
kh.signedArea = function(t, e, n) {
return ((n.x - t.x) * (e.y - t.y) - (e.x - t.x) * (n.y - t.y)) / 2
},
kh.det = function(t, e, n, r) {
return t * r - e * n
},
kh.interpolateZ = function(t, e, n, r) {
var i = e.x,
o = e.y,
s = n.x - i,
a = r.x - i,
u = n.y - o,
c = r.y - o,
l = s * c - a * u,
h = t.x - i,
f = t.y - o,
p = (c * h - a * f) / l,
d = ( - u * h + s * f) / l;
return e.z + p * (n.z - e.z) + d * (r.z - e.z)
},
kh.longestSideLength = function(t, e, n) {
var r = t.distance(e),
i = e.distance(n),
o = n.distance(t),
s = r;
return i > s && (s = i),
o > s && (s = o),
s
},
kh.isAcute = function(t, e, n) {
return !! Nh.isAcute(t, e, n) && !!Nh.isAcute(e, n, t) && !!Nh.isAcute(n, t, e)
},
kh.circumcentre = function(t, e, n) {
var r = n.x,
i = n.y,
o = t.x - r,
s = t.y - i,
a = e.x - r,
u = e.y - i,
c = 2 * kh.det(o, s, a, u),
l = kh.det(s, o * o + s * s, u, a * a + u * u),
h = kh.det(o, o * o + s * s, a, a * a + u * u);
return new xu(r - l / c, i + h / c)
},
kh.perpendicularBisector = function(t, e) {
var n = e.x - t.x,
r = e.y - t.y,
i = new zu(t.x + n / 2, t.y + r / 2, 1),
o = new zu(t.x - r + n / 2, t.y + n + r / 2, 1);
return new zu(i, o)
},
kh.angleBisector = function(t, e, n) {
var r = e.distance(t),
i = r / (r + e.distance(n)),
o = n.x - t.x,
s = n.y - t.y;
return new xu(t.x + i * o, t.y + i * s)
},
kh.area3D = function(t, e, n) {
var r = e.x - t.x,
i = e.y - t.y,
o = e.z - t.z,
s = n.x - t.x,
a = n.y - t.y,
u = n.z - t.z,
c = i * u - o * a,
l = o * s - r * u,
h = r * a - i * s,
f = c * c + l * l + h * h;
return Math.sqrt(f) / 2
},
kh.centroid = function(t, e, n) {
var r = (t.x + e.x + n.x) / 3,
i = (t.y + e.y + n.y) / 3;
return new xu(r, i)
},
kh.inCentre = function(t, e, n) {
var r = e.distance(n),
i = t.distance(n),
o = t.distance(e),
s = r + i + o,
a = (r * t.x + i * e.x + o * n.x) / s,
u = (r * t.y + i * e.y + o * n.y) / s;
return new xu(a, u)
};
var Fh = function() {
this._inputGeom = null,
this._distance = null,
this._curveBuilder = null,
this._curveList = new xc;
var t = arguments[0],
e = arguments[1],
n = arguments[2];
this._inputGeom = t,
this._distance = e,
this._curveBuilder = n
};
Fh.prototype.addPoint = function(t) {
if (this._distance <= 0) return null;
var e = t.getCoordinates(),
n = this._curveBuilder.getLineCurve(e, this._distance);
this.addCurve(n, Su.EXTERIOR, Su.INTERIOR)
},
Fh.prototype.addPolygon = function(t) {
var e = this._distance,
n = Ml.LEFT;
this._distance < 0 && (e = -this._distance, n = Ml.RIGHT);
var r = t.getExteriorRing(),
i = Ic.removeRepeatedPoints(r.getCoordinates());
if (this._distance < 0 && this.isErodedCompletely(r, this._distance)) return null;
if (this._distance <= 0 && i.length < 3) return null;
this.addPolygonRing(i, e, n, Su.EXTERIOR, Su.INTERIOR);
for (var o = 0; o < t.getNumInteriorRing(); o++) {
var s = t.getInteriorRingN(o),
a = Ic.removeRepeatedPoints(s.getCoordinates());
this._distance > 0 && this.isErodedCompletely(s, -this._distance) || this.addPolygonRing(a, e, Ml.opposite(n), Su.INTERIOR, Su.EXTERIOR)
}
},
Fh.prototype.isTriangleErodedCompletely = function(t, e) {
var n = new kh(t[0], t[1], t[2]),
r = n.inCentre();
return oc.distancePointLine(r, n.p0, n.p1) < Math.abs(e)
},
Fh.prototype.addLineString = function(t) {
if (this._distance <= 0 && !this._curveBuilder.getBufferParameters().isSingleSided()) return null;
var e = Ic.removeRepeatedPoints(t.getCoordinates()),
n = this._curveBuilder.getLineCurve(e, this._distance);
this.addCurve(n, Su.EXTERIOR, Su.INTERIOR)
},
Fh.prototype.addCurve = function(t, e, n) {
if (null === t || t.length < 2) return null;
var r = new fh(t, new Al(0, Su.BOUNDARY, e, n));
this._curveList.add(r)
},
Fh.prototype.getCurves = function() {
return this.add(this._inputGeom),
this._curveList
},
Fh.prototype.addPolygonRing = function(t, e, n, r, i) {
if (0 === e && t.length < tl.MINIMUM_VALID_SIZE) return null;
var o = r,
s = i;
t.length >= tl.MINIMUM_VALID_SIZE && oc.isCCW(t) && (o = i, s = r, n = Ml.opposite(n));
var a = this._curveBuilder.getRingCurve(t, n, e);
this.addCurve(a, o, s)
},
Fh.prototype.add = function(t) {
if (t.isEmpty()) return null;
t instanceof Kc ? this.addPolygon(t) : t instanceof Hc ? this.addLineString(t) : t instanceof Zc ? this.addPoint(t) : t instanceof $c ? this.addCollection(t) : t instanceof Uc ? this.addCollection(t) : t instanceof el ? this.addCollection(t) : t instanceof Gc && this.addCollection(t)
},
Fh.prototype.isErodedCompletely = function(t, e) {
var n = t.getCoordinates();
if (n.length < 4) return e < 0;
if (4 === n.length) return this.isTriangleErodedCompletely(n, e);
var r = t.getEnvelopeInternal(),
i = Math.min(r.getHeight(), r.getWidth());
return e < 0 && 2 * Math.abs(e) > i
},
Fh.prototype.addCollection = function(t) {
for (var e = 0; e < t.getNumGeometries(); e++) {
var n = t.getGeometryN(e);
this.add(n)
}
},
Fh.prototype.interfaces_ = function() {
return []
},
Fh.prototype.getClass = function() {
return Fh
};
var jh = function() {};
jh.prototype.locate = function(t) {},
jh.prototype.interfaces_ = function() {
return []
},
jh.prototype.getClass = function() {
return jh
};
var qh = function() {
this._parent = null,
this._atStart = null,
this._max = null,
this._index = null,
this._subcollectionIterator = null;
var t = arguments[0];
this._parent = t,
this._atStart = !0,
this._index = 0,
this._max = t.getNumGeometries()
};
qh.prototype.next = function() {
if (this._atStart) return this._atStart = !1,
qh.isAtomic(this._parent) && this._index++,
this._parent;
if (null !== this._subcollectionIterator) {
if (this._subcollectionIterator.hasNext()) return this._subcollectionIterator.next();
this._subcollectionIterator = null
}
if (this._index >= this._max) throw new Li;
var t = this._parent.getGeometryN(this._index++);
return t instanceof Gc ? (this._subcollectionIterator = new qh(t), this._subcollectionIterator.next()) : t
},
qh.prototype.remove = function() {
throw new Error(this.getClass().getName())
},
qh.prototype.hasNext = function() {
if (this._atStart) return ! 0;
if (null !== this._subcollectionIterator) {
if (this._subcollectionIterator.hasNext()) return ! 0;
this._subcollectionIterator = null
}
return ! (this._index >= this._max)
},
qh.prototype.interfaces_ = function() {
return [wc]
},
qh.prototype.getClass = function() {
return qh
},
qh.isAtomic = function(t) {
return ! (t instanceof Gc)
};
var Bh = function() {
this._geom = null;
var t = arguments[0];
this._geom = t
};
Bh.prototype.locate = function(t) {
return Bh.locate(t, this._geom)
},
Bh.prototype.interfaces_ = function() {
return [jh]
},
Bh.prototype.getClass = function() {
return Bh
},
Bh.isPointInRing = function(t, e) {
return !! e.getEnvelopeInternal().intersects(t) && oc.isPointInRing(t, e.getCoordinates())
},
Bh.containsPointInPolygon = function(t, e) {
if (e.isEmpty()) return ! 1;
var n = e.getExteriorRing();
if (!Bh.isPointInRing(t, n)) return ! 1;
for (var r = 0; r < e.getNumInteriorRing(); r++) {
var i = e.getInteriorRingN(r);
if (Bh.isPointInRing(t, i)) return ! 1
}
return ! 0
},
Bh.containsPoint = function(t, e) {
if (e instanceof Kc) return Bh.containsPointInPolygon(t, e);
if (e instanceof Gc) for (var n = new qh(e); n.hasNext();) {
var r = n.next();
if (r !== e && Bh.containsPoint(t, r)) return ! 0
}
return ! 1
},
Bh.locate = function(t, e) {
return e.isEmpty() ? Su.EXTERIOR: Bh.containsPoint(t, e) ? Su.INTERIOR: Su.EXTERIOR
};
var Gh = function() {
this._edgeMap = new ji,
this._edgeList = null,
this._ptInAreaLocation = [Su.NONE, Su.NONE]
};
Gh.prototype.getNextCW = function(t) {
this.getEdges();
var e = this._edgeList.indexOf(t),
n = e - 1;
return 0 === e && (n = this._edgeList.size() - 1),
this._edgeList.get(n)
},
Gh.prototype.propagateSideLabels = function(t) {
for (var e = Su.NONE,
n = this.iterator(); n.hasNext();) {
var r = n.next().getLabel();
r.isArea(t) && r.getLocation(t, Ml.LEFT) !== Su.NONE && (e = r.getLocation(t, Ml.LEFT))
}
if (e === Su.NONE) return null;
for (var i = e,
o = this.iterator(); o.hasNext();) {
var s = o.next(),
a = s.getLabel();
if (a.getLocation(t, Ml.ON) === Su.NONE && a.setLocation(t, Ml.ON, i), a.isArea(t)) {
var u = a.getLocation(t, Ml.LEFT),
c = a.getLocation(t, Ml.RIGHT);
if (c !== Su.NONE) {
if (c !== i) throw new Cl("side location conflict", s.getCoordinate());
u === Su.NONE && $u.shouldNeverReachHere("found single null side (at " + s.getCoordinate() + ")"),
i = u
} else $u.isTrue(a.getLocation(t, Ml.LEFT) === Su.NONE, "found single null side"),
a.setLocation(t, Ml.RIGHT, i),
a.setLocation(t, Ml.LEFT, i)
}
}
},
Gh.prototype.getCoordinate = function() {
var t = this.iterator();
return t.hasNext() ? t.next().getCoordinate() : null
},
Gh.prototype.print = function(t) {
Uu.out.println("EdgeEndStar: " + this.getCoordinate());
for (var e = this.iterator(); e.hasNext();) e.next().print(t)
},
Gh.prototype.isAreaLabelsConsistent = function(t) {
return this.computeEdgeEndLabels(t.getBoundaryNodeRule()),
this.checkAreaLabelsConsistent(0)
},
Gh.prototype.checkAreaLabelsConsistent = function(t) {
var e = this.getEdges();
if (e.size() <= 0) return ! 0;
var n = e.size() - 1,
r = e.get(n).getLabel().getLocation(t, Ml.LEFT);
$u.isTrue(r !== Su.NONE, "Found unlabelled area edge");
for (var i = r,
o = this.iterator(); o.hasNext();) {
var s = o.next().getLabel();
$u.isTrue(s.isArea(t), "Found non-area edge");
var a = s.getLocation(t, Ml.LEFT),
u = s.getLocation(t, Ml.RIGHT);
if (a === u) return ! 1;
if (u !== i) return ! 1;
i = a
}
return ! 0
},
Gh.prototype.findIndex = function(t) {
this.iterator();
for (var e = 0; e < this._edgeList.size(); e++) if (this._edgeList.get(e) === t) return e;
return - 1
},
Gh.prototype.iterator = function() {
return this.getEdges().iterator()
},
Gh.prototype.getEdges = function() {
return null === this._edgeList && (this._edgeList = new xc(this._edgeMap.values())),
this._edgeList
},
Gh.prototype.getLocation = function(t, e, n) {
return this._ptInAreaLocation[t] === Su.NONE && (this._ptInAreaLocation[t] = Bh.locate(e, n[t].getGeometry())),
this._ptInAreaLocation[t]
},
Gh.prototype.toString = function() {
var t = new Au;
t.append("EdgeEndStar: " + this.getCoordinate()),
t.append("\n");
for (var e = this.iterator(); e.hasNext();) {
var n = e.next();
t.append(n),
t.append("\n")
}
return t.toString()
},
Gh.prototype.computeEdgeEndLabels = function(t) {
for (var e = this.iterator(); e.hasNext();) e.next().computeLabel(t)
},
Gh.prototype.computeLabelling = function(t) {
this.computeEdgeEndLabels(t[0].getBoundaryNodeRule()),
this.propagateSideLabels(0),
this.propagateSideLabels(1);
for (var e = [!1, !1], n = this.iterator(); n.hasNext();) for (var r = n.next().getLabel(), i = 0; i < 2; i++) r.isLine(i) && r.getLocation(i) === Su.BOUNDARY && (e[i] = !0);
for (var o = this.iterator(); o.hasNext();) for (var s = o.next(), a = s.getLabel(), u = 0; u < 2; u++) if (a.isAnyNull(u)) {
var c = Su.NONE;
if (e[u]) c = Su.EXTERIOR;
else {
var l = s.getCoordinate();
c = this.getLocation(u, l, t)
}
a.setAllLocationsIfNull(u, c)
}
},
Gh.prototype.getDegree = function() {
return this._edgeMap.size()
},
Gh.prototype.insertEdgeEnd = function(t, e) {
this._edgeMap.put(t, e),
this._edgeList = null
},
Gh.prototype.interfaces_ = function() {
return []
},
Gh.prototype.getClass = function() {
return Gh
};
var Uh = function(t) {
function e() {
t.call(this),
this._resultAreaEdgeList = null,
this._label = null,
this._SCANNING_FOR_INCOMING = 1,
this._LINKING_TO_OUTGOING = 2
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.linkResultDirectedEdges = function() {
this.getResultAreaEdges();
for (var t = null,
e = null,
n = this._SCANNING_FOR_INCOMING,
r = 0; r < this._resultAreaEdgeList.size(); r++) {
var i = this._resultAreaEdgeList.get(r),
o = i.getSym();
if (i.getLabel().isArea()) switch (null === t && i.isInResult() && (t = i), n) {
case this._SCANNING_FOR_INCOMING:
if (!o.isInResult()) continue;
e = o,
n = this._LINKING_TO_OUTGOING;
break;
case this._LINKING_TO_OUTGOING:
if (!i.isInResult()) continue;
e.setNext(i),
n = this._SCANNING_FOR_INCOMING
}
}
if (n === this._LINKING_TO_OUTGOING) {
if (null === t) throw new Cl("no outgoing dirEdge found", this.getCoordinate());
$u.isTrue(t.isInResult(), "unable to link last incoming dirEdge"),
e.setNext(t)
}
},
e.prototype.insert = function(t) {
var e = t;
this.insertEdgeEnd(e, e)
},
e.prototype.getRightmostEdge = function() {
var t = this.getEdges(),
e = t.size();
if (e < 1) return null;
var n = t.get(0);
if (1 === e) return n;
var r = t.get(e - 1),
i = n.getQuadrant(),
o = r.getQuadrant();
return jl.isNorthern(i) && jl.isNorthern(o) ? n: jl.isNorthern(i) || jl.isNorthern(o) ? 0 !== n.getDy() ? n: 0 !== r.getDy() ? r: ($u.shouldNeverReachHere("found two horizontal edges incident on node"), null) : r
},
e.prototype.print = function(t) {
Uu.out.println("DirectedEdgeStar: " + this.getCoordinate());
for (var e = this.iterator(); e.hasNext();) {
var n = e.next();
t.print("out "),
n.print(t),
t.println(),
t.print("in "),
n.getSym().print(t),
t.println()
}
},
e.prototype.getResultAreaEdges = function() {
if (null !== this._resultAreaEdgeList) return this._resultAreaEdgeList;
this._resultAreaEdgeList = new xc;
for (var t = this.iterator(); t.hasNext();) {
var e = t.next(); (e.isInResult() || e.getSym().isInResult()) && this._resultAreaEdgeList.add(e)
}
return this._resultAreaEdgeList
},
e.prototype.updateLabelling = function(t) {
for (var e = this.iterator(); e.hasNext();) {
var n = e.next().getLabel();
n.setAllLocationsIfNull(0, t.getLocation(0)),
n.setAllLocationsIfNull(1, t.getLocation(1))
}
},
e.prototype.linkAllDirectedEdges = function() {
this.getEdges();
for (var t = null,
e = null,
n = this._edgeList.size() - 1; n >= 0; n--) {
var r = this._edgeList.get(n),
i = r.getSym();
null === e && (e = i),
null !== t && i.setNext(t),
t = r
}
e.setNext(t)
},
e.prototype.computeDepths = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = this.findIndex(t),
n = t.getDepth(Ml.LEFT),
r = t.getDepth(Ml.RIGHT),
i = this.computeDepths(e + 1, this._edgeList.size(), n);
if (this.computeDepths(0, e, i) !== r) throw new Cl("depth mismatch at " + t.getCoordinate())
} else if (3 === arguments.length) {
for (var o = arguments[0], s = arguments[1], a = arguments[2], u = o; u < s; u++) {
var c = this._edgeList.get(u);
c.setEdgeDepths(Ml.RIGHT, a),
a = c.getDepth(Ml.LEFT)
}
return a
}
},
e.prototype.mergeSymLabels = function() {
for (var t = this.iterator(); t.hasNext();) {
var e = t.next();
e.getLabel().merge(e.getSym().getLabel())
}
},
e.prototype.linkMinimalDirectedEdges = function(t) {
for (var e = null,
n = null,
r = this._SCANNING_FOR_INCOMING,
i = this._resultAreaEdgeList.size() - 1; i >= 0; i--) {
var o = this._resultAreaEdgeList.get(i),
s = o.getSym();
switch (null === e && o.getEdgeRing() === t && (e = o), r) {
case this._SCANNING_FOR_INCOMING:
if (s.getEdgeRing() !== t) continue;
n = s,
r = this._LINKING_TO_OUTGOING;
break;
case this._LINKING_TO_OUTGOING:
if (o.getEdgeRing() !== t) continue;
n.setNextMin(o),
r = this._SCANNING_FOR_INCOMING
}
}
r === this._LINKING_TO_OUTGOING && ($u.isTrue(null !== e, "found null for first outgoing dirEdge"), $u.isTrue(e.getEdgeRing() === t, "unable to link last incoming dirEdge"), n.setNextMin(e))
},
e.prototype.getOutgoingDegree = function() {
if (0 === arguments.length) {
for (var t = 0,
e = this.iterator(); e.hasNext();) e.next().isInResult() && t++;
return t
}
if (1 === arguments.length) {
for (var n = arguments[0], r = 0, i = this.iterator(); i.hasNext();) i.next().getEdgeRing() === n && r++;
return r
}
},
e.prototype.getLabel = function() {
return this._label
},
e.prototype.findCoveredLineEdges = function() {
for (var t = Su.NONE,
e = this.iterator(); e.hasNext();) {
var n = e.next(),
r = n.getSym();
if (!n.isLineEdge()) {
if (n.isInResult()) {
t = Su.INTERIOR;
break
}
if (r.isInResult()) {
t = Su.EXTERIOR;
break
}
}
}
if (t === Su.NONE) return null;
for (var i = t,
o = this.iterator(); o.hasNext();) {
var s = o.next(),
a = s.getSym();
s.isLineEdge() ? s.getEdge().setCovered(i === Su.INTERIOR) : (s.isInResult() && (i = Su.EXTERIOR), a.isInResult() && (i = Su.INTERIOR))
}
},
e.prototype.computeLabelling = function(e) {
t.prototype.computeLabelling.call(this, e),
this._label = new Al(Su.NONE);
for (var n = this.iterator(); n.hasNext();) for (var r = n.next().getEdge().getLabel(), i = 0; i < 2; i++) {
var o = r.getLocation(i);
o !== Su.INTERIOR && o !== Su.BOUNDARY || this._label.setLocation(i, Su.INTERIOR)
}
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Gh),
zh = function(t) {
function e() {
t.apply(this, arguments)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.createNode = function(t) {
return new kl(t, new Uh)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Ul),
Yh = function t() {
this._pts = null,
this._orientation = null;
var e = arguments[0];
this._pts = e,
this._orientation = t.orientation(e)
};
Yh.prototype.compareTo = function(t) {
var e = t;
return Yh.compareOriented(this._pts, this._orientation, e._pts, e._orientation)
},
Yh.prototype.interfaces_ = function() {
return [_u]
},
Yh.prototype.getClass = function() {
return Yh
},
Yh.orientation = function(t) {
return 1 === Ic.increasingDirection(t)
},
Yh.compareOriented = function(t, e, n, r) {
for (var i = e ? 1 : -1, o = r ? 1 : -1, s = e ? t.length: -1, a = r ? n.length: -1, u = e ? 0 : t.length - 1, c = r ? 0 : n.length - 1;;) {
var l = t[u].compareTo(n[c]);
if (0 !== l) return l;
var h = (u += i) === s,
f = (c += o) === a;
if (h && !f) return - 1;
if (!h && f) return 1;
if (h && f) return 0
}
};
var Xh = function() {
this._edges = new xc,
this._ocaMap = new ji
};
Xh.prototype.print = function(t) {
t.print("MULTILINESTRING ( ");
for (var e = 0; e < this._edges.size(); e++) {
var n = this._edges.get(e);
e > 0 && t.print(","),
t.print("(");
for (var r = n.getCoordinates(), i = 0; i < r.length; i++) i > 0 && t.print(","),
t.print(r[i].x + " " + r[i].y);
t.println(")")
}
t.print(") ")
},
Xh.prototype.addAll = function(t) {
for (var e = t.iterator(); e.hasNext();) this.add(e.next())
},
Xh.prototype.findEdgeIndex = function(t) {
for (var e = 0; e < this._edges.size(); e++) if (this._edges.get(e).equals(t)) return e;
return - 1
},
Xh.prototype.iterator = function() {
return this._edges.iterator()
},
Xh.prototype.getEdges = function() {
return this._edges
},
Xh.prototype.get = function(t) {
return this._edges.get(t)
},
Xh.prototype.findEqualEdge = function(t) {
var e = new Yh(t.getCoordinates());
return this._ocaMap.get(e)
},
Xh.prototype.add = function(t) {
this._edges.add(t);
var e = new Yh(t.getCoordinates());
this._ocaMap.put(e, t)
},
Xh.prototype.interfaces_ = function() {
return []
},
Xh.prototype.getClass = function() {
return Xh
};
var Vh = function() {};
Vh.prototype.processIntersections = function(t, e, n, r) {},
Vh.prototype.isDone = function() {},
Vh.prototype.interfaces_ = function() {
return []
},
Vh.prototype.getClass = function() {
return Vh
};
var Wh = function() {
this._hasIntersection = !1,
this._hasProper = !1,
this._hasProperInterior = !1,
this._hasInterior = !1,
this._properIntersectionPoint = null,
this._li = null,
this._isSelfIntersection = null,
this.numIntersections = 0,
this.numInteriorIntersections = 0,
this.numProperIntersections = 0,
this.numTests = 0;
var t = arguments[0];
this._li = t
};
Wh.prototype.isTrivialIntersection = function(t, e, n, r) {
if (t === n && 1 === this._li.getIntersectionNum()) {
if (Wh.isAdjacentSegments(e, r)) return ! 0;
if (t.isClosed()) {
var i = t.size() - 1;
if (0 === e && r === i || 0 === r && e === i) return ! 0
}
}
return ! 1
},
Wh.prototype.getProperIntersectionPoint = function() {
return this._properIntersectionPoint
},
Wh.prototype.hasProperInteriorIntersection = function() {
return this._hasProperInterior
},
Wh.prototype.getLineIntersector = function() {
return this._li
},
Wh.prototype.hasProperIntersection = function() {
return this._hasProper
},
Wh.prototype.processIntersections = function(t, e, n, r) {
if (t === n && e === r) return null;
this.numTests++;
var i = t.getCoordinates()[e],
o = t.getCoordinates()[e + 1],
s = n.getCoordinates()[r],
a = n.getCoordinates()[r + 1];
this._li.computeIntersection(i, o, s, a),
this._li.hasIntersection() && (this.numIntersections++, this._li.isInteriorIntersection() && (this.numInteriorIntersections++, this._hasInterior = !0), this.isTrivialIntersection(t, e, n, r) || (this._hasIntersection = !0, t.addIntersections(this._li, e, 0), n.addIntersections(this._li, r, 1), this._li.isProper() && (this.numProperIntersections++, this._hasProper = !0, this._hasProperInterior = !0)))
},
Wh.prototype.hasIntersection = function() {
return this._hasIntersection
},
Wh.prototype.isDone = function() {
return ! 1
},
Wh.prototype.hasInteriorIntersection = function() {
return this._hasInterior
},
Wh.prototype.interfaces_ = function() {
return [Vh]
},
Wh.prototype.getClass = function() {
return Wh
},
Wh.isAdjacentSegments = function(t, e) {
return 1 === Math.abs(t - e)
};
var Hh = function() {
this.coord = null,
this.segmentIndex = null,
this.dist = null;
var t = arguments[0],
e = arguments[1],
n = arguments[2];
this.coord = new xu(t),
this.segmentIndex = e,
this.dist = n
};
Hh.prototype.getSegmentIndex = function() {
return this.segmentIndex
},
Hh.prototype.getCoordinate = function() {
return this.coord
},
Hh.prototype.print = function(t) {
t.print(this.coord),
t.print(" seg # = " + this.segmentIndex),
t.println(" dist = " + this.dist)
},
Hh.prototype.compareTo = function(t) {
var e = t;
return this.compare(e.segmentIndex, e.dist)
},
Hh.prototype.isEndPoint = function(t) {
return 0 === this.segmentIndex && 0 === this.dist || this.segmentIndex === t
},
Hh.prototype.toString = function() {
return this.coord + " seg # = " + this.segmentIndex + " dist = " + this.dist
},
Hh.prototype.getDistance = function() {
return this.dist
},
Hh.prototype.compare = function(t, e) {
return this.segmentIndex < t ? -1 : this.segmentIndex > t ? 1 : this.dist < e ? -1 : this.dist > e ? 1 : 0
},
Hh.prototype.interfaces_ = function() {
return [_u]
},
Hh.prototype.getClass = function() {
return Hh
};
var Jh = function() {
this._nodeMap = new ji,
this.edge = null;
var t = arguments[0];
this.edge = t
};
Jh.prototype.print = function(t) {
t.println("Intersections:");
for (var e = this.iterator(); e.hasNext();) e.next().print(t)
},
Jh.prototype.iterator = function() {
return this._nodeMap.values().iterator()
},
Jh.prototype.addSplitEdges = function(t) {
this.addEndpoints();
for (var e = this.iterator(), n = e.next(); e.hasNext();) {
var r = e.next(),
i = this.createSplitEdge(n, r);
t.add(i),
n = r
}
},
Jh.prototype.addEndpoints = function() {
var t = this.edge.pts.length - 1;
this.add(this.edge.pts[0], 0, 0),
this.add(this.edge.pts[t], t, 0)
},
Jh.prototype.createSplitEdge = function(t, e) {
var n = e.segmentIndex - t.segmentIndex + 2,
r = this.edge.pts[e.segmentIndex],
i = e.dist > 0 || !e.coord.equals2D(r);
i || n--;
var o = new Array(n).fill(null),
s = 0;
o[s++] = new xu(t.coord);
for (var a = t.segmentIndex + 1; a <= e.segmentIndex; a++) o[s++] = this.edge.pts[a];
return i && (o[s] = e.coord),
new tf(o, new Al(this.edge._label))
},
Jh.prototype.add = function(t, e, n) {
var r = new Hh(t, e, n),
i = this._nodeMap.get(r);
return null !== i ? i: (this._nodeMap.put(r, r), r)
},
Jh.prototype.isIntersection = function(t) {
for (var e = this.iterator(); e.hasNext();) if (e.next().coord.equals(t)) return ! 0;
return ! 1
},
Jh.prototype.interfaces_ = function() {
return []
},
Jh.prototype.getClass = function() {
return Jh
};
var Zh = function() {};
Zh.prototype.getChainStartIndices = function(t) {
var e = 0,
n = new xc;
n.add(new Ou(e));
do {
var r = this.findChainEnd(t, e);
n.add(new Ou(r)), e = r
} while ( e < t . length - 1 );
return Zh.toIntArray(n)
},
Zh.prototype.findChainEnd = function(t, e) {
for (var n = jl.quadrant(t[e], t[e + 1]), r = e + 1; r < t.length && jl.quadrant(t[r - 1], t[r]) === n;) r++;
return r - 1
},
Zh.prototype.interfaces_ = function() {
return []
},
Zh.prototype.getClass = function() {
return Zh
},
Zh.toIntArray = function(t) {
for (var e = new Array(t.size()).fill(null), n = 0; n < e.length; n++) e[n] = t.get(n).intValue();
return e
};
var Qh = function() {
this.e = null,
this.pts = null,
this.startIndex = null,
this.env1 = new Yu,
this.env2 = new Yu;
var t = arguments[0];
this.e = t,
this.pts = t.getCoordinates();
var e = new Zh;
this.startIndex = e.getChainStartIndices(this.pts)
};
Qh.prototype.getCoordinates = function() {
return this.pts
},
Qh.prototype.getMaxX = function(t) {
var e = this.pts[this.startIndex[t]].x,
n = this.pts[this.startIndex[t + 1]].x;
return e > n ? e: n
},
Qh.prototype.getMinX = function(t) {
var e = this.pts[this.startIndex[t]].x,
n = this.pts[this.startIndex[t + 1]].x;
return e < n ? e: n
},
Qh.prototype.computeIntersectsForChain = function() {
if (4 === arguments.length) {
var t = arguments[0],
e = arguments[1],
n = arguments[2],
r = arguments[3];
this.computeIntersectsForChain(this.startIndex[t], this.startIndex[t + 1], e, e.startIndex[n], e.startIndex[n + 1], r)
} else if (6 === arguments.length) {
var i = arguments[0],
o = arguments[1],
s = arguments[2],
a = arguments[3],
u = arguments[4],
c = arguments[5],
l = this.pts[i],
h = this.pts[o],
f = s.pts[a],
p = s.pts[u];
if (o - i == 1 && u - a == 1) return c.addIntersections(this.e, i, s.e, a),
null;
if (this.env1.init(l, h), this.env2.init(f, p), !this.env1.intersects(this.env2)) return null;
var d = Math.trunc((i + o) / 2),
g = Math.trunc((a + u) / 2);
i < d && (a < g && this.computeIntersectsForChain(i, d, s, a, g, c), g < u && this.computeIntersectsForChain(i, d, s, g, u, c)),
d < o && (a < g && this.computeIntersectsForChain(d, o, s, a, g, c), g < u && this.computeIntersectsForChain(d, o, s, g, u, c))
}
},
Qh.prototype.getStartIndexes = function() {
return this.startIndex
},
Qh.prototype.computeIntersects = function(t, e) {
for (var n = 0; n < this.startIndex.length - 1; n++) for (var r = 0; r < t.startIndex.length - 1; r++) this.computeIntersectsForChain(n, t, r, e)
},
Qh.prototype.interfaces_ = function() {
return []
},
Qh.prototype.getClass = function() {
return Qh
};
var Kh = function t() {
this._depth = Array(2).fill().map(function() {
return Array(3)
});
for (var e = 0; e < 2; e++) for (var n = 0; n < 3; n++) this._depth[e][n] = t.NULL_VALUE
},
$h = {
NULL_VALUE: {
configurable: !0
}
};
Kh.prototype.getDepth = function(t, e) {
return this._depth[t][e]
},
Kh.prototype.setDepth = function(t, e, n) {
this._depth[t][e] = n
},
Kh.prototype.isNull = function() {
if (0 === arguments.length) {
for (var t = 0; t < 2; t++) for (var e = 0; e < 3; e++) if (this._depth[t][e] !== Kh.NULL_VALUE) return ! 1;
return ! 0
}
if (1 === arguments.length) {
var n = arguments[0];
return this._depth[n][1] === Kh.NULL_VALUE
}
if (2 === arguments.length) {
var r = arguments[0],
i = arguments[1];
return this._depth[r][i] === Kh.NULL_VALUE
}
},
Kh.prototype.normalize = function() {
for (var t = 0; t < 2; t++) if (!this.isNull(t)) {
var e = this._depth[t][1];
this._depth[t][2] < e && (e = this._depth[t][2]),
e < 0 && (e = 0);
for (var n = 1; n < 3; n++) {
var r = 0;
this._depth[t][n] > e && (r = 1),
this._depth[t][n] = r
}
}
},
Kh.prototype.getDelta = function(t) {
return this._depth[t][Ml.RIGHT] - this._depth[t][Ml.LEFT]
},
Kh.prototype.getLocation = function(t, e) {
return this._depth[t][e] <= 0 ? Su.EXTERIOR: Su.INTERIOR
},
Kh.prototype.toString = function() {
return "A: " + this._depth[0][1] + "," + this._depth[0][2] + " B: " + this._depth[1][1] + "," + this._depth[1][2]
},
Kh.prototype.add = function() {
if (1 === arguments.length) for (var t = arguments[0], e = 0; e < 2; e++) for (var n = 1; n < 3; n++) {
var r = t.getLocation(e, n);
r !== Su.EXTERIOR && r !== Su.INTERIOR || (this.isNull(e, n) ? this._depth[e][n] = Kh.depthAtLocation(r) : this._depth[e][n] += Kh.depthAtLocation(r))
} else if (3 === arguments.length) {
var i = arguments[0],
o = arguments[1];
arguments[2] === Su.INTERIOR && this._depth[i][o]++
}
},
Kh.prototype.interfaces_ = function() {
return []
},
Kh.prototype.getClass = function() {
return Kh
},
Kh.depthAtLocation = function(t) {
return t === Su.EXTERIOR ? 0 : t === Su.INTERIOR ? 1 : Kh.NULL_VALUE
},
$h.NULL_VALUE.get = function() {
return - 1
},
Object.defineProperties(Kh, $h);
var tf = function(t) {
function e() {
if (t.call(this), this.pts = null, this._env = null, this.eiList = new Jh(this), this._name = null, this._mce = null, this._isIsolated = !0, this._depth = new Kh, this._depthDelta = 0, 1 === arguments.length) {
var n = arguments[0];
e.call(this, n, null)
} else if (2 === arguments.length) {
var r = arguments[0],
i = arguments[1];
this.pts = r,
this._label = i
}
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.getDepth = function() {
return this._depth
},
e.prototype.getCollapsedEdge = function() {
var t = new Array(2).fill(null);
return t[0] = this.pts[0],
t[1] = this.pts[1],
new e(t, Al.toLineLabel(this._label))
},
e.prototype.isIsolated = function() {
return this._isIsolated
},
e.prototype.getCoordinates = function() {
return this.pts
},
e.prototype.setIsolated = function(t) {
this._isIsolated = t
},
e.prototype.setName = function(t) {
this._name = t
},
e.prototype.equals = function(t) {
if (! (t instanceof e)) return ! 1;
var n = t;
if (this.pts.length !== n.pts.length) return ! 1;
for (var r = !0,
i = !0,
o = this.pts.length,
s = 0; s < this.pts.length; s++) if (this.pts[s].equals2D(n.pts[s]) || (r = !1), this.pts[s].equals2D(n.pts[--o]) || (i = !1), !r && !i) return ! 1;
return ! 0
},
e.prototype.getCoordinate = function() {
if (0 === arguments.length) return this.pts.length > 0 ? this.pts[0] : null;
if (1 === arguments.length) {
var t = arguments[0];
return this.pts[t]
}
},
e.prototype.print = function(t) {
t.print("edge " + this._name + ": "),
t.print("LINESTRING (");
for (var e = 0; e < this.pts.length; e++) e > 0 && t.print(","),
t.print(this.pts[e].x + " " + this.pts[e].y);
t.print(") " + this._label + " " + this._depthDelta)
},
e.prototype.computeIM = function(t) {
e.updateIM(this._label, t)
},
e.prototype.isCollapsed = function() {
return !! this._label.isArea() && 3 === this.pts.length && !!this.pts[0].equals(this.pts[2])
},
e.prototype.isClosed = function() {
return this.pts[0].equals(this.pts[this.pts.length - 1])
},
e.prototype.getMaximumSegmentIndex = function() {
return this.pts.length - 1
},
e.prototype.getDepthDelta = function() {
return this._depthDelta
},
e.prototype.getNumPoints = function() {
return this.pts.length
},
e.prototype.printReverse = function(t) {
t.print("edge " + this._name + ": ");
for (var e = this.pts.length - 1; e >= 0; e--) t.print(this.pts[e] + " ");
t.println("")
},
e.prototype.getMonotoneChainEdge = function() {
return null === this._mce && (this._mce = new Qh(this)),
this._mce
},
e.prototype.getEnvelope = function() {
if (null === this._env) {
this._env = new Yu;
for (var t = 0; t < this.pts.length; t++) this._env.expandToInclude(this.pts[t])
}
return this._env
},
e.prototype.addIntersection = function(t, e, n, r) {
var i = new xu(t.getIntersection(r)),
o = e,
s = t.getEdgeDistance(n, r),
a = o + 1;
if (a < this.pts.length) {
var u = this.pts[a];
i.equals2D(u) && (o = a, s = 0)
}
this.eiList.add(i, o, s)
},
e.prototype.toString = function() {
var t = new Au;
t.append("edge " + this._name + ": "),
t.append("LINESTRING (");
for (var e = 0; e < this.pts.length; e++) e > 0 && t.append(","),
t.append(this.pts[e].x + " " + this.pts[e].y);
return t.append(") " + this._label + " " + this._depthDelta),
t.toString()
},
e.prototype.isPointwiseEqual = function(t) {
if (this.pts.length !== t.pts.length) return ! 1;
for (var e = 0; e < this.pts.length; e++) if (!this.pts[e].equals2D(t.pts[e])) return ! 1;
return ! 0
},
e.prototype.setDepthDelta = function(t) {
this._depthDelta = t
},
e.prototype.getEdgeIntersectionList = function() {
return this.eiList
},
e.prototype.addIntersections = function(t, e, n) {
for (var r = 0; r < t.getIntersectionNum(); r++) this.addIntersection(t, e, n, r)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e.updateIM = function() {
if (2 !== arguments.length) return t.prototype.updateIM.apply(this, arguments);
var e = arguments[0],
n = arguments[1];
n.setAtLeastIfValid(e.getLocation(0, Ml.ON), e.getLocation(1, Ml.ON), 1),
e.isArea() && (n.setAtLeastIfValid(e.getLocation(0, Ml.LEFT), e.getLocation(1, Ml.LEFT), 2), n.setAtLeastIfValid(e.getLocation(0, Ml.RIGHT), e.getLocation(1, Ml.RIGHT), 2))
},
e
} (Dl),
ef = function(t) {
this._workingPrecisionModel = null,
this._workingNoder = null,
this._geomFact = null,
this._graph = null,
this._edgeList = new Xh,
this._bufParams = t || null
};
ef.prototype.setWorkingPrecisionModel = function(t) {
this._workingPrecisionModel = t
},
ef.prototype.insertUniqueEdge = function(t) {
var e = this._edgeList.findEqualEdge(t);
if (null !== e) {
var n = e.getLabel(),
r = t.getLabel();
e.isPointwiseEqual(t) || (r = new Al(t.getLabel())).flip(),
n.merge(r);
var i = ef.depthDelta(r),
o = e.getDepthDelta() + i;
e.setDepthDelta(o)
} else this._edgeList.add(t),
t.setDepthDelta(ef.depthDelta(t.getLabel()))
},
ef.prototype.buildSubgraphs = function(t, e) {
for (var n = new xc,
r = t.iterator(); r.hasNext();) {
var i = r.next(),
o = i.getRightmostCoordinate(),
s = new Th(n).getDepth(o);
i.computeDepth(s),
i.findResultEdges(),
n.add(i),
e.add(i.getDirectedEdges(), i.getNodes())
}
},
ef.prototype.createSubgraphs = function(t) {
for (var e = new xc,
n = t.getNodes().iterator(); n.hasNext();) {
var r = n.next();
if (!r.isVisited()) {
var i = new Pl;
i.create(r),
e.add(i)
}
}
return Kl.sort(e, Kl.reverseOrder()),
e
},
ef.prototype.createEmptyResultGeometry = function() {
return this._geomFact.createPolygon()
},
ef.prototype.getNoder = function(t) {
if (null !== this._workingNoder) return this._workingNoder;
var e = new wh,
n = new nc;
return n.setPrecisionModel(t),
e.setSegmentIntersector(new Wh(n)),
e
},
ef.prototype.buffer = function(t, e) {
var n = this._workingPrecisionModel;
null === n && (n = t.getPrecisionModel()),
this._geomFact = t.getFactory();
var r = new Oh(n, this._bufParams),
i = new Fh(t, e, r).getCurves();
if (i.size() <= 0) return this.createEmptyResultGeometry();
this.computeNodedEdges(i, n),
this._graph = new zl(new zh),
this._graph.addEdges(this._edgeList.getEdges());
var o = this.createSubgraphs(this._graph),
s = new Yl(this._geomFact);
this.buildSubgraphs(o, s);
var a = s.getPolygons();
return a.size() <= 0 ? this.createEmptyResultGeometry() : this._geomFact.buildGeometry(a)
},
ef.prototype.computeNodedEdges = function(t, e) {
var n = this.getNoder(e);
n.computeNodes(t);
for (var r = n.getNodedSubstrings().iterator(); r.hasNext();) {
var i = r.next(),
o = i.getCoordinates();
if (2 !== o.length || !o[0].equals2D(o[1])) {
var s = i.getData(),
a = new tf(i.getCoordinates(), new Al(s));
this.insertUniqueEdge(a)
}
}
},
ef.prototype.setNoder = function(t) {
this._workingNoder = t
},
ef.prototype.interfaces_ = function() {
return []
},
ef.prototype.getClass = function() {
return ef
},
ef.depthDelta = function(t) {
var e = t.getLocation(0, Ml.LEFT),
n = t.getLocation(0, Ml.RIGHT);
return e === Su.INTERIOR && n === Su.EXTERIOR ? 1 : e === Su.EXTERIOR && n === Su.INTERIOR ? -1 : 0
},
ef.convertSegStrings = function(t) {
for (var e = new yl,
n = new xc; t.hasNext();) {
var r = t.next(),
i = e.createLineString(r.getCoordinates());
n.add(i)
}
return e.buildGeometry(n)
};
var nf = function() {
if (this._noder = null, this._scaleFactor = null, this._offsetX = null, this._offsetY = null, this._isScaled = !1, 2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
this._noder = t,
this._scaleFactor = e,
this._offsetX = 0,
this._offsetY = 0,
this._isScaled = !this.isIntegerPrecision()
} else if (4 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2],
o = arguments[3];
this._noder = n,
this._scaleFactor = r,
this._offsetX = i,
this._offsetY = o,
this._isScaled = !this.isIntegerPrecision()
}
};
nf.prototype.rescale = function() {
if (Nu(arguments[0], mc)) for (var t = arguments[0].iterator(); t.hasNext();) {
var e = t.next();
this.rescale(e.getCoordinates())
} else if (arguments[0] instanceof Array) {
for (var n = arguments[0], r = 0; r < n.length; r++) n[r].x = n[r].x / this._scaleFactor + this._offsetX,
n[r].y = n[r].y / this._scaleFactor + this._offsetY;
2 === n.length && n[0].equals2D(n[1]) && Uu.out.println(n)
}
},
nf.prototype.scale = function() {
if (Nu(arguments[0], mc)) {
for (var t = arguments[0], e = new xc, n = t.iterator(); n.hasNext();) {
var r = n.next();
e.add(new fh(this.scale(r.getCoordinates()), r.getData()))
}
return e
}
if (arguments[0] instanceof Array) {
for (var i = arguments[0], o = new Array(i.length).fill(null), s = 0; s < i.length; s++) o[s] = new xu(Math.round((i[s].x - this._offsetX) * this._scaleFactor), Math.round((i[s].y - this._offsetY) * this._scaleFactor), i[s].z);
return Ic.removeRepeatedPoints(o)
}
},
nf.prototype.isIntegerPrecision = function() {
return 1 === this._scaleFactor
},
nf.prototype.getNodedSubstrings = function() {
var t = this._noder.getNodedSubstrings();
return this._isScaled && this.rescale(t),
t
},
nf.prototype.computeNodes = function(t) {
var e = t;
this._isScaled && (e = this.scale(t)),
this._noder.computeNodes(e)
},
nf.prototype.interfaces_ = function() {
return [mh]
},
nf.prototype.getClass = function() {
return nf
};
var rf = function() {
this._li = new nc,
this._segStrings = null;
var t = arguments[0];
this._segStrings = t
},
of = {
fact: {
configurable: !0
}
};
rf.prototype.checkEndPtVertexIntersections = function() {
if (0 === arguments.length) for (var t = this._segStrings.iterator(); t.hasNext();) {
var e = t.next().getCoordinates();
this.checkEndPtVertexIntersections(e[0], this._segStrings),
this.checkEndPtVertexIntersections(e[e.length - 1], this._segStrings)
} else if (2 === arguments.length) for (var n = arguments[0], r = arguments[1].iterator(); r.hasNext();) for (var i = r.next().getCoordinates(), o = 1; o < i.length - 1; o++) if (i[o].equals(n)) throw new Qu("found endpt/interior pt intersection at index " + o + " :pt " + n)
},
rf.prototype.checkInteriorIntersections = function() {
if (0 === arguments.length) for (var t = this._segStrings.iterator(); t.hasNext();) for (var e = t.next(), n = this._segStrings.iterator(); n.hasNext();) {
var r = n.next();
this.checkInteriorIntersections(e, r)
} else if (2 === arguments.length) for (var i = arguments[0], o = arguments[1], s = i.getCoordinates(), a = o.getCoordinates(), u = 0; u < s.length - 1; u++) for (var c = 0; c < a.length - 1; c++) this.checkInteriorIntersections(i, u, o, c);
else if (4 === arguments.length) {
var l = arguments[0],
h = arguments[1],
f = arguments[2],
p = arguments[3];
if (l === f && h === p) return null;
var d = l.getCoordinates()[h],
g = l.getCoordinates()[h + 1],
y = f.getCoordinates()[p],
v = f.getCoordinates()[p + 1];
if (this._li.computeIntersection(d, g, y, v), this._li.hasIntersection() && (this._li.isProper() || this.hasInteriorIntersection(this._li, d, g) || this.hasInteriorIntersection(this._li, y, v))) throw new Qu("found non-noded intersection at " + d + "-" + g + " and " + y + "-" + v)
}
},
rf.prototype.checkValid = function() {
this.checkEndPtVertexIntersections(),
this.checkInteriorIntersections(),
this.checkCollapses()
},
rf.prototype.checkCollapses = function() {
if (0 === arguments.length) for (var t = this._segStrings.iterator(); t.hasNext();) {
var e = t.next();
this.checkCollapses(e)
} else if (1 === arguments.length) for (var n = arguments[0].getCoordinates(), r = 0; r < n.length - 2; r++) this.checkCollapse(n[r], n[r + 1], n[r + 2])
},
rf.prototype.hasInteriorIntersection = function(t, e, n) {
for (var r = 0; r < t.getIntersectionNum(); r++) {
var i = t.getIntersection(r);
if (!i.equals(e) && !i.equals(n)) return ! 0
}
return ! 1
},
rf.prototype.checkCollapse = function(t, e, n) {
if (t.equals(n)) throw new Qu("found non-noded collapse at " + rf.fact.createLineString([t, e, n]))
},
rf.prototype.interfaces_ = function() {
return []
},
rf.prototype.getClass = function() {
return rf
},
of.fact.get = function() {
return new yl
},
Object.defineProperties(rf, of);
var sf = function() {
this._li = null,
this._pt = null,
this._originalPt = null,
this._ptScaled = null,
this._p0Scaled = null,
this._p1Scaled = null,
this._scaleFactor = null,
this._minx = null,
this._maxx = null,
this._miny = null,
this._maxy = null,
this._corner = new Array(4).fill(null),
this._safeEnv = null;
var t = arguments[0],
e = arguments[1],
n = arguments[2];
if (this._originalPt = t, this._pt = t, this._scaleFactor = e, this._li = n, e <= 0) throw new yu("Scale factor must be non-zero");
1 !== e && (this._pt = new xu(this.scale(t.x), this.scale(t.y)), this._p0Scaled = new xu, this._p1Scaled = new xu),
this.initCorners(this._pt)
},
af = {
SAFE_ENV_EXPANSION_FACTOR: {
configurable: !0
}
};
sf.prototype.intersectsScaled = function(t, e) {
var n = Math.min(t.x, e.x),
r = Math.max(t.x, e.x),
i = Math.min(t.y, e.y),
o = Math.max(t.y, e.y),
s = this._maxx < n || this._minx > r || this._maxy < i || this._miny > o;
if (s) return ! 1;
var a = this.intersectsToleranceSquare(t, e);
return $u.isTrue(!(s && a), "Found bad envelope test"),
a
},
sf.prototype.initCorners = function(t) {
this._minx = t.x - .5,
this._maxx = t.x + .5,
this._miny = t.y - .5,
this._maxy = t.y + .5,
this._corner[0] = new xu(this._maxx, this._maxy),
this._corner[1] = new xu(this._minx, this._maxy),
this._corner[2] = new xu(this._minx, this._miny),
this._corner[3] = new xu(this._maxx, this._miny)
},
sf.prototype.intersects = function(t, e) {
return 1 === this._scaleFactor ? this.intersectsScaled(t, e) : (this.copyScaled(t, this._p0Scaled), this.copyScaled(e, this._p1Scaled), this.intersectsScaled(this._p0Scaled, this._p1Scaled))
},
sf.prototype.scale = function(t) {
return Math.round(t * this._scaleFactor)
},
sf.prototype.getCoordinate = function() {
return this._originalPt
},
sf.prototype.copyScaled = function(t, e) {
e.x = this.scale(t.x),
e.y = this.scale(t.y)
},
sf.prototype.getSafeEnvelope = function() {
if (null === this._safeEnv) {
var t = sf.SAFE_ENV_EXPANSION_FACTOR / this._scaleFactor;
this._safeEnv = new Yu(this._originalPt.x - t, this._originalPt.x + t, this._originalPt.y - t, this._originalPt.y + t)
}
return this._safeEnv
},
sf.prototype.intersectsPixelClosure = function(t, e) {
return this._li.computeIntersection(t, e, this._corner[0], this._corner[1]),
!!(this._li.hasIntersection() || (this._li.computeIntersection(t, e, this._corner[1], this._corner[2]), this._li.hasIntersection() || (this._li.computeIntersection(t, e, this._corner[2], this._corner[3]), this._li.hasIntersection() || (this._li.computeIntersection(t, e, this._corner[3], this._corner[0]), this._li.hasIntersection()))))
},
sf.prototype.intersectsToleranceSquare = function(t, e) {
var n = !1,
r = !1;
return this._li.computeIntersection(t, e, this._corner[0], this._corner[1]),
!!(this._li.isProper() || (this._li.computeIntersection(t, e, this._corner[1], this._corner[2]), this._li.isProper() || (this._li.hasIntersection() && (n = !0), this._li.computeIntersection(t, e, this._corner[2], this._corner[3]), this._li.isProper() || (this._li.hasIntersection() && (r = !0), this._li.computeIntersection(t, e, this._corner[3], this._corner[0]), this._li.isProper() || n && r || t.equals(this._pt) || e.equals(this._pt)))))
},
sf.prototype.addSnappedNode = function(t, e) {
var n = t.getCoordinate(e),
r = t.getCoordinate(e + 1);
return !! this.intersects(n, r) && (t.addIntersection(this.getCoordinate(), e), !0)
},
sf.prototype.interfaces_ = function() {
return []
},
sf.prototype.getClass = function() {
return sf
},
af.SAFE_ENV_EXPANSION_FACTOR.get = function() {
return.75
},
Object.defineProperties(sf, af);
var uf = function() {
this.tempEnv1 = new Yu,
this.selectedSegment = new ph
};
uf.prototype.select = function() {
if (1 === arguments.length);
else if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
t.getLineSegment(e, this.selectedSegment),
this.select(this.selectedSegment)
}
},
uf.prototype.interfaces_ = function() {
return []
},
uf.prototype.getClass = function() {
return uf
};
var cf = function() {
this._index = null;
var t = arguments[0];
this._index = t
},
lf = {
HotPixelSnapAction: {
configurable: !0
}
};
cf.prototype.snap = function() {
if (1 === arguments.length) {
var t = arguments[0];
return this.snap(t, null, -1)
}
if (3 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = arguments[2],
i = e.getSafeEnvelope(),
o = new hf(e, n, r);
return this._index.query(i, {
interfaces_: function() {
return [Hl]
},
visitItem: function(t) {
t.select(i, o)
}
}),
o.isNodeAdded()
}
},
cf.prototype.interfaces_ = function() {
return []
},
cf.prototype.getClass = function() {
return cf
},
lf.HotPixelSnapAction.get = function() {
return hf
},
Object.defineProperties(cf, lf);
var hf = function(t) {
function e() {
t.call(this),
this._hotPixel = null,
this._parentEdge = null,
this._hotPixelVertexIndex = null,
this._isNodeAdded = !1;
var e = arguments[0],
n = arguments[1],
r = arguments[2];
this._hotPixel = e,
this._parentEdge = n,
this._hotPixelVertexIndex = r
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.isNodeAdded = function() {
return this._isNodeAdded
},
e.prototype.select = function() {
if (2 !== arguments.length) return t.prototype.select.apply(this, arguments);
var e = arguments[0],
n = arguments[1],
r = e.getContext();
if (null !== this._parentEdge && r === this._parentEdge && n === this._hotPixelVertexIndex) return null;
this._isNodeAdded = this._hotPixel.addSnappedNode(r, n)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (uf),
ff = function() {
this._li = null,
this._interiorIntersections = null;
var t = arguments[0];
this._li = t,
this._interiorIntersections = new xc
};
ff.prototype.processIntersections = function(t, e, n, r) {
if (t === n && e === r) return null;
var i = t.getCoordinates()[e],
o = t.getCoordinates()[e + 1],
s = n.getCoordinates()[r],
a = n.getCoordinates()[r + 1];
if (this._li.computeIntersection(i, o, s, a), this._li.hasIntersection() && this._li.isInteriorIntersection()) {
for (var u = 0; u < this._li.getIntersectionNum(); u++) this._interiorIntersections.add(this._li.getIntersection(u));
t.addIntersections(this._li, e, 0),
n.addIntersections(this._li, r, 1)
}
},
ff.prototype.isDone = function() {
return ! 1
},
ff.prototype.getInteriorIntersections = function() {
return this._interiorIntersections
},
ff.prototype.interfaces_ = function() {
return [Vh]
},
ff.prototype.getClass = function() {
return ff
};
var pf = function() {
this._pm = null,
this._li = null,
this._scaleFactor = null,
this._noder = null,
this._pointSnapper = null,
this._nodedSegStrings = null;
var t = arguments[0];
this._pm = t,
this._li = new nc,
this._li.setPrecisionModel(t),
this._scaleFactor = t.getScale()
};
pf.prototype.checkCorrectness = function(t) {
var e = fh.getNodedSubstrings(t),
n = new rf(e);
try {
n.checkValid()
} catch(t) {
if (! (t instanceof Bu)) throw t;
t.printStackTrace()
}
},
pf.prototype.getNodedSubstrings = function() {
return fh.getNodedSubstrings(this._nodedSegStrings)
},
pf.prototype.snapRound = function(t, e) {
var n = this.findInteriorIntersections(t, e);
this.computeIntersectionSnaps(n),
this.computeVertexSnaps(t)
},
pf.prototype.findInteriorIntersections = function(t, e) {
var n = new ff(e);
return this._noder.setSegmentIntersector(n),
this._noder.computeNodes(t),
n.getInteriorIntersections()
},
pf.prototype.computeVertexSnaps = function() {
if (Nu(arguments[0], mc)) for (var t = arguments[0].iterator(); t.hasNext();) {
var e = t.next();
this.computeVertexSnaps(e)
} else if (arguments[0] instanceof fh) for (var n = arguments[0], r = n.getCoordinates(), i = 0; i < r.length; i++) {
var o = new sf(r[i], this._scaleFactor, this._li);
this._pointSnapper.snap(o, n, i) && n.addIntersection(r[i], i)
}
},
pf.prototype.computeNodes = function(t) {
this._nodedSegStrings = t,
this._noder = new wh,
this._pointSnapper = new cf(this._noder.getIndex()),
this.snapRound(t, this._li)
},
pf.prototype.computeIntersectionSnaps = function(t) {
for (var e = t.iterator(); e.hasNext();) {
var n = e.next(),
r = new sf(n, this._scaleFactor, this._li);
this._pointSnapper.snap(r)
}
},
pf.prototype.interfaces_ = function() {
return [mh]
},
pf.prototype.getClass = function() {
return pf
};
var df = function() {
if (this._argGeom = null, this._distance = null, this._bufParams = new xh, this._resultGeometry = null, this._saveException = null, 1 === arguments.length) {
var t = arguments[0];
this._argGeom = t
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
this._argGeom = e,
this._bufParams = n
}
},
gf = {
CAP_ROUND: {
configurable: !0
},
CAP_BUTT: {
configurable: !0
},
CAP_FLAT: {
configurable: !0
},
CAP_SQUARE: {
configurable: !0
},
MAX_PRECISION_DIGITS: {
configurable: !0
}
};
df.prototype.bufferFixedPrecision = function(t) {
var e = new nf(new pf(new fl(1)), t.getScale()),
n = new ef(this._bufParams);
n.setWorkingPrecisionModel(t),
n.setNoder(e),
this._resultGeometry = n.buffer(this._argGeom, this._distance)
},
df.prototype.bufferReducedPrecision = function() {
var t = this;
if (0 === arguments.length) {
for (var e = df.MAX_PRECISION_DIGITS; e >= 0; e--) {
try {
t.bufferReducedPrecision(e)
} catch(e) {
if (! (e instanceof Cl)) throw e;
t._saveException = e
}
if (null !== t._resultGeometry) return null
}
throw this._saveException
}
if (1 === arguments.length) {
var n = arguments[0],
r = df.precisionScaleFactor(this._argGeom, this._distance, n),
i = new fl(r);
this.bufferFixedPrecision(i)
}
},
df.prototype.computeGeometry = function() {
if (this.bufferOriginalPrecision(), null !== this._resultGeometry) return null;
var t = this._argGeom.getFactory().getPrecisionModel();
t.getType() === fl.FIXED ? this.bufferFixedPrecision(t) : this.bufferReducedPrecision()
},
df.prototype.setQuadrantSegments = function(t) {
this._bufParams.setQuadrantSegments(t)
},
df.prototype.bufferOriginalPrecision = function() {
try {
var t = new ef(this._bufParams);
this._resultGeometry = t.buffer(this._argGeom, this._distance)
} catch(t) {
if (! (t instanceof Qu)) throw t;
this._saveException = t
}
},
df.prototype.getResultGeometry = function(t) {
return this._distance = t,
this.computeGeometry(),
this._resultGeometry
},
df.prototype.setEndCapStyle = function(t) {
this._bufParams.setEndCapStyle(t)
},
df.prototype.interfaces_ = function() {
return []
},
df.prototype.getClass = function() {
return df
},
df.bufferOp = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
return new df(t).getResultGeometry(e)
}
if (3 === arguments.length) {
if (Number.isInteger(arguments[2]) && arguments[0] instanceof uc && "number" == typeof arguments[1]) {
var n = arguments[0],
r = arguments[1],
i = arguments[2],
o = new df(n);
return o.setQuadrantSegments(i),
o.getResultGeometry(r)
}
if (arguments[2] instanceof xh && arguments[0] instanceof uc && "number" == typeof arguments[1]) {
var s = arguments[0],
a = arguments[1],
u = arguments[2];
return new df(s, u).getResultGeometry(a)
}
} else if (4 === arguments.length) {
var c = arguments[0],
l = arguments[1],
h = arguments[2],
f = arguments[3],
p = new df(c);
return p.setQuadrantSegments(h),
p.setEndCapStyle(f),
p.getResultGeometry(l)
}
},
df.precisionScaleFactor = function(t, e, n) {
var r = t.getEnvelopeInternal(),
i = Pu.max(Math.abs(r.getMaxX()), Math.abs(r.getMaxY()), Math.abs(r.getMinX()), Math.abs(r.getMinY())) + 2 * (e > 0 ? e: 0),
o = n - Math.trunc(Math.log(i) / Math.log(10) + 1);
return Math.pow(10, o)
},
gf.CAP_ROUND.get = function() {
return xh.CAP_ROUND
},
gf.CAP_BUTT.get = function() {
return xh.CAP_FLAT
},
gf.CAP_FLAT.get = function() {
return xh.CAP_FLAT
},
gf.CAP_SQUARE.get = function() {
return xh.CAP_SQUARE
},
gf.MAX_PRECISION_DIGITS.get = function() {
return 12
},
Object.defineProperties(df, gf);
var yf = function() {
this._pt = [new xu, new xu],
this._distance = vu.NaN,
this._isNull = !0
};
yf.prototype.getCoordinates = function() {
return this._pt
},
yf.prototype.getCoordinate = function(t) {
return this._pt[t]
},
yf.prototype.setMinimum = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.setMinimum(t._pt[0], t._pt[1])
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (this._isNull) return this.initialize(e, n),
null;
var r = e.distance(n);
r < this._distance && this.initialize(e, n, r)
}
},
yf.prototype.initialize = function() {
if (0 === arguments.length) this._isNull = !0;
else if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
this._pt[0].setCoordinate(t),
this._pt[1].setCoordinate(e),
this._distance = t.distance(e),
this._isNull = !1
} else if (3 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2];
this._pt[0].setCoordinate(n),
this._pt[1].setCoordinate(r),
this._distance = i,
this._isNull = !1
}
},
yf.prototype.getDistance = function() {
return this._distance
},
yf.prototype.setMaximum = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.setMaximum(t._pt[0], t._pt[1])
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (this._isNull) return this.initialize(e, n),
null;
var r = e.distance(n);
r > this._distance && this.initialize(e, n, r)
}
},
yf.prototype.interfaces_ = function() {
return []
},
yf.prototype.getClass = function() {
return yf
};
var vf = function() {};
vf.prototype.interfaces_ = function() {
return []
},
vf.prototype.getClass = function() {
return vf
},
vf.computeDistance = function() {
if (arguments[2] instanceof yf && arguments[0] instanceof Hc && arguments[1] instanceof xu) for (var t = arguments[0], e = arguments[1], n = arguments[2], r = t.getCoordinates(), i = new ph, o = 0; o < r.length - 1; o++) {
i.setCoordinates(r[o], r[o + 1]);
var s = i.closestPoint(e);
n.setMinimum(s, e)
} else if (arguments[2] instanceof yf && arguments[0] instanceof Kc && arguments[1] instanceof xu) {
var a = arguments[0],
u = arguments[1],
c = arguments[2];
vf.computeDistance(a.getExteriorRing(), u, c);
for (var l = 0; l < a.getNumInteriorRing(); l++) vf.computeDistance(a.getInteriorRingN(l), u, c)
} else if (arguments[2] instanceof yf && arguments[0] instanceof uc && arguments[1] instanceof xu) {
var h = arguments[0],
f = arguments[1],
p = arguments[2];
if (h instanceof Hc) vf.computeDistance(h, f, p);
else if (h instanceof Kc) vf.computeDistance(h, f, p);
else if (h instanceof Gc) for (var d = h,
g = 0; g < d.getNumGeometries(); g++) {
var y = d.getGeometryN(g);
vf.computeDistance(y, f, p)
} else p.setMinimum(h.getCoordinate(), f)
} else if (arguments[2] instanceof yf && arguments[0] instanceof ph && arguments[1] instanceof xu) {
var v = arguments[0],
m = arguments[1],
_ = arguments[2],
w = v.closestPoint(m);
_.setMinimum(w, m)
}
};
var mf = function(t) {
this._maxPtDist = new yf,
this._inputGeom = t || null
},
_f = {
MaxPointDistanceFilter: {
configurable: !0
},
MaxMidpointDistanceFilter: {
configurable: !0
}
};
mf.prototype.computeMaxMidpointDistance = function(t) {
var e = new bf(this._inputGeom);
t.apply(e),
this._maxPtDist.setMaximum(e.getMaxPointDistance())
},
mf.prototype.computeMaxVertexDistance = function(t) {
var e = new wf(this._inputGeom);
t.apply(e),
this._maxPtDist.setMaximum(e.getMaxPointDistance())
},
mf.prototype.findDistance = function(t) {
return this.computeMaxVertexDistance(t),
this.computeMaxMidpointDistance(t),
this._maxPtDist.getDistance()
},
mf.prototype.getDistancePoints = function() {
return this._maxPtDist
},
mf.prototype.interfaces_ = function() {
return []
},
mf.prototype.getClass = function() {
return mf
},
_f.MaxPointDistanceFilter.get = function() {
return wf
},
_f.MaxMidpointDistanceFilter.get = function() {
return bf
},
Object.defineProperties(mf, _f);
var wf = function(t) {
this._maxPtDist = new yf,
this._minPtDist = new yf,
this._geom = t || null
};
wf.prototype.filter = function(t) {
this._minPtDist.initialize(),
vf.computeDistance(this._geom, t, this._minPtDist),
this._maxPtDist.setMaximum(this._minPtDist)
},
wf.prototype.getMaxPointDistance = function() {
return this._maxPtDist
},
wf.prototype.interfaces_ = function() {
return [hc]
},
wf.prototype.getClass = function() {
return wf
};
var bf = function(t) {
this._maxPtDist = new yf,
this._minPtDist = new yf,
this._geom = t || null
};
bf.prototype.filter = function(t, e) {
if (0 === e) return null;
var n = t.getCoordinate(e - 1),
r = t.getCoordinate(e),
i = new xu((n.x + r.x) / 2, (n.y + r.y) / 2);
this._minPtDist.initialize(),
vf.computeDistance(this._geom, i, this._minPtDist),
this._maxPtDist.setMaximum(this._minPtDist)
},
bf.prototype.isDone = function() {
return ! 1
},
bf.prototype.isGeometryChanged = function() {
return ! 1
},
bf.prototype.getMaxPointDistance = function() {
return this._maxPtDist
},
bf.prototype.interfaces_ = function() {
return [Bc]
},
bf.prototype.getClass = function() {
return bf
};
var xf = function(t) {
this._comps = t || null
};
xf.prototype.filter = function(t) {
t instanceof Kc && this._comps.add(t)
},
xf.prototype.interfaces_ = function() {
return [qc]
},
xf.prototype.getClass = function() {
return xf
},
xf.getPolygons = function() {
if (1 === arguments.length) {
var t = arguments[0];
return xf.getPolygons(t, new xc)
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return e instanceof Kc ? n.add(e) : e instanceof Gc && e.apply(new xf(n)),
n
}
};
var Ef = function() {
if (this._lines = null, this._isForcedToLineString = !1, 1 === arguments.length) {
var t = arguments[0];
this._lines = t
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
this._lines = e,
this._isForcedToLineString = n
}
};
Ef.prototype.filter = function(t) {
if (this._isForcedToLineString && t instanceof tl) {
var e = t.getFactory().createLineString(t.getCoordinateSequence());
return this._lines.add(e),
null
}
t instanceof Hc && this._lines.add(t)
},
Ef.prototype.setForceToLineString = function(t) {
this._isForcedToLineString = t
},
Ef.prototype.interfaces_ = function() {
return [ac]
},
Ef.prototype.getClass = function() {
return Ef
},
Ef.getGeometry = function() {
if (1 === arguments.length) {
var t = arguments[0];
return t.getFactory().buildGeometry(Ef.getLines(t))
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return e.getFactory().buildGeometry(Ef.getLines(e, n))
}
},
Ef.getLines = function() {
if (1 === arguments.length) {
var t = arguments[0];
return Ef.getLines(t, !1)
}
if (2 === arguments.length) {
if (Nu(arguments[0], mc) && Nu(arguments[1], mc)) {
for (var e = arguments[0], n = arguments[1], r = e.iterator(); r.hasNext();) {
var i = r.next();
Ef.getLines(i, n)
}
return n
}
if (arguments[0] instanceof uc && "boolean" == typeof arguments[1]) {
var o = arguments[0],
s = arguments[1],
a = new xc;
return o.apply(new Ef(a, s)),
a
}
if (arguments[0] instanceof uc && Nu(arguments[1], mc)) {
var u = arguments[0],
c = arguments[1];
return u instanceof Hc ? c.add(u) : u.apply(new Ef(c)),
c
}
} else if (3 === arguments.length) {
if ("boolean" == typeof arguments[2] && Nu(arguments[0], mc) && Nu(arguments[1], mc)) {
for (var l = arguments[0], h = arguments[1], f = arguments[2], p = l.iterator(); p.hasNext();) {
var d = p.next();
Ef.getLines(d, h, f)
}
return h
}
if ("boolean" == typeof arguments[2] && arguments[0] instanceof uc && Nu(arguments[1], mc)) {
var g = arguments[0],
y = arguments[1],
v = arguments[2];
return g.apply(new Ef(y, v)),
y
}
}
};
var Mf = function() {
if (this._boundaryRule = fc.OGC_SFS_BOUNDARY_RULE, this._isIn = null, this._numBoundaries = null, 0 === arguments.length);
else if (1 === arguments.length) {
var t = arguments[0];
if (null === t) throw new yu("Rule must be non-null");
this._boundaryRule = t
}
};
Mf.prototype.locateInternal = function() {
if (arguments[0] instanceof xu && arguments[1] instanceof Kc) {
var t = arguments[0],
e = arguments[1];
if (e.isEmpty()) return Su.EXTERIOR;
var n = e.getExteriorRing(),
r = this.locateInPolygonRing(t, n);
if (r === Su.EXTERIOR) return Su.EXTERIOR;
if (r === Su.BOUNDARY) return Su.BOUNDARY;
for (var i = 0; i < e.getNumInteriorRing(); i++) {
var o = e.getInteriorRingN(i),
s = this.locateInPolygonRing(t, o);
if (s === Su.INTERIOR) return Su.EXTERIOR;
if (s === Su.BOUNDARY) return Su.BOUNDARY
}
return Su.INTERIOR
}
if (arguments[0] instanceof xu && arguments[1] instanceof Hc) {
var a = arguments[0],
u = arguments[1];
if (!u.getEnvelopeInternal().intersects(a)) return Su.EXTERIOR;
var c = u.getCoordinates();
return u.isClosed() || !a.equals(c[0]) && !a.equals(c[c.length - 1]) ? oc.isOnLine(a, c) ? Su.INTERIOR: Su.EXTERIOR: Su.BOUNDARY
}
if (arguments[0] instanceof xu && arguments[1] instanceof Zc) {
var l = arguments[0];
return arguments[1].getCoordinate().equals2D(l) ? Su.INTERIOR: Su.EXTERIOR
}
},
Mf.prototype.locateInPolygonRing = function(t, e) {
return e.getEnvelopeInternal().intersects(t) ? oc.locatePointInRing(t, e.getCoordinates()) : Su.EXTERIOR
},
Mf.prototype.intersects = function(t, e) {
return this.locate(t, e) !== Su.EXTERIOR
},
Mf.prototype.updateLocationInfo = function(t) {
t === Su.INTERIOR && (this._isIn = !0),
t === Su.BOUNDARY && this._numBoundaries++
},
Mf.prototype.computeLocation = function(t, e) {
if (e instanceof Zc && this.updateLocationInfo(this.locateInternal(t, e)), e instanceof Hc) this.updateLocationInfo(this.locateInternal(t, e));
else if (e instanceof Kc) this.updateLocationInfo(this.locateInternal(t, e));
else if (e instanceof Uc) for (var n = e,
r = 0; r < n.getNumGeometries(); r++) {
var i = n.getGeometryN(r);
this.updateLocationInfo(this.locateInternal(t, i))
} else if (e instanceof el) for (var o = e,
s = 0; s < o.getNumGeometries(); s++) {
var a = o.getGeometryN(s);
this.updateLocationInfo(this.locateInternal(t, a))
} else if (e instanceof Gc) for (var u = new qh(e); u.hasNext();) {
var c = u.next();
c !== e && this.computeLocation(t, c)
}
},
Mf.prototype.locate = function(t, e) {
return e.isEmpty() ? Su.EXTERIOR: e instanceof Hc ? this.locateInternal(t, e) : e instanceof Kc ? this.locateInternal(t, e) : (this._isIn = !1, this._numBoundaries = 0, this.computeLocation(t, e), this._boundaryRule.isInBoundary(this._numBoundaries) ? Su.BOUNDARY: this._numBoundaries > 0 || this._isIn ? Su.INTERIOR: Su.EXTERIOR)
},
Mf.prototype.interfaces_ = function() {
return []
},
Mf.prototype.getClass = function() {
return Mf
};
var If = function t() {
if (this._component = null, this._segIndex = null, this._pt = null, 2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
t.call(this, e, t.INSIDE_AREA, n)
} else if (3 === arguments.length) {
var r = arguments[0],
i = arguments[1],
o = arguments[2];
this._component = r,
this._segIndex = i,
this._pt = o
}
},
Sf = {
INSIDE_AREA: {
configurable: !0
}
};
If.prototype.isInsideArea = function() {
return this._segIndex === If.INSIDE_AREA
},
If.prototype.getCoordinate = function() {
return this._pt
},
If.prototype.getGeometryComponent = function() {
return this._component
},
If.prototype.getSegmentIndex = function() {
return this._segIndex
},
If.prototype.interfaces_ = function() {
return []
},
If.prototype.getClass = function() {
return If
},
Sf.INSIDE_AREA.get = function() {
return - 1
},
Object.defineProperties(If, Sf);
var Cf = function(t) {
this._pts = t || null
};
Cf.prototype.filter = function(t) {
t instanceof Zc && this._pts.add(t)
},
Cf.prototype.interfaces_ = function() {
return [qc]
},
Cf.prototype.getClass = function() {
return Cf
},
Cf.getPoints = function() {
if (1 === arguments.length) {
var t = arguments[0];
return t instanceof Zc ? Kl.singletonList(t) : Cf.getPoints(t, new xc)
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return e instanceof Zc ? n.add(e) : e instanceof Gc && e.apply(new Cf(n)),
n
}
};
var Nf = function() {
this._locations = null;
var t = arguments[0];
this._locations = t
};
Nf.prototype.filter = function(t) { (t instanceof Zc || t instanceof Hc || t instanceof Kc) && this._locations.add(new If(t, 0, t.getCoordinate()))
},
Nf.prototype.interfaces_ = function() {
return [qc]
},
Nf.prototype.getClass = function() {
return Nf
},
Nf.getLocations = function(t) {
var e = new xc;
return t.apply(new Nf(e)),
e
};
var Pf = function() {
if (this._geom = null, this._terminateDistance = 0, this._ptLocator = new Mf, this._minDistanceLocation = null, this._minDistance = vu.MAX_VALUE, 2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
this._geom = [t, e],
this._terminateDistance = 0
} else if (3 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2];
this._geom = new Array(2).fill(null),
this._geom[0] = n,
this._geom[1] = r,
this._terminateDistance = i
}
};
Pf.prototype.computeContainmentDistance = function() {
if (0 === arguments.length) {
var t = new Array(2).fill(null);
if (this.computeContainmentDistance(0, t), this._minDistance <= this._terminateDistance) return null;
this.computeContainmentDistance(1, t)
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = 1 - e,
i = xf.getPolygons(this._geom[e]);
if (i.size() > 0) {
var o = Nf.getLocations(this._geom[r]);
if (this.computeContainmentDistance(o, i, n), this._minDistance <= this._terminateDistance) return this._minDistanceLocation[r] = n[0],
this._minDistanceLocation[e] = n[1],
null
}
} else if (3 === arguments.length) if (arguments[2] instanceof Array && Nu(arguments[0], bc) && Nu(arguments[1], bc)) {
for (var s = arguments[0], a = arguments[1], u = arguments[2], c = 0; c < s.size(); c++) for (var l = s.get(c), h = 0; h < a.size(); h++) if (this.computeContainmentDistance(l, a.get(h), u), this._minDistance <= this._terminateDistance) return null
} else if (arguments[2] instanceof Array && arguments[0] instanceof If && arguments[1] instanceof Kc) {
var f = arguments[0],
p = arguments[1],
d = arguments[2],
g = f.getCoordinate();
if (Su.EXTERIOR !== this._ptLocator.locate(g, p)) return this._minDistance = 0,
d[0] = f,
d[1] = new If(p, g),
null
}
},
Pf.prototype.computeMinDistanceLinesPoints = function(t, e, n) {
for (var r = 0; r < t.size(); r++) for (var i = t.get(r), o = 0; o < e.size(); o++) {
var s = e.get(o);
if (this.computeMinDistance(i, s, n), this._minDistance <= this._terminateDistance) return null
}
},
Pf.prototype.computeFacetDistance = function() {
var t = new Array(2).fill(null),
e = Ef.getLines(this._geom[0]),
n = Ef.getLines(this._geom[1]),
r = Cf.getPoints(this._geom[0]),
i = Cf.getPoints(this._geom[1]);
return this.computeMinDistanceLines(e, n, t),
this.updateMinDistance(t, !1),
this._minDistance <= this._terminateDistance ? null: (t[0] = null, t[1] = null, this.computeMinDistanceLinesPoints(e, i, t), this.updateMinDistance(t, !1), this._minDistance <= this._terminateDistance ? null: (t[0] = null, t[1] = null, this.computeMinDistanceLinesPoints(n, r, t), this.updateMinDistance(t, !0), this._minDistance <= this._terminateDistance ? null: (t[0] = null, t[1] = null, this.computeMinDistancePoints(r, i, t), void this.updateMinDistance(t, !1))))
},
Pf.prototype.nearestLocations = function() {
return this.computeMinDistance(),
this._minDistanceLocation
},
Pf.prototype.updateMinDistance = function(t, e) {
if (null === t[0]) return null;
e ? (this._minDistanceLocation[0] = t[1], this._minDistanceLocation[1] = t[0]) : (this._minDistanceLocation[0] = t[0], this._minDistanceLocation[1] = t[1])
},
Pf.prototype.nearestPoints = function() {
return this.computeMinDistance(),
[this._minDistanceLocation[0].getCoordinate(), this._minDistanceLocation[1].getCoordinate()]
},
Pf.prototype.computeMinDistance = function() {
if (0 === arguments.length) {
if (null !== this._minDistanceLocation) return null;
if (this._minDistanceLocation = new Array(2).fill(null), this.computeContainmentDistance(), this._minDistance <= this._terminateDistance) return null;
this.computeFacetDistance()
} else if (3 === arguments.length) if (arguments[2] instanceof Array && arguments[0] instanceof Hc && arguments[1] instanceof Zc) {
var t = arguments[0],
e = arguments[1],
n = arguments[2];
if (t.getEnvelopeInternal().distance(e.getEnvelopeInternal()) > this._minDistance) return null;
for (var r = t.getCoordinates(), i = e.getCoordinate(), o = 0; o < r.length - 1; o++) {
var s = oc.distancePointLine(i, r[o], r[o + 1]);
if (s < this._minDistance) {
this._minDistance = s;
var a = new ph(r[o], r[o + 1]).closestPoint(i);
n[0] = new If(t, o, a),
n[1] = new If(e, 0, i)
}
if (this._minDistance <= this._terminateDistance) return null
}
} else if (arguments[2] instanceof Array && arguments[0] instanceof Hc && arguments[1] instanceof Hc) {
var u = arguments[0],
c = arguments[1],
l = arguments[2];
if (u.getEnvelopeInternal().distance(c.getEnvelopeInternal()) > this._minDistance) return null;
for (var h = u.getCoordinates(), f = c.getCoordinates(), p = 0; p < h.length - 1; p++) for (var d = 0; d < f.length - 1; d++) {
var g = oc.distanceLineLine(h[p], h[p + 1], f[d], f[d + 1]);
if (g < this._minDistance) {
this._minDistance = g;
var y = new ph(h[p], h[p + 1]),
v = new ph(f[d], f[d + 1]),
m = y.closestPoints(v);
l[0] = new If(u, p, m[0]),
l[1] = new If(c, d, m[1])
}
if (this._minDistance <= this._terminateDistance) return null
}
}
},
Pf.prototype.computeMinDistancePoints = function(t, e, n) {
for (var r = 0; r < t.size(); r++) for (var i = t.get(r), o = 0; o < e.size(); o++) {
var s = e.get(o),
a = i.getCoordinate().distance(s.getCoordinate());
if (a < this._minDistance && (this._minDistance = a, n[0] = new If(i, 0, i.getCoordinate()), n[1] = new If(s, 0, s.getCoordinate())), this._minDistance <= this._terminateDistance) return null
}
},
Pf.prototype.distance = function() {
if (null === this._geom[0] || null === this._geom[1]) throw new yu("null geometries are not supported");
return this._geom[0].isEmpty() || this._geom[1].isEmpty() ? 0 : (this.computeMinDistance(), this._minDistance)
},
Pf.prototype.computeMinDistanceLines = function(t, e, n) {
for (var r = 0; r < t.size(); r++) for (var i = t.get(r), o = 0; o < e.size(); o++) {
var s = e.get(o);
if (this.computeMinDistance(i, s, n), this._minDistance <= this._terminateDistance) return null
}
},
Pf.prototype.interfaces_ = function() {
return []
},
Pf.prototype.getClass = function() {
return Pf
},
Pf.distance = function(t, e) {
return new Pf(t, e).distance()
},
Pf.isWithinDistance = function(t, e, n) {
return new Pf(t, e, n).distance() <= n
},
Pf.nearestPoints = function(t, e) {
return new Pf(t, e).nearestPoints()
};
var Lf = function() {
this._pt = [new xu, new xu],
this._distance = vu.NaN,
this._isNull = !0
};
Lf.prototype.getCoordinates = function() {
return this._pt
},
Lf.prototype.getCoordinate = function(t) {
return this._pt[t]
},
Lf.prototype.setMinimum = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.setMinimum(t._pt[0], t._pt[1])
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (this._isNull) return this.initialize(e, n),
null;
var r = e.distance(n);
r < this._distance && this.initialize(e, n, r)
}
},
Lf.prototype.initialize = function() {
if (0 === arguments.length) this._isNull = !0;
else if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
this._pt[0].setCoordinate(t),
this._pt[1].setCoordinate(e),
this._distance = t.distance(e),
this._isNull = !1
} else if (3 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2];
this._pt[0].setCoordinate(n),
this._pt[1].setCoordinate(r),
this._distance = i,
this._isNull = !1
}
},
Lf.prototype.toString = function() {
return Zu.toLineString(this._pt[0], this._pt[1])
},
Lf.prototype.getDistance = function() {
return this._distance
},
Lf.prototype.setMaximum = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.setMaximum(t._pt[0], t._pt[1])
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
if (this._isNull) return this.initialize(e, n),
null;
var r = e.distance(n);
r > this._distance && this.initialize(e, n, r)
}
},
Lf.prototype.interfaces_ = function() {
return []
},
Lf.prototype.getClass = function() {
return Lf
};
var Af = function() {};
Af.prototype.interfaces_ = function() {
return []
},
Af.prototype.getClass = function() {
return Af
},
Af.computeDistance = function() {
if (arguments[2] instanceof Lf && arguments[0] instanceof Hc && arguments[1] instanceof xu) for (var t = arguments[0], e = arguments[1], n = arguments[2], r = new ph, i = t.getCoordinates(), o = 0; o < i.length - 1; o++) {
r.setCoordinates(i[o], i[o + 1]);
var s = r.closestPoint(e);
n.setMinimum(s, e)
} else if (arguments[2] instanceof Lf && arguments[0] instanceof Kc && arguments[1] instanceof xu) {
var a = arguments[0],
u = arguments[1],
c = arguments[2];
Af.computeDistance(a.getExteriorRing(), u, c);
for (var l = 0; l < a.getNumInteriorRing(); l++) Af.computeDistance(a.getInteriorRingN(l), u, c)
} else if (arguments[2] instanceof Lf && arguments[0] instanceof uc && arguments[1] instanceof xu) {
var h = arguments[0],
f = arguments[1],
p = arguments[2];
if (h instanceof Hc) Af.computeDistance(h, f, p);
else if (h instanceof Kc) Af.computeDistance(h, f, p);
else if (h instanceof Gc) for (var d = h,
g = 0; g < d.getNumGeometries(); g++) {
var y = d.getGeometryN(g);
Af.computeDistance(y, f, p)
} else p.setMinimum(h.getCoordinate(), f)
} else if (arguments[2] instanceof Lf && arguments[0] instanceof ph && arguments[1] instanceof xu) {
var v = arguments[0],
m = arguments[1],
_ = arguments[2],
w = v.closestPoint(m);
_.setMinimum(w, m)
}
};
var Of = function() {
this._g0 = null,
this._g1 = null,
this._ptDist = new Lf,
this._densifyFrac = 0;
var t = arguments[0],
e = arguments[1];
this._g0 = t,
this._g1 = e
},
Tf = {
MaxPointDistanceFilter: {
configurable: !0
},
MaxDensifiedByFractionDistanceFilter: {
configurable: !0
}
};
Of.prototype.getCoordinates = function() {
return this._ptDist.getCoordinates()
},
Of.prototype.setDensifyFraction = function(t) {
if (t > 1 || t <= 0) throw new yu("Fraction is not in range (0.0 - 1.0]");
this._densifyFrac = t
},
Of.prototype.compute = function(t, e) {
this.computeOrientedDistance(t, e, this._ptDist),
this.computeOrientedDistance(e, t, this._ptDist)
},
Of.prototype.distance = function() {
return this.compute(this._g0, this._g1),
this._ptDist.getDistance()
},
Of.prototype.computeOrientedDistance = function(t, e, n) {
var r = new Rf(e);
if (t.apply(r), n.setMaximum(r.getMaxPointDistance()), this._densifyFrac > 0) {
var i = new Df(e, this._densifyFrac);
t.apply(i),
n.setMaximum(i.getMaxPointDistance())
}
},
Of.prototype.orientedDistance = function() {
return this.computeOrientedDistance(this._g0, this._g1, this._ptDist),
this._ptDist.getDistance()
},
Of.prototype.interfaces_ = function() {
return []
},
Of.prototype.getClass = function() {
return Of
},
Of.distance = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
return new Of(t, e).distance()
}
if (3 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2],
o = new Of(n, r);
return o.setDensifyFraction(i),
o.distance()
}
},
Tf.MaxPointDistanceFilter.get = function() {
return Rf
},
Tf.MaxDensifiedByFractionDistanceFilter.get = function() {
return Df
},
Object.defineProperties(Of, Tf);
var Rf = function() {
this._maxPtDist = new Lf,
this._minPtDist = new Lf,
this._euclideanDist = new Af,
this._geom = null;
var t = arguments[0];
this._geom = t
};
Rf.prototype.filter = function(t) {
this._minPtDist.initialize(),
Af.computeDistance(this._geom, t, this._minPtDist),
this._maxPtDist.setMaximum(this._minPtDist)
},
Rf.prototype.getMaxPointDistance = function() {
return this._maxPtDist
},
Rf.prototype.interfaces_ = function() {
return [hc]
},
Rf.prototype.getClass = function() {
return Rf
};
var Df = function() {
this._maxPtDist = new Lf,
this._minPtDist = new Lf,
this._geom = null,
this._numSubSegs = 0;
var t = arguments[0],
e = arguments[1];
this._geom = t,
this._numSubSegs = Math.trunc(Math.round(1 / e))
};
Df.prototype.filter = function(t, e) {
if (0 === e) return null;
for (var n = t.getCoordinate(e - 1), r = t.getCoordinate(e), i = (r.x - n.x) / this._numSubSegs, o = (r.y - n.y) / this._numSubSegs, s = 0; s < this._numSubSegs; s++) {
var a = n.x + s * i,
u = n.y + s * o,
c = new xu(a, u);
this._minPtDist.initialize(),
Af.computeDistance(this._geom, c, this._minPtDist),
this._maxPtDist.setMaximum(this._minPtDist)
}
},
Df.prototype.isDone = function() {
return ! 1
},
Df.prototype.isGeometryChanged = function() {
return ! 1
},
Df.prototype.getMaxPointDistance = function() {
return this._maxPtDist
},
Df.prototype.interfaces_ = function() {
return [Bc]
},
Df.prototype.getClass = function() {
return Df
};
var kf = function(t, e, n) {
this._minValidDistance = null,
this._maxValidDistance = null,
this._minDistanceFound = null,
this._maxDistanceFound = null,
this._isValid = !0,
this._errMsg = null,
this._errorLocation = null,
this._errorIndicator = null,
this._input = t || null,
this._bufDistance = e || null,
this._result = n || null
},
Ff = {
VERBOSE: {
configurable: !0
},
MAX_DISTANCE_DIFF_FRAC: {
configurable: !0
}
};
kf.prototype.checkMaximumDistance = function(t, e, n) {
var r = new Of(e, t);
if (r.setDensifyFraction(.25), this._maxDistanceFound = r.orientedDistance(), this._maxDistanceFound > n) {
this._isValid = !1;
var i = r.getCoordinates();
this._errorLocation = i[1],
this._errorIndicator = t.getFactory().createLineString(i),
this._errMsg = "Distance between buffer curve and input is too large (" + this._maxDistanceFound + " at " + Zu.toLineString(i[0], i[1]) + ")"
}
},
kf.prototype.isValid = function() {
var t = Math.abs(this._bufDistance),
e = kf.MAX_DISTANCE_DIFF_FRAC * t;
return this._minValidDistance = t - e,
this._maxValidDistance = t + e,
!(!this._input.isEmpty() && !this._result.isEmpty()) || (this._bufDistance > 0 ? this.checkPositiveValid() : this.checkNegativeValid(), kf.VERBOSE && Uu.out.println("Min Dist= " + this._minDistanceFound + " err= " + (1 - this._minDistanceFound / this._bufDistance) + " Max Dist= " + this._maxDistanceFound + " err= " + (this._maxDistanceFound / this._bufDistance - 1)), this._isValid)
},
kf.prototype.checkNegativeValid = function() {
if (! (this._input instanceof Kc || this._input instanceof el || this._input instanceof Gc)) return null;
var t = this.getPolygonLines(this._input);
if (this.checkMinimumDistance(t, this._result, this._minValidDistance), !this._isValid) return null;
this.checkMaximumDistance(t, this._result, this._maxValidDistance)
},
kf.prototype.getErrorIndicator = function() {
return this._errorIndicator
},
kf.prototype.checkMinimumDistance = function(t, e, n) {
var r = new Pf(t, e, n);
if (this._minDistanceFound = r.distance(), this._minDistanceFound < n) {
this._isValid = !1;
var i = r.nearestPoints();
this._errorLocation = r.nearestPoints()[1],
this._errorIndicator = t.getFactory().createLineString(i),
this._errMsg = "Distance between buffer curve and input is too small (" + this._minDistanceFound + " at " + Zu.toLineString(i[0], i[1]) + " )"
}
},
kf.prototype.checkPositiveValid = function() {
var t = this._result.getBoundary();
if (this.checkMinimumDistance(this._input, t, this._minValidDistance), !this._isValid) return null;
this.checkMaximumDistance(this._input, t, this._maxValidDistance)
},
kf.prototype.getErrorLocation = function() {
return this._errorLocation
},
kf.prototype.getPolygonLines = function(t) {
for (var e = new xc,
n = new Ef(e), r = xf.getPolygons(t).iterator(); r.hasNext();) r.next().apply(n);
return t.getFactory().buildGeometry(e)
},
kf.prototype.getErrorMessage = function() {
return this._errMsg
},
kf.prototype.interfaces_ = function() {
return []
},
kf.prototype.getClass = function() {
return kf
},
Ff.VERBOSE.get = function() {
return ! 1
},
Ff.MAX_DISTANCE_DIFF_FRAC.get = function() {
return.012
},
Object.defineProperties(kf, Ff);
var jf = function(t, e, n) {
this._isValid = !0,
this._errorMsg = null,
this._errorLocation = null,
this._errorIndicator = null,
this._input = t || null,
this._distance = e || null,
this._result = n || null
},
qf = {
VERBOSE: {
configurable: !0
},
MAX_ENV_DIFF_FRAC: {
configurable: !0
}
};
jf.prototype.isValid = function() {
return this.checkPolygonal(),
this._isValid ? (this.checkExpectedEmpty(), this._isValid ? (this.checkEnvelope(), this._isValid ? (this.checkArea(), this._isValid ? (this.checkDistance(), this._isValid) : this._isValid) : this._isValid) : this._isValid) : this._isValid
},
jf.prototype.checkEnvelope = function() {
if (this._distance < 0) return null;
var t = this._distance * jf.MAX_ENV_DIFF_FRAC;
0 === t && (t = .001);
var e = new Yu(this._input.getEnvelopeInternal());
e.expandBy(this._distance);
var n = new Yu(this._result.getEnvelopeInternal());
n.expandBy(t),
n.contains(e) || (this._isValid = !1, this._errorMsg = "Buffer envelope is incorrect", this._errorIndicator = this._input.getFactory().toGeometry(n)),
this.report("Envelope")
},
jf.prototype.checkDistance = function() {
var t = new kf(this._input, this._distance, this._result);
t.isValid() || (this._isValid = !1, this._errorMsg = t.getErrorMessage(), this._errorLocation = t.getErrorLocation(), this._errorIndicator = t.getErrorIndicator()),
this.report("Distance")
},
jf.prototype.checkArea = function() {
var t = this._input.getArea(),
e = this._result.getArea();
this._distance > 0 && t > e && (this._isValid = !1, this._errorMsg = "Area of positive buffer is smaller than input", this._errorIndicator = this._result),
this._distance < 0 && t < e && (this._isValid = !1, this._errorMsg = "Area of negative buffer is larger than input", this._errorIndicator = this._result),
this.report("Area")
},
jf.prototype.checkPolygonal = function() {
this._result instanceof Kc || this._result instanceof el || (this._isValid = !1),
this._errorMsg = "Result is not polygonal",
this._errorIndicator = this._result,
this.report("Polygonal")
},
jf.prototype.getErrorIndicator = function() {
return this._errorIndicator
},
jf.prototype.getErrorLocation = function() {
return this._errorLocation
},
jf.prototype.checkExpectedEmpty = function() {
return this._input.getDimension() >= 2 ? null: this._distance > 0 ? null: (this._result.isEmpty() || (this._isValid = !1, this._errorMsg = "Result is non-empty", this._errorIndicator = this._result), void this.report("ExpectedEmpty"))
},
jf.prototype.report = function(t) {
if (!jf.VERBOSE) return null;
Uu.out.println("Check " + t + ": " + (this._isValid ? "passed": "FAILED"))
},
jf.prototype.getErrorMessage = function() {
return this._errorMsg
},
jf.prototype.interfaces_ = function() {
return []
},
jf.prototype.getClass = function() {
return jf
},
jf.isValidMsg = function(t, e, n) {
var r = new jf(t, e, n);
return r.isValid() ? null: r.getErrorMessage()
},
jf.isValid = function(t, e, n) {
return !! new jf(t, e, n).isValid()
},
qf.VERBOSE.get = function() {
return ! 1
},
qf.MAX_ENV_DIFF_FRAC.get = function() {
return.012
},
Object.defineProperties(jf, qf);
var Bf = function() {
this._pts = null,
this._data = null;
var t = arguments[0],
e = arguments[1];
this._pts = t,
this._data = e
};
Bf.prototype.getCoordinates = function() {
return this._pts
},
Bf.prototype.size = function() {
return this._pts.length
},
Bf.prototype.getCoordinate = function(t) {
return this._pts[t]
},
Bf.prototype.isClosed = function() {
return this._pts[0].equals(this._pts[this._pts.length - 1])
},
Bf.prototype.getSegmentOctant = function(t) {
return t === this._pts.length - 1 ? -1 : ch.octant(this.getCoordinate(t), this.getCoordinate(t + 1))
},
Bf.prototype.setData = function(t) {
this._data = t
},
Bf.prototype.getData = function() {
return this._data
},
Bf.prototype.toString = function() {
return Zu.toLineString(new al(this._pts))
},
Bf.prototype.interfaces_ = function() {
return [lh]
},
Bf.prototype.getClass = function() {
return Bf
};
var Gf = function() {
this._findAllIntersections = !1,
this._isCheckEndSegmentsOnly = !1,
this._li = null,
this._interiorIntersection = null,
this._intSegments = null,
this._intersections = new xc,
this._intersectionCount = 0,
this._keepIntersections = !0;
var t = arguments[0];
this._li = t,
this._interiorIntersection = null
};
Gf.prototype.getInteriorIntersection = function() {
return this._interiorIntersection
},
Gf.prototype.setCheckEndSegmentsOnly = function(t) {
this._isCheckEndSegmentsOnly = t
},
Gf.prototype.getIntersectionSegments = function() {
return this._intSegments
},
Gf.prototype.count = function() {
return this._intersectionCount
},
Gf.prototype.getIntersections = function() {
return this._intersections
},
Gf.prototype.setFindAllIntersections = function(t) {
this._findAllIntersections = t
},
Gf.prototype.setKeepIntersections = function(t) {
this._keepIntersections = t
},
Gf.prototype.processIntersections = function(t, e, n, r) {
if (!this._findAllIntersections && this.hasIntersection()) return null;
if (t === n && e === r) return null;
if (this._isCheckEndSegmentsOnly && !this.isEndSegment(t, e) && !this.isEndSegment(n, r)) return null;
var i = t.getCoordinates()[e],
o = t.getCoordinates()[e + 1],
s = n.getCoordinates()[r],
a = n.getCoordinates()[r + 1];
this._li.computeIntersection(i, o, s, a),
this._li.hasIntersection() && this._li.isInteriorIntersection() && (this._intSegments = new Array(4).fill(null), this._intSegments[0] = i, this._intSegments[1] = o, this._intSegments[2] = s, this._intSegments[3] = a, this._interiorIntersection = this._li.getIntersection(0), this._keepIntersections && this._intersections.add(this._interiorIntersection), this._intersectionCount++)
},
Gf.prototype.isEndSegment = function(t, e) {
return 0 === e || e >= t.size() - 2
},
Gf.prototype.hasIntersection = function() {
return null !== this._interiorIntersection
},
Gf.prototype.isDone = function() {
return ! this._findAllIntersections && null !== this._interiorIntersection
},
Gf.prototype.interfaces_ = function() {
return [Vh]
},
Gf.prototype.getClass = function() {
return Gf
},
Gf.createAllIntersectionsFinder = function(t) {
var e = new Gf(t);
return e.setFindAllIntersections(!0),
e
},
Gf.createAnyIntersectionFinder = function(t) {
return new Gf(t)
},
Gf.createIntersectionCounter = function(t) {
var e = new Gf(t);
return e.setFindAllIntersections(!0),
e.setKeepIntersections(!1),
e
};
var Uf = function() {
this._li = new nc,
this._segStrings = null,
this._findAllIntersections = !1,
this._segInt = null,
this._isValid = !0;
var t = arguments[0];
this._segStrings = t
};
Uf.prototype.execute = function() {
if (null !== this._segInt) return null;
this.checkInteriorIntersections()
},
Uf.prototype.getIntersections = function() {
return this._segInt.getIntersections()
},
Uf.prototype.isValid = function() {
return this.execute(),
this._isValid
},
Uf.prototype.setFindAllIntersections = function(t) {
this._findAllIntersections = t
},
Uf.prototype.checkInteriorIntersections = function() {
this._isValid = !0,
this._segInt = new Gf(this._li),
this._segInt.setFindAllIntersections(this._findAllIntersections);
var t = new wh;
if (t.setSegmentIntersector(this._segInt), t.computeNodes(this._segStrings), this._segInt.hasIntersection()) return this._isValid = !1,
null
},
Uf.prototype.checkValid = function() {
if (this.execute(), !this._isValid) throw new Cl(this.getErrorMessage(), this._segInt.getInteriorIntersection())
},
Uf.prototype.getErrorMessage = function() {
if (this._isValid) return "no intersections found";
var t = this._segInt.getIntersectionSegments();
return "found non-noded intersection between " + Zu.toLineString(t[0], t[1]) + " and " + Zu.toLineString(t[2], t[3])
},
Uf.prototype.interfaces_ = function() {
return []
},
Uf.prototype.getClass = function() {
return Uf
},
Uf.computeIntersections = function(t) {
var e = new Uf(t);
return e.setFindAllIntersections(!0),
e.isValid(),
e.getIntersections()
};
var zf = function t() {
this._nv = null;
var e = arguments[0];
this._nv = new Uf(t.toSegmentStrings(e))
};
zf.prototype.checkValid = function() {
this._nv.checkValid()
},
zf.prototype.interfaces_ = function() {
return []
},
zf.prototype.getClass = function() {
return zf
},
zf.toSegmentStrings = function(t) {
for (var e = new xc,
n = t.iterator(); n.hasNext();) {
var r = n.next();
e.add(new Bf(r.getCoordinates(), r))
}
return e
},
zf.checkValid = function(t) {
new zf(t).checkValid()
};
var Yf = function(t) {
this._mapOp = t
};
Yf.prototype.map = function(t) {
for (var e = new xc,
n = 0; n < t.getNumGeometries(); n++) {
var r = this._mapOp.map(t.getGeometryN(n));
r.isEmpty() || e.add(r)
}
return t.getFactory().createGeometryCollection(yl.toGeometryArray(e))
},
Yf.prototype.interfaces_ = function() {
return []
},
Yf.prototype.getClass = function() {
return Yf
},
Yf.map = function(t, e) {
return new Yf(e).map(t)
};
var Xf = function() {
this._op = null,
this._geometryFactory = null,
this._ptLocator = null,
this._lineEdgesList = new xc,
this._resultLineList = new xc;
var t = arguments[0],
e = arguments[1],
n = arguments[2];
this._op = t,
this._geometryFactory = e,
this._ptLocator = n
};
Xf.prototype.collectLines = function(t) {
for (var e = this._op.getGraph().getEdgeEnds().iterator(); e.hasNext();) {
var n = e.next();
this.collectLineEdge(n, t, this._lineEdgesList),
this.collectBoundaryTouchEdge(n, t, this._lineEdgesList)
}
},
Xf.prototype.labelIsolatedLine = function(t, e) {
var n = this._ptLocator.locate(t.getCoordinate(), this._op.getArgGeometry(e));
t.getLabel().setLocation(e, n)
},
Xf.prototype.build = function(t) {
return this.findCoveredLineEdges(),
this.collectLines(t),
this.buildLines(t),
this._resultLineList
},
Xf.prototype.collectLineEdge = function(t, e, n) {
var r = t.getLabel(),
i = t.getEdge();
t.isLineEdge() && (t.isVisited() || !Ip.isResultOfOp(r, e) || i.isCovered() || (n.add(i), t.setVisitedEdge(!0)))
},
Xf.prototype.findCoveredLineEdges = function() {
for (var t = this._op.getGraph().getNodes().iterator(); t.hasNext();) t.next().getEdges().findCoveredLineEdges();
for (var e = this._op.getGraph().getEdgeEnds().iterator(); e.hasNext();) {
var n = e.next(),
r = n.getEdge();
if (n.isLineEdge() && !r.isCoveredSet()) {
var i = this._op.isCoveredByA(n.getCoordinate());
r.setCovered(i)
}
}
},
Xf.prototype.labelIsolatedLines = function(t) {
for (var e = t.iterator(); e.hasNext();) {
var n = e.next(),
r = n.getLabel();
n.isIsolated() && (r.isNull(0) ? this.labelIsolatedLine(n, 0) : this.labelIsolatedLine(n, 1))
}
},
Xf.prototype.buildLines = function(t) {
for (var e = this._lineEdgesList.iterator(); e.hasNext();) {
var n = e.next(),
r = this._geometryFactory.createLineString(n.getCoordinates());
this._resultLineList.add(r),
n.setInResult(!0)
}
},
Xf.prototype.collectBoundaryTouchEdge = function(t, e, n) {
var r = t.getLabel();
return t.isLineEdge() ? null: t.isVisited() ? null: t.isInteriorAreaEdge() ? null: t.getEdge().isInResult() ? null: ($u.isTrue(!(t.isInResult() || t.getSym().isInResult()) || !t.getEdge().isInResult()), void(Ip.isResultOfOp(r, e) && e === Ip.INTERSECTION && (n.add(t.getEdge()), t.setVisitedEdge(!0))))
},
Xf.prototype.interfaces_ = function() {
return []
},
Xf.prototype.getClass = function() {
return Xf
};
var Vf = function() {
this._op = null,
this._geometryFactory = null,
this._resultPointList = new xc;
var t = arguments[0],
e = arguments[1];
this._op = t,
this._geometryFactory = e
};
Vf.prototype.filterCoveredNodeToPoint = function(t) {
var e = t.getCoordinate();
if (!this._op.isCoveredByLA(e)) {
var n = this._geometryFactory.createPoint(e);
this._resultPointList.add(n)
}
},
Vf.prototype.extractNonCoveredResultNodes = function(t) {
for (var e = this._op.getGraph().getNodes().iterator(); e.hasNext();) {
var n = e.next();
if (! (n.isInResult() || n.isIncidentEdgeInResult() || 0 !== n.getEdges().getDegree() && t !== Ip.INTERSECTION)) {
var r = n.getLabel();
Ip.isResultOfOp(r, t) && this.filterCoveredNodeToPoint(n)
}
}
},
Vf.prototype.build = function(t) {
return this.extractNonCoveredResultNodes(t),
this._resultPointList
},
Vf.prototype.interfaces_ = function() {
return []
},
Vf.prototype.getClass = function() {
return Vf
};
var Wf = function() {
this._inputGeom = null,
this._factory = null,
this._pruneEmptyGeometry = !0,
this._preserveGeometryCollectionType = !0,
this._preserveCollections = !1,
this._preserveType = !1
};
Wf.prototype.transformPoint = function(t, e) {
return this._factory.createPoint(this.transformCoordinates(t.getCoordinateSequence(), t))
},
Wf.prototype.transformPolygon = function(t, e) {
var n = !0,
r = this.transformLinearRing(t.getExteriorRing(), t);
null !== r && r instanceof tl && !r.isEmpty() || (n = !1);
for (var i = new xc,
o = 0; o < t.getNumInteriorRing(); o++) {
var s = this.transformLinearRing(t.getInteriorRingN(o), t);
null === s || s.isEmpty() || (s instanceof tl || (n = !1), i.add(s))
}
if (n) return this._factory.createPolygon(r, i.toArray([]));
var a = new xc;
return null !== r && a.add(r),
a.addAll(i),
this._factory.buildGeometry(a)
},
Wf.prototype.createCoordinateSequence = function(t) {
return this._factory.getCoordinateSequenceFactory().create(t)
},
Wf.prototype.getInputGeometry = function() {
return this._inputGeom
},
Wf.prototype.transformMultiLineString = function(t, e) {
for (var n = new xc,
r = 0; r < t.getNumGeometries(); r++) {
var i = this.transformLineString(t.getGeometryN(r), t);
null !== i && (i.isEmpty() || n.add(i))
}
return this._factory.buildGeometry(n)
},
Wf.prototype.transformCoordinates = function(t, e) {
return this.copy(t)
},
Wf.prototype.transformLineString = function(t, e) {
return this._factory.createLineString(this.transformCoordinates(t.getCoordinateSequence(), t))
},
Wf.prototype.transformMultiPoint = function(t, e) {
for (var n = new xc,
r = 0; r < t.getNumGeometries(); r++) {
var i = this.transformPoint(t.getGeometryN(r), t);
null !== i && (i.isEmpty() || n.add(i))
}
return this._factory.buildGeometry(n)
},
Wf.prototype.transformMultiPolygon = function(t, e) {
for (var n = new xc,
r = 0; r < t.getNumGeometries(); r++) {
var i = this.transformPolygon(t.getGeometryN(r), t);
null !== i && (i.isEmpty() || n.add(i))
}
return this._factory.buildGeometry(n)
},
Wf.prototype.copy = function(t) {
return t.copy()
},
Wf.prototype.transformGeometryCollection = function(t, e) {
for (var n = new xc,
r = 0; r < t.getNumGeometries(); r++) {
var i = this.transform(t.getGeometryN(r));
null !== i && (this._pruneEmptyGeometry && i.isEmpty() || n.add(i))
}
return this._preserveGeometryCollectionType ? this._factory.createGeometryCollection(yl.toGeometryArray(n)) : this._factory.buildGeometry(n)
},
Wf.prototype.transform = function(t) {
if (this._inputGeom = t, this._factory = t.getFactory(), t instanceof Zc) return this.transformPoint(t, null);
if (t instanceof $c) return this.transformMultiPoint(t, null);
if (t instanceof tl) return this.transformLinearRing(t, null);
if (t instanceof Hc) return this.transformLineString(t, null);
if (t instanceof Uc) return this.transformMultiLineString(t, null);
if (t instanceof Kc) return this.transformPolygon(t, null);
if (t instanceof el) return this.transformMultiPolygon(t, null);
if (t instanceof Gc) return this.transformGeometryCollection(t, null);
throw new yu("Unknown Geometry subtype: " + t.getClass().getName())
},
Wf.prototype.transformLinearRing = function(t, e) {
var n = this.transformCoordinates(t.getCoordinateSequence(), t);
if (null === n) return this._factory.createLinearRing(null);
var r = n.size();
return r > 0 && r < 4 && !this._preserveType ? this._factory.createLineString(n) : this._factory.createLinearRing(n)
},
Wf.prototype.interfaces_ = function() {
return []
},
Wf.prototype.getClass = function() {
return Wf
};
var Hf = function t() {
if (this._snapTolerance = 0, this._srcPts = null, this._seg = new ph, this._allowSnappingToSourceVertices = !1, this._isClosed = !1, arguments[0] instanceof Hc && "number" == typeof arguments[1]) {
var e = arguments[0],
n = arguments[1];
t.call(this, e.getCoordinates(), n)
} else if (arguments[0] instanceof Array && "number" == typeof arguments[1]) {
var r = arguments[0],
i = arguments[1];
this._srcPts = r,
this._isClosed = t.isClosed(r),
this._snapTolerance = i
}
};
Hf.prototype.snapVertices = function(t, e) {
for (var n = this._isClosed ? t.size() - 1 : t.size(), r = 0; r < n; r++) {
var i = t.get(r),
o = this.findSnapForVertex(i, e);
null !== o && (t.set(r, new xu(o)), 0 === r && this._isClosed && t.set(t.size() - 1, new xu(o)))
}
},
Hf.prototype.findSnapForVertex = function(t, e) {
for (var n = 0; n < e.length; n++) {
if (t.equals2D(e[n])) return null;
if (t.distance(e[n]) < this._snapTolerance) return e[n]
}
return null
},
Hf.prototype.snapTo = function(t) {
var e = new Mc(this._srcPts);
return this.snapVertices(e, t),
this.snapSegments(e, t),
e.toCoordinateArray()
},
Hf.prototype.snapSegments = function(t, e) {
if (0 === e.length) return null;
var n = e.length;
e[0].equals2D(e[e.length - 1]) && (n = e.length - 1);
for (var r = 0; r < n; r++) {
var i = e[r],
o = this.findSegmentIndexToSnap(i, t);
o >= 0 && t.add(o + 1, new xu(i), !1)
}
},
Hf.prototype.findSegmentIndexToSnap = function(t, e) {
for (var n = vu.MAX_VALUE,
r = -1,
i = 0; i < e.size() - 1; i++) {
if (this._seg.p0 = e.get(i), this._seg.p1 = e.get(i + 1), this._seg.p0.equals2D(t) || this._seg.p1.equals2D(t)) {
if (this._allowSnappingToSourceVertices) continue;
return - 1
}
var o = this._seg.distance(t);
o < this._snapTolerance && o < n && (n = o, r = i)
}
return r
},
Hf.prototype.setAllowSnappingToSourceVertices = function(t) {
this._allowSnappingToSourceVertices = t
},
Hf.prototype.interfaces_ = function() {
return []
},
Hf.prototype.getClass = function() {
return Hf
},
Hf.isClosed = function(t) {
return ! (t.length <= 1) && t[0].equals2D(t[t.length - 1])
};
var Jf = function(t) {
this._srcGeom = t || null
},
Zf = {
SNAP_PRECISION_FACTOR: {
configurable: !0
}
};
Jf.prototype.snapTo = function(t, e) {
var n = this.extractTargetCoordinates(t);
return new Qf(e, n).transform(this._srcGeom)
},
Jf.prototype.snapToSelf = function(t, e) {
var n = this.extractTargetCoordinates(this._srcGeom),
r = new Qf(t, n, !0).transform(this._srcGeom),
i = r;
return e && Nu(i, Qc) && (i = r.buffer(0)),
i
},
Jf.prototype.computeSnapTolerance = function(t) {
return this.computeMinimumSegmentLength(t) / 10
},
Jf.prototype.extractTargetCoordinates = function(t) {
for (var e = new Bi,
n = t.getCoordinates(), r = 0; r < n.length; r++) e.add(n[r]);
return e.toArray(new Array(0).fill(null))
},
Jf.prototype.computeMinimumSegmentLength = function(t) {
for (var e = vu.MAX_VALUE,
n = 0; n < t.length - 1; n++) {
var r = t[n].distance(t[n + 1]);
r < e && (e = r)
}
return e
},
Jf.prototype.interfaces_ = function() {
return []
},
Jf.prototype.getClass = function() {
return Jf
},
Jf.snap = function(t, e, n) {
var r = new Array(2).fill(null),
i = new Jf(t);
r[0] = i.snapTo(e, n);
var o = new Jf(e);
return r[1] = o.snapTo(r[0], n),
r
},
Jf.computeOverlaySnapTolerance = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = Jf.computeSizeBasedSnapTolerance(t),
n = t.getPrecisionModel();
if (n.getType() === fl.FIXED) {
var r = 1 / n.getScale() * 2 / 1.415;
r > e && (e = r)
}
return e
}
if (2 === arguments.length) {
var i = arguments[0],
o = arguments[1];
return Math.min(Jf.computeOverlaySnapTolerance(i), Jf.computeOverlaySnapTolerance(o))
}
},
Jf.computeSizeBasedSnapTolerance = function(t) {
var e = t.getEnvelopeInternal();
return Math.min(e.getHeight(), e.getWidth()) * Jf.SNAP_PRECISION_FACTOR
},
Jf.snapToSelf = function(t, e, n) {
return new Jf(t).snapToSelf(e, n)
},
Zf.SNAP_PRECISION_FACTOR.get = function() {
return 1e-9
},
Object.defineProperties(Jf, Zf);
var Qf = function(t) {
function e(e, n, r) {
t.call(this),
this._snapTolerance = e || null,
this._snapPts = n || null,
this._isSelfSnap = void 0 !== r && r
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.snapLine = function(t, e) {
var n = new Hf(t, this._snapTolerance);
return n.setAllowSnappingToSourceVertices(this._isSelfSnap),
n.snapTo(e)
},
e.prototype.transformCoordinates = function(t, e) {
var n = t.toCoordinateArray(),
r = this.snapLine(n, this._snapPts);
return this._factory.getCoordinateSequenceFactory().create(r)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Wf),
Kf = function() {
this._isFirst = !0,
this._commonMantissaBitsCount = 53,
this._commonBits = 0,
this._commonSignExp = null
};
Kf.prototype.getCommon = function() {
return vu.longBitsToDouble(this._commonBits)
},
Kf.prototype.add = function(t) {
var e = vu.doubleToLongBits(t);
return this._isFirst ? (this._commonBits = e, this._commonSignExp = Kf.signExpBits(this._commonBits), this._isFirst = !1, null) : Kf.signExpBits(e) !== this._commonSignExp ? (this._commonBits = 0, null) : (this._commonMantissaBitsCount = Kf.numCommonMostSigMantissaBits(this._commonBits, e), void(this._commonBits = Kf.zeroLowerBits(this._commonBits, 64 - (12 + this._commonMantissaBitsCount))))
},
Kf.prototype.toString = function() {
if (1 === arguments.length) {
var t = arguments[0],
e = vu.longBitsToDouble(t),
n = "0000000000000000000000000000000000000000000000000000000000000000" + vu.toBinaryString(t),
r = n.substring(n.length - 64);
return r.substring(0, 1) + " " + r.substring(1, 12) + "(exp) " + r.substring(12) + " [ " + e + " ]"
}
},
Kf.prototype.interfaces_ = function() {
return []
},
Kf.prototype.getClass = function() {
return Kf
},
Kf.getBit = function(t, e) {
return 0 != (t & 1 << e) ? 1 : 0
},
Kf.signExpBits = function(t) {
return t >> 52
},
Kf.zeroLowerBits = function(t, e) {
return t & ~ ((1 << e) - 1)
},
Kf.numCommonMostSigMantissaBits = function(t, e) {
for (var n = 0,
r = 52; r >= 0; r--) {
if (Kf.getBit(t, r) !== Kf.getBit(e, r)) return n;
n++
}
return 52
};
var $f = function() {
this._commonCoord = null,
this._ccFilter = new ep
},
tp = {
CommonCoordinateFilter: {
configurable: !0
},
Translater: {
configurable: !0
}
};
$f.prototype.addCommonBits = function(t) {
var e = new np(this._commonCoord);
t.apply(e),
t.geometryChanged()
},
$f.prototype.removeCommonBits = function(t) {
if (0 === this._commonCoord.x && 0 === this._commonCoord.y) return t;
var e = new xu(this._commonCoord);
e.x = -e.x,
e.y = -e.y;
var n = new np(e);
return t.apply(n),
t.geometryChanged(),
t
},
$f.prototype.getCommonCoordinate = function() {
return this._commonCoord
},
$f.prototype.add = function(t) {
t.apply(this._ccFilter),
this._commonCoord = this._ccFilter.getCommonCoordinate()
},
$f.prototype.interfaces_ = function() {
return []
},
$f.prototype.getClass = function() {
return $f
},
tp.CommonCoordinateFilter.get = function() {
return ep
},
tp.Translater.get = function() {
return np
},
Object.defineProperties($f, tp);
var ep = function() {
this._commonBitsX = new Kf,
this._commonBitsY = new Kf
};
ep.prototype.filter = function(t) {
this._commonBitsX.add(t.x),
this._commonBitsY.add(t.y)
},
ep.prototype.getCommonCoordinate = function() {
return new xu(this._commonBitsX.getCommon(), this._commonBitsY.getCommon())
},
ep.prototype.interfaces_ = function() {
return [hc]
},
ep.prototype.getClass = function() {
return ep
};
var np = function() {
this.trans = null;
var t = arguments[0];
this.trans = t
};
np.prototype.filter = function(t, e) {
var n = t.getOrdinate(e, 0) + this.trans.x,
r = t.getOrdinate(e, 1) + this.trans.y;
t.setOrdinate(e, 0, n),
t.setOrdinate(e, 1, r)
},
np.prototype.isDone = function() {
return ! 1
},
np.prototype.isGeometryChanged = function() {
return ! 0
},
np.prototype.interfaces_ = function() {
return [Bc]
},
np.prototype.getClass = function() {
return np
};
var rp = function(t, e) {
this._geom = new Array(2).fill(null),
this._snapTolerance = null,
this._cbr = null,
this._geom[0] = t,
this._geom[1] = e,
this.computeSnapTolerance()
};
rp.prototype.selfSnap = function(t) {
return new Jf(t).snapTo(t, this._snapTolerance)
},
rp.prototype.removeCommonBits = function(t) {
this._cbr = new $f,
this._cbr.add(t[0]),
this._cbr.add(t[1]);
var e = new Array(2).fill(null);
return e[0] = this._cbr.removeCommonBits(t[0].copy()),
e[1] = this._cbr.removeCommonBits(t[1].copy()),
e
},
rp.prototype.prepareResult = function(t) {
return this._cbr.addCommonBits(t),
t
},
rp.prototype.getResultGeometry = function(t) {
var e = this.snap(this._geom),
n = Ip.overlayOp(e[0], e[1], t);
return this.prepareResult(n)
},
rp.prototype.checkValid = function(t) {
t.isValid() || Uu.out.println("Snapped geometry is invalid")
},
rp.prototype.computeSnapTolerance = function() {
this._snapTolerance = Jf.computeOverlaySnapTolerance(this._geom[0], this._geom[1])
},
rp.prototype.snap = function(t) {
var e = this.removeCommonBits(t);
return Jf.snap(e[0], e[1], this._snapTolerance)
},
rp.prototype.interfaces_ = function() {
return []
},
rp.prototype.getClass = function() {
return rp
},
rp.overlayOp = function(t, e, n) {
return new rp(t, e).getResultGeometry(n)
},
rp.union = function(t, e) {
return rp.overlayOp(t, e, Ip.UNION)
},
rp.intersection = function(t, e) {
return rp.overlayOp(t, e, Ip.INTERSECTION)
},
rp.symDifference = function(t, e) {
return rp.overlayOp(t, e, Ip.SYMDIFFERENCE)
},
rp.difference = function(t, e) {
return rp.overlayOp(t, e, Ip.DIFFERENCE)
};
var ip = function(t, e) {
this._geom = new Array(2).fill(null),
this._geom[0] = t,
this._geom[1] = e
};
ip.prototype.getResultGeometry = function(t) {
var e = null,
n = !1,
r = null;
try {
e = Ip.overlayOp(this._geom[0], this._geom[1], t),
n = !0
} catch(t) {
if (! (t instanceof Qu)) throw t;
r = t
}
if (!n) try {
e = rp.overlayOp(this._geom[0], this._geom[1], t)
} catch(t) {
throw t instanceof Qu ? r: t
}
return e
},
ip.prototype.interfaces_ = function() {
return []
},
ip.prototype.getClass = function() {
return ip
},
ip.overlayOp = function(t, e, n) {
return new ip(t, e).getResultGeometry(n)
},
ip.union = function(t, e) {
return ip.overlayOp(t, e, Ip.UNION)
},
ip.intersection = function(t, e) {
return ip.overlayOp(t, e, Ip.INTERSECTION)
},
ip.symDifference = function(t, e) {
return ip.overlayOp(t, e, Ip.SYMDIFFERENCE)
},
ip.difference = function(t, e) {
return ip.overlayOp(t, e, Ip.DIFFERENCE)
};
var op = function() {
this.mce = null,
this.chainIndex = null;
var t = arguments[0],
e = arguments[1];
this.mce = t,
this.chainIndex = e
};
op.prototype.computeIntersections = function(t, e) {
this.mce.computeIntersectsForChain(this.chainIndex, t.mce, t.chainIndex, e)
},
op.prototype.interfaces_ = function() {
return []
},
op.prototype.getClass = function() {
return op
};
var sp = function t() {
if (this._label = null, this._xValue = null, this._eventType = null, this._insertEvent = null, this._deleteEventIndex = null, this._obj = null, 2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
this._eventType = t.DELETE,
this._xValue = e,
this._insertEvent = n
} else if (3 === arguments.length) {
var r = arguments[0],
i = arguments[1],
o = arguments[2];
this._eventType = t.INSERT,
this._label = r,
this._xValue = i,
this._obj = o
}
},
ap = {
INSERT: {
configurable: !0
},
DELETE: {
configurable: !0
}
};
sp.prototype.isDelete = function() {
return this._eventType === sp.DELETE
},
sp.prototype.setDeleteEventIndex = function(t) {
this._deleteEventIndex = t
},
sp.prototype.getObject = function() {
return this._obj
},
sp.prototype.compareTo = function(t) {
var e = t;
return this._xValue < e._xValue ? -1 : this._xValue > e._xValue ? 1 : this._eventType < e._eventType ? -1 : this._eventType > e._eventType ? 1 : 0
},
sp.prototype.getInsertEvent = function() {
return this._insertEvent
},
sp.prototype.isInsert = function() {
return this._eventType === sp.INSERT
},
sp.prototype.isSameLabel = function(t) {
return null !== this._label && this._label === t._label
},
sp.prototype.getDeleteEventIndex = function() {
return this._deleteEventIndex
},
sp.prototype.interfaces_ = function() {
return [_u]
},
sp.prototype.getClass = function() {
return sp
},
ap.INSERT.get = function() {
return 1
},
ap.DELETE.get = function() {
return 2
},
Object.defineProperties(sp, ap);
var up = function() {};
up.prototype.interfaces_ = function() {
return []
},
up.prototype.getClass = function() {
return up
};
var cp = function() {
this._hasIntersection = !1,
this._hasProper = !1,
this._hasProperInterior = !1,
this._properIntersectionPoint = null,
this._li = null,
this._includeProper = null,
this._recordIsolated = null,
this._isSelfIntersection = null,
this._numIntersections = 0,
this.numTests = 0,
this._bdyNodes = null,
this._isDone = !1,
this._isDoneWhenProperInt = !1;
var t = arguments[0],
e = arguments[1],
n = arguments[2];
this._li = t,
this._includeProper = e,
this._recordIsolated = n
};
cp.prototype.isTrivialIntersection = function(t, e, n, r) {
if (t === n && 1 === this._li.getIntersectionNum()) {
if (cp.isAdjacentSegments(e, r)) return ! 0;
if (t.isClosed()) {
var i = t.getNumPoints() - 1;
if (0 === e && r === i || 0 === r && e === i) return ! 0
}
}
return ! 1
},
cp.prototype.getProperIntersectionPoint = function() {
return this._properIntersectionPoint
},
cp.prototype.setIsDoneIfProperInt = function(t) {
this._isDoneWhenProperInt = t
},
cp.prototype.hasProperInteriorIntersection = function() {
return this._hasProperInterior
},
cp.prototype.isBoundaryPointInternal = function(t, e) {
for (var n = e.iterator(); n.hasNext();) {
var r = n.next().getCoordinate();
if (t.isIntersection(r)) return ! 0
}
return ! 1
},
cp.prototype.hasProperIntersection = function() {
return this._hasProper
},
cp.prototype.hasIntersection = function() {
return this._hasIntersection
},
cp.prototype.isDone = function() {
return this._isDone
},
cp.prototype.isBoundaryPoint = function(t, e) {
return ! (null === e || !this.isBoundaryPointInternal(t, e[0]) && !this.isBoundaryPointInternal(t, e[1]))
},
cp.prototype.setBoundaryNodes = function(t, e) {
this._bdyNodes = new Array(2).fill(null),
this._bdyNodes[0] = t,
this._bdyNodes[1] = e
},
cp.prototype.addIntersections = function(t, e, n, r) {
if (t === n && e === r) return null;
this.numTests++;
var i = t.getCoordinates()[e],
o = t.getCoordinates()[e + 1],
s = n.getCoordinates()[r],
a = n.getCoordinates()[r + 1];
this._li.computeIntersection(i, o, s, a),
this._li.hasIntersection() && (this._recordIsolated && (t.setIsolated(!1), n.setIsolated(!1)), this._numIntersections++, this.isTrivialIntersection(t, e, n, r) || (this._hasIntersection = !0, !this._includeProper && this._li.isProper() || (t.addIntersections(this._li, e, 0), n.addIntersections(this._li, r, 1)), this._li.isProper() && (this._properIntersectionPoint = this._li.getIntersection(0).copy(), this._hasProper = !0, this._isDoneWhenProperInt && (this._isDone = !0), this.isBoundaryPoint(this._li, this._bdyNodes) || (this._hasProperInterior = !0))))
},
cp.prototype.interfaces_ = function() {
return []
},
cp.prototype.getClass = function() {
return cp
},
cp.isAdjacentSegments = function(t, e) {
return 1 === Math.abs(t - e)
};
var lp = function(t) {
function e() {
t.call(this),
this.events = new xc,
this.nOverlaps = null
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.prepareEvents = function() {
Kl.sort(this.events);
for (var t = 0; t < this.events.size(); t++) {
var e = this.events.get(t);
e.isDelete() && e.getInsertEvent().setDeleteEventIndex(t)
}
},
e.prototype.computeIntersections = function() {
if (1 === arguments.length) {
var t = arguments[0];
this.nOverlaps = 0,
this.prepareEvents();
for (var e = 0; e < this.events.size(); e++) {
var n = this.events.get(e);
if (n.isInsert() && this.processOverlaps(e, n.getDeleteEventIndex(), n, t), t.isDone()) break
}
} else if (3 === arguments.length) if (arguments[2] instanceof cp && Nu(arguments[0], bc) && Nu(arguments[1], bc)) {
var r = arguments[0],
i = arguments[1],
o = arguments[2];
this.addEdges(r, r),
this.addEdges(i, i),
this.computeIntersections(o)
} else if ("boolean" == typeof arguments[2] && Nu(arguments[0], bc) && arguments[1] instanceof cp) {
var s = arguments[0],
a = arguments[1];
arguments[2] ? this.addEdges(s, null) : this.addEdges(s),
this.computeIntersections(a)
}
},
e.prototype.addEdge = function(t, e) {
for (var n = t.getMonotoneChainEdge(), r = n.getStartIndexes(), i = 0; i < r.length - 1; i++) {
var o = new op(n, i),
s = new sp(e, n.getMinX(i), o);
this.events.add(s),
this.events.add(new sp(n.getMaxX(i), s))
}
},
e.prototype.processOverlaps = function(t, e, n, r) {
for (var i = n.getObject(), o = t; o < e; o++) {
var s = this.events.get(o);
if (s.isInsert()) {
var a = s.getObject();
n.isSameLabel(s) || (i.computeIntersections(a, r), this.nOverlaps++)
}
}
},
e.prototype.addEdges = function() {
if (1 === arguments.length) for (var t = arguments[0].iterator(); t.hasNext();) {
var e = t.next();
this.addEdge(e, e)
} else if (2 === arguments.length) for (var n = arguments[0], r = arguments[1], i = n.iterator(); i.hasNext();) {
var o = i.next();
this.addEdge(o, r)
}
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (up),
hp = function() {
this._min = vu.POSITIVE_INFINITY,
this._max = vu.NEGATIVE_INFINITY
},
fp = {
NodeComparator: {
configurable: !0
}
};
hp.prototype.getMin = function() {
return this._min
},
hp.prototype.intersects = function(t, e) {
return ! (this._min > e || this._max < t)
},
hp.prototype.getMax = function() {
return this._max
},
hp.prototype.toString = function() {
return Zu.toLineString(new xu(this._min, 0), new xu(this._max, 0))
},
hp.prototype.interfaces_ = function() {
return []
},
hp.prototype.getClass = function() {
return hp
},
fp.NodeComparator.get = function() {
return pp
},
Object.defineProperties(hp, fp);
var pp = function() {};
pp.prototype.compare = function(t, e) {
var n = t,
r = e,
i = (n._min + n._max) / 2,
o = (r._min + r._max) / 2;
return i < o ? -1 : i > o ? 1 : 0
},
pp.prototype.interfaces_ = function() {
return [bu]
},
pp.prototype.getClass = function() {
return pp
};
var dp = function(t) {
function e() {
t.call(this),
this._item = null;
var e = arguments[0],
n = arguments[1],
r = arguments[2];
this._min = e,
this._max = n,
this._item = r
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.query = function(t, e, n) {
if (!this.intersects(t, e)) return null;
n.visitItem(this._item)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (hp),
gp = function(t) {
function e() {
t.call(this),
this._node1 = null,
this._node2 = null;
var e = arguments[0],
n = arguments[1];
this._node1 = e,
this._node2 = n,
this.buildExtent(this._node1, this._node2)
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.buildExtent = function(t, e) {
this._min = Math.min(t._min, e._min),
this._max = Math.max(t._max, e._max)
},
e.prototype.query = function(t, e, n) {
if (!this.intersects(t, e)) return null;
null !== this._node1 && this._node1.query(t, e, n),
null !== this._node2 && this._node2.query(t, e, n)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (hp),
yp = function() {
this._leaves = new xc,
this._root = null,
this._level = 0
};
yp.prototype.buildTree = function() {
Kl.sort(this._leaves, new hp.NodeComparator);
for (var t = this._leaves,
e = null,
n = new xc;;) {
if (this.buildLevel(t, n), 1 === n.size()) return n.get(0);
e = t,
t = n,
n = e
}
},
yp.prototype.insert = function(t, e, n) {
if (null !== this._root) throw new Error("Index cannot be added to once it has been queried");
this._leaves.add(new dp(t, e, n))
},
yp.prototype.query = function(t, e, n) {
this.init(),
this._root.query(t, e, n)
},
yp.prototype.buildRoot = function() {
if (null !== this._root) return null;
this._root = this.buildTree()
},
yp.prototype.printNode = function(t) {
Uu.out.println(Zu.toLineString(new xu(t._min, this._level), new xu(t._max, this._level)))
},
yp.prototype.init = function() {
if (null !== this._root) return null;
this.buildRoot()
},
yp.prototype.buildLevel = function(t, e) {
this._level++,
e.clear();
for (var n = 0; n < t.size(); n += 2) {
var r = t.get(n);
if (null === (n + 1 < t.size() ? t.get(n) : null)) e.add(r);
else {
var i = new gp(t.get(n), t.get(n + 1));
e.add(i)
}
}
},
yp.prototype.interfaces_ = function() {
return []
},
yp.prototype.getClass = function() {
return yp
};
var vp = function() {
this._items = new xc
};
vp.prototype.visitItem = function(t) {
this._items.add(t)
},
vp.prototype.getItems = function() {
return this._items
},
vp.prototype.interfaces_ = function() {
return [Hl]
},
vp.prototype.getClass = function() {
return vp
};
var mp = function() {
this._index = null;
var t = arguments[0];
if (!Nu(t, Qc)) throw new yu("Argument must be Polygonal");
this._index = new bp(t)
},
_p = {
SegmentVisitor: {
configurable: !0
},
IntervalIndexedGeometry: {
configurable: !0
}
};
mp.prototype.locate = function(t) {
var e = new ic(t),
n = new wp(e);
return this._index.query(t.y, t.y, n),
e.getLocation()
},
mp.prototype.interfaces_ = function() {
return [jh]
},
mp.prototype.getClass = function() {
return mp
},
_p.SegmentVisitor.get = function() {
return wp
},
_p.IntervalIndexedGeometry.get = function() {
return bp
},
Object.defineProperties(mp, _p);
var wp = function() {
this._counter = null;
var t = arguments[0];
this._counter = t
};
wp.prototype.visitItem = function(t) {
var e = t;
this._counter.countSegment(e.getCoordinate(0), e.getCoordinate(1))
},
wp.prototype.interfaces_ = function() {
return [Hl]
},
wp.prototype.getClass = function() {
return wp
};
var bp = function() {
this._index = new yp;
var t = arguments[0];
this.init(t)
};
bp.prototype.init = function(t) {
for (var e = Ef.getLines(t).iterator(); e.hasNext();) {
var n = e.next().getCoordinates();
this.addLine(n)
}
},
bp.prototype.addLine = function(t) {
for (var e = 1; e < t.length; e++) {
var n = new ph(t[e - 1], t[e]),
r = Math.min(n.p0.y, n.p1.y),
i = Math.max(n.p0.y, n.p1.y);
this._index.insert(r, i, n)
}
},
bp.prototype.query = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1],
n = new vp;
return this._index.query(t, e, n),
n.getItems()
}
if (3 === arguments.length) {
var r = arguments[0],
i = arguments[1],
o = arguments[2];
this._index.query(r, i, o)
}
},
bp.prototype.interfaces_ = function() {
return []
},
bp.prototype.getClass = function() {
return bp
};
var xp = function(t) {
function e() {
if (t.call(this), this._parentGeom = null, this._lineEdgeMap = new hl, this._boundaryNodeRule = null, this._useBoundaryDeterminationRule = !0, this._argIndex = null, this._boundaryNodes = null, this._hasTooFewPoints = !1, this._invalidPoint = null, this._areaPtLocator = null, this._ptLocator = new Mf, 2 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = fc.OGC_SFS_BOUNDARY_RULE;
this._argIndex = e,
this._parentGeom = n,
this._boundaryNodeRule = r,
null !== n && this.add(n)
} else if (3 === arguments.length) {
var i = arguments[0],
o = arguments[1],
s = arguments[2];
this._argIndex = i,
this._parentGeom = o,
this._boundaryNodeRule = s,
null !== o && this.add(o)
}
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.insertBoundaryPoint = function(t, n) {
var r = this._nodes.addNode(n).getLabel(),
i = 1;
Su.NONE,
r.getLocation(t, Ml.ON) === Su.BOUNDARY && i++;
var o = e.determineBoundary(this._boundaryNodeRule, i);
r.setLocation(t, o)
},
e.prototype.computeSelfNodes = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1];
return this.computeSelfNodes(t, e, !1)
}
if (3 === arguments.length) {
var n = arguments[0],
r = arguments[1],
i = arguments[2],
o = new cp(n, !0, !1);
o.setIsDoneIfProperInt(i);
var s = this.createEdgeSetIntersector(),
a = this._parentGeom instanceof tl || this._parentGeom instanceof Kc || this._parentGeom instanceof el,
u = r || !a;
return s.computeIntersections(this._edges, o, u),
this.addSelfIntersectionNodes(this._argIndex),
o
}
},
e.prototype.computeSplitEdges = function(t) {
for (var e = this._edges.iterator(); e.hasNext();) e.next().eiList.addSplitEdges(t)
},
e.prototype.computeEdgeIntersections = function(t, e, n) {
var r = new cp(e, n, !0);
return r.setBoundaryNodes(this.getBoundaryNodes(), t.getBoundaryNodes()),
this.createEdgeSetIntersector().computeIntersections(this._edges, t._edges, r),
r
},
e.prototype.getGeometry = function() {
return this._parentGeom
},
e.prototype.getBoundaryNodeRule = function() {
return this._boundaryNodeRule
},
e.prototype.hasTooFewPoints = function() {
return this._hasTooFewPoints
},
e.prototype.addPoint = function() {
if (arguments[0] instanceof Zc) {
var t = arguments[0].getCoordinate();
this.insertPoint(this._argIndex, t, Su.INTERIOR)
} else if (arguments[0] instanceof xu) {
var e = arguments[0];
this.insertPoint(this._argIndex, e, Su.INTERIOR)
}
},
e.prototype.addPolygon = function(t) {
this.addPolygonRing(t.getExteriorRing(), Su.EXTERIOR, Su.INTERIOR);
for (var e = 0; e < t.getNumInteriorRing(); e++) {
var n = t.getInteriorRingN(e);
this.addPolygonRing(n, Su.INTERIOR, Su.EXTERIOR)
}
},
e.prototype.addEdge = function(t) {
this.insertEdge(t);
var e = t.getCoordinates();
this.insertPoint(this._argIndex, e[0], Su.BOUNDARY),
this.insertPoint(this._argIndex, e[e.length - 1], Su.BOUNDARY)
},
e.prototype.addLineString = function(t) {
var e = Ic.removeRepeatedPoints(t.getCoordinates());
if (e.length < 2) return this._hasTooFewPoints = !0,
this._invalidPoint = e[0],
null;
var n = new tf(e, new Al(this._argIndex, Su.INTERIOR));
this._lineEdgeMap.put(t, n),
this.insertEdge(n),
$u.isTrue(e.length >= 2, "found LineString with single point"),
this.insertBoundaryPoint(this._argIndex, e[0]),
this.insertBoundaryPoint(this._argIndex, e[e.length - 1])
},
e.prototype.getInvalidPoint = function() {
return this._invalidPoint
},
e.prototype.getBoundaryPoints = function() {
for (var t = this.getBoundaryNodes(), e = new Array(t.size()).fill(null), n = 0, r = t.iterator(); r.hasNext();) {
var i = r.next();
e[n++] = i.getCoordinate().copy()
}
return e
},
e.prototype.getBoundaryNodes = function() {
return null === this._boundaryNodes && (this._boundaryNodes = this._nodes.getBoundaryNodes(this._argIndex)),
this._boundaryNodes
},
e.prototype.addSelfIntersectionNode = function(t, e, n) {
if (this.isBoundaryNode(t, e)) return null;
n === Su.BOUNDARY && this._useBoundaryDeterminationRule ? this.insertBoundaryPoint(t, e) : this.insertPoint(t, e, n)
},
e.prototype.addPolygonRing = function(t, e, n) {
if (t.isEmpty()) return null;
var r = Ic.removeRepeatedPoints(t.getCoordinates());
if (r.length < 4) return this._hasTooFewPoints = !0,
this._invalidPoint = r[0],
null;
var i = e,
o = n;
oc.isCCW(r) && (i = n, o = e);
var s = new tf(r, new Al(this._argIndex, Su.BOUNDARY, i, o));
this._lineEdgeMap.put(t, s),
this.insertEdge(s),
this.insertPoint(this._argIndex, r[0], Su.BOUNDARY)
},
e.prototype.insertPoint = function(t, e, n) {
var r = this._nodes.addNode(e),
i = r.getLabel();
null === i ? r._label = new Al(t, n) : i.setLocation(t, n)
},
e.prototype.createEdgeSetIntersector = function() {
return new lp
},
e.prototype.addSelfIntersectionNodes = function(t) {
for (var e = this._edges.iterator(); e.hasNext();) for (var n = e.next(), r = n.getLabel().getLocation(t), i = n.eiList.iterator(); i.hasNext();) {
var o = i.next();
this.addSelfIntersectionNode(t, o.coord, r)
}
},
e.prototype.add = function() {
if (1 !== arguments.length) return t.prototype.add.apply(this, arguments);
var e = arguments[0];
if (e.isEmpty()) return null;
if (e instanceof el && (this._useBoundaryDeterminationRule = !1), e instanceof Kc) this.addPolygon(e);
else if (e instanceof Hc) this.addLineString(e);
else if (e instanceof Zc) this.addPoint(e);
else if (e instanceof $c) this.addCollection(e);
else if (e instanceof Uc) this.addCollection(e);
else if (e instanceof el) this.addCollection(e);
else {
if (! (e instanceof Gc)) throw new Error(e.getClass().getName());
this.addCollection(e)
}
},
e.prototype.addCollection = function(t) {
for (var e = 0; e < t.getNumGeometries(); e++) {
var n = t.getGeometryN(e);
this.add(n)
}
},
e.prototype.locate = function(t) {
return Nu(this._parentGeom, Qc) && this._parentGeom.getNumGeometries() > 50 ? (null === this._areaPtLocator && (this._areaPtLocator = new mp(this._parentGeom)), this._areaPtLocator.locate(t)) : this._ptLocator.locate(t, this._parentGeom)
},
e.prototype.findEdge = function() {
if (1 === arguments.length) {
var e = arguments[0];
return this._lineEdgeMap.get(e)
}
return t.prototype.findEdge.apply(this, arguments)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e.determineBoundary = function(t, e) {
return t.isInBoundary(e) ? Su.BOUNDARY: Su.INTERIOR
},
e
} (zl),
Ep = function() {
if (this._li = new nc, this._resultPrecisionModel = null, this._arg = null, 1 === arguments.length) {
var t = arguments[0];
this.setComputationPrecision(t.getPrecisionModel()),
this._arg = new Array(1).fill(null),
this._arg[0] = new xp(0, t)
} else if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = fc.OGC_SFS_BOUNDARY_RULE;
e.getPrecisionModel().compareTo(n.getPrecisionModel()) >= 0 ? this.setComputationPrecision(e.getPrecisionModel()) : this.setComputationPrecision(n.getPrecisionModel()),
this._arg = new Array(2).fill(null),
this._arg[0] = new xp(0, e, r),
this._arg[1] = new xp(1, n, r)
} else if (3 === arguments.length) {
var i = arguments[0],
o = arguments[1],
s = arguments[2];
i.getPrecisionModel().compareTo(o.getPrecisionModel()) >= 0 ? this.setComputationPrecision(i.getPrecisionModel()) : this.setComputationPrecision(o.getPrecisionModel()),
this._arg = new Array(2).fill(null),
this._arg[0] = new xp(0, i, s),
this._arg[1] = new xp(1, o, s)
}
};
Ep.prototype.getArgGeometry = function(t) {
return this._arg[t].getGeometry()
},
Ep.prototype.setComputationPrecision = function(t) {
this._resultPrecisionModel = t,
this._li.setPrecisionModel(this._resultPrecisionModel)
},
Ep.prototype.interfaces_ = function() {
return []
},
Ep.prototype.getClass = function() {
return Ep
};
var Mp = function() {};
Mp.prototype.interfaces_ = function() {
return []
},
Mp.prototype.getClass = function() {
return Mp
},
Mp.map = function() {
if (arguments[0] instanceof uc && Nu(arguments[1], Mp.MapOp)) {
for (var t = arguments[0], e = arguments[1], n = new xc, r = 0; r < t.getNumGeometries(); r++) {
var i = e.map(t.getGeometryN(r));
null !== i && n.add(i)
}
return t.getFactory().buildGeometry(n)
}
if (Nu(arguments[0], mc) && Nu(arguments[1], Mp.MapOp)) {
for (var o = arguments[0], s = arguments[1], a = new xc, u = o.iterator(); u.hasNext();) {
var c = u.next(),
l = s.map(c);
null !== l && a.add(l)
}
return a
}
},
Mp.MapOp = function() {};
var Ip = function(t) {
function e() {
var e = arguments[0],
n = arguments[1];
t.call(this, e, n),
this._ptLocator = new Mf,
this._geomFact = null,
this._resultGeom = null,
this._graph = null,
this._edgeList = new Xh,
this._resultPolyList = new xc,
this._resultLineList = new xc,
this._resultPointList = new xc,
this._graph = new zl(new zh),
this._geomFact = e.getFactory()
}
return t && (e.__proto__ = t),
e.prototype = Object.create(t && t.prototype),
e.prototype.constructor = e,
e.prototype.insertUniqueEdge = function(t) {
var e = this._edgeList.findEqualEdge(t);
if (null !== e) {
var n = e.getLabel(),
r = t.getLabel();
e.isPointwiseEqual(t) || (r = new Al(t.getLabel())).flip();
var i = e.getDepth();
i.isNull() && i.add(n),
i.add(r),
n.merge(r)
} else this._edgeList.add(t)
},
e.prototype.getGraph = function() {
return this._graph
},
e.prototype.cancelDuplicateResultEdges = function() {
for (var t = this._graph.getEdgeEnds().iterator(); t.hasNext();) {
var e = t.next(),
n = e.getSym();
e.isInResult() && n.isInResult() && (e.setInResult(!1), n.setInResult(!1))
}
},
e.prototype.isCoveredByLA = function(t) {
return !! this.isCovered(t, this._resultLineList) || !!this.isCovered(t, this._resultPolyList)
},
e.prototype.computeGeometry = function(t, n, r, i) {
var o = new xc;
return o.addAll(t),
o.addAll(n),
o.addAll(r),
o.isEmpty() ? e.createEmptyResult(i, this._arg[0].getGeometry(), this._arg[1].getGeometry(), this._geomFact) : this._geomFact.buildGeometry(o)
},
e.prototype.mergeSymLabels = function() {
for (var t = this._graph.getNodes().iterator(); t.hasNext();) t.next().getEdges().mergeSymLabels()
},
e.prototype.isCovered = function(t, e) {
for (var n = e.iterator(); n.hasNext();) {
var r = n.next();
if (this._ptLocator.locate(t, r) !== Su.EXTERIOR) return ! 0
}
return ! 1
},
e.prototype.replaceCollapsedEdges = function() {
for (var t = new xc,
e = this._edgeList.iterator(); e.hasNext();) {
var n = e.next();
n.isCollapsed() && (e.remove(), t.add(n.getCollapsedEdge()))
}
this._edgeList.addAll(t)
},
e.prototype.updateNodeLabelling = function() {
for (var t = this._graph.getNodes().iterator(); t.hasNext();) {
var e = t.next(),
n = e.getEdges().getLabel();
e.getLabel().merge(n)
}
},
e.prototype.getResultGeometry = function(t) {
return this.computeOverlay(t),
this._resultGeom
},
e.prototype.insertUniqueEdges = function(t) {
for (var e = t.iterator(); e.hasNext();) {
var n = e.next();
this.insertUniqueEdge(n)
}
},
e.prototype.computeOverlay = function(t) {
this.copyPoints(0),
this.copyPoints(1),
this._arg[0].computeSelfNodes(this._li, !1),
this._arg[1].computeSelfNodes(this._li, !1),
this._arg[0].computeEdgeIntersections(this._arg[1], this._li, !0);
var e = new xc;
this._arg[0].computeSplitEdges(e),
this._arg[1].computeSplitEdges(e),
this.insertUniqueEdges(e),
this.computeLabelsFromDepths(),
this.replaceCollapsedEdges(),
zf.checkValid(this._edgeList.getEdges()),
this._graph.addEdges(this._edgeList.getEdges()),
this.computeLabelling(),
this.labelIncompleteNodes(),
this.findResultAreaEdges(t),
this.cancelDuplicateResultEdges();
var n = new Yl(this._geomFact);
n.add(this._graph),
this._resultPolyList = n.getPolygons();
var r = new Xf(this, this._geomFact, this._ptLocator);
this._resultLineList = r.build(t);
var i = new Vf(this, this._geomFact, this._ptLocator);
this._resultPointList = i.build(t),
this._resultGeom = this.computeGeometry(this._resultPointList, this._resultLineList, this._resultPolyList, t)
},
e.prototype.labelIncompleteNode = function(t, e) {
var n = this._ptLocator.locate(t.getCoordinate(), this._arg[e].getGeometry());
t.getLabel().setLocation(e, n)
},
e.prototype.copyPoints = function(t) {
for (var e = this._arg[t].getNodeIterator(); e.hasNext();) {
var n = e.next();
this._graph.addNode(n.getCoordinate()).setLabel(t, n.getLabel().getLocation(t))
}
},
e.prototype.findResultAreaEdges = function(t) {
for (var n = this._graph.getEdgeEnds().iterator(); n.hasNext();) {
var r = n.next(),
i = r.getLabel();
i.isArea() && !r.isInteriorAreaEdge() && e.isResultOfOp(i.getLocation(0, Ml.RIGHT), i.getLocation(1, Ml.RIGHT), t) && r.setInResult(!0)
}
},
e.prototype.computeLabelsFromDepths = function() {
for (var t = this._edgeList.iterator(); t.hasNext();) {
var e = t.next(),
n = e.getLabel(),
r = e.getDepth();
if (!r.isNull()) {
r.normalize();
for (var i = 0; i < 2; i++) n.isNull(i) || !n.isArea() || r.isNull(i) || (0 === r.getDelta(i) ? n.toLine(i) : ($u.isTrue(!r.isNull(i, Ml.LEFT), "depth of LEFT side has not been initialized"), n.setLocation(i, Ml.LEFT, r.getLocation(i, Ml.LEFT)), $u.isTrue(!r.isNull(i, Ml.RIGHT), "depth of RIGHT side has not been initialized"), n.setLocation(i, Ml.RIGHT, r.getLocation(i, Ml.RIGHT))))
}
}
},
e.prototype.computeLabelling = function() {
for (var t = this._graph.getNodes().iterator(); t.hasNext();) t.next().getEdges().computeLabelling(this._arg);
this.mergeSymLabels(),
this.updateNodeLabelling()
},
e.prototype.labelIncompleteNodes = function() {
for (var t = this._graph.getNodes().iterator(); t.hasNext();) {
var e = t.next(),
n = e.getLabel();
e.isIsolated() && (n.isNull(0) ? this.labelIncompleteNode(e, 0) : this.labelIncompleteNode(e, 1)),
e.getEdges().updateLabelling(n)
}
},
e.prototype.isCoveredByA = function(t) {
return !! this.isCovered(t, this._resultPolyList)
},
e.prototype.interfaces_ = function() {
return []
},
e.prototype.getClass = function() {
return e
},
e
} (Ep);
Ip.overlayOp = function(t, e, n) {
return new Ip(t, e).getResultGeometry(n)
},
Ip.intersection = function(t, e) {
if (t.isEmpty() || e.isEmpty()) return Ip.createEmptyResult(Ip.INTERSECTION, t, e, t.getFactory());
if (t.isGeometryCollection()) {
var n = e;
return Yf.map(t, {
interfaces_: function() {
return [Mp.MapOp]
},
map: function(t) {
return t.intersection(n)
}
})
}
return t.checkNotGeometryCollection(t),
t.checkNotGeometryCollection(e),
ip.overlayOp(t, e, Ip.INTERSECTION)
},
Ip.symDifference = function(t, e) {
if (t.isEmpty() || e.isEmpty()) {
if (t.isEmpty() && e.isEmpty()) return Ip.createEmptyResult(Ip.SYMDIFFERENCE, t, e, t.getFactory());
if (t.isEmpty()) return e.copy();
if (e.isEmpty()) return t.copy()
}
return t.checkNotGeometryCollection(t),
t.checkNotGeometryCollection(e),
ip.overlayOp(t, e, Ip.SYMDIFFERENCE)
},
Ip.resultDimension = function(t, e, n) {
var r = e.getDimension(),
i = n.getDimension(),
o = -1;
switch (t) {
case Ip.INTERSECTION:
o = Math.min(r, i);
break;
case Ip.UNION:
o = Math.max(r, i);
break;
case Ip.DIFFERENCE:
o = r;
break;
case Ip.SYMDIFFERENCE:
o = Math.max(r, i)
}
return o
},
Ip.createEmptyResult = function(t, e, n, r) {
var i = null;
switch (Ip.resultDimension(t, e, n)) {
case - 1 : i = r.createGeometryCollection(new Array(0).fill(null));
break;
case 0:
i = r.createPoint();
break;
case 1:
i = r.createLineString();
break;
case 2:
i = r.createPolygon()
}
return i
},
Ip.difference = function(t, e) {
return t.isEmpty() ? Ip.createEmptyResult(Ip.DIFFERENCE, t, e, t.getFactory()) : e.isEmpty() ? t.copy() : (t.checkNotGeometryCollection(t), t.checkNotGeometryCollection(e), ip.overlayOp(t, e, Ip.DIFFERENCE))
},
Ip.isResultOfOp = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1],
n = t.getLocation(0),
r = t.getLocation(1);
return Ip.isResultOfOp(n, r, e)
}
if (3 === arguments.length) {
var i = arguments[0],
o = arguments[1],
s = arguments[2];
switch (i === Su.BOUNDARY && (i = Su.INTERIOR), o === Su.BOUNDARY && (o = Su.INTERIOR), s) {
case Ip.INTERSECTION:
return i === Su.INTERIOR && o === Su.INTERIOR;
case Ip.UNION:
return i === Su.INTERIOR || o === Su.INTERIOR;
case Ip.DIFFERENCE:
return i === Su.INTERIOR && o !== Su.INTERIOR;
case Ip.SYMDIFFERENCE:
return i === Su.INTERIOR && o !== Su.INTERIOR || i !== Su.INTERIOR && o === Su.INTERIOR
}
return ! 1
}
},
Ip.INTERSECTION = 1,
Ip.UNION = 2,
Ip.DIFFERENCE = 3,
Ip.SYMDIFFERENCE = 4;
var Sp = function() {
this._g = null,
this._boundaryDistanceTolerance = null,
this._linework = null,
this._ptLocator = new Mf,
this._seg = new ph;
var t = arguments[0],
e = arguments[1];
this._g = t,
this._boundaryDistanceTolerance = e,
this._linework = this.extractLinework(t)
};
Sp.prototype.isWithinToleranceOfBoundary = function(t) {
for (var e = 0; e < this._linework.getNumGeometries(); e++) for (var n = this._linework.getGeometryN(e).getCoordinateSequence(), r = 0; r < n.size() - 1; r++) if (n.getCoordinate(r, this._seg.p0), n.getCoordinate(r + 1, this._seg.p1), this._seg.distance(t) <= this._boundaryDistanceTolerance) return ! 0;
return ! 1
},
Sp.prototype.getLocation = function(t) {
return this.isWithinToleranceOfBoundary(t) ? Su.BOUNDARY: this._ptLocator.locate(t, this._g)
},
Sp.prototype.extractLinework = function(t) {
var e = new Cp;
t.apply(e);
var n = e.getLinework(),
r = yl.toLineStringArray(n);
return t.getFactory().createMultiLineString(r)
},
Sp.prototype.interfaces_ = function() {
return []
},
Sp.prototype.getClass = function() {
return Sp
};
var Cp = function() {
this._linework = null,
this._linework = new xc
};
Cp.prototype.getLinework = function() {
return this._linework
},
Cp.prototype.filter = function(t) {
if (t instanceof Kc) {
var e = t;
this._linework.add(e.getExteriorRing());
for (var n = 0; n < e.getNumInteriorRing(); n++) this._linework.add(e.getInteriorRingN(n))
}
},
Cp.prototype.interfaces_ = function() {
return [qc]
},
Cp.prototype.getClass = function() {
return Cp
};
var Np = function() {
this._g = null,
this._doLeft = !0,
this._doRight = !0;
var t = arguments[0];
this._g = t
};
Np.prototype.extractPoints = function(t, e, n) {
for (var r = t.getCoordinates(), i = 0; i < r.length - 1; i++) this.computeOffsetPoints(r[i], r[i + 1], e, n)
},
Np.prototype.setSidesToGenerate = function(t, e) {
this._doLeft = t,
this._doRight = e
},
Np.prototype.getPoints = function(t) {
for (var e = new xc,
n = Ef.getLines(this._g).iterator(); n.hasNext();) {
var r = n.next();
this.extractPoints(r, t, e)
}
return e
},
Np.prototype.computeOffsetPoints = function(t, e, n, r) {
var i = e.x - t.x,
o = e.y - t.y,
s = Math.sqrt(i * i + o * o),
a = n * i / s,
u = n * o / s,
c = (e.x + t.x) / 2,
l = (e.y + t.y) / 2;
if (this._doLeft) {
var h = new xu(c - u, l + a);
r.add(h)
}
if (this._doRight) {
var f = new xu(c + u, l - a);
r.add(f)
}
},
Np.prototype.interfaces_ = function() {
return []
},
Np.prototype.getClass = function() {
return Np
};
var Pp = function t() {
this._geom = null,
this._locFinder = null,
this._location = new Array(3).fill(null),
this._invalidLocation = null,
this._boundaryDistanceTolerance = t.TOLERANCE,
this._testCoords = new xc;
var e = arguments[0],
n = arguments[1],
r = arguments[2];
this._boundaryDistanceTolerance = t.computeBoundaryDistanceTolerance(e, n),
this._geom = [e, n, r],
this._locFinder = [new Sp(this._geom[0], this._boundaryDistanceTolerance), new Sp(this._geom[1], this._boundaryDistanceTolerance), new Sp(this._geom[2], this._boundaryDistanceTolerance)]
},
Lp = {
TOLERANCE: {
configurable: !0
}
};
Pp.prototype.reportResult = function(t, e, n) {
Uu.out.println("Overlay result invalid - A:" + Su.toLocationSymbol(e[0]) + " B:" + Su.toLocationSymbol(e[1]) + " expected:" + (n ? "i": "e") + " actual:" + Su.toLocationSymbol(e[2]))
},
Pp.prototype.isValid = function(t) {
return this.addTestPts(this._geom[0]),
this.addTestPts(this._geom[1]),
this.checkValid(t)
},
Pp.prototype.checkValid = function() {
if (1 === arguments.length) {
for (var t = arguments[0], e = 0; e < this._testCoords.size(); e++) {
var n = this._testCoords.get(e);
if (!this.checkValid(t, n)) return this._invalidLocation = n,
!1
}
return ! 0
}
if (2 === arguments.length) {
var r = arguments[0],
i = arguments[1];
return this._location[0] = this._locFinder[0].getLocation(i),
this._location[1] = this._locFinder[1].getLocation(i),
this._location[2] = this._locFinder[2].getLocation(i),
!!Pp.hasLocation(this._location, Su.BOUNDARY) || this.isValidResult(r, this._location)
}
},
Pp.prototype.addTestPts = function(t) {
var e = new Np(t);
this._testCoords.addAll(e.getPoints(5 * this._boundaryDistanceTolerance))
},
Pp.prototype.isValidResult = function(t, e) {
var n = Ip.isResultOfOp(e[0], e[1], t),
r = !(n ^ e[2] === Su.INTERIOR);
return r || this.reportResult(t, e, n),
r
},
Pp.prototype.getInvalidLocation = function() {
return this._invalidLocation
},
Pp.prototype.interfaces_ = function() {
return []
},
Pp.prototype.getClass = function() {
return Pp
},
Pp.hasLocation = function(t, e) {
for (var n = 0; n < 3; n++) if (t[n] === e) return ! 0;
return ! 1
},
Pp.computeBoundaryDistanceTolerance = function(t, e) {
return Math.min(Jf.computeSizeBasedSnapTolerance(t), Jf.computeSizeBasedSnapTolerance(e))
},
Pp.isValid = function(t, e, n, r) {
return new Pp(t, e, r).isValid(n)
},
Lp.TOLERANCE.get = function() {
return 1e-6
},
Object.defineProperties(Pp, Lp);
var Ap = function t(e) {
this._geomFactory = null,
this._skipEmpty = !1,
this._inputGeoms = null,
this._geomFactory = t.extractFactory(e),
this._inputGeoms = e
};
Ap.prototype.extractElements = function(t, e) {
if (null === t) return null;
for (var n = 0; n < t.getNumGeometries(); n++) {
var r = t.getGeometryN(n);
this._skipEmpty && r.isEmpty() || e.add(r)
}
},
Ap.prototype.combine = function() {
for (var t = new xc,
e = this._inputGeoms.iterator(); e.hasNext();) {
var n = e.next();
this.extractElements(n, t)
}
return 0 === t.size() ? null !== this._geomFactory ? this._geomFactory.createGeometryCollection(null) : null: this._geomFactory.buildGeometry(t)
},
Ap.prototype.interfaces_ = function() {
return []
},
Ap.prototype.getClass = function() {
return Ap
},
Ap.combine = function() {
if (1 === arguments.length) {
var t = arguments[0];
return new Ap(t).combine()
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return new Ap(Ap.createList(e, n)).combine()
}
if (3 === arguments.length) {
var r = arguments[0],
i = arguments[1],
o = arguments[2];
return new Ap(Ap.createList(r, i, o)).combine()
}
},
Ap.extractFactory = function(t) {
return t.isEmpty() ? null: t.iterator().next().getFactory()
},
Ap.createList = function() {
if (2 === arguments.length) {
var t = arguments[0],
e = arguments[1],
n = new xc;
return n.add(t),
n.add(e),
n
}
if (3 === arguments.length) {
var r = arguments[0],
i = arguments[1],
o = arguments[2],
s = new xc;
return s.add(r),
s.add(i),
s.add(o),
s
}
};
var Op = function() {
this._inputPolys = null,
this._geomFactory = null;
var t = arguments[0];
this._inputPolys = t,
null === this._inputPolys && (this._inputPolys = new xc)
},
Tp = {
STRTREE_NODE_CAPACITY: {
configurable: !0
}
};
Op.prototype.reduceToGeometries = function(t) {
for (var e = new xc,
n = t.iterator(); n.hasNext();) {
var r = n.next(),
i = null;
Nu(r, bc) ? i = this.unionTree(r) : r instanceof uc && (i = r),
e.add(i)
}
return e
},
Op.prototype.extractByEnvelope = function(t, e, n) {
for (var r = new xc,
i = 0; i < e.getNumGeometries(); i++) {
var o = e.getGeometryN(i);
o.getEnvelopeInternal().intersects(t) ? r.add(o) : n.add(o)
}
return this._geomFactory.buildGeometry(r)
},
Op.prototype.unionOptimized = function(t, e) {
var n = t.getEnvelopeInternal(),
r = e.getEnvelopeInternal();
if (!n.intersects(r)) return Ap.combine(t, e);
if (t.getNumGeometries() <= 1 && e.getNumGeometries() <= 1) return this.unionActual(t, e);
var i = n.intersection(r);
return this.unionUsingEnvelopeIntersection(t, e, i)
},
Op.prototype.union = function() {
if (null === this._inputPolys) throw new Error("union() method cannot be called twice");
if (this._inputPolys.isEmpty()) return null;
this._geomFactory = this._inputPolys.iterator().next().getFactory();
for (var t = new ih(Op.STRTREE_NODE_CAPACITY), e = this._inputPolys.iterator(); e.hasNext();) {
var n = e.next();
t.insert(n.getEnvelopeInternal(), n)
}
this._inputPolys = null;
var r = t.itemsTree();
return this.unionTree(r)
},
Op.prototype.binaryUnion = function() {
if (1 === arguments.length) {
var t = arguments[0];
return this.binaryUnion(t, 0, t.size())
}
if (3 === arguments.length) {
var e = arguments[0],
n = arguments[1],
r = arguments[2];
if (r - n <= 1) {
var i = Op.getGeometry(e, n);
return this.unionSafe(i, null)
}
if (r - n == 2) return this.unionSafe(Op.getGeometry(e, n), Op.getGeometry(e, n + 1));
var o = Math.trunc((r + n) / 2),
s = this.binaryUnion(e, n, o),
a = this.binaryUnion(e, o, r);
return this.unionSafe(s, a)
}
},
Op.prototype.repeatedUnion = function(t) {
for (var e = null,
n = t.iterator(); n.hasNext();) {
var r = n.next();
e = null === e ? r.copy() : e.union(r)
}
return e
},
Op.prototype.unionSafe = function(t, e) {
return null === t && null === e ? null: null === t ? e.copy() : null === e ? t.copy() : this.unionOptimized(t, e)
},
Op.prototype.unionActual = function(t, e) {
return Op.restrictToPolygons(t.union(e))
},
Op.prototype.unionTree = function(t) {
var e = this.reduceToGeometries(t);
return this.binaryUnion(e)
},
Op.prototype.unionUsingEnvelopeIntersection = function(t, e, n) {
var r = new xc,
i = this.extractByEnvelope(n, t, r),
o = this.extractByEnvelope(n, e, r),
s = this.unionActual(i, o);
return r.add(s),
Ap.combine(r)
},
Op.prototype.bufferUnion = function() {
if (1 === arguments.length) {
var t = arguments[0];
return t.get(0).getFactory().buildGeometry(t).buffer(0)
}
if (2 === arguments.length) {
var e = arguments[0],
n = arguments[1];
return e.getFactory().createGeometryCollection([e, n]).buffer(0)
}
},
Op.prototype.interfaces_ = function() {
return []
},
Op.prototype.getClass = function() {
return Op
},
Op.restrictToPolygons = function(t) {
if (Nu(t, Qc)) return t;
var e = xf.getPolygons(t);
return 1 === e.size() ? e.get(0) : t.getFactory().createMultiPolygon(yl.toPolygonArray(e))
},
Op.getGeometry = function(t, e) {
return e >= t.size() ? null: t.get(e)
},
Op.union = function(t) {
return new Op(t).union()
},
Tp.STRTREE_NODE_CAPACITY.get = function() {
return 4
},
Object.defineProperties(Op, Tp);
var Rp = function() {};
Rp.prototype.interfaces_ = function() {
return []
},
Rp.prototype.getClass = function() {
return Rp
},
Rp.union = function(t, e) {
if (t.isEmpty() || e.isEmpty()) {
if (t.isEmpty() && e.isEmpty()) return Ip.createEmptyResult(Ip.UNION, t, e, t.getFactory());
if (t.isEmpty()) return e.copy();
if (e.isEmpty()) return t.copy()
}
return t.checkNotGeometryCollection(t),
t.checkNotGeometryCollection(e),
ip.overlayOp(t, e, Ip.UNION)
};
var Dp = function() {
return new Xi
};
Xi.prototype = {
constructor: Xi,
reset: function() {
this.s = this.t = 0
},
add: function(t) {
Vi(kp, t, this.t),
Vi(this, kp.s, this.s),
this.s ? this.t += kp.t: this.s = kp.t
},
valueOf: function() {
return this.s
}
};
var kp = new Xi,
Fp = 1e-6,
jp = Math.PI,
qp = jp / 2,
Bp = jp / 4,
Gp = 2 * jp,
Up = 180 / jp,
zp = jp / 180,
Yp = Math.abs,
Xp = Math.atan,
Vp = Math.atan2,
Wp = Math.cos,
Hp = Math.exp,
Jp = Math.log,
Zp = Math.sin,
Qp = Math.sqrt,
Kp = Math.tan,
$p = {
Feature: function(t, e) {
Ji(t.geometry, e)
},
FeatureCollection: function(t, e) {
for (var n = t.features,
r = -1,
i = n.length; ++r < i;) Ji(n[r].geometry, e)
}
},
td = {
Sphere: function(t, e) {
e.sphere()
},
Point: function(t, e) {
t = t.coordinates,
e.point(t[0], t[1], t[2])
},
MultiPoint: function(t, e) {
for (var n = t.coordinates,
r = -1,
i = n.length; ++r < i;) t = n[r],
e.point(t[0], t[1], t[2])
},
LineString: function(t, e) {
Zi(t.coordinates, e, 0)
},
MultiLineString: function(t, e) {
for (var n = t.coordinates,
r = -1,
i = n.length; ++r < i;) Zi(n[r], e, 0)
},
Polygon: function(t, e) {
Qi(t.coordinates, e)
},
MultiPolygon: function(t, e) {
for (var n = t.coordinates,
r = -1,
i = n.length; ++r < i;) Qi(n[r], e)
},
GeometryCollection: function(t, e) {
for (var n = t.geometries,
r = -1,
i = n.length; ++r < i;) Ji(n[r], e)
}
},
ed = function(t, e) {
t && $p.hasOwnProperty(t.type) ? $p[t.type](t, e) : Ji(t, e)
},
nd = (Dp(), Dp(), Dp(),
function(t, e) {
function n(n, r) {
return n = t(n, r),
e(n[0], n[1])
}
return t.invert && e.invert && (n.invert = function(n, r) {
return (n = e.invert(n, r)) && t.invert(n[0], n[1])
}),
n
});
oo.invert = oo;
var rd = function(t) {
function e(e) {
return e = t(e[0] * zp, e[1] * zp),
e[0] *= Up,
e[1] *= Up,
e
}
return t = so(t[0] * zp, t[1] * zp, t.length > 2 ? t[2] * zp: 0),
e.invert = function(e) {
return e = t.invert(e[0] * zp, e[1] * zp),
e[0] *= Up,
e[1] *= Up,
e
},
e
},
id = function() {
var t, e = [];
return {
point: function(e, n) {
t.push([e, n])
},
lineStart: function() {
e.push(t = [])
},
lineEnd: Hi,
rejoin: function() {
e.length > 1 && e.push(e.pop().concat(e.shift()))
},
result: function() {
var n = e;
return e = [],
t = null,
n
}
}
},
od = function(t, e, n, r, i, o) {
var s, a = t[0],
u = t[1],
c = 0,
l = 1,
h = e[0] - a,
f = e[1] - u;
if (s = n - a, h || !(s > 0)) {
if (s /= h, h < 0) {
if (s < c) return;
s < l && (l = s)
} else if (h > 0) {
if (s > l) return;
s > c && (c = s)
}
if (s = i - a, h || !(s < 0)) {
if (s /= h, h < 0) {
if (s > l) return;
s > c && (c = s)
} else if (h > 0) {
if (s < c) return;
s < l && (l = s)
}
if (s = r - u, f || !(s > 0)) {
if (s /= f, f < 0) {
if (s < c) return;
s < l && (l = s)
} else if (f > 0) {
if (s > l) return;
s > c && (c = s)
}
if (s = o - u, f || !(s < 0)) {
if (s /= f, f < 0) {
if (s > l) return;
s > c && (c = s)
} else if (f > 0) {
if (s < c) return;
s < l && (l = s)
}
return c > 0 && (t[0] = a + c * h, t[1] = u + c * f),
l < 1 && (e[0] = a + l * h, e[1] = u + l * f),
!0
}
}
}
}
},
sd = function(t, e) {
return Yp(t[0] - e[0]) < Fp && Yp(t[1] - e[1]) < Fp
},
ad = function(t, e, n, r, i) {
var o, s, a = [],
u = [];
if (t.forEach(function(t) {
if (! ((e = t.length - 1) <= 0)) {
var e, n, r = t[0],
s = t[e];
if (sd(r, s)) {
for (i.lineStart(), o = 0; o < e; ++o) i.point((r = t[o])[0], r[1]);
i.lineEnd()
} else a.push(n = new ho(r, t, null, !0)),
u.push(n.o = new ho(r, null, n, !1)),
a.push(n = new ho(s, t, null, !1)),
u.push(n.o = new ho(s, null, n, !0))
}
}), a.length) {
for (u.sort(e), fo(a), fo(u), o = 0, s = u.length; o < s; ++o) u[o].e = n = !n;
for (var c, l, h = a[0];;) {
for (var f = h,
p = !0; f.v;) if ((f = f.n) === h) return;
c = f.z,
i.lineStart();
do {
if (f.v = f.o.v = !0, f.e) {
if (p) for (o = 0, s = c.length; o < s; ++o) i.point((l = c[o])[0], l[1]);
else r(f.x, f.n.x, 1, i);
f = f.n
} else {
if (p) for (c = f.p.z, o = c.length - 1; o >= 0; --o) i.point((l = c[o])[0], l[1]);
else r(f.x, f.p.x, -1, i);
f = f.p
}
c = (f = f.o).z, p = !p
} while (! f . v );
i.lineEnd()
}
}
},
ud = function(t, e) {
return t < e ? -1 : t > e ? 1 : t >= e ? 0 : NaN
},
cd = (function(t) {
1 === t.length && (t = function(t) {
return function(e, n) {
return ud(t(e), n)
}
} (t))
} (ud),
function(t) {
for (var e, n, r, i = t.length,
o = -1,
s = 0; ++o < i;) s += t[o].length;
for (n = new Array(s); --i >= 0;) for (e = (r = t[i]).length; --e >= 0;) n[--s] = r[e];
return n
}),
ld = 1e9,
hd = -ld,
fd = Dp(),
pd = (Dp(),
function(t) {
return t
}),
dd = (Dp(), Dp(), 1 / 0),
gd = dd,
yd = -dd,
vd = yd,
md = {
point: function(t, e) {
t < dd && (dd = t),
t > yd && (yd = t),
e < gd && (gd = e),
e > vd && (vd = e)
},
lineStart: Hi,
lineEnd: Hi,
polygonStart: Hi,
polygonEnd: Hi,
result: function() {
var t = [[dd, gd], [yd, vd]];
return yd = vd = -(gd = dd = 1 / 0),
t
}
},
_d = (Dp(),
function(t, e, n, r) {
return function(i, o) {
function s(e, n) {
var r = i(e, n);
t(e = r[0], n = r[1]) && o.point(e, n)
}
function a(t, e) {
var n = i(t, e);
y.point(n[0], n[1])
}
function u() {
b.point = a,
y.lineStart()
}
function c() {
b.point = s,
y.lineEnd()
}
function l(t, e) {
g.push([t, e]);
var n = i(t, e);
_.point(n[0], n[1])
}
function h() {
_.lineStart(),
g = []
}
function f() {
l(g[0][0], g[0][1]),
_.lineEnd();
var t, e, n, r, i = _.clean(),
s = m.result(),
a = s.length;
if (g.pop(), p.push(g), g = null, a) if (1 & i) {
if (n = s[0], (e = n.length - 1) > 0) {
for (w || (o.polygonStart(), w = !0), o.lineStart(), t = 0; t < e; ++t) o.point((r = n[t])[0], r[1]);
o.lineEnd()
}
} else a > 1 && 2 & i && s.push(s.pop().concat(s.shift())),
d.push(s.filter(go))
}
var p, d, g, y = e(o),
v = i.invert(r[0], r[1]),
m = id(),
_ = e(m),
w = !1,
b = {
point: s,
lineStart: u,
lineEnd: c,
polygonStart: function() {
b.point = l,
b.lineStart = h,
b.lineEnd = f,
d = [],
p = []
},
polygonEnd: function() {
b.point = s,
b.lineStart = u,
b.lineEnd = c,
d = cd(d);
var t = function(t, e) {
var n = e[0],
r = e[1],
i = [Zp(n), -Wp(n), 0],
o = 0,
s = 0;
fd.reset();
for (var a = 0,
u = t.length; a < u; ++a) if (l = (c = t[a]).length) for (var c, l, h = c[l - 1], f = h[0], p = h[1] / 2 + Bp, d = Zp(p), g = Wp(p), y = 0; y < l; ++y, f = m, d = w, g = b, h = v) {
var v = c[y],
m = v[0],
_ = v[1] / 2 + Bp,
w = Zp(_),
b = Wp(_),
x = m - f,
E = x >= 0 ? 1 : -1,
M = E * x,
I = M > jp,
S = d * w;
if (fd.add(Vp(S * E * Zp(M), g * b + S * Wp(M))), o += I ? x + E * Gp: x, I ^ f >= n ^ m >= n) {
var C = eo($i(h), $i(v));
io(C);
var N = eo(i, C);
io(N);
var P = (I ^ x >= 0 ? -1 : 1) * Wi(N[2]); (r > P || r === P && (C[0] || C[1])) && (s += I ^ x >= 0 ? 1 : -1)
}
}
return (o < -Fp || o < Fp && fd < -Fp) ^ 1 & s
} (p, v);
d.length ? (w || (o.polygonStart(), w = !0), ad(d, yo, t, n, o)) : t && (w || (o.polygonStart(), w = !0), o.lineStart(), n(null, null, 1, o), o.lineEnd()),
w && (o.polygonEnd(), w = !1),
d = p = null
},
sphere: function() {
o.polygonStart(),
o.lineStart(),
n(null, null, 1, o),
o.lineEnd(),
o.polygonEnd()
}
};
return b
}
}),
wd = _d(function() {
return ! 0
},
function(t) {
var e, n = NaN,
r = NaN,
i = NaN;
return {
lineStart: function() {
t.lineStart(),
e = 1
},
point: function(o, s) {
var a = o > 0 ? jp: -jp,
u = Yp(o - n);
Yp(u - jp) < Fp ? (t.point(n, r = (r + s) / 2 > 0 ? qp: -qp), t.point(i, r), t.lineEnd(), t.lineStart(), t.point(a, r), t.point(o, r), e = 0) : i !== a && u >= jp && (Yp(n - i) < Fp && (n -= i * Fp), Yp(o - a) < Fp && (o -= a * Fp), r = function(t, e, n, r) {
var i, o, s = Zp(t - n);
return Yp(s) > Fp ? Xp((Zp(e) * (o = Wp(r)) * Zp(n) - Zp(r) * (i = Wp(e)) * Zp(t)) / (i * o * s)) : (e + r) / 2
} (n, r, o, s), t.point(i, r), t.lineEnd(), t.lineStart(), t.point(a, r), e = 0),
t.point(n = o, r = s),
i = a
},
lineEnd: function() {
t.lineEnd(),
n = r = NaN
},
clean: function() {
return 2 - e
}
}
},
function(t, e, n, r) {
var i;
if (null == t) i = n * qp,
r.point( - jp, i),
r.point(0, i),
r.point(jp, i),
r.point(jp, 0),
r.point(jp, -i),
r.point(0, -i),
r.point( - jp, -i),
r.point( - jp, 0),
r.point( - jp, i);
else if (Yp(t[0] - e[0]) > Fp) {
var o = t[0] < e[0] ? jp: -jp;
i = n * o / 2,
r.point( - o, i),
r.point(0, i),
r.point(o, i)
} else r.point(e[0], e[1])
},
[ - jp, -qp]),
bd = function(t, e) {
function n(t, e) {
return Wp(t) * Wp(e) > o
}
function r(t, e, n) {
var r = [1, 0, 0],
i = eo($i(t), $i(e)),
s = to(i, i),
a = i[0],
u = s - a * a;
if (!u) return ! n && t;
var c = o * s / u,
l = -o * a / u,
h = eo(r, i),
f = ro(r, c);
no(f, ro(i, l));
var p = h,
d = to(f, p),
g = to(p, p),
y = d * d - g * (to(f, f) - 1);
if (! (y < 0)) {
var v = Qp(y),
m = ro(p, ( - d - v) / g);
if (no(m, f), m = Ki(m), !n) return m;
var _, w = t[0],
b = e[0],
x = t[1],
E = e[1];
b < w && (_ = w, w = b, b = _);
var M = b - w,
I = Yp(M - jp) < Fp;
if (!I && E < x && (_ = x, x = E, E = _), I || M < Fp ? I ? x + E > 0 ^ m[1] < (Yp(m[0] - w) < Fp ? x: E) : x <= m[1] && m[1] <= E: M > jp ^ (w <= m[0] && m[0] <= b)) {
var S = ro(p, ( - d + v) / g);
return no(S, f),
[m, Ki(S)]
}
}
}
function i(e, n) {
var r = s ? t: jp - t,
i = 0;
return e < -r ? i |= 1 : e > r && (i |= 2),
n < -r ? i |= 4 : n > r && (i |= 8),
i
}
var o = Wp(t),
s = o > 0,
a = Yp(o) > Fp;
return _d(n,
function(t) {
var e, o, u, c, l;
return {
lineStart: function() {
c = u = !1,
l = 1
},
point: function(h, f) {
var p, d = [h, f],
g = n(h, f),
y = s ? g ? 0 : i(h, f) : g ? i(h + (h < 0 ? jp: -jp), f) : 0;
if (!e && (c = u = g) && t.lineStart(), g !== u && (!(p = r(e, d)) || sd(e, p) || sd(d, p)) && (d[0] += Fp, d[1] += Fp, g = n(d[0], d[1])), g !== u) l = 0,
g ? (t.lineStart(), p = r(d, e), t.point(p[0], p[1])) : (p = r(e, d), t.point(p[0], p[1]), t.lineEnd()),
e = p;
else if (a && e && s ^ g) {
var v;
y & o || !(v = r(d, e, !0)) || (l = 0, s ? (t.lineStart(), t.point(v[0][0], v[0][1]), t.point(v[1][0], v[1][1]), t.lineEnd()) : (t.point(v[1][0], v[1][1]), t.lineEnd(), t.lineStart(), t.point(v[0][0], v[0][1])))
} ! g || e && sd(e, d) || t.point(d[0], d[1]),
e = d,
u = g,
o = y
},
lineEnd: function() {
u && t.lineEnd(),
e = null
},
clean: function() {
return l | (c && u) << 1
}
}
},
function(n, r, i, o) { !
function(t, e, n, r, i, o) {
if (n) {
var s = Wp(e),
a = Zp(e),
u = r * n;
null == i ? (i = e + r * Gp, o = e - u / 2) : (i = lo(s, i), o = lo(s, o), (r > 0 ? i < o: i > o) && (i += r * Gp));
for (var c, l = i; r > 0 ? l > o: l < o; l -= u) c = Ki([s, -a * Wp(l), -a * Zp(l)]),
t.point(c[0], c[1])
}
} (o, t, e, i, n, r)
},
s ? [0, -t] : [ - jp, t - jp])
};
mo.prototype = {
constructor: mo,
point: function(t, e) {
this.stream.point(t, e)
},
sphere: function() {
this.stream.sphere()
},
lineStart: function() {
this.stream.lineStart()
},
lineEnd: function() {
this.stream.lineEnd()
},
polygonStart: function() {
this.stream.polygonStart()
},
polygonEnd: function() {
this.stream.polygonEnd()
}
};
var xd = 16,
Ed = Wp(30 * zp),
Md = function(t, e) {
return + e ?
function(t, e) {
function n(r, i, o, s, a, u, c, l, h, f, p, d, g, y) {
var v = c - r,
m = l - i,
_ = v * v + m * m;
if (_ > 4 * e && g--) {
var w = s + f,
b = a + p,
x = u + d,
E = Qp(w * w + b * b + x * x),
M = Wi(x /= E),
I = Yp(Yp(x) - 1) < Fp || Yp(o - h) < Fp ? (o + h) / 2 : Vp(b, w),
S = t(I, M),
C = S[0],
N = S[1],
P = C - r,
L = N - i,
A = m * P - v * L; (A * A / _ > e || Yp((v * P + m * L) / _ - .5) > .3 || s * f + a * p + u * d < Ed) && (n(r, i, o, s, a, u, C, N, I, w /= E, b /= E, x, g, y), y.point(C, N), n(C, N, I, w, b, x, c, l, h, f, p, d, g, y))
}
}
return function(e) {
function r(n, r) {
n = t(n, r),
e.point(n[0], n[1])
}
function i() {
v = NaN,
x.point = o,
e.lineStart()
}
function o(r, i) {
var o = $i([r, i]),
s = t(r, i);
n(v, m, y, _, w, b, v = s[0], m = s[1], y = r, _ = o[0], w = o[1], b = o[2], xd, e),
e.point(v, m)
}
function s() {
x.point = r,
e.lineEnd()
}
function a() {
i(),
x.point = u,
x.lineEnd = c
}
function u(t, e) {
o(l = t, e),
h = v,
f = m,
p = _,
d = w,
g = b,
x.point = o
}
function c() {
n(v, m, y, _, w, b, h, f, l, p, d, g, xd, e),
x.lineEnd = s,
s()
}
var l, h, f, p, d, g, y, v, m, _, w, b, x = {
point: r,
lineStart: i,
lineEnd: s,
polygonStart: function() {
e.polygonStart(),
x.lineStart = a
},
polygonEnd: function() {
e.polygonEnd(),
x.lineStart = i
}
};
return x
}
} (t, e) : function(t) {
return vo({
point: function(e, n) {
e = t(e, n),
this.stream.point(e[0], e[1])
}
})
} (t)
},
Id = vo({
point: function(t, e) {
this.stream.point(t * zp, e * zp)
}
});
bo.invert = function(t, e) {
return [t, 2 * Xp(Hp(e)) - qp]
},
xo.invert = function(t, e) {
return [ - e, 2 * Xp(Hp(t)) - qp]
};
var Sd = function() {
var t = function(t) {
function e() {
var e = jp * a(),
s = o(rd(o.rotate()).invert([0, 0]));
return c(null == l ? [[s[0] - e, s[1] - e], [s[0] + e, s[1] + e]] : t === bo ? [[Math.max(s[0] - e, l), n], [Math.min(s[0] + e, r), i]] : [[l, Math.max(s[1] - e, n)], [r, Math.min(s[1] + e, i)]])
}
var n, r, i, o = wo(t),
s = o.center,
a = o.scale,
u = o.translate,
c = o.clipExtent,
l = null;
return o.scale = function(t) {
return arguments.length ? (a(t), e()) : a()
},
o.translate = function(t) {
return arguments.length ? (u(t), e()) : u()
},
o.center = function(t) {
return arguments.length ? (s(t), e()) : s()
},
o.clipExtent = function(t) {
return arguments.length ? (null == t ? l = n = r = i = null: (l = +t[0][0], n = +t[0][1], r = +t[1][0], i = +t[1][1]), e()) : null == l ? null: [[l, n], [r, i]]
},
e()
} (xo),
e = t.center,
n = t.rotate;
return t.center = function(t) {
return arguments.length ? e([ - t[1], t[0]]) : (t = e(), [t[1], -t[0]])
},
t.rotate = function(t) {
return arguments.length ? n([t[0], t[1], t.length > 2 ? t[2] + 90 : 90]) : (t = n(), [t[0], t[1], t[2] - 90])
},
n([0, 0, 90]).scale(159.155)
};
t.projection = Ss,
t.random = pu,
t.clusters = du,
t.helpers = Bo,
t.invariant = Uo,
t.meta = Go,
t.isolines = function(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.zProperty || "elevation",
i = n.commonProperties || {},
o = n.breaksProperties || [];
if (H(t, "Point", "Input must contain Points"), !e) throw new Error("breaks is required");
if (!Array.isArray(e)) throw new Error("breaks must be an Array");
if (!M(i)) throw new Error("commonProperties must be an Object");
if (!Array.isArray(o)) throw new Error("breaksProperties must be an Array");
var s = rt(t, {
zProperty: r,
flip: !0
});
return c(function(t, e, n) {
var r = U(n),
i = r[2] - r[0],
o = r[3] - r[1],
s = r[0],
a = r[1],
u = e[0].length - 1,
c = e.length - 1,
l = i / u,
h = o / c,
f = function(t) {
t[0] = t[0] * l + s,
t[1] = t[1] * h + a
};
return t.forEach(function(t) {
C(t, f)
}),
t
} (function(t, e, n, r, i) {
for (var o = [], s = 1; s < e.length; s++) {
var a = +e[s],
u = Object.assign({},
r, i[s]);
u[n] = a;
var c = l(K(t, a), u);
o.push(c)
}
return o
} (s, e, r, i, o), s, t))
},
t.convex = Pt,
t.pointsWithinPolygon = Ot,
t.concave = function(t, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
if (!t) throw new Error("points is required");
var r = n.maxEdge || 1 / 0;
if (!E(r)) throw new Error("maxEdge is invalid");
var i = Tt(function(t) {
var e = [],
n = {};
return A(t,
function(t) {
if (t.geometry) {
var r = t.geometry.coordinates.join("-");
n.hasOwnProperty(r) || (e.push(t), n[r] = !0)
}
}),
c(e)
} (t));
if (i.features = i.features.filter(function(t) {
var e = t.geometry.coordinates[0][0],
i = t.geometry.coordinates[0][1],
o = t.geometry.coordinates[0][2],
s = Ft(e, i, n),
a = Ft(i, o, n),
u = Ft(e, o, n);
return s <= r && a <= r && u <= r
}), i.features.length < 1) return null;
var o = $t(i, n);
return 1 === o.coordinates.length && (o.coordinates = o.coordinates[0], o.type = "Polygon"),
e(o)
},
t.collect = function(t, e, n, r) {
var i = Vo(6),
o = e.features.map(function(t) {
return {
minX: t.geometry.coordinates[0],
minY: t.geometry.coordinates[1],
maxX: t.geometry.coordinates[0],
maxY: t.geometry.coordinates[1],
property: t.properties[n]
}
});
return i.load(o),
t.features.forEach(function(t) {
t.properties || (t.properties = {});
var e = U(t),
n = [];
i.search({
minX: e[0],
minY: e[1],
maxX: e[2],
maxY: e[3]
}).forEach(function(e) {
Lt([e.minX, e.minY], t) && n.push(e.property)
}),
t.properties[r] = n
}),
t
},
t.flip = function(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.mutate;
if (!t) throw new Error("geojson is required");
return ! 1 !== n && void 0 !== n || (t = jt(t)),
C(t,
function(t) {
var e = t[0],
n = t[1];
t[0] = n,
t[1] = e
}),
t
},
t.simplify = function(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = void 0 !== e.tolerance ? e.tolerance: 1,
r = e.highQuality || !1,
i = e.mutate || !1;
if (!t) throw new Error("geojson is required");
if (n && n < 0) throw new Error("invalid tolerance");
return ! 0 !== i && (t = jt(t)),
R(t,
function(t) { !
function(t, e, n) {
var r = t.type;
if ("Point" === r || "MultiPoint" === r) return t;
te(t, !0);
var i = t.coordinates;
switch (r) {
case "LineString":
t.coordinates = se(i, e, n);
break;
case "MultiLineString":
t.coordinates = i.map(function(t) {
return se(t, e, n)
});
break;
case "Polygon":
t.coordinates = ae(i, e, n);
break;
case "MultiPolygon":
t.coordinates = i.map(function(t) {
return ae(t, e, n)
})
}
} (t, n, r)
}),
t
},
t.bezierSpline = ue,
t.tag = function(t, e, n, r) {
return t = jt(t),
e = jt(e),
A(t,
function(t) {
t.properties || (t.properties = {}),
A(e,
function(e) {
void 0 === t.properties[r] && Lt(t, e) && (t.properties[r] = e.properties[n])
})
}),
t
},
t.sample = function(t, e) {
if (!t) throw new Error("featurecollection is required");
if (null === e || void 0 === e) throw new Error("num is required");
if ("number" != typeof e) throw new Error("num must be a number");
return c(function(t, e) {
for (var n, r, i = t.slice(0), o = t.length, s = o - e; o-->s;) r = Math.floor((o + 1) * Math.random()),
n = i[r],
i[r] = i[o],
i[o] = n;
return i.slice(s)
} (t.features, e))
},
t.envelope = le,
t.square = he,
t.circle = pe,
t.midpoint = function(t, e) {
return fe(t, Ft(t, e) / 2, de(t, e))
},
t.center = ge,
t.centerOfMass = ve,
t.centroid = ye,
t.combine = function(t) {
function n(t, e, n) {
n ? r[e].coordinates = r[e].coordinates.concat(t.geometry.coordinates) : r[e].coordinates.push(t.geometry.coordinates),
r[e].properties.push(t.properties)
}
var r = {
MultiPoint: {
coordinates: [],
properties: []
},
MultiLineString: {
coordinates: [],
properties: []
},
MultiPolygon: {
coordinates: [],
properties: []
}
},
i = Object.keys(r).reduce(function(t, e) {
return t[e.replace("Multi", "")] = e,
t
},
{});
return A(t,
function(t) {
t.geometry && (r[t.geometry.type] ? n(t, t.geometry.type, !0) : i[t.geometry.type] && n(t, i[t.geometry.type], !1))
}),
c(Object.keys(r).filter(function(t) {
return r[t].coordinates.length
}).sort().map(function(t) {
return e({
type: t,
coordinates: r[t].coordinates
},
{
collectedProperties: r[t].properties
})
}))
},
t.distance = Ft,
t.explode = me,
t.bbox = U,
t.tesselate = function(t) {
if (!t.geometry || "Polygon" !== t.geometry.type && "MultiPolygon" !== t.geometry.type) throw new Error("input must be a Polygon or MultiPolygon");
var e = {
type: "FeatureCollection",
features: []
};
return "Polygon" === t.geometry.type ? e.features = De(t.geometry.coordinates) : t.geometry.coordinates.forEach(function(t) {
e.features = e.features.concat(De(t))
}),
e
},
t.bboxPolygon = ce,
t.booleanPointInPolygon = Lt,
t.nearestPoint = ke,
t.nearestPointOnLine = on,
t.nearestPointToLine = function(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.units,
i = n.properties || {};
if (!t) throw new Error("points is required");
if (! (t = function(t) {
var e = [];
switch (t.geometry ? t.geometry.type: t.type) {
case "GeometryCollection":
return R(t,
function(t) {
"Point" === t.type && e.push({
type: "Feature",
properties: {},
geometry: t
})
}),
{
type: "FeatureCollection",
features: e
};
case "FeatureCollection":
return t.features = t.features.filter(function(t) {
return "Point" === t.geometry.type
}),
t;
default:
throw new Error("points must be a Point Collection")
}
} (t)).features.length) throw new Error("points must contain features");
if (!e) throw new Error("line is required");
if ("LineString" !== Q(e)) throw new Error("line must be a LineString");
var o = 1 / 0,
s = null;
return A(t,
function(t) {
var n = dn(t, e, {
units: r
});
n < o && (o = n, s = t)
}),
s && (s.properties = Object.assign({
dist: o
},
s.properties, i)),
s
},
t.planepoint = function(t, e) {
var n = z(t),
r = J(e).coordinates[0];
if (r.length < 4) throw new Error("OuterRing of a Polygon must have 4 or more Positions.");
var i = e.properties || {},
o = i.a,
s = i.b,
a = i.c,
u = n[0],
c = n[1],
l = r[0][0],
h = r[0][1],
f = void 0 !== o ? o: r[0][2],
p = r[1][0],
d = r[1][1],
g = void 0 !== s ? s: r[1][2],
y = r[2][0],
v = r[2][1],
m = void 0 !== a ? a: r[2][2];
return (m * (u - l) * (c - d) + f * (u - p) * (c - v) + g * (u - y) * (c - h) - g * (u - l) * (c - v) - m * (u - p) * (c - h) - f * (u - y) * (c - d)) / ((u - l) * (c - d) + (u - p) * (c - v) + (u - y) * (c - h) - (u - l) * (c - v) - (u - p) * (c - h) - (u - y) * (c - d))
},
t.tin = Tt,
t.bearing = de,
t.destination = fe,
t.kinks = function(t) {
var e, n, i = {
type: "FeatureCollection",
features: []
};
if ("LineString" === (n = "Feature" === t.type ? t.geometry: t).type) e = [n.coordinates];
else if ("MultiLineString" === n.type) e = n.coordinates;
else if ("MultiPolygon" === n.type) e = [].concat.apply([], n.coordinates);
else {
if ("Polygon" !== n.type) throw new Error("Input must be a LineString, MultiLineString, Polygon, or MultiPolygon Feature or Geometry");
e = n.coordinates
}
return e.forEach(function(t) {
e.forEach(function(e) {
for (var n = 0; n < t.length - 1; n++) for (var o = n; o < e.length - 1; o++) {
if (t === e) {
if (1 === Math.abs(n - o)) continue;
if (0 === n && o === t.length - 2 && t[n][0] === t[t.length - 1][0] && t[n][1] === t[t.length - 1][1]) continue
}
var s = function(t, e, n, r, i, o, s, a) {
var u, c, l, h, f, p = {
x: null,
y: null,
onLine1: !1,
onLine2: !1
};
return 0 == (u = (a - o) * (n - t) - (s - i) * (r - e)) ? null !== p.x && null !== p.y && p: (c = e - o, l = t - i, h = (s - i) * c - (a - o) * l, f = (n - t) * c - (r - e) * l, c = h / u, l = f / u, p.x = t + c * (n - t), p.y = e + c * (r - e), c >= 0 && c <= 1 && (p.onLine1 = !0), l >= 0 && l <= 1 && (p.onLine2 = !0), !(!p.onLine1 || !p.onLine2) && [p.x, p.y])
} (t[n][0], t[n][1], t[n + 1][0], t[n + 1][1], e[o][0], e[o][1], e[o + 1][0], e[o + 1][1]);
s && i.features.push(r([s[0], s[1]]))
}
})
}),
i
},
t.pointOnFeature = yn,
t.area = mn,
t.along = function(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var i;
if ("Feature" === t.type) i = t.geometry.coordinates;
else {
if ("LineString" !== t.type) throw new Error("input must be a LineString Feature or Geometry");
i = t.coordinates
}
if (!E(e)) throw new Error("distance must be a number");
for (var o = 0,
s = 0; s < i.length && !(e >= o && s === i.length - 1); s++) {
if (o >= e) {
var a = e - o;
if (a) {
var u = de(i[s], i[s - 1]) - 180;
return fe(i[s], a, u, n)
}
return r(i[s])
}
o += Ft(i[s], i[s + 1], n)
}
return r(i[i.length - 1])
},
t.length = En,
t.lineSlice = function(t, e, n) {
var r = Y(n);
if ("LineString" !== Q(n)) throw new Error("line must be a LineString");
for (var i, o = on(n, t), s = on(n, e), u = [(i = o.properties.index <= s.properties.index ? [o, s] : [s, o])[0].geometry.coordinates], c = i[0].properties.index + 1; c < i[1].properties.index + 1; c++) u.push(r[c]);
return u.push(i[1].geometry.coordinates),
a(u, n.properties)
},
t.lineSliceAlong = Mn,
t.pointGrid = Pn,
t.truncate = Ln,
t.flatten = function(t) {
if (!t) throw new Error("geojson is required");
var e = [];
return k(t,
function(t) {
e.push(t)
}),
c(e)
},
t.lineIntersect = nn,
t.lineChunk = function(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.units,
i = n.reverse;
if (!t) throw new Error("geojson is required");
if (e <= 0) throw new Error("segmentLength must be greater than 0");
var o = [];
return k(t,
function(t) {
i && (t.geometry.coordinates = t.geometry.coordinates.reverse()),
function(t, e, n, r) {
var i = En(t, {
units: n
});
if (i <= e) return r(t);
var o = i / e;
Number.isInteger(o) || (o = Math.floor(o) + 1);
for (var s = 0; s < o; s++) {
r(Mn(t, e * s, e * (s + 1), {
units: n
}))
}
} (t, e, r,
function(t) {
o.push(t)
})
}),
c(o)
},
t.unkinkPolygon = function(t) {
var e = [];
return k(t,
function(t) {
"Polygon" === t.geometry.type && A(Ps(t),
function(n) {
e.push(o(n.geometry.coordinates, t.properties))
})
}),
c(e)
},
t.greatCircle = function(t, e, n) {
if ("object" != typeof(n = n || {})) throw new Error("options is invalid");
var r = n.properties,
i = n.npoints,
o = n.offset;
return t = z(t),
e = z(e),
r = r || {},
i = i || 100,
o = o || 10,
new Fs({
x: t[0],
y: t[1]
},
{
x: e[0],
y: e[1]
},
r).Arc(i, {
offset: o
}).json()
},
t.lineSegment = en,
t.lineSplit = function(t, e) {
if (!t) throw new Error("line is required");
if (!e) throw new Error("splitter is required");
var n = Q(t),
r = Q(e);
if ("LineString" !== n) throw new Error("line must be LineString");
if ("FeatureCollection" === r) throw new Error("splitter cannot be a FeatureCollection");
if ("GeometryCollection" === r) throw new Error("splitter cannot be a GeometryCollection");
var i = Ln(e, {
precision: 7
});
switch (r) {
case "Point":
return Dn(t, i);
case "MultiPoint":
return Rn(t, i);
case "LineString":
case "MultiLineString":
case "Polygon":
case "MultiPolygon":
return Rn(t, nn(t, i))
}
},
t.lineArc = jn,
t.polygonToLine = Bn,
t.lineToPolygon = Un,
t.bboxClip = function(t, e) {
var n = function(t) {
return t.geometry ? t.geometry.type: t.type
} (t),
r = Y(t),
i = t.properties;
switch (n) {
case "LineString":
case "MultiLineString":
var s = [];
return "LineString" === n && (r = [r]),
r.forEach(function(t) {
js(t, e, s)
}),
1 === s.length ? a(s[0], i) : l(s, i);
case "Polygon":
return o(Hn(r, e), i);
case "MultiPolygon":
return f(r.map(function(t) {
return Hn(t, e)
}), i);
default:
throw new Error("geometry " + n + " not supported")
}
},
t.lineOverlap = $n,
t.sector = function(t, e, n, r, i) {
if (i = i || {},
!M(i)) throw new Error("options is invalid");
if (!t) throw new Error("center is required");
if (void 0 === n || null === n) throw new Error("bearing1 is required");
if (void 0 === r || null === r) throw new Error("bearing2 is required");
if (!e) throw new Error("radius is required");
if ("object" != typeof i) throw new Error("options must be an object");
if (er(n) === er(r)) return pe(t, e, i);
var s = Y(t),
a = [[s]];
return C(jn(t, e, n, r, i),
function(t) {
a[0].push(t)
}),
a[0].push(s),
o(a)
},
t.rhumbBearing = sn,
t.rhumbDistance = un,
t.rhumbDestination = nr,
t.polygonTangents = function(t, e) {
var n, i, o, s = Y(t),
a = Y(e);
switch (Q(e)) {
case "Polygon":
n = a[0][0],
i = a[0][0],
o = ir(a[0][0], a[0][a[0].length - 1], s);
var u = rr(a[0], s, o, void 0, n, i);
n = u[0],
i = u[1];
break;
case "MultiPolygon":
n = a[0][0][0],
i = a[0][0][0],
o = ir(a[0][0][0], a[0][0][a[0][0].length - 1], s),
a.forEach(function(t) {
var e = rr(t[0], s, o, void 0, n, i);
n = e[0],
i = e[1]
})
}
return c([r(n), r(i)])
},
t.rewind = function(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.reverse || !1,
r = e.mutate || !1;
if (!t) throw new Error("<geojson> is required");
if ("boolean" != typeof n) throw new Error("<reverse> must be a boolean");
if ("boolean" != typeof r) throw new Error("<mutate> must be a boolean"); ! 1 === r && (t = jt(t));
var i = [];
switch (t.type) {
case "GeometryCollection":
return R(t,
function(t) {
sr(t, n)
}),
t;
case "FeatureCollection":
return A(t,
function(t) {
A(sr(t, n),
function(t) {
i.push(t)
})
}),
c(i)
}
return sr(t, n)
},
t.isobands = function(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.zProperty || "elevation",
i = n.commonProperties || {},
s = n.breaksProperties || [];
if (H(t, "Point", "Input must contain Points"), !e) throw new Error("breaks is required");
if (!Array.isArray(e)) throw new Error("breaks is not an Array");
if (!M(i)) throw new Error("commonProperties is not an Object");
if (!Array.isArray(s)) throw new Error("breaksProperties is not an Array");
var a = cr(t, {
zProperty: r,
flip: !0
}),
u = function(t, e, n) {
for (var r = [], i = 1; i < e.length; i++) {
var s = +e[i - 1],
a = +e[i],
u = lr(t, s, a - s),
c = function(t) {
var e = [],
n = [];
t.forEach(function(t) {
var r = mn(o([t]));
n.push(r),
e.push({
ring: t,
area: r
})
}),
n.sort(function(t, e) {
return e - t
});
var r = [];
return n.forEach(function(t) {
for (var n = 0; n < e.length; n++) if (e[n].area === t) {
r.push(e[n].ring),
e.splice(n, 1);
break
}
}),
r
} (u),
l = function(t) {
for (var e = t.map(function(t) {
return {
lrCoordinates: t,
grouped: !1
}
}), n = []; !
function(t) {
for (var e = 0; e < t.length; e++) if (!1 === t[e].grouped) return ! 1;
return ! 0
} (e);) for (var r = 0; r < e.length; r++) if (!e[r].grouped) {
var i = [];
i.push(e[r].lrCoordinates),
e[r].grouped = !0;
for (var s = o([e[r].lrCoordinates]), a = r + 1; a < e.length; a++) if (!e[a].grouped) {
var u = o([e[a].lrCoordinates]); (function(t, e) {
for (var n = me(t), r = 0; r < n.features.length; r++) if (!Lt(n.features[r], e)) return ! 1;
return ! 0
})(u, s) && (i.push(e[a].lrCoordinates), e[a].grouped = !0)
}
n.push(i)
}
return n
} (c),
h = {};
h.groupedRings = l,
h[n] = s + "-" + a,
r.push(h)
}
return r
} (a, e, r);
return c((u = function(t, e, n) {
var r = U(n),
i = r[2] - r[0],
o = r[3] - r[1],
s = r[0],
a = r[1],
u = e[0].length - 1,
c = e.length - 1,
l = i / u,
h = o / c,
f = function(t) {
t[0] = t[0] * l + s,
t[1] = t[1] * h + a
};
return t.forEach(function(t) {
t.groupedRings.forEach(function(t) {
t.forEach(function(t) {
t.forEach(f)
})
})
}),
t
} (u, a, t)).map(function(t, e) {
if (s[e] && !M(s[e])) throw new Error("Each mappedProperty is required to be an Object");
var n = Object.assign({},
i, s[e]);
return n[r] = t[r],
f(t.groupedRings, n)
}))
},
t.transformRotate = pr,
t.transformScale = dr,
t.transformTranslate = function(t, e, n, r) {
if (r = r || {},
!M(r)) throw new Error("options is invalid");
var i = r.units,
o = r.zTranslation,
s = r.mutate;
if (!t) throw new Error("geojson is required");
if (void 0 === e || null === e || isNaN(e)) throw new Error("distance is required");
if (o && "number" != typeof o && isNaN(o)) throw new Error("zTranslation is not a number");
if (o = void 0 !== o ? o: 0, 0 === e && 0 === o) return t;
if (void 0 === n || null === n || isNaN(n)) throw new Error("direction is required");
return e < 0 && (e = -e, n = -n),
!1 !== s && void 0 !== s || (t = jt(t)),
C(t,
function(t) {
var r = Y(nr(t, e, n, {
units: i
}));
t[0] = r[0],
t[1] = r[1],
o && 3 === t.length && (t[2] += o)
}),
t
},
t.lineOffset = function(t, e, n) {
if (n = n || {},
!M(n)) throw new Error("options is invalid");
var r = n.units;
if (!t) throw new Error("geojson is required");
if (void 0 === e || null === e || isNaN(e)) throw new Error("distance is required");
var i = Q(t),
o = t.properties;
switch (i) {
case "LineString":
return _r(t, e, r);
case "MultiLineString":
var s = [];
return k(t,
function(t) {
s.push(_r(t, e, r).geometry.coordinates)
}),
l(s, o);
default:
throw new Error("geometry " + i + " is not supported")
}
},
t.polygonize = function(t) {
var e = Fa.fromGeoJson(t);
e.deleteDangles(),
e.deleteCutEdges();
var n = [],
r = [];
return e.getEdgeRings().filter(function(t) {
return t.isValid()
}).forEach(function(t) {
t.isHole() ? n.push(t) : r.push(t)
}),
n.forEach(function(t) {
Da.findEdgeRingContaining(t, r) && r.push(t)
}),
c(r.map(function(t) {
return t.toPolygon()
}))
},
t.booleanDisjoint = function(t, e) {
var n;
return k(t,
function(t) {
k(e,
function(e) {
if (!1 === n) return ! 1;
n = function(t, e) {
switch (t.type) {
case "Point":
switch (e.type) {
case "Point":
return !
function(t, e) {
return t[0] === e[0] && t[1] === e[1]
} (t.coordinates, e.coordinates);
case "LineString":
return ! xr(e, t);
case "Polygon":
return ! Lt(t, e)
}
break;
case "LineString":
switch (e.type) {
case "Point":
return ! xr(t, e);
case "LineString":
return !
function(t, e) {
return nn(t, e).features.length > 0
} (t, e);
case "Polygon":
return ! Er(e, t)
}
break;
case "Polygon":
switch (e.type) {
case "Point":
return ! Lt(e, t);
case "LineString":
return ! Er(t, e);
case "Polygon":
return !
function(t, e) {
for (var n = 0; n < t.coordinates[0].length; n++) if (Lt(t.coordinates[0][n], e)) return ! 0;
for (var r = 0; r < e.coordinates[0].length; r++) if (Lt(e.coordinates[0][r], t)) return ! 0;
return ! 1
} (e, t)
}
}
} (t.geometry, e.geometry)
})
}),
n
},
t.booleanContains = function(t, e) {
var n = Q(t),
r = Q(e),
i = J(t),
o = J(e),
s = Y(t),
a = Y(e);
switch (n) {
case "Point":
switch (r) {
case "Point":
return Ir(s, a);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
case "MultiPoint":
switch (r) {
case "Point":
return function(t, e) {
var n, r = !1;
for (n = 0; n < t.coordinates.length; n++) if (Ir(t.coordinates[n], e.coordinates)) {
r = !0;
break
}
return r
} (i, o);
case "MultiPoint":
return function(t, e) {
for (var n = 0; n < e.coordinates.length; n++) {
for (var r = !1,
i = 0; i < t.coordinates.length; i++) if (Ir(e.coordinates[n], t.coordinates[i])) {
r = !0;
break
}
if (!r) return ! 1
}
return ! 0
} (i, o);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
case "LineString":
switch (r) {
case "Point":
return In(o, i, {
ignoreEndVertices: !0
});
case "LineString":
return function(t, e) {
for (var n = !1,
r = 0; r < e.coordinates.length; r++) if (In({
type: "Point",
coordinates: e.coordinates[r]
},
t, {
ignoreEndVertices: !0
}) && (n = !0), !In({
type: "Point",
coordinates: e.coordinates[r]
},
t, {
ignoreEndVertices: !1
})) return ! 1;
return n
} (i, o);
case "MultiPoint":
return function(t, e) {
for (var n = !1,
r = 0; r < e.coordinates.length; r++) if (In(e.coordinates[r], t, {
ignoreEndVertices: !0
}) && (n = !0), !In(e.coordinates[r], t)) return ! 1;
return !! n
} (i, o);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
case "Polygon":
switch (r) {
case "Point":
return Lt(o, i, {
ignoreBoundary: !0
});
case "LineString":
return function(t, e) {
var n = !1,
r = 0;
if (!Mr(U(t), U(e))) return ! 1;
for (; r < e.coordinates.length - 1; r++) {
if (Lt({
type: "Point",
coordinates: function(t, e) {
return [(t[0] + e[0]) / 2, (t[1] + e[1]) / 2]
} (e.coordinates[r], e.coordinates[r + 1])
},
t, {
ignoreBoundary: !0
})) {
n = !0;
break
}
}
return n
} (i, o);
case "Polygon":
return function(t, e) {
if (!Mr(U(t), U(e))) return ! 1;
for (var n = 0; n < e.coordinates[0].length; n++) if (!Lt(e.coordinates[0][n], t)) return ! 1;
return ! 0
} (i, o);
case "MultiPoint":
return function(t, e) {
for (var n = 0; n < e.coordinates.length; n++) if (!Lt(e.coordinates[n], t, {
ignoreBoundary: !0
})) return ! 1;
return ! 0
} (i, o);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
default:
throw new Error("feature1 " + n + " geometry not supported")
}
},
t.booleanCrosses = function(t, e) {
var n = Q(t),
r = Q(e),
i = J(t),
o = J(e);
switch (n) {
case "MultiPoint":
switch (r) {
case "LineString":
return Sr(i, o);
case "Polygon":
return Nr(i, o);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
case "LineString":
switch (r) {
case "MultiPoint":
return Sr(o, i);
case "LineString":
return function(t, e) {
if (nn(t, e).features.length > 0) for (var n = 0; n < t.coordinates.length - 1; n++) for (var r = 0; r < e.coordinates.length - 1; r++) {
var i = !0;
if (0 !== r && r !== e.coordinates.length - 2 || (i = !1), Pr(t.coordinates[n], t.coordinates[n + 1], e.coordinates[r], i)) return ! 0
}
return ! 1
} (i, o);
case "Polygon":
return Cr(i, o);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
case "Polygon":
switch (r) {
case "MultiPoint":
return Nr(o, i);
case "LineString":
return Cr(o, i);
default:
throw new Error("feature2 " + r + " geometry not supported")
}
default:
throw new Error("feature1 " + n + " geometry not supported")
}
},
t.booleanClockwise = or,
t.booleanOverlap = Tr,
t.booleanPointOnLine = In,
t.booleanEqual = function(t, e) {
if (!t) throw new Error("feature1 is required");
if (!e) throw new Error("feature2 is required");
return Q(t) === Q(e) && new Ua({
precision: 6
}).compare(te(t), te(e))
},
t.booleanWithin = Sn,
t.clone = jt,
t.cleanCoords = te,
t.clustersDbscan = function(t, e, n) {
if ("object" != typeof(n = n || {})) throw new Error("options is invalid");
var r = n.minPoints,
i = n.units;
if (H(t, "Point", "Input must contain Points"), null === e || void 0 === e) throw new Error("maxDistance is required");
if (! (Math.sign(e) > 0)) throw new Error("Invalid maxDistance");
if (! (void 0 === r || null === r || Math.sign(r) > 0)) throw new Error("Invalid minPoints");
t = jt(t),
r = r || 3;
var o = new Wa.DBSCAN,
s = -1;
return o.run(T(t), b(e, i), r, Ft).forEach(function(e) {
s++,
e.forEach(function(e) {
var n = t.features[e];
n.properties || (n.properties = {}),
n.properties.cluster = s,
n.properties.dbscan = "core"
})
}),
o.noise.forEach(function(e) {
var n = t.features[e];
n.properties || (n.properties = {}),
n.properties.cluster ? n.properties.dbscan = "edge": n.properties.dbscan = "noise"
}),
t
},
t.clustersKmeans = function(t, e) {
if ("object" != typeof(e = e || {})) throw new Error("options is invalid");
var n = e.numberOfClusters,
r = e.mutate;
H(t, "Point", "Input must contain Points");
var i = t.features.length; (n = n || Math.round(Math.sqrt(i / 2))) > i && (n = i),
!1 !== r && void 0 !== r || (t = jt(t));
var o = T(t),
s = o.slice(0, n),
a = tu(o, n, s),
u = {};
return a.centroids.forEach(function(t, e) {
u[e] = t
}),
A(t,
function(t, e) {
var n = a.idxs[e];
t.properties.cluster = n,
t.properties.centroid = u[n]
}),
t
},
t.pointToLineDistance = dn,
t.booleanParallel = function(t, e) {
if (!t) throw new Error("line1 is required");
if (!e) throw new Error("line2 is required");
if ("LineString" !== Dr(t, "line1")) throw new Error("line1 must be a LineString");
if ("LineString" !== Dr(e, "line2")) throw new Error("line2 must be a LineString");
for (var n = en(te(t)).features, r = en(te(e)).features, i = 0; i < n.length; i++) {
var o = n[i].geometry.coordinates;
if (!r[i]) break;
if (!
function(t, e) {
return m(sn(t[0], t[1])) === m(sn(e[0], e[1]))
} (o, r[i].geometry.coordinates)) return ! 1
}
return ! 0
},
t.shortestPath = function(t, n, i) {
if (i = i || {},
!M(i)) throw new Error("options is invalid");
var o = i.resolution,
s = i.minDistance,
u = i.obstacles || c([]);
if (!t) throw new Error("start is required");
if (!n) throw new Error("end is required");
if (o && !E(o) || o <= 0) throw new Error("options.resolution must be a number, greater than 0");
if (s) throw new Error("options.minDistance is not yet implemented");
var l = z(t),
h = z(n);
switch (t = r(l), n = r(h), Q(u)) {
case "FeatureCollection":
if (0 === u.features.length) return a([l, h]);
break;
case "Polygon":
u = c([e(J(u))]);
break;
default:
throw new Error("invalid obstacles")
}
var f = u;
f.features.push(t),
f.features.push(n);
var p = U(dr(ce(U(f)), 1.15));
o || (o = Ft([p[0], p[1]], [p[2], p[1]], i) / 100),
f.features.pop(),
f.features.pop();
for (var d = p[0], g = p[1], y = p[2], v = p[3], m = o / Ft([d, g], [y, g], i) * (y - d), _ = o / Ft([d, g], [d, v], i) * (v - g), w = y - d, b = v - g, x = (w - Math.floor(w / m) * m) / 2, I = [], S = [], C = [], N = [], P = 1 / 0, L = 1 / 0, A = v - (b - Math.floor(b / _) * _) / 2, O = 0; A >= g;) {
for (var T = [], R = [], D = d + x, k = 0; D <= y;) {
var F = r([D, A]),
j = function(t, e) {
for (var n = 0; n < e.features.length; n++) if (Lt(t, e.features[n])) return ! 0;
return ! 1
} (F, u);
T.push(j ? 0 : 1),
R.push(D + "|" + A);
var q = Ft(F, t); ! j && q < P && (P = q, C = {
x: k,
y: O
});
var B = Ft(F, n); ! j && B < L && (L = B, N = {
x: k,
y: O
}),
D += m,
k++
}
S.push(T),
I.push(R),
A -= _,
O++
}
var G = new Fr(S, {
diagonal: !0
}),
Y = G.grid[C.y][C.x],
X = G.grid[N.y][N.x],
V = [l];
return eu.search(G, Y, X).forEach(function(t) {
var e = I[t.x][t.y].split("|");
V.push([ + e[0], +e[1]])
}),
V.push(h),
te(a(V))
},
t.voronoi = function(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.bbox || [ - 180, -85, 180, 85];
if (!t) throw new Error("points is required");
if (!Array.isArray(n)) throw new Error("bbox is invalid");
return H(t, "Point", "points"),
c(fu().x(function(t) {
return t.geometry.coordinates[0]
}).y(function(t) {
return t.geometry.coordinates[1]
}).extent([[n[0], n[1]], [n[2], n[3]]]).polygons(t.features).map(hi))
},
t.ellipse = fi,
t.centerMean = di,
t.centerMedian = function(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.counter || 10;
if (!E(n)) throw new Error("counter must be a number");
var r = e.weight,
i = di(t, {
weight: e.weight
}),
o = c([]);
return A(t,
function(t) {
o.features.push(ye(t, {
weight: t.properties[r]
}))
}),
o.properties = {
tolerance: e.tolerance,
medianCandidates: []
},
gi(i.geometry.coordinates, [0, 0], o, n)
},
t.standardDeviationalEllipse = function(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.steps || 64,
r = e.weight,
i = e.properties || {};
if (!E(n)) throw new Error("steps must be a number");
if (!M(i)) throw new Error("properties must be a number");
var o = T(t).length,
s = di(t, {
weight: r
}),
a = 0,
u = 0,
l = 0;
A(t,
function(t) {
var e = t.properties[r] || 1,
n = yi(Y(t), Y(s));
a += Math.pow(n.x, 2) * e,
u += Math.pow(n.y, 2) * e,
l += n.x * n.y * e
});
var h = a - u,
f = Math.sqrt(Math.pow(h, 2) + 4 * Math.pow(l, 2)),
p = 2 * l,
d = Math.atan((h + f) / p),
g = 180 * d / Math.PI,
y = 0,
v = 0,
m = 0;
A(t,
function(t) {
var e = t.properties[r] || 1,
n = yi(Y(t), Y(s));
y += Math.pow(n.x * Math.cos(d) - n.y * Math.sin(d), 2) * e,
v += Math.pow(n.x * Math.sin(d) + n.y * Math.cos(d), 2) * e,
m += e
});
var _ = Math.sqrt(2 * y / m),
w = Math.sqrt(2 * v / m),
b = fi(s, _, w, {
units: "degrees",
angle: g,
steps: n,
properties: i
}),
x = Ot(t, c([b])),
I = {
meanCenterCoordinates: Y(s),
semiMajorAxis: _,
semiMinorAxis: w,
numberOfFeatures: o,
angle: g,
percentageWithinEllipse: 100 * T(x).length / o
};
return b.properties.standardDeviationalEllipse = I,
b
},
t.difference = function(t, n) {
var r = J(t),
i = J(n),
o = t.properties || {};
if (r = Yi(r), i = Yi(i), !r) return null;
if (!i) return e(r, o);
var s = new xl,
a = s.read(r),
u = s.read(i),
c = Ip.difference(a, u);
return c.isEmpty() ? null: e((new El).write(c), o)
},
t.buffer = function(t, e, n) {
var r = (n = n || {}).units,
i = n.steps || 64;
if (!t) throw new Error("geojson is required");
if ("object" != typeof n) throw new Error("options must be an object");
if ("number" != typeof i) throw new Error("steps must be an number");
if (void 0 === e) throw new Error("radius is required");
if (i <= 0) throw new Error("steps must be greater than 0");
i = i || 64,
r = r || "kilometers";
var o = [];
switch (t.type) {
case "GeometryCollection":
return R(t,
function(t) {
var n = Eo(t, e, r, i);
n && o.push(n)
}),
c(o);
case "FeatureCollection":
return A(t,
function(t) {
var n = Eo(t, e, r, i);
n && A(n,
function(t) {
t && o.push(t)
})
}),
c(o)
}
return Eo(t, e, r, i)
},
t.union = No,
t.intersect = Po,
t.dissolve = function(t, e) {
if (e = e || {},
!M(e)) throw new Error("options is invalid");
var n = e.propertyName;
H(t, "Polygon", "dissolve");
var r = jt(t),
i = r.features,
o = [];
i.forEach(function(t, e) {
t.properties.origIndexPosition = e
});
var s = Ke();
s.load(r);
for (var u in i) {
var c = i[u],
l = !1;
if (s.search(c).features.forEach(function(t) {
c = i[u];
var e = t.properties.origIndexPosition;
if (o.length > 0 && 0 !== e) if (e > o[o.length - 1]) e -= o.length;
else {
var r = Lo(e, o);
0 !== r && (e -= r)
}
if (e !== +u) {
var h = i[e];
h && c && (void 0 !== n && h.properties[n] !== c.properties[n] || Tr(c, h) &&
function(t, e) {
return nn(a(T(t)), a(T(e))).features.length > 0
} (c, h) && (i[u] = No(c, h), o.push(t.properties.origIndexPosition), o.sort(function(t, e) {
return t - e
}), s.remove(t), i.splice(e, 1), c.properties.origIndexPosition = u, s.remove(c,
function(t, e) {
return t.properties.origIndexPosition === e.properties.origIndexPosition
}), l = !0))
}
}), l) {
if (!c) continue;
c.properties.origIndexPosition = u,
s.insert(c),
u--
}
}
return i.forEach(function(t) {
delete t.properties.origIndexPosition,
delete t.bbox
}),
r
},
t.hexGrid = Ao,
t.mask = function(t, e) {
var n = function(t) {
return o(t && t.geometry.coordinates || [[[180, 90], [ - 180, 90], [ - 180, -90], [180, -90], [180, 90]]])
} (e),
r = function(t) {
var e = [],
n = [];
return k(t,
function(t) {
var r = t.geometry.coordinates,
i = r[0],
s = r.slice(1);
e.push(o([i])),
s.forEach(function(t) {
n.push(o([t]))
})
}),
[c(e), c(n)]
} (t),
i = r[0],
s = r[1];
return function(t, e, n) {
var r = [];
return r.push(t.geometry.coordinates[0]),
k(e,
function(t) {
r.push(t.geometry.coordinates[0])
}),
k(n,
function(t) {
r.push(t.geometry.coordinates[0])
}),
o(r)
} (n, i = Oo(i), s = Oo(s))
},
t.squareGrid = Ro,
t.triangleGrid = Do,
t.interpolate = function(t, e, n) {
if ("object" != typeof(n = n || {})) throw new Error("options is invalid");
var r = n.gridType,
i = n.property,
o = n.weight;
if (!t) throw new Error("points is required");
if (H(t, "Point", "input must contain Points"), !e) throw new Error("cellSize is required");
if (void 0 !== o && "number" != typeof o) throw new Error("weight must be a number");
i = i || "elevation",
r = r || "square",
o = o || 1;
var s, a = U(t);
switch (r) {
case "point":
case "points":
s = Pn(a, e, n);
break;
case "square":
case "squares":
s = Ro(a, e, n);
break;
case "hex":
case "hexes":
s = Ao(a, e, n);
break;
case "triangle":
case "triangles":
s = Do(a, e, n);
break;
default:
throw new Error("invalid gridType")
}
var u = [];
return A(s,
function(e) {
var s = 0,
a = 0;
A(t,
function(t) {
var u, c = Ft("point" === r ? e: ye(e), t, n);
if (void 0 !== i && (u = t.properties[i]), void 0 === u && (u = t.geometry.coordinates[2]), void 0 === u) throw new Error("zValue is missing");
0 === c && (s = u);
var l = 1 / Math.pow(c, o);
a += l,
s += l * u
});
var c = jt(e);
c.properties[i] = s / a,
u.push(c)
}),
c(u)
},
t.pointOnSurface = yn,
t.polygonToLineString = Bn,
t.lineStringToPolygon = Un,
t.inside = Lt,
t.within = Ot,
t.bezier = ue,
t.nearest = ke,
t.pointOnLine = on,
t.lineDistance = En,
t.radians2degrees = _,
t.degrees2radians = w,
t.distanceToDegrees = v,
t.distanceToRadians = y,
t.radiansToDistance = g,
t.bearingToAngle = m,
t.convertDistance = b,
t.toMercator = cn,
t.toWgs84 = ln,
t.randomPosition = vi,
t.randomPoint = mi,
t.randomPolygon = _i,
t.randomLineString = wi,
t.getCluster = xi,
t.clusterEach = Ei,
t.clusterReduce = Mi,
t.createBins = Ii,
t.applyFilter = Si,
t.propertiesContainsFilter = Ci,
t.filterProperties = Ni,
t.earthRadius = ko,
t.factors = Fo,
t.unitsFactors = jo,
t.areaFactors = qo,
t.feature = e,
t.geometry = n,
t.point = r,
t.points = i,
t.polygon = o,
t.polygons = s,
t.lineString = a,
t.lineStrings = u,
t.featureCollection = c,
t.multiLineString = l,
t.multiPoint = h,
t.multiPolygon = f,
t.geometryCollection = p,
t.round = d,
t.radiansToLength = g,
t.lengthToRadians = y,
t.lengthToDegrees = v,
t.bearingToAzimuth = m,
t.radiansToDegrees = _,
t.degreesToRadians = w,
t.convertLength = b,
t.convertArea = x,
t.isNumber = E,
t.isObject = M,
t.validateBBox = I,
t.validateId = S,
t.getCoord = z,
t.getCoords = Y,
t.containsNumber = X,
t.geojsonType = V,
t.featureOf = W,
t.collectionOf = H,
t.getGeom = J,
t.getGeomType = Z,
t.getType = Q,
t.coordEach = C,
t.coordReduce = N,
t.propEach = P,
t.propReduce = L,
t.featureEach = A,
t.featureReduce = O,
t.coordAll = T,
t.geomEach = R,
t.geomReduce = D,
t.flattenEach = k,
t.flattenReduce = F,
t.segmentEach = j,
t.segmentReduce = q,
t.lineEach = B,
t.lineReduce = G,
Object.defineProperty(t, "__esModule", {
value: !0
})
})
},
function(t, e, n) {
"use strict";
function r(t, e) {
for (var n = new Array(e + 1), r = 0; r < t.length; ++r) n[r] = t[r];
for (var r = 0; r <= t.length; ++r) {
for (var i = t.length; i <= e; ++i) {
for (var s = new Array(e), a = 0; a < e; ++a) s[a] = Math.pow(i + 1 - r, a);
n[i] = s
}
if (o.apply(void 0, n)) return ! 0
}
return ! 1
}
function i(t) {
var e = t.length;
if (0 === e) return [];
if (1 === e) return [0];
for (var n = t[0].length, i = [t[0]], o = [0], s = 1; s < e; ++s) if (i.push(t[s]), r(i, n)) {
if (o.push(s), o.length === n + 1) return o
} else i.pop();
return o
}
t.exports = i;
var o = n(274)
},
,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(32),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = function() {
function t(e, n) { (0, a.
default)(this, t),
this.p0 = e,
this.p1 = n
}
return (0, c.
default)(t, [{
key: "getXYCoefficient",
value: function() {
var t = (0, o.
default)(this.p0.elements, 3),
e = t[0],
n = t[1],
r = t[2],
i = (0, o.
default)(this.p1.elements, 3),
s = i[0],
a = i[1],
u = i[2];
return [(s - e) / (u - r), (e * u - s * r) / (u - r), (a - n) / (u - r), (n * u - a * r) / (u - r)]
}
}]),
t
} ();
e.
default = l
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(32),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = n(107),
h = function() {
function t(e, n) { (0, a.
default)(this, t),
this.center = e,
this.radius = n
}
return (0, c.
default)(t, [{
key: "intersectWithLine",
value: function(t) {
var e = t.getXYCoefficient(),
n = (0, o.
default)(e, 4),
r = n[0],
i = n[1],
s = n[2],
a = n[3],
u = (0, o.
default)(this.center.elements, 3),
c = u[0],
h = u[1],
f = u[2],
p = this.radius,
d = i - c,
g = a - h,
y = -f,
v = r * r + s * s + 1,
m = 2 * (r * d + s * g + y),
_ = d * d + g * g + y * y - p * p,
w = m * m - 4 * v * _;
if (w < 0) return [];
var b = ( - m + Math.sqrt(w)) / (2 * v),
x = ( - m - Math.sqrt(w)) / (2 * v),
E = r * b + i,
M = s * b + a,
I = r * x + i,
S = s * x + a;
return [new l.Vector3(E, M, b), new l.Vector3(I, S, x)]
}
}]),
t
} ();
e.
default = h
},
, , , , , , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.styleNameConfig = {
regionTag: {
airportsarea: [196832],
building: [196619, 197120, 197121, 197122, 197123],
commercial: [196890],
grass: [196614, 196615, 196616, 196833],
hospital: [196774],
land: [196609, 196612, 196613, 196617],
otherarea: [196775, 196831, 196856, 196857, 196858, 196859, 196860, 196861, 196862, 196863, 196864, 196865, 196866, 196867, 196868, 196869, 196877, 196894, 196895, 196934],
park: [196622],
parkinglots: [196629, 196787],
resident: [196621, 196627, 196630, 196632],
school: [196773],
sportsfield: [196626, 196789, 196790, 196791, 196792, 196793, 196794, 196795, 196796, 196798],
subwayarea: [196634, 196635, 196636, 196637, 196638, 196639, 196640, 196641, 196642, 196643, 196644, 196645, 196646, 196647, 196648, 196649, 196684, 196685, 196686, 196687, 196688, 196689, 196690, 196651, 196652, 196653, 196654, 196655, 196656, 196657, 196658, 196659, 196660, 196691, 196692, 196693, 196694, 196695, 196696, 196697, 196698, 196661, 196662, 196663, 196664, 196665, 196666, 196667, 196668, 196669, 196670, 196671, 196672, 196673, 196674, 196675, 196676, 196677, 196678, 196679, 196680, 196681, 196682, 196683, 196699, 196700, 196701, 196702, 196703, 196704, 196705, 196706, 196707, 196708, 196709, 196710, 196711, 196712, 196713, 196714, 196715, 196716, 196717, 196718, 196719, 196720, 196721, 196722, 196723, 196724, 196725, 196726, 196727, 196728, 196729, 196730, 196731, 196732, 196733, 196734, 196735, 196736, 196737, 196738, 196739, 196650, 196740, 196741, 196742, 196743, 196744, 196745, 196746, 196747, 196748, 196749, 196750, 196753, 196754, 196755, 196756, 196757, 196758, 196759, 196760, 196761, 196762, 196763, 196764, 196765, 196766, 196767, 196768, 196769, 196770, 196771, 196772, 196776, 196777, 196778, 196779, 196780, 196781, 196782, 196783, 196784, 196785, 196786, 196799, 196800, 196801, 196802, 196803, 196815, 196816, 196817, 196818, 196819, 196820, 196821, 196822, 196823, 196824, 196825, 196826, 196827, 196828, 196829, 196830, 196834, 196835, 196836, 196837, 196838, 196839, 196840, 196841, 196842, 196843, 196844, 196845, 196846, 196847, 196848, 196849, 196850, 196851, 196852, 196853, 196854, 196855, 196870, 196871, 196872, 196874, 196875, 196876, 196881, 196878, 196879, 196880, 196882, 196883, 196884, 196885, 196886, 196887, 196888, 196889, 196891, 196892, 196893, 196896, 196897, 196898, 196899, 196900, 196901, 196902, 196903, 196904, 196905, 196906, 196907, 196908, 196909, 196910, 196911, 196912, 196913, 196914, 196915, 196916, 196917, 196918, 196919, 196920, 196921, 196922, 196923, 196924, 196925, 196926, 196927, 196928, 196929, 196930, 196931, 196932, 196933, 196935, 196936, 196938, 196939, 196940, 196941, 196942, 196944, 196945, 196946, 196947],
water: [196610, 196611, 196618]
},
labelTag: {
aoi: [262149, 262150, 262404, 262405, 262406, 262482, 262483, 262484, 262153, 262952],
autoservice: [262864],
bridge: [262154, 262953, 262946, 262947, 262948, 262949, 262950],
building: [262145, 262409, 262487, 262708, 262713, 262494, 262506, 262954],
business: [262493, 262515],
city: [262157, 262158, 262159, 262160],
commercial: [262942],
continent: [262395, 262426],
country: [262402, 262865],
district: [262155],
education: [262453, 262488],
entertainment: [262486],
ferry: [262162, 262801],
government: [262869],
highway: [262166, 262418, 262425, 262792, 262799, 262812, 262813],
highwaynum: [262164, 262165, 262169, 262170, 262783, 262784],
hospital: [262407],
hotel: [262452],
island: [262146],
lifeservice: [262866, 262867, 262868],
mainroad: [262178, 262179, 262185, 262186, 262415, 262416, 262419, 262420, 262790, 262791, 262797, 262798, 262802, 262803, 262810, 262811],
motorway: [262173, 262417, 262424, 262793, 262800],
nationalnum: [262163, 262168, 262785],
ocean: [262147, 262396, 262707],
other: [262151, 262496, 262497, 262498, 262499, 262500, 262501, 262502, 262503, 262504, 262505, 262507, 262508, 262509, 262510, 262511, 262512, 262514],
path: [262903],
province: [262533],
railway: [262908, 263057],
restrant: [262450, 262495],
roadnum: [262167, 262176, 262786],
scenic: [262288, 262489, 262870, 262941],
secondaryroad: [262180, 262181, 262187, 262188, 262413, 262414, 262421, 262422, 262788, 262789, 262795, 262796, 262804, 262805, 262808, 262809],
shopping: [262451, 262945],
street: [262182, 262189, 262412, 262423, 262787, 262794, 262806, 262807],
subwaygate: [262454, 262455, 262456, 262457, 262458, 262459, 262460, 262461, 262462, 262463, 262464, 262465, 262466, 262467, 262468, 262469, 262470, 262471, 262472, 262473, 262474, 262475, 262476, 262477, 262478, 262479, 262480, 262481, 262492, 262485, 262691, 262696, 262750, 262818, 262841, 262842, 262853, 262921, 262922, 262927, 262940, 263016],
subwayline: [262544, 262545, 262546, 262547, 262548, 262549, 262550, 262551, 262552, 262553, 262554, 262555, 262556, 262557, 262558, 262559, 262560, 262561, 262564, 262565, 262566, 262567, 262568, 262569, 262570, 262571, 262572, 262573, 262574, 262575, 262576, 262577, 262578, 262579, 262580, 262581, 262582, 262583, 262584, 262585, 262586, 262587, 262588, 262589, 262590, 262591, 262592, 262593, 262594, 262595, 262596, 262597, 262598, 262599, 262600, 262601, 262602, 262603, 262604, 262605, 262606, 262607, 262608, 262609, 262610, 262611, 262612, 262613, 262614, 262615, 262616, 262617, 262618, 262619, 262620, 262621, 262622, 262623, 262624, 262625, 262626, 262627, 262628, 262629, 262630, 262631, 262632, 262633, 262634, 262635, 262636, 262637, 262638, 262639, 262640, 262641, 262642, 262643, 262644, 262645, 262646, 262647, 262648, 262649, 262650, 262651, 262652, 262653, 262654, 262655, 262656, 262657, 262658, 262659, 262660, 262661, 262662, 262663, 262664, 262665, 262666, 262667, 262668, 262669, 262670, 262671, 262672, 262673, 262674, 262675, 262676, 262677, 262678, 262679, 262680, 262681, 262682, 262684, 262686, 262688, 262690, 262693, 262695, 262698, 262700, 262702, 262704, 262706, 262710, 262712, 262715, 262717, 262719, 262721, 262723, 262725, 262727, 262729, 262731, 262733, 262735, 262737, 262739, 262741, 262743, 262745, 262747, 262749, 262752, 262762, 262767, 262768, 262769, 262770, 262771, 262772, 262773, 262774, 262775, 262776, 262777, 262778, 262779, 262780, 262781, 262782, 262815, 262817, 262820, 262822, 262824, 262826, 262828, 262830, 262832, 262834, 262836, 262838, 262840, 262844, 262846, 262848, 262850, 262852, 262855, 262857, 262859, 262861, 262863, 262905, 262907, 262910, 262909, 262912, 262914, 262916, 262918, 262920, 262924, 262926, 262929, 262931, 262933, 262935, 262937, 262939, 262944, 262973, 262975, 262977, 262979, 262981, 262983, 262985, 262987, 262989, 262991, 262993, 262995, 262997, 262999, 263001, 263003, 263005, 263007, 263009, 263011, 263013, 263015, 263018, 263020, 263022, 263024, 263026, 263028, 263030, 263032, 263034, 263036, 263038, 263040, 263042, 263044, 263046, 263048, 263050, 263052, 263054, 263056, 263061, 263063, 263065, 263067, 263069, 263073, 263075, 263077, 263079],
subwaystation: [262287],
town: [262156],
transport: [262410, 262871],
village: [262152]
},
lineTag: {
ferry: [131115],
guojie: [131073, 131074, 131075],
highway: [131082, 131088, 131335, 131337, 131090, 131396, 131406],
mainroad: [131084, 131085, 131105, 131106, 131107, 131333, 131342, 131108, 131109, 131110, 131111, 131334, 131344, 131112, 131398, 131399, 131408, 131409],
motorway: [131083, 131089, 131329, 131338, 131091, 131397, 131407],
path: [131336, 131483, 131484, 131405, 131453, 131454, 131455, 131456, 131457, 131506],
pfurniture: [131352, 131353, 131354, 131355, 131511, 131512],
railway: [131086, 131087, 131489],
secondaryroad: [131208, 131097, 131098, 131099, 131331, 131340, 131100, 131101, 131102, 131103, 131332, 131341, 131104, 131400, 131401, 131410, 131411, 131507],
shengjie: [131078, 131079, 131080, 131486],
street: [131092, 131093, 131094, 131330, 131339, 131095, 131096, 131345, 131412, 131505],
subwayline: [131117, 131118, 131119, 131120, 131121, 131122, 131123, 131124, 131125, 131126, 131127, 131128, 131129, 131130, 131131, 131132, 131133, 131134, 131135, 131136, 131137, 131138, 131139, 131140, 131141, 131142, 131143, 131144, 131145, 131146, 131147, 131148, 131149, 131150, 131151, 131152, 131153, 131154, 131155, 131156, 131157, 131158, 131159, 131160, 131161, 131162, 131163, 131164, 131165, 131166, 131167, 131168, 131169, 131170, 131171, 131172, 131173, 131174, 131175, 131176, 131177, 131178, 131179, 131180, 131181, 131182, 131183, 131184, 131185, 131186, 131187, 131188, 131189, 131190, 131191, 131192, 131193, 131194, 131195, 131196, 131197, 131198, 131199, 131200, 131201, 131202, 131203, 131204, 131205, 131206, 131207, 131209, 131210, 131211, 131212, 131213, 131214, 131215, 131216, 131217, 131218, 131219, 131220, 131221, 131222, 131223, 131224, 131225, 131226, 131227, 131228, 131229, 131230, 131231, 131232, 131233, 131234, 131235, 131236, 131237, 131238, 131239, 131240, 131241, 131242, 131243, 131244, 131245, 131246, 131247, 131248, 131249, 131250, 131251, 131252, 131253, 131254, 131255, 131256, 131257, 131258, 131259, 131260, 131261, 131262, 131263, 131264, 131265, 131266, 131267, 131268, 131269, 131270, 131271, 131272, 131273, 131274, 131275, 131276, 131277, 131278, 131279, 131280, 131281, 131282, 131283, 131284, 131285, 131286, 131287, 131288, 131289, 131290, 131291, 131292, 131293, 131294, 131295, 131296, 131297, 131298, 131299, 131300, 131301, 131302, 131303, 131304, 131305, 131306, 131307, 131308, 131309, 131310, 131311, 131312, 131313, 131314, 131315, 131316, 131317, 131318, 131319, 131320, 131321, 131322, 131323, 131324, 131325, 131326, 131327, 131346, 131347, 131348, 131349, 131350, 131351, 131356, 131357, 131358, 131359, 131360, 131361, 131362, 131363, 131364, 131365, 131366, 131367, 131368, 131369, 131370, 131371, 131384, 131385, 131386, 131387, 131388, 131389, 131390, 131391, 131392, 131393, 131394, 131395, 131402, 131403, 131404, 131413, 131414, 131415, 131416, 131417, 131437, 131438, 131439, 131440, 131441, 131442, 131443, 131444, 131445, 131446, 131447, 131448, 131449, 131450, 131451, 131452, 131458, 131459, 131460, 131461, 131462, 131463, 131464, 131465, 131466, 131467, 131468, 131469, 131470, 131471, 131472, 131473, 131474, 131475, 131476, 131477, 131478, 131479, 131480, 131481, 131482, 131487, 131488, 131491, 131492, 131493, 131494, 131495, 131496, 131497, 131498, 131499, 131500, 131501, 131502, 131503, 131504, 131508, 131509, 131510, 131513, 131514, 131515, 131516, 131517, 131518, 131519, 131520, 131521, 131522, 131523, 131524, 131525, 131526, 131527, 131528, 131529, 131530, 131531, 131532, 131533, 131534, 131535, 131536, 131537, 131538, 131539, 131540, 131541, 131542, 131543, 131544, 131545, 131546, 131547, 131548, 131549, 131550, 131551, 131552, 131554, 131555, 131556, 131557, 131558, 131560, 131561, 131562, 131563],
water: [131081]
},
pointTag: {
aoi: [65546, 65550, 65686, 65687, 65688, 65755, 65756, 65757, 65554, 66202, 66618],
autoservice: [65606, 66173, 66174, 66175, 66176, 66177],
bridge: [65547, 66612, 66613, 66614, 66615, 66616, 66617],
building: [65568, 65574, 65577, 65587, 65592, 65594, 65600, 65602, 65603, 65604, 65608, 65619, 65620, 65621, 65622, 65623, 65624, 65625, 65626, 65627, 65628, 65629, 65630, 65632, 65703, 66092, 66098, 66099, 66100, 66101, 66102, 66103, 66096, 66105, 66106, 66107, 66108, 66109, 66110, 66111, 66112, 66113, 66114, 66115, 66116, 66120, 66132, 66133, 66134, 66135, 66136, 66137, 66138, 66139, 66140, 66141, 66142, 66178, 66179, 66180, 66181, 66183, 66184, 66186, 66187, 66189, 66190, 66191, 66192, 66193, 66194, 66224, 66414, 66415, 66416, 66417, 66418, 66419, 66420, 66421, 66422, 66423, 66424, 66425, 66426, 66427, 66428, 66429, 66430, 66431, 66432, 66433, 66434, 66435, 66634, 66684, 66685, 66686, 66850],
business: [65578, 65618, 66582],
carpark: [65607, 66526, 66527],
city: [65543, 65555, 65557, 65558, 65559, 65693],
commercial: [65758],
continent: [65537],
country: [65541, 65556],
district: [65542],
education: [65562, 65571, 65583, 65584, 65701, 65702, 65741, 65742, 66227, 66849],
entertainment: [65569, 65593, 65613, 65743, 66199, 66200, 66226],
government: [65579],
hospital: [65581, 65598, 65705, 66852],
hotel: [65582, 65733, 65734, 65735, 66123, 66124, 66125, 66126, 66127, 66128, 66163, 66164, 66165, 66166, 66167, 66168, 66169, 66170, 66171, 66172, 66188, 66222, 66490, 66541],
island: [65539],
lifeservice: [65586, 65596, 65597, 65599, 65617, 65738, 65739, 65740, 66118, 66119, 66129, 66182, 66185, 66221],
ocean: [65538, 65540, 65549],
other: [65553, 65616, 65631, 65700, 65706, 65707, 65708, 65709, 66196, 66564, 66565, 66577],
province: [66572],
restrant: [65591, 65595, 65601, 65729, 65730, 65731, 65732, 65704, 66223, 66851],
scenic: [65552, 65563, 65564, 65565, 65566, 65567, 65573, 65585, 65744, 66198, 66201, 66491, 66492, 66493, 66494, 66495, 66496, 66497, 66498, 66499, 66500, 66501, 66502, 66503, 66504, 66505, 66506, 66507, 66508, 66509, 66510, 66511, 66512, 66513, 66514, 66515, 66516, 66517, 66518, 66519, 66520, 66521, 66522, 66523, 66524, 66525, 66528, 66529, 66530, 66531, 66532, 66533, 66534, 66535, 66536, 66537, 66538, 66539, 66540, 66542, 66543, 66544, 66545, 66546, 66547, 66548, 66549, 66550, 66551, 66552, 66553, 66554, 66555, 66556, 66557, 66558, 66559, 66560, 66561, 66562, 66563],
shopping: [65588, 65589, 65736, 65737, 66619],
subwaygate: [65836, 65837, 65838, 65839, 65840, 65841, 65842, 65843, 65844, 65845, 65745, 65846, 65847, 65848, 65849, 65850, 65851, 65852, 65853, 65854, 65855, 65856, 65857, 65858, 65859, 65860, 65861, 65862, 65863, 65864, 65894, 66080, 66086, 66160, 66233, 66398, 66402, 66413, 66590, 66594, 66600, 66610, 66679, 66682, 66775, 66844],
subwayline: [65936, 65937, 65938, 65939, 65940, 65941, 65942, 65943, 65944, 65945, 65946, 65947, 65948, 65949, 65950, 65951, 65952, 65953, 65954, 65955, 65956, 65957, 65958, 65959, 65960, 65961, 65962, 65963, 65964, 65965, 65966, 65967, 65968, 65969, 65970, 65971, 65972, 65973, 65974, 65975, 65976, 65978, 65979, 65980, 65981, 65982, 65983, 65984, 65985, 65986, 65987, 65988, 65989, 65990, 65991, 65992, 65993, 65994, 65995, 65996, 65997, 65998, 65999, 66e3, 66001, 66002, 66003, 66004, 66005, 66006, 66007, 66008, 66009, 66010, 66011, 66012, 66013, 66014, 66015, 66016, 66017, 66018, 66019, 66020, 66021, 66022, 66023, 66024, 66025, 66026, 66027, 66028, 66029, 66030, 66031, 66032, 66033, 66034, 66035, 66036, 66037, 66038, 66039, 66040, 66041, 66042, 66043, 66044, 66045, 66046, 66047, 66048, 66049, 66050, 66051, 66052, 66053, 66054, 66055, 66056, 66057, 66058, 66059, 66060, 66061, 66062, 66063, 66064, 66065, 66066, 66067, 66068, 66069, 66070, 66071, 66072, 66073, 66074, 66075, 66076, 66081, 66082, 66087, 66088, 66089, 66090, 66091, 66097, 66104, 66117, 66130, 66131, 66143, 66144, 66145, 66146, 66147, 66148, 66149, 66150, 66151, 66152, 66153, 66154, 66155, 66156, 66161, 66162, 66195, 66203, 66206, 66207, 66208, 66209, 66210, 66211, 66212, 66213, 66214, 66215, 66216, 66217, 66218, 66219, 66220, 66228, 66229, 66234, 66377, 66378, 66380, 66382, 66385, 66387, 66389, 66390, 66391, 66392, 66403, 66404, 66405, 66406, 66409, 66486, 66487, 66566, 66568, 66569, 66573, 66574, 66579, 66581, 66583, 66584, 66585, 66586, 66595, 66596, 66601, 66602, 66603, 66604, 66605, 66606, 66611, 66638, 66639, 66640, 66641, 66642, 66643, 66644, 66645, 66646, 66647, 66648, 66649, 66650, 66651, 66652, 66653, 66654, 66655, 66656, 66657, 66658, 66659, 66660, 66661, 66662, 66663, 66664, 66665, 66666, 66667, 66668, 66669, 66670, 66671, 66672, 66673, 66674, 66675, 66676, 66683, 66687, 66688, 66834, 66835, 66836, 66837, 66838, 66840, 66841, 66845, 66848],
subwaystation: [65635, 65637, 65639, 65641, 65643, 65645, 65647, 65649, 65651, 65653, 65654, 65655, 65657, 65659, 65661, 65663, 65665, 65667, 65669, 65673, 65675, 65677, 65681, 65683, 65684, 65689, 65691, 65694, 65696, 65698, 65710, 66077, 66083, 66157, 66204, 66205, 66230, 66375, 66235, 66236, 66237, 66238, 66239, 66240, 66241, 66242, 66243, 66244, 66245, 66246, 66247, 66248, 66249, 66250, 66251, 66252, 66253, 66254, 66255, 66256, 66257, 66258, 66259, 66260, 66261, 66262, 66263, 66264, 66265, 66266, 66267, 66268, 66269, 66270, 66271, 66272, 66273, 66274, 66275, 66276, 66277, 66278, 66279, 66280, 66281, 66282, 66283, 66284, 66285, 66286, 66287, 66288, 66289, 66290, 66291, 66292, 66293, 66294, 66295, 66296, 66297, 66298, 66299, 66300, 66301, 66302, 66303, 66304, 66305, 66306, 66307, 66308, 66309, 66310, 66311, 66312, 66313, 66314, 66315, 66316, 66317, 66318, 66319, 66320, 66321, 66322, 66323, 66324, 66325, 66326, 66327, 66328, 66329, 66330, 66331, 66332, 66333, 66334, 66335, 66336, 66337, 66338, 66339, 66340, 66342, 66343, 66344, 66345, 66346, 66347, 66348, 66349, 66350, 66351, 66352, 66353, 66354, 66355, 66356, 66357, 66358, 66359, 66360, 66361, 66362, 66363, 66364, 66365, 66366, 66367, 66368, 66369, 66370, 66371, 66372, 66373, 66374, 66376, 66379, 66381, 66383, 66384, 66386, 66388, 66393, 66394, 66395, 66399, 66407, 66408, 66410, 66411, 66488, 66489, 66567, 66570, 66571, 66575, 66576, 66580, 66587, 66588, 66591, 66592, 66597, 66598, 66607, 66608, 66677, 66678, 66680, 66681, 66773, 66774, 66842, 66843],
town: [65544],
transport: [65560, 65570, 65572, 65576, 65605, 65609, 65610, 65611, 65614, 65615, 66093, 66094, 66095, 66121, 66122, 66225],
village: [65545, 65551, 65580, 66578]
}
}
},
function(t, e, n) {
"use strict";
function r(t, e) {
var n = (0, o.
default)(t.getLat()),
r = (0, o.
default)(e.getLat());
return 2 * Math.asin(Math.sqrt(Math.pow(Math.sin((n - r) / 2), 2) + Math.cos(n) * Math.cos(r) * Math.pow(Math.sin(((0, o.
default)(t.getLng()) - (0, o.
default)(e.getLng())) / 2), 2)))
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(124),
o = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (i);
e.
default = r
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e, n) {
return (0, s.
default)(t, e) * (n || u.
default)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(387),
s = r(o),
a = n(295),
u = r(a);
e.
default = i
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(3),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = n(5),
h = r(l),
f = n(35),
p = r(f),
d = n(4),
g = r(d),
y = n(335),
v = r(y),
m = n(711),
_ = r(m),
w = n(716),
b = r(w),
x = n(279),
E = function(t) {
function e(t) {
return (0, a.
default)(this, e),
(0, h.
default)(this, (e.__proto__ || (0, o.
default)(e)).call(this, t))
}
return (0, g.
default)(e, t),
(0, c.
default)(e, [{
key: "onInit",
value: function(t) { (0, p.
default)(e.prototype.__proto__ || (0, o.
default)(e.prototype), "onInit", this).call(this, t),
this.setPath(t.path),
this.iconInfo = t.iconInfo
}
},
{
key: "updateDOM",
value: function() {
if (this._shape && this.map) {
var t = this._updatePoints(),
e = new _.
default;
t.forEach(function(t) {
e.extend(t)
});
var n = e.getSize(),
r = n.width,
i = n.height,
o = e.getMin(),
s = o.x,
a = o.y;
r += 40,
i += 40,
s -= 20,
a -= 20,
this.dom.setAttribute("viewBox", [s, a, r, i].join(" ")),
this.dom.setAttribute("width", r),
this.dom.setAttribute("height", i),
this.dom.style.transform = "translate3d(" + s + "px, " + a + "px, 0px)"
}
}
},
{
key: "setPath",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [];
this.path = t,
this.updateDOM()
}
},
{
key: "getPath",
value: function() {
return this.path
}
},
{
key: "_updatePoints",
value: function() {
return []
}
},
{
key: "_createShape",
value: function() {}
},
{
key: "setEditable",
value: function(t) {
var e = this;
if (t !== this.editable) {
if (t) {
var n = this.style,
r = n.borderWidth,
i = n.borderColor;
this.closed && r && (n.width = r, n.color = i);
var o = (0, x.flatPaths)(this.path),
s = o.map(function(t) {
var r = t.length;
r && t[r - 1].equals(t[0]) && t.pop();
var i = new b.
default({
map:
e.map,
coords: t,
closed: e.closed,
style: n,
correctHandler: e.correctHandler,
iconInfo: e.iconInfo
});
return i.on("edit_end",
function() {
e.setPath(e.getPath()),
e.emit("edit_end")
}),
i.on("editing",
function(t) {
e.emit("editing", t)
}),
i
});
this.editPathList = s
} else this.editPathList && (this.editPathList.forEach(function(t) {
t.destroy()
}), this.editPathList = null);
this.editable = !!t
}
}
}]),
e
} (v.
default);
e.
default = E
},
, , , , , , , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.HEX_REG = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/,
e.RGB_REG = /^rgb\((\d+,?\s*){3}\)$/,
e.RGBA_REG = /^rgba\((\d+,?\s*){3},\s*[0-9.]+\)$/
},
, ,
function(t, e, n) {
t.exports = {
default:
n(410),
__esModule: !0
}
},
function(t, e, n) {
var r = function() {
return this
} () || Function("return this")(),
i = r.regeneratorRuntime && Object.getOwnPropertyNames(r).indexOf("regeneratorRuntime") >= 0,
o = i && r.regeneratorRuntime;
if (r.regeneratorRuntime = void 0, t.exports = n(403), i) r.regeneratorRuntime = o;
else try {
delete r.regeneratorRuntime
} catch(t) {
r.regeneratorRuntime = void 0
}
},
function(t, e) { !
function(e) {
"use strict";
function n(t, e, n, r) {
var o = e && e.prototype instanceof i ? e: i,
s = Object.create(o.prototype),
a = new p(r || []);
return s._invoke = c(t, n, a),
s
}
function r(t, e, n) {
try {
return {
type: "normal",
arg: t.call(e, n)
}
} catch(t) {
return {
type: "throw",
arg: t
}
}
}
function i() {}
function o() {}
function s() {}
function a(t) { ["next", "throw", "return"].forEach(function(e) {
t[e] = function(t) {
return this._invoke(e, t)
}
})
}
function u(t) {
function e(n, i, o, s) {
var a = r(t[n], t, i);
if ("throw" !== a.type) {
var u = a.arg,
c = u.value;
return c && "object" == typeof c && m.call(c, "__await") ? Promise.resolve(c.__await).then(function(t) {
e("next", t, o, s)
},
function(t) {
e("throw", t, o, s)
}) : Promise.resolve(c).then(function(t) {
u.value = t,
o(u)
},
s)
}
s(a.arg)
}
function n(t, n) {
function r() {
return new Promise(function(r, i) {
e(t, n, r, i)
})
}
return i = i ? i.then(r, r) : r()
}
var i;
this._invoke = n
}
function c(t, e, n) {
var i = I;
return function(o, s) {
if (i === C) throw new Error("Generator is already running");
if (i === N) {
if ("throw" === o) throw s;
return g()
}
for (n.method = o, n.arg = s;;) {
var a = n.delegate;
if (a) {
var u = l(a, n);
if (u) {
if (u === P) continue;
return u
}
}
if ("next" === n.method) n.sent = n._sent = n.arg;
else if ("throw" === n.method) {
if (i === I) throw i = N,
n.arg;
n.dispatchException(n.arg)
} else "return" === n.method && n.abrupt("return", n.arg);
i = C;
var c = r(t, e, n);
if ("normal" === c.type) {
if (i = n.done ? N: S, c.arg === P) continue;
return {
value: c.arg,
done: n.done
}
}
"throw" === c.type && (i = N, n.method = "throw", n.arg = c.arg)
}
}
}
function l(t, e) {
var n = t.iterator[e.method];
if (n === y) {
if (e.delegate = null, "throw" === e.method) {
if (t.iterator.
return && (e.method = "return", e.arg = y, l(t, e), "throw" === e.method)) return P;
e.method = "throw",
e.arg = new TypeError("The iterator does not provide a 'throw' method")
}
return P
}
var i = r(n, t.iterator, e.arg);
if ("throw" === i.type) return e.method = "throw",
e.arg = i.arg,
e.delegate = null,
P;
var o = i.arg;
return o ? o.done ? (e[t.resultName] = o.value, e.next = t.nextLoc, "return" !== e.method && (e.method = "next", e.arg = y), e.delegate = null, P) : o: (e.method = "throw", e.arg = new TypeError("iterator result is not an object"), e.delegate = null, P)
}
function h(t) {
var e = {
tryLoc: t[0]
};
1 in t && (e.catchLoc = t[1]),
2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]),
this.tryEntries.push(e)
}
function f(t) {
var e = t.completion || {};
e.type = "normal",
delete e.arg,
t.completion = e
}
function p(t) {
this.tryEntries = [{
tryLoc: "root"
}],
t.forEach(h, this),
this.reset(!0)
}
function d(t) {
if (t) {
var e = t[w];
if (e) return e.call(t);
if ("function" == typeof t.next) return t;
if (!isNaN(t.length)) {
var n = -1,
r = function e() {
for (; ++n < t.length;) if (m.call(t, n)) return e.value = t[n],
e.done = !1,
e;
return e.value = y,
e.done = !0,
e
};
return r.next = r
}
}
return {
next: g
}
}
function g() {
return {
value: y,
done: !0
}
}
var y, v = Object.prototype,
m = v.hasOwnProperty,
_ = "function" == typeof Symbol ? Symbol: {},
w = _.iterator || "@@iterator",
b = _.asyncIterator || "@@asyncIterator",
x = _.toStringTag || "@@toStringTag",
E = "object" == typeof t,
M = e.regeneratorRuntime;
if (M) return void(E && (t.exports = M));
M = e.regeneratorRuntime = E ? t.exports: {},
M.wrap = n;
var I = "suspendedStart",
S = "suspendedYield",
C = "executing",
N = "completed",
P = {},
L = {};
L[w] = function() {
return this
};
var A = Object.getPrototypeOf,
O = A && A(A(d([])));
O && O !== v && m.call(O, w) && (L = O);
var T = s.prototype = i.prototype = Object.create(L);
o.prototype = T.constructor = s,
s.constructor = o,
s[x] = o.displayName = "GeneratorFunction",
M.isGeneratorFunction = function(t) {
var e = "function" == typeof t && t.constructor;
return !! e && (e === o || "GeneratorFunction" === (e.displayName || e.name))
},
M.mark = function(t) {
return Object.setPrototypeOf ? Object.setPrototypeOf(t, s) : (t.__proto__ = s, x in t || (t[x] = "GeneratorFunction")),
t.prototype = Object.create(T),
t
},
M.awrap = function(t) {
return {
__await: t
}
},
a(u.prototype),
u.prototype[b] = function() {
return this
},
M.AsyncIterator = u,
M.async = function(t, e, r, i) {
var o = new u(n(t, e, r, i));
return M.isGeneratorFunction(e) ? o: o.next().then(function(t) {
return t.done ? t.value: o.next()
})
},
a(T),
T[x] = "Generator",
T[w] = function() {
return this
},
T.toString = function() {
return "[object Generator]"
},
M.keys = function(t) {
var e = [];
for (var n in t) e.push(n);
return e.reverse(),
function n() {
for (; e.length;) {
var r = e.pop();
if (r in t) return n.value = r,
n.done = !1,
n
}
return n.done = !0,
n
}
},
M.values = d,
p.prototype = {
constructor: p,
reset: function(t) {
if (this.prev = 0, this.next = 0, this.sent = this._sent = y, this.done = !1, this.delegate = null, this.method = "next", this.arg = y, this.tryEntries.forEach(f), !t) for (var e in this)"t" === e.charAt(0) && m.call(this, e) && !isNaN( + e.slice(1)) && (this[e] = y)
},
stop: function() {
this.done = !0;
var t = this.tryEntries[0],
e = t.completion;
if ("throw" === e.type) throw e.arg;
return this.rval
},
dispatchException: function(t) {
function e(e, r) {
return o.type = "throw",
o.arg = t,
n.next = e,
r && (n.method = "next", n.arg = y),
!!r
}
if (this.done) throw t;
for (var n = this,
r = this.tryEntries.length - 1; r >= 0; --r) {
var i = this.tryEntries[r],
o = i.completion;
if ("root" === i.tryLoc) return e("end");
if (i.tryLoc <= this.prev) {
var s = m.call(i, "catchLoc"),
a = m.call(i, "finallyLoc");
if (s && a) {
if (this.prev < i.catchLoc) return e(i.catchLoc, !0);
if (this.prev < i.finallyLoc) return e(i.finallyLoc)
} else if (s) {
if (this.prev < i.catchLoc) return e(i.catchLoc, !0)
} else {
if (!a) throw new Error("try statement without catch or finally");
if (this.prev < i.finallyLoc) return e(i.finallyLoc)
}
}
}
},
abrupt: function(t, e) {
for (var n = this.tryEntries.length - 1; n >= 0; --n) {
var r = this.tryEntries[n];
if (r.tryLoc <= this.prev && m.call(r, "finallyLoc") && this.prev < r.finallyLoc) {
var i = r;
break
}
}
i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
var o = i ? i.completion: {};
return o.type = t,
o.arg = e,
i ? (this.method = "next", this.next = i.finallyLoc, P) : this.complete(o)
},
complete: function(t, e) {
if ("throw" === t.type) throw t.arg;
return "break" === t.type || "continue" === t.type ? this.next = t.arg: "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e),
P
},
finish: function(t) {
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
var n = this.tryEntries[e];
if (n.finallyLoc === t) return this.complete(n.completion, n.afterLoc),
f(n),
P
}
},
catch: function(t) {
for (var e = this.tryEntries.length - 1; e >= 0; --e) {
var n = this.tryEntries[e];
if (n.tryLoc === t) {
var r = n.completion;
if ("throw" === r.type) {
var i = r.arg;
f(n)
}
return i
}
}
throw new Error("illegal catch attempt")
},
delegateYield: function(t, e, n) {
return this.delegate = {
iterator: d(t),
resultName: e,
nextLoc: n
},
"next" === this.method && (this.arg = y),
P
}
}
} (function() {
return this
} () || Function("return this")())
},
function(t, e, n) {
"use strict";
"use restrict";
function r(t) {
var e = 32;
return t &= -t,
t && e--,
65535 & t && (e -= 16),
16711935 & t && (e -= 8),
252645135 & t && (e -= 4),
858993459 & t && (e -= 2),
1431655765 & t && (e -= 1),
e
}
e.INT_BITS = 32,
e.INT_MAX = 2147483647,
e.INT_MIN = -1 << 31,
e.sign = function(t) {
return (t > 0) - (t < 0)
},
e.abs = function(t) {
var e = t >> 31;
return (t ^ e) - e
},
e.min = function(t, e) {
return e ^ (t ^ e) & -(t < e)
},
e.max = function(t, e) {
return t ^ (t ^ e) & -(t < e)
},
e.isPow2 = function(t) {
return ! (t & t - 1 || !t)
},
e.log2 = function(t) {
var e, n;
return e = (t > 65535) << 4,
t >>>= e,
n = (t > 255) << 3,
t >>>= n,
e |= n,
n = (t > 15) << 2,
t >>>= n,
e |= n,
n = (t > 3) << 1,
t >>>= n,
(e |= n) | t >> 1
},
e.log10 = function(t) {
return t >= 1e9 ? 9 : t >= 1e8 ? 8 : t >= 1e7 ? 7 : t >= 1e6 ? 6 : t >= 1e5 ? 5 : t >= 1e4 ? 4 : t >= 1e3 ? 3 : t >= 100 ? 2 : t >= 10 ? 1 : 0
},
e.popCount = function(t) {
return t -= t >>> 1 & 1431655765,
16843009 * ((t = (858993459 & t) + (t >>> 2 & 858993459)) + (t >>> 4) & 252645135) >>> 24
},
e.countTrailingZeros = r,
e.nextPow2 = function(t) {
return t += 0 === t,
--t,
t |= t >>> 1,
t |= t >>> 2,
t |= t >>> 4,
t |= t >>> 8,
(t |= t >>> 16) + 1
},
e.prevPow2 = function(t) {
return t |= t >>> 1,
t |= t >>> 2,
t |= t >>> 4,
t |= t >>> 8,
(t |= t >>> 16) - (t >>> 1)
},
e.parity = function(t) {
return t ^= t >>> 16,
t ^= t >>> 8,
t ^= t >>> 4,
27030 >>> (t &= 15) & 1
};
var i = new Array(256); !
function(t) {
for (var e = 0; e < 256; ++e) {
var n = e,
r = e,
i = 7;
for (n >>>= 1; n; n >>>= 1) r <<= 1,
r |= 1 & n,
--i;
t[e] = r << i & 255
}
} (i),
e.reverse = function(t) {
return i[255 & t] << 24 | i[t >>> 8 & 255] << 16 | i[t >>> 16 & 255] << 8 | i[t >>> 24 & 255]
},
e.interleave2 = function(t, e) {
return t &= 65535,
t = 16711935 & (t | t << 8),
t = 252645135 & (t | t << 4),
t = 858993459 & (t | t << 2),
t = 1431655765 & (t | t << 1),
e &= 65535,
e = 16711935 & (e | e << 8),
e = 252645135 & (e | e << 4),
e = 858993459 & (e | e << 2),
e = 1431655765 & (e | e << 1),
t | e << 1
},
e.deinterleave2 = function(t, e) {
return t = t >>> e & 1431655765,
t = 858993459 & (t | t >>> 1),
t = 252645135 & (t | t >>> 2),
t = 16711935 & (t | t >>> 4),
(t = 65535 & (t | t >>> 16)) << 16 >> 16
},
e.interleave3 = function(t, e, n) {
return t &= 1023,
t = 4278190335 & (t | t << 16),
t = 251719695 & (t | t << 8),
t = 3272356035 & (t | t << 4),
t = 1227133513 & (t | t << 2),
e &= 1023,
e = 4278190335 & (e | e << 16),
e = 251719695 & (e | e << 8),
e = 3272356035 & (e | e << 4),
e = 1227133513 & (e | e << 2),
t |= e << 1,
n &= 1023,
n = 4278190335 & (n | n << 16),
n = 251719695 & (n | n << 8),
n = 3272356035 & (n | n << 4),
n = 1227133513 & (n | n << 2),
t | n << 2
},
e.deinterleave3 = function(t, e) {
return t = t >>> e & 1227133513,
t = 3272356035 & (t | t >>> 2),
t = 251719695 & (t | t >>> 4),
t = 4278190335 & (t | t >>> 8),
(t = 1023 & (t | t >>> 16)) << 22 >> 22
},
e.nextCombination = function(t) {
var e = t | t - 1;
return e + 1 | (~e & -~e) - 1 >>> r(t) + 1
}
},
function(t, e, n) {
"use strict";
function r(t) {
var e = t.length;
if (0 === e) return [];
if (1 === e) return [[0]];
var n = t[0].length;
return 0 === n ? [] : 1 === n ? i(t) : 2 === n ? o(t) : s(t, n)
}
var i = n(406),
o = n(407),
s = n(408);
t.exports = r
},
function(t, e, n) {
"use strict";
function r(t) {
for (var e = 0,
n = 0,
r = 1; r < t.length; ++r) t[r][0] < t[e][0] && (e = r),
t[r][0] > t[n][0] && (n = r);
return e < n ? [[e], [n]] : e > n ? [[n], [e]] : [[e]]
}
t.exports = r
},
function(t, e, n) {
"use strict";
function r(t) {
var e = i(t),
n = e.length;
if (n <= 2) return [];
for (var r = new Array(n), o = e[n - 1], s = 0; s < n; ++s) {
var a = e[s];
r[s] = [o, a],
o = a
}
return r
}
t.exports = r;
var i = n(450)
},
function(t, e, n) {
"use strict";
function r(t, e) {
for (var n = t.length,
r = new Array(n), i = 0; i < e.length; ++i) r[i] = t[e[i]];
for (var o = e.length,
i = 0; i < n; ++i) e.indexOf(i) < 0 && (r[o++] = t[i]);
return r
}
function i(t, e) {
for (var n = t.length,
r = e.length,
i = 0; i < n; ++i) for (var o = t[i], s = 0; s < o.length; ++s) {
var a = o[s];
if (a < r) o[s] = e[a];
else {
a -= r;
for (var u = 0; u < r; ++u) a >= e[u] && (a += 1);
o[s] = a
}
}
return t
}
function o(t, e) {
try {
return s(t, !0)
} catch(c) {
var n = a(t);
if (n.length <= e) return [];
var o = r(t, n),
u = s(o, !0);
return i(u, n)
}
}
t.exports = o;
var s = n(449),
a = n(375)
},
,
function(t, e, n) {
n(414),
t.exports = n(2).Math.fround
},
function(t, e, n) {
n(415),
t.exports = n(2).Number.isFinite
},
function(t, e, n) {
n(73),
n(33),
n(39),
n(416),
n(419),
n(418),
n(417),
t.exports = n(2).Set
},
function(t, e, n) {
var r = n(313),
i = Math.pow,
o = i(2, -52),
s = i(2, -23),
a = i(2, 127) * (2 - s),
u = i(2, -126),
c = function(t) {
return t + 1 / o - 1 / o
};
t.exports = Math.fround ||
function(t) {
var e, n, i = Math.abs(t),
l = r(t);
return i < u ? l * c(i / u / s) * u * s: (e = (1 + s / o) * i, n = e - (e - i), n > a || n != n ? l * (1 / 0) : l * n)
}
},
function(t, e, n) {
var r = n(6);
r(r.S, "Math", {
fround: n(413)
})
},
function(t, e, n) {
var r = n(6),
i = n(8).isFinite;
r(r.S, "Number", {
isFinite: function(t) {
return "number" == typeof t && i(t)
}
})
},
function(t, e, n) {
"use strict";
var r = n(260),
i = n(183);
t.exports = n(250)("Set",
function(t) {
return function() {
return t(this, arguments.length > 0 ? arguments[0] : void 0)
}
},
{
add: function(t) {
return r.def(i(this, "Set"), t = 0 === t ? 0 : t, t)
}
},
r)
},
function(t, e, n) {
n(251)("Set")
},
function(t, e, n) {
n(252)("Set")
},
function(t, e, n) {
var r = n(6);
r(r.P + r.R, "Set", {
toJSON: n(261)("Set")
})
},
, , , , , , , , , , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
function r(t, e, n, r, o) {
i(t, e, n || 0, r || t.length - 1, o || s)
}
function i(t, e, n, r, s) {
for (; r > n;) {
if (r - n > 600) {
var a = r - n + 1,
u = e - n + 1,
c = Math.log(a),
l = .5 * Math.exp(2 * c / 3),
h = .5 * Math.sqrt(c * l * (a - l) / a) * (u - a / 2 < 0 ? -1 : 1);
i(t, e, Math.max(n, Math.floor(e - u * l / a + h)), Math.min(r, Math.floor(e + (a - u) * l / a + h)), s)
}
var f = t[e],
p = n,
d = r;
for (o(t, n, e), s(t[r], f) > 0 && o(t, n, r); p < d;) {
for (o(t, p, d), p++, d--; s(t[p], f) < 0;) p++;
for (; s(t[d], f) > 0;) d--
}
0 === s(t[n], f) ? o(t, n, d) : (d++, o(t, d, r)),
d <= e && (n = d + 1),
e <= d && (r = d - 1)
}
}
function o(t, e, n) {
var r = t[e];
t[e] = t[n],
t[n] = r
}
function s(t, e) {
return t < e ? -1 : t > e ? 1 : 0
}
e.a = r
},
function(t, e, n) {
"use strict";
function r(t, e) {
if (! (this instanceof r)) return new r(t, e);
this._maxEntries = Math.max(4, t || 9),
this._minEntries = Math.max(2, Math.ceil(.4 * this._maxEntries)),
e && this._initFormat(e),
this.clear()
}
function i(t, e, n) {
if (!n) return e.indexOf(t);
for (var r = 0; r < e.length; r++) if (n(t, e[r])) return r;
return - 1
}
function o(t, e) {
s(t, 0, t.children.length, e, t)
}
function s(t, e, n, r, i) {
i || (i = y(null)),
i.minX = 1 / 0,
i.minY = 1 / 0,
i.maxX = -1 / 0,
i.maxY = -1 / 0;
for (var o, s = e; s < n; s++) o = t.children[s],
a(i, t.leaf ? r(o) : o);
return i
}
function a(t, e) {
return t.minX = Math.min(t.minX, e.minX),
t.minY = Math.min(t.minY, e.minY),
t.maxX = Math.max(t.maxX, e.maxX),
t.maxY = Math.max(t.maxY, e.maxY),
t
}
function u(t, e) {
return t.minX - e.minX
}
function c(t, e) {
return t.minY - e.minY
}
function l(t) {
return (t.maxX - t.minX) * (t.maxY - t.minY)
}
function h(t) {
return t.maxX - t.minX + (t.maxY - t.minY)
}
function f(t, e) {
return (Math.max(e.maxX, t.maxX) - Math.min(e.minX, t.minX)) * (Math.max(e.maxY, t.maxY) - Math.min(e.minY, t.minY))
}
function p(t, e) {
var n = Math.max(t.minX, e.minX),
r = Math.max(t.minY, e.minY),
i = Math.min(t.maxX, e.maxX),
o = Math.min(t.maxY, e.maxY);
return Math.max(0, i - n) * Math.max(0, o - r)
}
function d(t, e) {
return t.minX <= e.minX && t.minY <= e.minY && e.maxX <= t.maxX && e.maxY <= t.maxY
}
function g(t, e) {
return e.minX <= t.maxX && e.minY <= t.maxY && e.maxX >= t.minX && e.maxY >= t.minY
}
function y(t) {
return {
children: t,
height: 1,
leaf: !0,
minX: 1 / 0,
minY: 1 / 0,
maxX: -1 / 0,
maxY: -1 / 0
}
}
function v(t, e, r, i, o) {
for (var s, a = [e, r]; a.length;) r = a.pop(),
e = a.pop(),
r - e <= i || (s = e + Math.ceil((r - e) / i / 2) * i, n.i(m.a)(t, s, e, r, o), a.push(e, s, s, r))
}
var m = n(447);
r.prototype = {
all: function() {
return this._all(this.data, [])
},
search: function(t) {
var e = this.data,
n = [],
r = this.toBBox;
if (!g(t, e)) return n;
for (var i, o, s, a, u = []; e;) {
for (i = 0, o = e.children.length; i < o; i++) s = e.children[i],
a = e.leaf ? r(s) : s,
g(t, a) && (e.leaf ? n.push(s) : d(t, a) ? this._all(s, n) : u.push(s));
e = u.pop()
}
return n
},
collides: function(t) {
var e = this.data,
n = this.toBBox;
if (!g(t, e)) return ! 1;
for (var r, i, o, s, a = []; e;) {
for (r = 0, i = e.children.length; r < i; r++) if (o = e.children[r], s = e.leaf ? n(o) : o, g(t, s)) {
if (e.leaf || d(t, s)) return ! 0;
a.push(o)
}
e = a.pop()
}
return ! 1
},
load: function(t) {
if (!t || !t.length) return this;
if (t.length < this._minEntries) {
for (var e = 0,
n = t.length; e < n; e++) this.insert(t[e]);
return this
}
var r = this._build(t.slice(), 0, t.length - 1, 0);
if (this.data.children.length) if (this.data.height === r.height) this._splitRoot(this.data, r);
else {
if (this.data.height < r.height) {
var i = this.data;
this.data = r,
r = i
}
this._insert(r, this.data.height - r.height - 1, !0)
} else this.data = r;
return this
},
insert: function(t) {
return t && this._insert(t, this.data.height - 1),
this
},
clear: function() {
return this.data = y([]),
this
},
remove: function(t, e) {
if (!t) return this;
for (var n, r, o, s, a = this.data,
u = this.toBBox(t), c = [], l = []; a || c.length;) {
if (a || (a = c.pop(), r = c[c.length - 1], n = l.pop(), s = !0), a.leaf && -1 !== (o = i(t, a.children, e))) return a.children.splice(o, 1),
c.push(a),
this._condense(c),
this;
s || a.leaf || !d(a, u) ? r ? (n++, a = r.children[n], s = !1) : a = null: (c.push(a), l.push(n), n = 0, r = a, a = a.children[0])
}
return this
},
toBBox: function(t) {
return t
},
compareMinX: u,
compareMinY: c,
toJSON: function() {
return this.data
},
fromJSON: function(t) {
return this.data = t,
this
},
_all: function(t, e) {
for (var n = []; t;) t.leaf ? e.push.apply(e, t.children) : n.push.apply(n, t.children),
t = n.pop();
return e
},
_build: function(t, e, n, r) {
var i, s = n - e + 1,
a = this._maxEntries;
if (s <= a) return i = y(t.slice(e, n + 1)),
o(i, this.toBBox),
i;
r || (r = Math.ceil(Math.log(s) / Math.log(a)), a = Math.ceil(s / Math.pow(a, r - 1))),
i = y([]),
i.leaf = !1,
i.height = r;
var u, c, l, h, f = Math.ceil(s / a),
p = f * Math.ceil(Math.sqrt(a));
for (v(t, e, n, p, this.compareMinX), u = e; u <= n; u += p) for (l = Math.min(u + p - 1, n), v(t, u, l, f, this.compareMinY), c = u; c <= l; c += f) h = Math.min(c + f - 1, l),
i.children.push(this._build(t, c, h, r - 1));
return o(i, this.toBBox),
i
},
_chooseSubtree: function(t, e, n, r) {
for (var i, o, s, a, u, c, h, p;;) {
if (r.push(e), e.leaf || r.length - 1 === n) break;
for (h = p = 1 / 0, i = 0, o = e.children.length; i < o; i++) s = e.children[i],
u = l(s),
c = f(t, s) - u,
c < p ? (p = c, h = u < h ? u: h, a = s) : c === p && u < h && (h = u, a = s);
e = a || e.children[0]
}
return e
},
_insert: function(t, e, n) {
var r = this.toBBox,
i = n ? t: r(t),
o = [],
s = this._chooseSubtree(i, this.data, e, o);
for (s.children.push(t), a(s, i); e >= 0 && o[e].children.length > this._maxEntries;) this._split(o, e),
e--;
this._adjustParentBBoxes(i, o, e)
},
_split: function(t, e) {
var n = t[e],
r = n.children.length,
i = this._minEntries;
this._chooseSplitAxis(n, i, r);
var s = this._chooseSplitIndex(n, i, r),
a = y(n.children.splice(s, n.children.length - s));
a.height = n.height,
a.leaf = n.leaf,
o(n, this.toBBox),
o(a, this.toBBox),
e ? t[e - 1].children.push(a) : this._splitRoot(n, a)
},
_splitRoot: function(t, e) {
this.data = y([t, e]),
this.data.height = t.height + 1,
this.data.leaf = !1,
o(this.data, this.toBBox)
},
_chooseSplitIndex: function(t, e, n) {
var r, i, o, a, u, c, h, f;
for (c = h = 1 / 0, r = e; r <= n - e; r++) i = s(t, 0, r, this.toBBox),
o = s(t, r, n, this.toBBox),
a = p(i, o),
u = l(i) + l(o),
a < c ? (c = a, f = r, h = u < h ? u: h) : a === c && u < h && (h = u, f = r);
return f
},
_chooseSplitAxis: function(t, e, n) {
var r = t.leaf ? this.compareMinX: u,
i = t.leaf ? this.compareMinY: c;
this._allDistMargin(t, e, n, r) < this._allDistMargin(t, e, n, i) && t.children.sort(r)
},
_allDistMargin: function(t, e, n, r) {
t.children.sort(r);
var i, o, u = this.toBBox,
c = s(t, 0, e, u),
l = s(t, n - e, n, u),
f = h(c) + h(l);
for (i = e; i < n - e; i++) o = t.children[i],
a(c, t.leaf ? u(o) : o),
f += h(c);
for (i = n - e - 1; i >= e; i--) o = t.children[i],
a(l, t.leaf ? u(o) : o),
f += h(l);
return f
},
_adjustParentBBoxes: function(t, e, n) {
for (var r = n; r >= 0; r--) a(e[r], t)
},
_condense: function(t) {
for (var e, n = t.length - 1; n >= 0; n--) 0 === t[n].children.length ? n > 0 ? (e = t[n - 1].children, e.splice(e.indexOf(t[n]), 1)) : this.clear() : o(t[n], this.toBBox)
},
_initFormat: function(t) {
var e = ["return a", " - b", ";"];
this.compareMinX = new Function("a", "b", e.join(t[0])),
this.compareMinY = new Function("a", "b", e.join(t[1])),
this.toBBox = new Function("a", "return {minX: a" + t[0] + ", minY: a" + t[1] + ", maxX: a" + t[2] + ", maxY: a" + t[3] + "};")
}
},
e.a = r
},
function(t, e, n) {
"use strict";
function r(t, e, n) {
this.vertices = t,
this.adjacent = e,
this.boundary = n,
this.lastVisited = -1
}
function i(t, e, n) {
this.vertices = t,
this.cell = e,
this.index = n
}
function o(t, e) {
return l(t.vertices, e.vertices)
}
function s(t) {
for (var e = ["function orient(){var tuple=this.tuple;return test("], n = 0; n <= t; ++n) n > 0 && e.push(","),
e.push("tuple[", n, "]");
e.push(")}return orient");
var r = new Function("test", e.join("")),
i = c[t + 1];
return i || (i = c),
r(i)
}
function a(t, e, n) {
this.dimension = t,
this.vertices = e,
this.simplices = n,
this.interior = n.filter(function(t) {
return ! t.boundary
}),
this.tuple = new Array(t + 1);
for (var r = 0; r <= t; ++r) this.tuple[r] = this.vertices[r];
var i = h[t];
i || (i = h[t] = s(t)),
this.orient = i
}
function u(t, e) {
var n = t.length;
if (0 === n) throw new Error("Must have at least d+1 points");
var i = t[0].length;
if (n <= i) throw new Error("Must input at least d+1 points");
var o = t.slice(0, i + 1),
s = c.apply(void 0, o);
if (0 === s) throw new Error("Input not in general position");
for (var u = new Array(i + 1), l = 0; l <= i; ++l) u[l] = l;
s < 0 && (u[0] = 1, u[1] = 0);
for (var h = new r(u, new Array(i + 1), !1), f = h.adjacent, p = new Array(i + 2), l = 0; l <= i; ++l) {
for (var d = u.slice(), g = 0; g <= i; ++g) g === l && (d[g] = -1);
var y = d[0];
d[0] = d[1],
d[1] = y;
var v = new r(d, new Array(i + 1), !0);
f[l] = v,
p[l] = v
}
p[i + 1] = h;
for (var l = 0; l <= i; ++l) for (var d = f[l].vertices, m = f[l].adjacent, g = 0; g <= i; ++g) {
var _ = d[g];
if (_ < 0) m[g] = h;
else for (var w = 0; w <= i; ++w) f[w].vertices.indexOf(_) < 0 && (m[g] = f[w])
}
for (var b = new a(i, o, p), x = !!e, l = i + 1; l < n; ++l) b.insert(t[l], x);
return b.boundary()
}
t.exports = u;
var c = n(274),
l = n(455).compareCells;
r.prototype.flip = function() {
var t = this.vertices[0];
this.vertices[0] = this.vertices[1],
this.vertices[1] = t;
var e = this.adjacent[0];
this.adjacent[0] = this.adjacent[1],
this.adjacent[1] = e
};
var h = [],
f = a.prototype;
f.handleBoundaryDegeneracy = function(t, e) {
var n = this.dimension,
r = this.vertices.length - 1,
i = this.tuple,
o = this.vertices,
s = [t];
for (t.lastVisited = -r; s.length > 0;) {
t = s.pop();
for (var a = (t.vertices, t.adjacent), u = 0; u <= n; ++u) {
var c = a[u];
if (c.boundary && !(c.lastVisited <= -r)) {
for (var l = c.vertices,
h = 0; h <= n; ++h) {
var f = l[h];
i[h] = f < 0 ? e: o[f]
}
var p = this.orient();
if (p > 0) return c;
c.lastVisited = -r,
0 === p && s.push(c)
}
}
}
return null
},
f.walk = function(t, e) {
var n = this.vertices.length - 1,
r = this.dimension,
i = this.vertices,
o = this.tuple,
s = e ? this.interior.length * Math.random() | 0 : this.interior.length - 1,
a = this.interior[s];
t: for (; ! a.boundary;) {
for (var u = a.vertices,
c = a.adjacent,
l = 0; l <= r; ++l) o[l] = i[u[l]];
a.lastVisited = n;
for (var l = 0; l <= r; ++l) {
var h = c[l];
if (! (h.lastVisited >= n)) {
var f = o[l];
o[l] = t;
var p = this.orient();
if (o[l] = f, p < 0) {
a = h;
continue t
}
h.boundary ? h.lastVisited = -n: h.lastVisited = n
}
}
return
}
return a
},
f.addPeaks = function(t, e) {
var n = this.vertices.length - 1,
s = this.dimension,
a = this.vertices,
u = this.tuple,
c = this.interior,
l = this.simplices,
h = [e];
e.lastVisited = n,
e.vertices[e.vertices.indexOf( - 1)] = n,
e.boundary = !1,
c.push(e);
for (var f = []; h.length > 0;) {
var e = h.pop(),
p = e.vertices,
d = e.adjacent,
g = p.indexOf(n);
if (! (g < 0)) for (var y = 0; y <= s; ++y) if (y !== g) {
var v = d[y];
if (v.boundary && !(v.lastVisited >= n)) {
var m = v.vertices;
if (v.lastVisited !== -n) {
for (var _ = 0,
w = 0; w <= s; ++w) m[w] < 0 ? (_ = w, u[w] = t) : u[w] = a[m[w]];
var b = this.orient();
if (b > 0) {
m[_] = n,
v.boundary = !1,
c.push(v),
h.push(v),
v.lastVisited = n;
continue
}
v.lastVisited = -n
}
var x = v.adjacent,
E = p.slice(),
M = d.slice(),
I = new r(E, M, !0);
l.push(I);
var S = x.indexOf(e);
if (! (S < 0)) {
x[S] = I,
M[g] = v,
E[y] = -1,
M[y] = e,
d[y] = I,
I.flip();
for (var w = 0; w <= s; ++w) {
var C = E[w];
if (! (C < 0 || C === n)) {
for (var N = new Array(s - 1), P = 0, L = 0; L <= s; ++L) {
var A = E[L];
A < 0 || L === w || (N[P++] = A)
}
f.push(new i(N, I, w))
}
}
}
}
}
}
f.sort(o);
for (var y = 0; y + 1 < f.length; y += 2) {
var O = f[y],
T = f[y + 1],
R = O.index,
D = T.index;
R < 0 || D < 0 || (O.cell.adjacent[O.index] = T.cell, T.cell.adjacent[T.index] = O.cell)
}
},
f.insert = function(t, e) {
var n = this.vertices;
n.push(t);
var r = this.walk(t, e);
if (r) {
for (var i = this.dimension,
o = this.tuple,
s = 0; s <= i; ++s) {
var a = r.vertices[s];
o[s] = a < 0 ? t: n[a]
}
var u = this.orient(o);
u < 0 || (0 !== u || (r = this.handleBoundaryDegeneracy(r, t))) && this.addPeaks(t, r)
}
},
f.boundary = function() {
for (var t = this.dimension,
e = [], n = this.simplices, r = n.length, i = 0; i < r; ++i) {
var o = n[i];
if (o.boundary) {
for (var s = new Array(t), a = o.vertices, u = 0, c = 0, l = 0; l <= t; ++l) a[l] >= 0 ? s[u++] = a[l] : c = 1 & l;
if (c === (1 & t)) {
var h = s[0];
s[0] = s[1],
s[1] = h
}
e.push(s)
}
}
return e
}
},
function(t, e, n) {
"use strict";
function r(t) {
var e = t.length;
if (e < 3) {
for (var n = new Array(e), r = 0; r < e; ++r) n[r] = r;
return 2 === e && t[0][0] === t[1][0] && t[0][1] === t[1][1] ? [0] : n
}
for (var o = new Array(e), r = 0; r < e; ++r) o[r] = r;
o.sort(function(e, n) {
var r = t[e][0] - t[n][0];
return r || t[e][1] - t[n][1]
});
for (var s = [o[0], o[1]], a = [o[0], o[1]], r = 2; r < e; ++r) {
for (var u = o[r], c = t[u], l = s.length; l > 1 && i(t[s[l - 2]], t[s[l - 1]], c) <= 0;) l -= 1,
s.pop();
for (s.push(u), l = a.length; l > 1 && i(t[a[l - 2]], t[a[l - 1]], c) >= 0;) l -= 1,
a.pop();
a.push(u)
}
for (var n = new Array(a.length + s.length - 2), h = 0, r = 0, f = s.length; r < f; ++r) n[h++] = s[r];
for (var p = a.length - 2; p > 0; --p) n[h++] = a[p];
return n
}
t.exports = r;
var i = n(274)[3]
},
,
function(t, e, n) {
"use strict";
function r(t, e) {
var n = t.length;
if (1 === n) {
var r = i(t[0], e);
return r[0] ? r: [r[1]]
}
var s = new Array(2 * n),
a = [.1, .1],
u = [.1, .1],
c = 0;
i(t[0], e, a),
a[0] && (s[c++] = a[0]);
for (var l = 1; l < n; ++l) {
i(t[l], e, u);
var h = a[1];
o(h, u[0], a),
a[0] && (s[c++] = a[0]);
var f = u[1],
p = a[1],
d = f + p,
g = d - f,
y = p - g;
a[1] = d,
y && (s[c++] = y)
}
return a[1] && (s[c++] = a[1]),
0 === c && (s[c++] = 0),
s.length = c,
s
}
var i = n(324),
o = n(456);
t.exports = r
},
function(t, e, n) {
"use strict";
function r(t, e) {
var n = t + e,
r = n - t,
i = n - r,
o = e - r,
s = t - i,
a = s + o;
return a ? [a, n] : [n]
}
function i(t, e) {
var n = 0 | t.length,
i = 0 | e.length;
if (1 === n && 1 === i) return r(t[0], -e[0]);
var o, s, a = n + i,
u = new Array(a),
c = 0,
l = 0,
h = 0,
f = Math.abs,
p = t[l],
d = f(p),
g = -e[h],
y = f(g);
d < y ? (s = p, (l += 1) < n && (p = t[l], d = f(p))) : (s = g, (h += 1) < i && (g = -e[h], y = f(g))),
l < n && d < y || h >= i ? (o = p, (l += 1) < n && (p = t[l], d = f(p))) : (o = g, (h += 1) < i && (g = -e[h], y = f(g)));
for (var v, m, _, w, b, x = o + s,
E = x - o,
M = s - E,
I = M,
S = x; l < n && h < i;) d < y ? (o = p, (l += 1) < n && (p = t[l], d = f(p))) : (o = g, (h += 1) < i && (g = -e[h], y = f(g))),
s = I,
x = o + s,
E = x - o,
M = s - E,
M && (u[c++] = M),
v = S + x,
m = v - S,
_ = v - m,
w = x - m,
b = S - _,
I = b + w,
S = v;
for (; l < n;) o = p,
s = I,
x = o + s,
E = x - o,
M = s - E,
M && (u[c++] = M),
v = S + x,
m = v - S,
_ = v - m,
w = x - m,
b = S - _,
I = b + w,
S = v,
(l += 1) < n && (p = t[l]);
for (; h < i;) o = g,
s = I,
x = o + s,
E = x - o,
M = s - E,
M && (u[c++] = M),
v = S + x,
m = v - S,
_ = v - m,
w = x - m,
b = S - _,
I = b + w,
S = v,
(h += 1) < i && (g = -e[h]);
return I && (u[c++] = I),
S && (u[c++] = S),
c || (u[c++] = 0),
u.length = c,
u
}
t.exports = i
},
function(t, e, n) {
"use strict";
function r(t, e) {
var n = t + e,
r = n - t,
i = n - r,
o = e - r,
s = t - i,
a = s + o;
return a ? [a, n] : [n]
}
function i(t, e) {
var n = 0 | t.length,
i = 0 | e.length;
if (1 === n && 1 === i) return r(t[0], e[0]);
var o, s, a = n + i,
u = new Array(a),
c = 0,
l = 0,
h = 0,
f = Math.abs,
p = t[l],
d = f(p),
g = e[h],
y = f(g);
d < y ? (s = p, (l += 1) < n && (p = t[l], d = f(p))) : (s = g, (h += 1) < i && (g = e[h], y = f(g))),
l < n && d < y || h >= i ? (o = p, (l += 1) < n && (p = t[l], d = f(p))) : (o = g, (h += 1) < i && (g = e[h], y = f(g)));
for (var v, m, _, w, b, x = o + s,
E = x - o,
M = s - E,
I = M,
S = x; l < n && h < i;) d < y ? (o = p, (l += 1) < n && (p = t[l], d = f(p))) : (o = g, (h += 1) < i && (g = e[h], y = f(g))),
s = I,
x = o + s,
E = x - o,
M = s - E,
M && (u[c++] = M),
v = S + x,
m = v - S,
_ = v - m,
w = x - m,
b = S - _,
I = b + w,
S = v;
for (; l < n;) o = p,
s = I,
x = o + s,
E = x - o,
M = s - E,
M && (u[c++] = M),
v = S + x,
m = v - S,
_ = v - m,
w = x - m,
b = S - _,
I = b + w,
S = v,
(l += 1) < n && (p = t[l]);
for (; h < i;) o = g,
s = I,
x = o + s,
E = x - o,
M = s - E,
M && (u[c++] = M),
v = S + x,
m = v - S,
_ = v - m,
w = x - m,
b = S - _,
I = b + w,
S = v,
(h += 1) < i && (g = e[h]);
return I && (u[c++] = I),
S && (u[c++] = S),
c || (u[c++] = 0),
u.length = c,
u
}
t.exports = i
},
function(t, e, n) {
"use strict";
"use restrict";
function r(t) {
for (var e = 0,
n = Math.max,
r = 0,
i = t.length; r < i; ++r) e = n(e, t[r].length);
return e - 1
}
function i(t) {
for (var e = -1,
n = Math.max,
r = 0,
i = t.length; r < i; ++r) for (var o = t[r], s = 0, a = o.length; s < a; ++s) e = n(e, o[s]);
return e + 1
}
function o(t) {
for (var e = new Array(t.length), n = 0, r = t.length; n < r; ++n) e[n] = t[n].slice(0);
return e
}
function s(t, e) {
var n = t.length,
r = t.length - e.length,
i = Math.min;
if (r) return r;
switch (n) {
case 0:
return 0;
case 1:
return t[0] - e[0];
case 2:
var o = t[0] + t[1] - e[0] - e[1];
return o || i(t[0], t[1]) - i(e[0], e[1]);
case 3:
var s = t[0] + t[1],
a = e[0] + e[1];
if (o = s + t[2] - (a + e[2])) return o;
var u = i(t[0], t[1]),
c = i(e[0], e[1]),
o = i(u, t[2]) - i(c, e[2]);
return o || i(u + t[2], s) - i(c + e[2], a);
default:
var l = t.slice(0);
l.sort();
var h = e.slice(0);
h.sort();
for (var f = 0; f < n; ++f) if (r = l[f] - h[f]) return r;
return 0
}
}
function a(t, e) {
return s(t[0], e[0])
}
function u(t, e) {
if (e) {
for (var n = t.length,
r = new Array(n), i = 0; i < n; ++i) r[i] = [t[i], e[i]];
r.sort(a);
for (var i = 0; i < n; ++i) t[i] = r[i][0],
e[i] = r[i][1];
return t
}
return t.sort(s),
t
}
function c(t) {
if (0 === t.length) return [];
for (var e = 1,
n = t.length,
r = 1; r < n; ++r) {
var i = t[r];
if (s(i, t[r - 1])) {
if (r === e) {
e++;
continue
}
t[e++] = i
}
}
return t.length = e,
t
}
function l(t, e) {
for (var n = 0,
r = t.length - 1,
i = -1; n <= r;) {
var o = n + r >> 1,
a = s(t[o], e);
a <= 0 ? (0 === a && (i = o), n = o + 1) : a > 0 && (r = o - 1)
}
return i
}
function h(t, e) {
for (var n = new Array(t.length), r = 0, i = n.length; r < i; ++r) n[r] = [];
for (var o = [], r = 0, a = e.length; r < a; ++r) for (var u = e[r], c = u.length, h = 1, f = 1 << c; h < f; ++h) {
o.length = _.popCount(h);
for (var p = 0,
d = 0; d < c; ++d) h & 1 << d && (o[p++] = u[d]);
var g = l(t, o);
if (! (g < 0)) for (;;) if (n[g++].push(r), g >= t.length || 0 !== s(t[g], o)) break
}
return n
}
function f(t, e) {
if (!e) return h(c(d(t, 0)), t, 0);
for (var n = new Array(e), r = 0; r < e; ++r) n[r] = [];
for (var r = 0,
i = t.length; r < i; ++r) for (var o = t[r], s = 0, a = o.length; s < a; ++s) n[o[s]].push(r);
return n
}
function p(t) {
for (var e = [], n = 0, r = t.length; n < r; ++n) for (var i = t[n], o = 0 | i.length, s = 1, a = 1 << o; s < a; ++s) {
for (var c = [], l = 0; l < o; ++l) s >>> l & 1 && c.push(i[l]);
e.push(c)
}
return u(e)
}
function d(t, e) {
if (e < 0) return [];
for (var n = [], r = (1 << e + 1) - 1, i = 0; i < t.length; ++i) for (var o = t[i], s = r; s < 1 << o.length; s = _.nextCombination(s)) {
for (var a = new Array(e + 1), c = 0, l = 0; l < o.length; ++l) s & 1 << l && (a[c++] = o[l]);
n.push(a)
}
return u(n)
}
function g(t) {
for (var e = [], n = 0, r = t.length; n < r; ++n) for (var i = t[n], o = 0, s = i.length; o < s; ++o) {
for (var a = new Array(i.length - 1), c = 0, l = 0; c < s; ++c) c !== o && (a[l++] = i[c]);
e.push(a)
}
return u(e)
}
function y(t, e) {
for (var n = new w(e), r = 0; r < t.length; ++r) for (var i = t[r], o = 0; o < i.length; ++o) for (var s = o + 1; s < i.length; ++s) n.link(i[o], i[s]);
for (var a = [], u = n.ranks, r = 0; r < u.length; ++r) u[r] = -1;
for (var r = 0; r < t.length; ++r) {
var c = n.find(t[r][0]);
u[c] < 0 ? (u[c] = a.length, a.push([t[r].slice(0)])) : a[u[c]].push(t[r].slice(0))
}
return a
}
function v(t) {
for (var e = c(u(d(t, 0))), n = new w(e.length), r = 0; r < t.length; ++r) for (var i = t[r], o = 0; o < i.length; ++o) for (var s = l(e, [i[o]]), a = o + 1; a < i.length; ++a) n.link(s, l(e, [i[a]]));
for (var h = [], f = n.ranks, r = 0; r < f.length; ++r) f[r] = -1;
for (var r = 0; r < t.length; ++r) {
var p = n.find(l(e, [t[r][0]]));
f[p] < 0 ? (f[p] = h.length, h.push([t[r].slice(0)])) : h[f[p]].push(t[r].slice(0))
}
return h
}
function m(t, e) {
return e ? y(t, e) : v(t)
}
var _ = n(404),
w = n(457);
e.dimension = r,
e.countVertices = i,
e.cloneCells = o,
e.compareCells = s,
e.normalize = u,
e.unique = c,
e.findCell = l,
e.incidence = h,
e.dual = f,
e.explode = p,
e.skeleton = d,
e.boundary = g,
e.connectedComponents = m
},
function(t, e, n) {
"use strict";
function r(t, e, n) {
var r = t + e,
i = r - t,
o = r - i,
s = e - i,
a = t - o;
return n ? (n[0] = a + s, n[1] = r, n) : [a + s, r]
}
t.exports = r
},
function(t, e, n) {
"use strict";
"use restrict";
function r(t) {
this.roots = new Array(t),
this.ranks = new Array(t);
for (var e = 0; e < t; ++e) this.roots[e] = e,
this.ranks[e] = 0
}
t.exports = r;
var i = r.prototype;
Object.defineProperty(i, "length", {
get: function() {
return this.roots.length
}
}),
i.makeSet = function() {
var t = this.roots.length;
return this.roots.push(t),
this.ranks.push(0),
t
},
i.find = function(t) {
for (var e = t,
n = this.roots; n[t] !== t;) t = n[t];
for (; n[e] !== t;) {
var r = n[e];
n[e] = t,
e = r
}
return t
},
i.link = function(t, e) {
var n = this.find(t),
r = this.find(e);
if (n !== r) {
var i = this.ranks,
o = this.roots,
s = i[n],
a = i[r];
s < a ? o[n] = r: a < s ? o[r] = n: (o[r] = n, ++i[n])
}
}
},
, , ,
function(t, e, n) {
"use strict";
Object.defineProperty(e, "__esModule", {
value: !0
});
e.EDITOR_ACTION = {
INTERACT: 1,
DRAW: 2
}
},
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(3),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = n(5),
h = r(l),
f = n(4),
p = r(f),
d = TMap,
g = d.Map,
y = TMap,
v = y.Event,
m = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, a.
default)(this, e);
var n = (0, h.
default)(this, (e.__proto__ || (0, o.
default)(e)).call(this)),
r = t.map,
i = void 0 === r ? null: r,
s = t.active,
u = void 0 === s || s;
return n._onInit(t),
n.control = n._createControl(),
n.setMap(i),
u ? n.enable() : n.disable(),
n
}
return (0, p.
default)(e, t),
(0, c.
default)(e, [{
key: "setMap",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : null;
return this.map === t ? this: !t || t instanceof g ? (this._removeFromMap(), this.map = t, this._addToMap(), this.control && this.control.setMap(this.map), this) : (console.error("类型错误: map参数类型错误应为TMap.Map。"), this)
}
},
{
key: "getMap",
value: function() {
return this.map
}
},
{
key: "getControl",
value: function() {
return this.control
}
},
{
key: "enable",
value: function() {
return this.active = !0,
this.control && this.control.enable(),
this
}
},
{
key: "disable",
value: function() {
return this.active = !1,
this.control && this.control.disable(),
this
}
},
{
key: "isActive",
value: function() {
return this.active
}
},
{
key: "destroy",
value: function() {
return this.disable(),
this.setMap(null),
this._onDestroy(),
this.removeAllListeners(),
this
}
},
{
key: "_onInit",
value: function() {}
},
{
key: "_onDestroy",
value: function() {}
},
{
key: "_addToMap",
value: function() {}
},
{
key: "_removeFromMap",
value: function() {}
},
{
key: "_createControl",
value: function() {}
}]),
e
} (v);
e.
default = m
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e) {
var n = ["fill:" + e.color, "stroke:" + e.borderColor, "stroke-width:" + e.borderWidth],
r = document.createElementNS(t, "ellipse");
return r.setAttribute("style", n.join(";")),
r
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(16),
s = r(o),
a = n(3),
u = r(a),
c = n(0),
l = r(c),
h = n(1),
f = r(h),
p = n(5),
d = r(p),
g = n(35),
y = r(g),
v = n(4),
m = r(v),
_ = n(335),
w = r(_),
b = n(336),
x = r(b),
E = n(258),
M = TMap,
I = M.Point,
S = M.LatLng,
C = {
color: "rgba(55,119,255,0.16)",
borderWidth: 2,
borderColor: "#3777FF"
},
N = function(t) {
function e(t) { (0, l.
default)(this, e);
var n = (0, d.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t));
return n.iconInfo = t.iconInfo,
n
}
return (0, m.
default)(e, t),
(0, f.
default)(e, [{
key: "onInit",
value: function(t) { (0, y.
default)(e.prototype.__proto__ || (0, u.
default)(e.prototype), "onInit", this).call(this, t),
this.setCenter(t.center),
this.setMajorRadius(t.majorRadius),
this.setMinorRadius(t.minorRadius)
}
},
{
key: "updateDOM",
value: function() {
if (this._shape && this.map) {
var t = this.map._getSpatialResolution(),
e = this.majorRadius / t,
n = this.minorRadius / t;
e === this._shapeMajorRadius && n === this._shapeMinorRadius || this._updateShape(e, n);
var r = this.map.projectToContainer(this.center),
i = r.x - this.dom.clientWidth / 2,
o = r.y - this.dom.clientHeight / 2;
this.dom.style.transform = "translate3d(" + i + "px, " + o + "px, 0px)"
}
}
},
{
key: "setStyle",
value: function(t) {
this.style = (0, s.
default)({},
C, t)
}
},
{
key: "setCenter",
value: function(t) {
this.center = t,
this.updateDOM()
}
},
{
key: "getCenter",
value: function() {
return this.center
}
},
{
key: "setMajorRadius",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 5;
this.majorRadius = t,
this.updateDOM()
}
},
{
key: "getMajorRadius",
value: function() {
return this.majorRadius
}
},
{
key: "setMinorRadius",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 5;
this.minorRadius = t,
this.updateDOM()
}
},
{
key: "getMinorRadius",
value: function() {
return this.minorRadius
}
},
{
key: "_updateShape",
value: function(t, e) {
if (this._shape) {
this._shape.setAttribute("cx", t),
this._shape.setAttribute("cy", e),
this._shape.setAttribute("rx", t),
this._shape.setAttribute("ry", e);
var n = 0,
r = 0,
i = 2 * t,
o = 2 * e;
i += 40,
o += 40,
n -= 20,
r -= 20,
this.dom.setAttribute("viewBox", [n, r, i, o].join(" ")),
this.dom.setAttribute("width", i),
this.dom.setAttribute("height", o),
this._shapeMajorRadius = t,
this._shapeMinorRadius = e
}
}
},
{
key: "_createShape",
value: function() {
return i(this._ns, this.style)
}
},
{
key: "setEditable",
value: function(t) {
var e = this;
if (t !== this.editable) {
if (t) {
var n = this.map,
r = new x.
default({
map:
n,
position: this.center,
correctHandler: this.correctHandler,
iconStyle: this.iconInfo.actual || {}
}),
i = new x.
default({
map:
n,
position: this._getRadiusPos("major"),
correctHandler: function(t) {
return new S(e.center.getLat(), e.correctHandler(t).getLng())
},
light: !0,
iconStyle: this.iconInfo.virtual || {}
}),
o = new x.
default({
map:
n,
position: this._getRadiusPos("minor"),
correctHandler: function(t) {
return new S(e.correctHandler(t).getLat(), e.center.getLng())
},
light: !0,
iconStyle: this.iconInfo.virtual || {}
});
r.on("editing",
function(t) {
e.setCenter(r.getPosition()),
i.setPosition(e._getRadiusPos("major")),
o.setPosition(e._getRadiusPos("minor")),
e.emit("editing", t)
}),
r.on("edit_end",
function() {
e.emit("edit_end")
}),
i.on("editing",
function(t) {
e.setMajorRadius((0, E.computeMeterDist)(n, e.getCenter(), t)),
e.emit("editing", t)
}),
i.on("edit_end",
function() {
e.emit("edit_end")
}),
o.on("editing",
function(t) {
e.setMinorRadius((0, E.computeMeterDist)(n, e.getCenter(), t)),
e.emit("editing", t)
}),
o.on("edit_end",
function() {
e.emit("edit_end")
}),
this.centerEditPoint = r,
this.majorRadiusEditPoint = i,
this.minorRadiusEditPoint = o
} else this.centerEditPoint.destroy(),
this.majorRadiusEditPoint.destroy(),
this.minorRadiusEditPoint.destroy(),
this.centerEditPoint = null,
this.majorRadiusEditPoint = null,
this.minorRadiusEditPoint = null;
this.editable = !!t
}
}
},
{
key: "_getRadiusPos",
value: function(t) {
var e = this.map,
n = this.center,
r = this.majorRadius,
i = this.minorRadius,
o = "major" === t,
s = o ? r: i,
a = e.projectToContainer(n),
u = s / e._getSpatialResolution(),
c = a.add(o ? new I(u, 0) : new I(0, -u));
return e.unprojectFromContainer(c)
}
}]),
e
} (w.
default);
e.
default = N
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e) {
var n = ["fill:" + e.color, "stroke:" + e.borderColor, "stroke-width:" + e.borderWidth],
r = document.createElementNS(t, "path");
return r.setAttribute("style", n.join(";")),
r
}
function o(t) {
if ((0, S.isCombinedPolygon)(t)) return t.map(function(t) {
return o(t)
}).join(" ");
if ((0, S.isHoleyPolygon)(t)) {
var e = !1;
return t.map(function(t, n) {
if (n) {
return (0, S.isClockwise)(t) === e && t.reverse(),
o(t)
}
return e = (0, S.isClockwise)(t),
o(t)
}).join(" ")
}
return t.map(function(t, e) {
return (e ? "": "M") + t.x + "," + t.y
}).join(" ") + " z"
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var s = n(16),
a = r(s),
u = n(3),
c = r(u),
l = n(0),
h = r(l),
f = n(1),
p = r(f),
d = n(5),
g = r(d),
y = n(35),
v = r(y),
m = n(4),
_ = r(m),
w = n(336),
b = r(w),
x = n(258),
E = n(331),
M = n(389),
I = r(M),
S = n(279),
C = n(112),
N = TMap,
P = N.LatLng,
L = {
color: "rgba(55,119,255,0.16)",
borderWidth: 2,
borderColor: "#3777FF"
},
A = function(t) {
function e(t) { (0, h.
default)(this, e);
var n = (0, g.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t));
return n.iconInfo = t.iconInfo,
n
}
return (0, _.
default)(e, t),
(0, p.
default)(e, [{
key: "onInit",
value: function(t) { (0, v.
default)(e.prototype.__proto__ || (0, c.
default)(e.prototype), "onInit", this).call(this, t),
this.setCenter(t.center),
this.setWidth(t.width),
this.setHeight(t.height)
}
},
{
key: "_updatePoints",
value: function() {
var t = (0, E.getRectanglePath)(this.center, this.width, this.height);
this.path = t.map(function(t) {
return new TMap.LatLng(t.getLat(), t.getLng())
});
var e = this.path,
n = this.map,
r = (0, S.projectPath)(n, e),
i = o(r);
return this._shape.setAttribute("d", i),
r.flat(1 / 0)
}
},
{
key: "setStyle",
value: function(t) {
this.style = (0, a.
default)({},
L, t)
}
},
{
key: "setCenter",
value: function(t) {
this.center = t,
this.updateDOM()
}
},
{
key: "getCenter",
value: function() {
return this.center
}
},
{
key: "setWidth",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 5;
this.width = t,
this.updateDOM()
}
},
{
key: "getWidth",
value: function() {
return this.width
}
},
{
key: "setHeight",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 5;
this.height = t,
this.updateDOM()
}
},
{
key: "getHeight",
value: function() {
return this.height
}
},
{
key: "_createShape",
value: function() {
return i(this._ns, this.style)
}
},
{
key: "setEditable",
value: function(t) {
var e = this;
if (t !== this.editable) {
if (t) {
var n = this.map,
r = new b.
default({
map:
n,
position: (0, x.computeMidPoint)(n, this.path[0], this.path[3]),
correctHandler: function(t) {
return new P(e.correctHandler(t).getLat(), e.center.getLng())
},
iconStyle: this.iconInfo.virtual || {}
}),
i = new b.
default({
map:
n,
position: (0, x.computeMidPoint)(n, this.path[0], this.path[1]),
correctHandler: function(t) {
return new P(e.center.getLat(), e.correctHandler(t).getLng())
},
iconStyle: this.iconInfo.virtual || {}
}),
o = new b.
default({
map:
n,
position: this.center,
correctHandler: this.correctHandler,
iconStyle: this.iconInfo.actual || {}
}),
s = this;
o.on("editing",
function(t) {
e.setCenter(t),
o.setPosition(t),
r.setPosition((0, x.computeMidPoint)(n, s.path[0], s.path[3])),
i.setPosition((0, x.computeMidPoint)(n, s.path[0], s.path[1])),
e.emit("editing", t)
}),
o.on("edit_end",
function() {
e.emit("edit_end")
}),
r.on("editing",
function(t) {
var i = (0, C.latLngToMercator)(e.center),
o = (0, C.latLngToMercator)(t),
a = Math.abs(i.y - o.y);
e.setHeight(2 * a),
r.setPosition((0, x.computeMidPoint)(n, s.path[0], s.path[3])),
e.emit("editing", t)
}),
r.on("edit_end",
function() {
e.emit("edit_end")
}),
i.on("editing",
function(t) {
var r = (0, C.latLngToMercator)(e.center),
o = (0, C.latLngToMercator)(t),
a = Math.abs(r.x - o.x);
e.setWidth(2 * a),
i.setPosition((0, x.computeMidPoint)(n, s.path[0], s.path[1])),
e.emit("editing", t)
}),
i.on("edit_end",
function() {
e.emit("edit_end")
}),
this.centerEditPoint = o,
this.topEditPoint = r,
this.rightEditPoint = i
} else this.centerEditPoint.destroy(),
this.topEditPoint.destroy(),
this.rightEditPoint.destroy(),
this.centerEditPoint = null,
this.topEditPoint = null,
this.rightEditPoint = null;
this.editable = !!t
}
}
},
{
key: "_reCalcFeature",
value: function() {}
}]),
e
} (I.
default);
e.
default = A
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(3),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = n(5),
h = r(l),
f = n(4),
p = r(f),
d = n(210),
g = n(297),
y = n(296),
v = n(1029);
n(1033);
var m = TMap,
_ = m.DOMOverlay,
w = function(t) {
function e() {
return (0, a.
default)(this, e),
(0, h.
default)(this, (e.__proto__ || (0, o.
default)(e)).apply(this, arguments))
}
return (0, p.
default)(e, t),
(0, c.
default)(e, [{
key: "onInit",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
this.instance = t.instance,
this.position = t.position,
this._handlers = [],
this.visible = !0
}
},
{
key: "createDOM",
value: function() {
var t = this,
e = (0, d.toDom)((0, g.Template)(v, this.instance)),
n = e.querySelector(".tip-close");
return n && (this.finger = new y.Finger(n, {
preventDefaultMove: !0,
preventDefaultEnd: !0
}), this.finger.on("tap",
function() {
t.emit("remove")
})),
e.querySelector(".measure-tool-tip")
}
},
{
key: "enablePointerEvents",
value: function() {
this.dom.style.pointerEvents = ""
}
},
{
key: "disablePointerEvents",
value: function() {
this.dom.style.pointerEvents = "none"
}
},
{
key: "updateContent",
value: function(t) {
var e = this.dom.querySelector(".tip-total");
if (e) e.innerHTML = t.distance;
else {
this.dom.querySelector(".tip-node").innerHTML = "" + t.distance + t.unit
}
}
},
{
key: "updateDOM",
value: function() {
if (this.map && this.visible) {
var t = this.map.projectToContainer(this.position),
e = t.getX() - this.dom.offsetWidth / 2 + "px",
n = t.getY() - this.dom.offsetHeight / 2 + "px";
this.dom.style.transform = "translate3d(" + e + ", " + n + ", 0px)"
}
}
},
{
key: "setVisible",
value: function(t) {
return this.visible = !!t,
this.dom.style.display = this.visible ? "": "none",
this
}
},
{
key: "onDestroy",
value: function() {
this._handlers.forEach(function(t) {
return t.remove()
}),
this.finger && this.finger.destroy(),
this.instance = null,
this.visible = null
}
}]),
e
} (_);
e.
default = w
},
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
var e = t.type,
n = t.styleId,
r = t.data,
i = null;
switch (e) {
case H.POINT:
i = {
styleId: n,
position: r.position
};
break;
case H.CIRCLE:
i = {
styleId: n,
center: r.center,
radius: r.radius
};
break;
case H.RECTANGLE:
i = {
styleId: n,
center: r.center,
width: r.width,
height: r.height
};
break;
case H.ELLIPSE:
i = {
styleId: n,
center: r.center,
majorRadius: r.majorRadius,
minorRadius: r.minorRadius
};
break;
case H.POLYLINE:
r.path.length > 1 && (i = {
styleId: n,
paths: r.path
});
case H.POLYGON:
default:
r.path.length > 2 && (i = {
styleId: n,
paths: r.path
})
}
return i
}
function o(t) {
var e = t.src,
n = t.width,
r = t.height,
i = t.anchor;
if (Q(e) || (!Z(e) && new z.BaseTypeError("src", "String", e).warn(), delete t.src), Z(n) || s("width", n) || delete t.width, Z(r) || s("height", r) || delete t.height, J(i)) {
var o = i.x,
u = i.y;
K(o) || (!Z(o) && new z.BaseTypeError("x", "Number", o).warn(), t.anchor.x = a(t.width)),
K(u) || (!Z(o) && new z.BaseTypeError("y", "Number", u).warn(), t.anchor.y = a(t.height))
} else t.anchor = {
x: a(t.width),
y: a(t.height)
},
!Z(i) && new z.BaseTypeError("anchor", "Object", i).warn();
return t
}
function s(t, e) {
return K(e) ? !(e < 0) || (console.warn("传入的iconstyle的" + t + "属性小于0"), !1) : (new z.BaseTypeError(t, "Number", e).warn(), !1)
}
function a(t) {
return Z(t) ? tt: t / 2
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var u = n(241),
c = r(u),
l = n(24),
h = r(l),
f = n(221),
p = r(f),
d = n(223),
g = r(d),
y = n(3),
v = r(y),
m = n(0),
_ = r(m),
w = n(1),
b = r(w),
x = n(5),
E = r(x),
M = n(35),
I = r(M),
S = n(4),
C = r(S),
N = n(500),
P = r(N),
L = n(712),
A = r(L),
O = n(714),
T = r(O),
R = n(461),
D = n(715),
k = r(D),
F = n(713),
j = r(F),
q = n(258),
B = n(279),
G = n(41),
U = r(G),
z = n(29),
Y = n(43),
X = TMap,
V = X.LatLngBounds,
W = X.Point,
H = TMap.constants.GEOMETRY_TYPES,
J = U.
default.isObject,
Z = U.
default.isUndefined,
Q = U.
default.isString,
K = U.
default.isNumber,
$ = {
actual: {},
virtual: {}
},
tt = 5,
et = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, _.
default)(this, e);
var n = (0, E.
default)(this, (e.__proto__ || (0, v.
default)(e)).call(this, t));
return (0, Y.statCn)("GeometryEditor"),
n
}
return (0, C.
default)(e, t),
(0, b.
default)(e, [{
key: "_onInit",
value: function() {
var t = this,
e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
n = e.overlayList,
r = void 0 === n ? [] : n,
i = e.activeOverlayId,
s = void 0 === i ? void 0 : i,
a = e.actionMode,
u = void 0 === a ? R.EDITOR_ACTION.INTERACT: a,
c = e.snappable,
l = void 0 !== c && c,
h = e.snapDist,
f = e.selectable,
p = void 0 !== f && f,
d = e.iconInfo,
y = void 0 === d ? $: d;
if (this.setSnappable(l, h), this.setSelectable(p), J(y) ? (y.actual = J(y.actual) ? o(y.actual) : {},
y.virtual = J(y.virtual) ? o(y.virtual) : {},
this._iconInfo = (0, g.
default)({},
$, y)) : (console.warn("GeometryEditorOptions中的iconInfo参数有误"), this._iconInfo = $), this._overlayMgr = new A.
default(this), r.forEach(function(e) {
t.addOverlay(e)
}), !s) {
var v = this.getOverlayList();
s = v[0] && v[0].id
}
this.setActiveOverlay(s),
this.setActionMode(u),
this._overlayMgr.on("active_changed",
function() {
t._stopAction(),
t._startAction(),
t.emit("active_changed")
})
}
},
{
key: "_onDestroy",
value: function() {
this._overlayMgr && (this.clearOverlay(), this._overlayMgr.removeAllListeners()),
this._overlayMgr = null
}
},
{
key: "_addToMap",
value: function() {
this.map && (this._painter = new T.
default({
map:
this.map,
correctHandler: this._correctPoint.bind(this)
}), this._modifier = new j.
default({
map:
this.map,
correctHandler: this._correctPoint.bind(this),
iconInfo: this._iconInfo
}), this._selector = new k.
default)
}
},
{
key: "_removeFromMap",
value: function() {
this.disable(),
this._painter && (this._painter.disable(), this._painter.removeAllListeners(), this._painter = null),
this._modifier && (this._modifier.restore(), this._modifier.disable(), this._modifier.removeAllListeners(), this._modifier = null),
this._selector && (this._selector.disable(), this._selector.removeAllListeners(), this._selector = null)
}
},
{
key: "_createControl",
value: function() {
return null
}
},
{
key: "addOverlay",
value: function(t) {
if (!J(t)) return new z.BaseTypeError("editableOverlay", "Object", t).error(),
this;
if (this._overlayMgr.add(t), !this.getActiveOverlay()) {
var e = this.getOverlayList(),
n = e[0] && e[0].id;
this.setActiveOverlay(n)
}
return this
}
},
{
key: "removeOverlay",
value: function(t) {
return this._overlayMgr.remove(t),
this
}
},
{
key: "clearOverlay",
value: function() {
return this._overlayMgr.clear(),
this
}
},
{
key: "getOverlayList",
value: function() {
return this._overlayMgr.getMemberList()
}
},
{
key: "setActiveOverlay",
value: function(t) {
return this._overlayMgr.activate(t),
this
}
},
{
key: "getActiveOverlay",
value: function() {
return this._overlayMgr.getActiveMember()
}
},
{
key: "setActionMode",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : R.EDITOR_ACTION.INTERACT;
if (t === this.actionMode) return this;
var e = (0, p.
default)(R.EDITOR_ACTION);
if (e.indexOf(t) < 0) {
if (new z.EnumError("actionMode", e, t).error(), !Z(this.actionMode)) return this;
t = R.EDITOR_ACTION.INTERACT
}
return this._stopAction(),
this.actionMode = t,
this._startAction(),
this.emit("mode_changed"),
this
}
},
{
key: "getActionMode",
value: function() {
return this.actionMode
}
},
{
key: "getSelectedList",
value: function() {
return [].concat((0, h.
default)(this._selectedSet))
}
},
{
key: "setSnappable",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] && arguments[0],
e = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 10;
return this._snappable = !!t,
this._snapDist = e,
this
}
},
{
key: "setSelectable",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] && arguments[0];
return t = !!t,
this._selectable !== t && (this._selectable = t, this._selectedSet || (this._selectedSet = new c.
default), this.actionMode === R.EDITOR_ACTION.INTERACT && (t ? this._startInteract() : this._stopInteract())),
this
}
},
{
key: "enable",
value: function() {
return this.isActive() || ((0, I.
default)(e.prototype.__proto__ || (0, v.
default)(e.prototype), "enable", this).call(this), this._mapViewMode = this.map.getViewMode(), this.map.setViewMode("2D"), this._startAction()),
this
}
},
{
key: "disable",
value: function() {
return this.isActive() && ((0, I.
default)(e.prototype.__proto__ || (0, v.
default)(e.prototype), "disable", this).call(this), this.map.setViewMode(this._mapViewMode), this._stopAction()),
this
}
},
{
key: "split",
value: function() {
var t = this,
e = this.getActionMode() === R.EDITOR_ACTION.INTERACT,
n = 1 === this.getSelectedList().length;
if (!e || !n) return console.warn("拆分失败:无选中图形或选中多个图形。"),
this.emit("split_fail", {
message: "拆分失败:无选中图形或选中多个图形。"
}),
this;
var r = this.getSelectedList()[0],
i = this.getActiveOverlay();
if (i.overlay._geometryType !== H.POLYLINE && i.overlay._geometryType !== H.POLYGON) return console.warn("拆分失败:暂只支持多边形拆分。"),
this.emit("split_fail", {
message: "拆分失败:暂只支持多边形拆分。"
}),
this;
if ((0, B.isCombinedPolygon)(r.paths)) return console.warn("拆分失败:暂不支持飞地形式的多边形拆分。"),
this.emit("split_fail", {
message: "拆分失败:暂不支持飞地形式的多边形拆分。"
}),
this;
this._pauseInteract();
var o = this._painter;
return o.enable(H.POLYLINE, {
color: "#FF0000",
dash: [10, 5]
}),
o.on("draw_complete",
function(e) {
var n = null;
try {
n = (0, q.split)(r, e.path, t.map)
} catch(e) {
return console.warn(e),
void t.emit("split_fail", {
message: "拆分失败:不满足拆分的几何条件。"
})
}
if (t._stopDraw(), t._restoreInteract(), n) {
var o = t._modifier,
s = t._selectedSet;
o.setLayer(i),
s.clear(),
i.overlay.remove([r.id]),
i.overlay.add(n),
n.forEach(function(t) {
o.add(t),
s.add(t)
}),
t.emit("split_complete", n)
} else console.warn("拆分失败:不满足拆分的几何条件。"),
t.emit("split_fail", {
message: "拆分失败:不满足拆分的几何条件。"
})
}),
this
}
},
{
key: "union",
value: function() {
var t = this.getActionMode() === R.EDITOR_ACTION.INTERACT,
e = this.getSelectedList().length > 1;
if (!t || !e) return console.warn("合并失败:无选中图形或仅选中一个图形。"),
this.emit("union_fail", {
message: "合并失败:无选中图形或仅选中一个图形。"
}),
this;
var n = this.getSelectedList(),
r = this.getActiveOverlay();
if (! (r.overlay instanceof window.TMap.MultiPolygon) || r.overlay instanceof window.TMap.MultiCircle) return console.warn("拆分失败:暂只支持多边形合并。"),
this.emit("split_fail", {
message: "拆分失败:暂只支持多边形合并。"
}),
this;
for (var i = 0; i < n.length; i++) {
var o = n[i];
if ((0, B.isCombinedPolygon)(o.paths)) return console.warn("合并失败:暂不支持飞地形式的多边形进行合并。"),
this.emit("union_fail", {
message: "合并失败:暂不支持飞地形式的多边形进行合并。"
}),
this
}
var s = null;
try {
s = (0, q.union)(n, this.map)
} catch(t) {
return console.warn(t),
void this.emit("union_fail", {
message: "拆分失败:不满足合并的几何条件。"
})
}
if (s) {
var a = this._modifier,
u = this._selectedSet;
a.setLayer(r),
u.clear(),
r.overlay.remove(n.map(function(t) {
return t.id
})),
r.overlay.add([s]),
a.add(s),
u.add(s),
this.emit("union_complete", s)
} else console.warn("合并失败:不满足合并的几何条件。"),
this.emit("union_fail", {
message: "合并失败:不满足合并的几何条件。"
});
return this
}
},
{
key: "stop",
value: function() {
this.actionMode === R.EDITOR_ACTION.DRAW ? this._painter.stop() : this._selector.stop()
}
},
{
key: "delete",
value: function() {
var t = this.getActionMode() === R.EDITOR_ACTION.INTERACT,
e = this.getSelectedList().length > 0;
return t && e && this._modifier.delete(),
this
}
},
{
key: "select",
value: function(t) {
if (!Array.isArray(t)) return new z.BaseTypeError("idList", "Array", t).error(),
this;
if (this.actionMode === R.EDITOR_ACTION.DRAW) return console.warn("编辑器当前处于绘制模式,无法选中图形"),
this;
var e = this.getActiveOverlay();
if (!e) return console.warn("编辑器没有处于编辑状态的图层,无法选中图形"),
this;
var n = this._selectedSet,
r = this._modifier;
if (this._selector.disable(), this._selector.stop(), this._selector.enable(this.getOverlayList(), e.id), r.setLayer(e), t.length > 0) {
var i = e.overlay && e.overlay.getGeometries(),
o = !1;
i.forEach(function(e) {
t.includes(e.id) && (n.has(e) || (r.add(e), n.add(e), o = !0))
}),
o && this.emit("select")
}
return this
}
},
{
key: "_startAction",
value: function() {
if (this.isActive()) switch (this.actionMode) {
case R.EDITOR_ACTION.DRAW:
this._startDraw();
break;
default:
this._startInteract()
}
}
},
{
key: "_startDraw",
value: function() {
var t = this,
e = this.getActiveOverlay();
if (this.map && e) {
var n = this._painter,
r = e.overlay,
o = e.drawingStyleId,
s = r.getGeometryType(),
a = r.getStyles(),
u = a[o] || a.
default;
n.enable(s, u),
n.on("drawing",
function(e, n) {
var r = i({
type: s,
styleId: o,
data: e
});
t.emit("drawing", {
position: n,
geometry: r
})
}),
n.on("draw_complete",
function(e) {
var n = i({
type: s,
styleId: o,
data: e
});
n && (r.add([n]), t.emit("draw_complete", n))
})
}
}
},
{
key: "_startInteract",
value: function() {
var t = this.getOverlayList(),
e = this.getActiveOverlay();
if (this._selectable && t.length && e) {
var n = this._selector,
r = this._modifier;
n.enable(t, this.getActiveOverlay().id),
n.on("single", this._onSingleSelect.bind(this)),
n.on("multiple", this._onMultipleSelect.bind(this)),
n.on("clear", this._onClearSelected.bind(this)),
r.on("delete", this._onDelete.bind(this)),
r.on("adjust", this._onAdjust.bind(this)),
r.on("adjusting", this._onAdjusting.bind(this))
}
}
},
{
key: "_onSingleSelect",
value: function(t) {
var e = t.layerId,
n = t.geometry,
r = this._modifier,
i = this._selectedSet;
this.setActiveOverlay(e),
r.setLayer(this.getActiveOverlay()),
r.add(n),
i.clear(),
i.add(n),
this.emit("select")
}
},
{
key: "_onMultipleSelect",
value: function(t) {
var e = t.geometry,
n = this._modifier,
r = this._selectedSet;
r.has(e) || (n.add(e), r.add(e), this.emit("select"))
}
},
{
key: "_onClearSelected",
value: function() {
this._modifier.restore(),
this._selectedSet.clear()
}
},
{
key: "_onDelete",
value: function(t) {
this._selectedSet.clear(),
this.emit("delete_complete", t.geometryList)
}
},
{
key: "_onAdjust",
value: function(t) {
this.emit("adjust_complete", t)
}
},
{
key: "_onAdjusting",
value: function(t) {
this.emit("adjusting", t)
}
},
{
key: "_stopAction",
value: function() {
switch (this.actionMode) {
case R.EDITOR_ACTION.DRAW:
this._stopDraw();
break;
default:
this._stopInteract()
}
}
},
{
key: "_stopDraw",
value: function() {
this._painter && (this._painter.disable(), this._painter.removeAllListeners())
}
},
{
key: "_stopInteract",
value: function() {
var t = this._selector,
e = this._modifier;
t && e && (t.disable(), t.removeAllListeners(), e.restore(), e.removeAllListeners(), this._selectedSet.clear())
}
},
{
key: "_pauseInteract",
value: function() {
var t = this._selector,
e = this._modifier;
t && e && (t.disable(), e.disable())
}
},
{
key: "_restoreInteract",
value: function() {
var t = this._selector,
e = this._modifier;
t && e && (t.enable(this.getOverlayList(), this.getActiveOverlay().id), e.enable())
}
},
{
key: "_correctPoint",
value: function(t) {
return this._snap(t)
}
},
{
key: "_snap",
value: function(t) {
if (this._snappable) {
var e = this.map,
n = this._snapDist,
r = e.projectToContainer(t),
i = e.unprojectFromContainer(r.add(new W( - n, n))),
o = e.unprojectFromContainer(r.add(new W(n, -n))),
s = new V(i, o),
a = this.getOverlayList().filter(function(t) {
return t.isSnapTarget
}),
u = t;
return a.forEach(function(e) {
var r = e.overlay.snap(t, n, s);
r && r.dist < 1 / 0 && (u = r.latLng)
}),
u
}
return t
}
}]),
e
} (P.
default);
e.
default = et
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(283),
o = r(i),
s = n(282),
a = r(s),
u = n(3),
c = r(u),
l = n(0),
h = r(l),
f = n(1),
p = r(f),
d = n(5),
g = r(d),
y = n(4),
v = r(y),
m = n(500),
_ = r(m),
w = n(722),
b = r(w),
x = n(721),
E = r(x),
M = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};
return (0, h.
default)(this, e),
(0, g.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this, t))
}
return (0, v.
default)(e, t),
(0, p.
default)(e, [{
key: "measureDistance",
value: function() {
function t() {
return e.apply(this, arguments)
}
var e = (0, a.
default)(o.
default.mark(function t() {
return o.
default.wrap(function(t) {
for (;;) switch (t.prev = t.next) {
case 0:
return this.isActive() || console.warn("测量工具尚未启用!"),
this.map || console.warn("测量工具尚未添加到地图中!"),
t.next = 4,
this.abortCurrentMeasurement();
case 4:
return this._currentMeasurement = this._polylineMeasurement,
t.next = 7,
this._polylineMeasurement.measureDistance();
case 7:
return this._measurementInfoPromise = t.sent,
this._currentMeasurement = null,
t.abrupt("return", this._measurementInfoPromise);
case 10:
case "end":
return t.stop()
}
},
t, this)
}));
return t
} ()
},
{
key: "measureArea",
value: function() {
function t() {
return e.apply(this, arguments)
}
var e = (0, a.
default)(o.
default.mark(function t() {
return o.
default.wrap(function(t) {
for (;;) switch (t.prev = t.next) {
case 0:
return this.isActive() || console.warn("测量工具尚未启用!"),
this.map || console.warn("测量工具尚未添加到地图中!"),
t.next = 4,
this.abortCurrentMeasurement();
case 4:
return this._currentMeasurement = this._polygonMeasurement,
t.next = 7,
this._polygonMeasurement.measureArea();
case 7:
return this._measurementInfoPromise = t.sent,
this._currentMeasurement = null,
t.abrupt("return", this._measurementInfoPromise);
case 10:
case "end":
return t.stop()
}
},
t, this)
}));
return t
} ()
},
{
key: "abortCurrentMeasurement",
value: function() {
function t() {
return e.apply(this, arguments)
}
var e = (0, a.
default)(o.
default.mark(function t() {
return o.
default.wrap(function(t) {
for (;;) switch (t.prev = t.next) {
case 0:
if (!this._currentMeasurement) {
t.next = 7;
break
}
if (this._currentMeasurement.abort(), !this._measurementInfoPromise) {
t.next = 7;
break
}
return t.next = 5,
this._measurementInfoPromise;
case 5:
this._measurementInfoPromise = null,
this._currentMeasurement = null;
case 7:
case "end":
return t.stop()
}
},
t, this)
}));
return t
} ()
},
{
key: "currentMeasurement",
value: function() {
return this._currentMeasurement
}
},
{
key: "isMeasuring",
value: function() {
return !! this._currentMeasurement
}
},
{
key: "_onInit",
value: function() {
this._polylineMeasurement = new b.
default({
measureTool:
this
}),
this._polygonMeasurement = new E.
default({
measureTool:
this
}),
this._currentMeasurement = null
}
},
{
key: "_addToMap",
value: function() {
this._polylineMeasurement.addToMap(this.map),
this._polygonMeasurement.addToMap(this.map)
}
},
{
key: "_removeFromMap",
value: function() {
this._polylineMeasurement.removeFromMap(),
this._polygonMeasurement.removeFromMap()
}
}]),
e
} (_.
default);
e.
default = M
},
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
function r(t, e, r, s) {
if (s = s || {},
!n.i(o.isObject)(s)) throw new Error("options is invalid");
var a = s.units,
u = s.properties,
c = n.i(i.getCoord)(t),
l = n.i(o.degreesToRadians)(c[0]),
h = n.i(o.degreesToRadians)(c[1]),
f = n.i(o.degreesToRadians)(r),
p = n.i(o.lengthToRadians)(e, a),
d = Math.asin(Math.sin(h) * Math.cos(p) + Math.cos(h) * Math.sin(p) * Math.cos(f)),
g = l + Math.atan2(Math.sin(f) * Math.sin(p) * Math.cos(h), Math.cos(p) - Math.sin(h) * Math.sin(d)),
y = n.i(o.radiansToDegrees)(g),
v = n.i(o.radiansToDegrees)(d);
return n.i(o.point)([y, v], u)
}
var i = n(109),
o = n(48);
e.a = r
},
, ,
function(t, e, n) {
"use strict";
function r(t, e, r) {
if (r = r || {},
!n.i(c.isObject)(r)) throw new Error("options is invalid");
var h = t.geometry ? t.geometry.type: t.type;
if ("LineString" !== h && "MultiLineString" !== h) throw new Error("lines must be LineString or MultiLineString");
var f = n.i(c.point)([1 / 0, 1 / 0], {
dist: 1 / 0
}),
p = 0;
return n.i(u.flattenEach)(t,
function(t) {
for (var u = n.i(l.getCoords)(t), h = 0; h < u.length - 1; h++) {
var d = n.i(c.point)(u[h]);
d.properties.dist = n.i(o.
default)(e, d, r);
var g = n.i(c.point)(u[h + 1]);
g.properties.dist = n.i(o.
default)(e, g, r);
var y = n.i(o.
default)(d, g, r),
v = Math.max(d.properties.dist, g.properties.dist),
m = n.i(i.
default)(d, g),
_ = n.i(s.a)(e, v, m + 90, r),
w = n.i(s.a)(e, v, m - 90, r),
b = n.i(a.
default)(n.i(c.lineString)([_.geometry.coordinates, w.geometry.coordinates]), n.i(c.lineString)([d.geometry.coordinates, g.geometry.coordinates])),
x = null;
b.features.length > 0 && (x = b.features[0], x.properties.dist = n.i(o.
default)(e, x, r), x.properties.location = p + n.i(o.
default)(d, x, r)),
d.properties.dist < f.properties.dist && (f = d, f.properties.index = h, f.properties.location = p),
g.properties.dist < f.properties.dist && (f = g, f.properties.index = h + 1, f.properties.location = p + y),
x && x.properties.dist < f.properties.dist && (f = x, f.properties.index = h),
p += y
}
}),
f
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(366),
o = n(327),
s = n(612),
a = n(328),
u = n(121),
c = n(48),
l = n(109);
e.
default = r
},
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
return "[object Number]" === Object.prototype.toString.call(t)
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(0),
s = r(o),
a = n(1),
u = r(a),
c = n(74),
l = function() {
function t(e, n, r, o) { (0, s.
default)(this, t),
this.minX = 1 / 0,
this.minY = 1 / 0,
this.maxX = -1 / 0,
this.maxY = -1 / 0,
i(e) && i(n) && this.extend(new c.Point(e, n)),
i(r) && i(o) && this.extend(new c.Point(r, o))
}
return (0, u.
default)(t, [{
key: "extend",
value: function(t) {
t && (this.minX = Math.min(this.minX, t.x), this.maxX = Math.max(this.maxX, t.x), this.minY = Math.min(this.minY, t.y), this.maxY = Math.max(this.maxY, t.y))
}
},
{
key: "getMin",
value: function() {
return {
x: this.minX,
y: this.minY
}
}
},
{
key: "getMax",
value: function() {
return {
x: this.maxX,
y: this.maxY
}
}
},
{
key: "getSize",
value: function() {
return {
width: this.maxX - this.minX,
height: this.maxY - this.minY
}
}
}]),
t
} ();
e.
default = l
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(24),
o = r(i),
s = n(148),
a = r(s),
u = n(3),
c = r(u),
l = n(0),
h = r(l),
f = n(1),
p = r(f),
d = n(5),
g = r(d),
y = n(4),
v = r(y),
m = TMap,
_ = m.Event,
w = TMap,
b = w.GeometryOverlay,
x = function(t) {
function e(t) { (0, h.
default)(this, e);
var n = (0, g.
default)(this, (e.__proto__ || (0, c.
default)(e)).call(this));
return n.editor = t,
n.members = new a.
default,
n.activeMemberId = null,
n
}
return (0, v.
default)(e, t),
(0, p.
default)(e, [{
key: "add",
value: function() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},
e = t.id,
n = void 0 === e ? "": e,
r = t.overlay,
i = void 0 === r ? null: r,
o = t.name,
s = void 0 === o ? "": o,
a = t.isSnapTarget,
u = void 0 === a || a,
c = t.drawingStyleId,
l = void 0 === c ? "default": c,
h = t.selectedStyleId,
f = void 0 === h ? null: h;
if (! (i instanceof b)) return void console.warn("类型错误EditorOverlay.overlay类型错误应为GeometryOverlay。");
n || (n = i.id),
this.members.has(n) ? console.warn("EditorOverlay: id已存在请勿重复添加。") : this.members.set(n, {
id: n,
overlay: i,
name: s,
isSnapTarget: u,
drawingStyleId: l,
selectedStyleId: f
})
}
},
{
key: "remove",
value: function(t) {
if (this.members.has(t)) {
if (this.activeMemberId === t) {
var e = [].concat((0, o.
default)(this.members.keys())),
n = e.find(function(e) {
return e !== t
});
this.activate(n)
}
this.members.delete(t)
}
}
},
{
key: "getMemberList",
value: function() {
return [].concat((0, o.
default)(this.members.values()))
}
},
{
key: "activate",
value: function(t) {
this.activeMemberId !== t && (this.activeMemberId = null, this.members.has(t) && (this.activeMemberId = t), this.emit("active_changed"))
}
},
{
key: "getActiveMember",
value: function() {
return this.activeMemberId && this.members.get(this.activeMemberId)
}
},
{
key: "clear",
value: function() {
this.members.clear(),
this.activate(null)
}
}]),
e
} (_);
e.
default = x
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(16),
o = r(i),
s = n(27),
a = r(s),
u = n(241),
c = r(u),
l = n(3),
h = r(l),
f = n(0),
p = r(f),
d = n(1),
g = r(d),
y = n(5),
v = r(y),
m = n(4),
_ = r(m),
w = n(363),
b = r(w),
x = n(362),
E = r(x),
M = n(325),
I = r(M),
S = n(361),
C = r(S),
N = n(501),
P = r(N),
L = n(502),
A = r(L),
O = TMap,
T = O.Event,
R = TMap.constants.GEOMETRY_TYPES,
D = function(t) {
function e(t) {
var n = t.map,
r = t.correctHandler,
i = t.iconInfo; (0, p.
default)(this, e);
var o = (0, v.
default)(this, (e.__proto__ || (0, h.
default)(e)).call(this));
return o.map = n,
o.correctHandler = r,
o.overlay = null,
o.shapeSet = new c.
default,
o.iconInfo = i,
o.enable(),
o
}
return (0, _.
default)(e, t),
(0, g.
default)(e, [{
key: "enable",
value: function() {
if (!this.active) {
this._onKeyDown = this._onKeyDown.bind(this),
document.addEventListener("keydown", this._onKeyDown);
var t = !0,
e = !1,
n = void 0;
try {
for (var r, i = (0, a.
default)(this.shapeSet); ! (t = (r = i.next()).done); t = !0) {
r.value.enable()
}
} catch(t) {
e = !0,
n = t
} finally {
try { ! t && i.
return && i.
return ()
} finally {
if (e) throw n
}
}
this.active = !0
}
}
},
{
key: "disable",
value: function() {
if (this.active) {
document.removeEventListener("keydown", this._onKeyDown);
var t = !0,
e = !1,
n = void 0;
try {
for (var r, i = (0, a.
default)(this.shapeSet); ! (t = (r = i.next()).done); t = !0) {
r.value.disable()
}
} catch(t) {
e = !0,
n = t
} finally {
try { ! t && i.
return && i.
return ()
} finally {
if (e) throw n
}
}
this.active = !1
}
}
},
{
key: "setLayer",
value: function(t) {
this.restore(),
this.overlay = t.overlay,
this.selectedStyle = this.overlay.getStyles()[t.selectedStyleId]
}
},
{
key: "add",
value: function(t) {
var e = this;
this.overlay.remove([t.id]);
var n = new k({
type: this.overlay.getGeometryType(),
style: this.selectedStyle || this.overlay.getStyles()[t.styleId],
geometry: t,
map: this.map,
correctHandler: this.correctHandler,
iconInfo: this.iconInfo
});
n.on("adjust",
function(t) {
e.emit("adjust", t)
}),
n.on("adjusting",
function(t) {
e.emit("adjusting", t)
}),
this.shapeSet.add(n)
}
},
{
key: "restore",
value: function() {
var t = this._getAllGeometries();
this.overlay && this.overlay.add(t)
}
},
{
key: "delete",
value: function() {
var t = this._getAllGeometries();
t.length && this.emit("delete", {
geometryList: t
})
}
},
{
key: "_onKeyDown",
value: function(t) {
8 !== t.keyCode && 46 !== t.keyCode || this.delete()
}
},
{
key: "_getAllGeometries",
value: function() {
var t = [],
e = this.shapeSet,
n = !0,
r = !1,
i = void 0;
try {
for (var o, s = (0, a.
default)(e); ! (n = (o = s.next()).done); n = !0) {
var u = o.value;
t.push(u.geometry),
u.delete()
}
} catch(t) {
r = !0,
i = t
} finally {
try { ! n && s.
return && s.
return ()
} finally {
if (r) throw i
}
}
return e.clear(),
t
}
}]),
e
} (T);
e.
default = D;
var k = function(t) {
function e(t) {
var n = t.type,
r = t.geometry,
i = t.style,
s = t.map,
a = t.correctHandler,
u = t.iconInfo; (0, p.
default)(this, e);
var c = (0, v.
default)(this, (e.__proto__ || (0, h.
default)(e)).call(this)),
l = null,
f = {
map: s,
style: i,
correctHandler: a,
iconInfo: u
};
switch (n) {
case R.POINT:
l = new E.
default((0, o.
default)(f, {
position: r.position
}));
break;
case R.POLYGON:
l = new b.
default((0, o.
default)(f, {
path: r.paths
}));
break;
case R.POLYLINE:
l = new I.
default((0, o.
default)(f, {
path: r.paths
}));
break;
case R.CIRCLE:
l = new C.
default((0, o.
default)(f, {
center: r.center,
radius: r.radius
}));
break;
case R.RECTANGLE:
l = new A.
default((0, o.
default)(f, {
center: r.center,
width: r.width,
height: r.height
}));
break;
case R.ELLIPSE:
l = new P.
default((0, o.
default)(f, {
center: r.center,
majorRadius: r.majorRadius,
minorRadius: r.minorRadius
}))
}
return c.type = n,
c.shape = l,
c.geometry = r,
c.enable(),
c
}
return (0, _.
default)(e, t),
(0, g.
default)(e, [{
key: "enable",
value: function() {
var t = this;
if (!this.active) {
var e = this.shape;
e.setEditable(!0),
e.on("editing",
function(e) {
t.emit("adjusting", {
position: e,
geometry: t._getShapeGeometry()
})
}),
e.on("edit_end",
function() {
t.emit("adjust", t._getShapeGeometry())
}),
this.active = !0
}
}
},
{
key: "_getShapeGeometry",
value: function() {
var t = this.shape,
e = this.type,
n = this.geometry,
r = {};
switch (e) {
case R.POINT:
r = {
position: t.getPosition()
};
break;
case R.CIRCLE:
r = {
center: t.getCenter(),
radius: t.getRadius()
};
break;
case R.ELLIPSE:
r = {
center: t.getCenter(),
majorRadius: t.getMajorRadius(),
minorRadius: t.getMinorRadius()
};
break;
case R.RECTANGLE:
r = {
center: t.getCenter(),
width: t.getWidth(),
height: t.getHeight()
}
}
return (0, o.
default)(n, r)
}
},
{
key: "disable",
value: function() {
this.active && (this.shape.setEditable(!1), this.shape.removeAllListeners(), this.active = !1)
}
},
{
key: "delete",
value: function() {
this.shape && this.shape.destroy(),
this.removeAllListeners()
}
}]),
e
} (T)
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(3),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = n(5),
h = r(l),
f = n(4),
p = r(f),
d = n(325),
g = r(d),
y = n(363),
v = r(y),
m = n(361),
_ = r(m),
w = n(258),
b = n(112),
x = n(501),
E = r(x),
M = n(502),
I = r(M),
S = TMap,
C = S.Event,
N = S.LatLng,
P = TMap.constants.GEOMETRY_TYPES,
L = function(t) {
function e(t) {
var n = t.map,
r = t.correctHandler; (0, a.
default)(this, e);
var i = (0, h.
default)(this, (e.__proto__ || (0, o.
default)(e)).call(this));
return i.map = n,
i.correctHandler = r,
i.type = null,
i.style = null,
i.status = "disabled",
i
}
return (0, p.
default)(e, t),
(0, c.
default)(e, [{
key: "enable",
value: function(t, e) {
this._isActive() || (this.status = "enabled", this.type = t, this.style = e, this._onKeyDown = this._onKeyDown.bind(this), document.addEventListener("keydown", this._onKeyDown), this._preDraw())
}
},
{
key: "disable",
value: function() {
if (this._isActive()) {
switch (this.status) {
case "enabled":
this.map.off("click", this._onFirstClick);
break;
case "drawing":
default:
this._abortDraw()
}
document.removeEventListener("keydown", this._onKeyDown),
this.status = "disabled",
this.type = null,
this.style = null
}
}
},
{
key: "_isActive",
value: function() {
return "disabled" !== this.status
}
},
{
key: "_preDraw",
value: function() {
var t = this;
this._onFirstClick = function(e) {
t._draw(e)
},
this.map.once("click", this._onFirstClick)
}
},
{
key: "_abortDraw",
value: function() {
this.status = "enabled",
this.emit("abort")
}
},
{
key: "_endDraw",
value: function(t) {
this.status = "enabled",
this._preDraw(),
this.emit("draw_complete", t)
}
},
{
key: "_onKeyDown",
value: function(t) {
27 === t.keyCode && "drawing" === this.status && (this._abortDraw(), this._preDraw())
}
},
{
key: "stop",
value: function() {
"drawing" === this.status && (this._abortDraw(), this._preDraw())
}
},
{
key: "_draw",
value: function(t) {
this.status = "drawing";
var e = this.correctHandler(t.latLng);
switch (this.type) {
case P.POINT:
this._drawMarker(e);
break;
case P.CIRCLE:
this._drawCircle(e);
break;
case P.RECTANGLE:
this._drawRectangle(e);
break;
case P.ELLIPSE:
this._drawEllipse(e);
break;
case P.POLYGON:
case P.POLYLINE:
default:
this._drawPoly(e)
}
}
},
{
key: "_drawMarker",
value: function(t) {
this._endDraw({
position: t
})
}
},
{
key: "_drawPoly",
value: function(t) {
var e = this,
n = this.map,
r = this.style,
i = this.type,
o = this.correctHandler,
s = [t],
a = [];
i === P.POLYLINE ? a.push(new g.
default({
map:
n,
path: s,
style: r
})) : (a.push(new v.
default({
map:
n,
path: s,
style: {
color: r.color,
borderWidth: 0
}
})), r.showBorder && a.push(new g.
default({
map:
n,
path: s,
style: {
color: r.borderColor,
width: r.borderWidth || 1
}
})));
var u = (0, w.throttle)(function(t) {
var n = o(t.latLng),
r = s.concat([n]);
a.forEach(function(t) {
t.setPath(r)
}),
e.emit("drawing", {
path: r
},
n)
},
20),
c = function(t) {
s.push(o(t.latLng)),
a.forEach(function(t) {
t.setPath(s)
})
},
l = function t(r) {
n._doubleClickZoom && (n.doubleClickZoom.enable(), n._doubleClickZoom = null),
n.off("mousemove", u),
n.off("click", c),
n.off("dblclick", t),
e.off("abort", t),
a.forEach(function(t) {
t.setMap(null),
t = null
}),
r && (s.pop(), e._endDraw({
path: s
}))
};
n.doubleClickZoom.isEnabled() && (n._doubleClickZoom = !0, n.doubleClickZoom.disable()),
n.on("mousemove", u),
n.on("click", c),
n.on("dblclick", l),
this.on("abort", l)
}
},
{
key: "_drawCircle",
value: function(t) {
var e = this,
n = this.map,
r = this.style,
i = this.correctHandler,
o = t,
s = new _.
default({
map:
n,
center: o,
radius: 0,
style: {
color: r.color,
borderWidth: r.showBorder ? r.borderWidth: 0,
borderColor: r.borderColor
}
}),
a = (0, w.throttle)(function(t) {
var r = i(t.latLng),
a = (0, w.computeMeterDist)(n, o, r);
s.setRadius(a),
e.emit("drawing", {
center: o,
radius: a
},
r)
},
20),
u = function t(r) {
if (n.off("mousemove", a), n.off("click", t), e.off("abort", t), s.setMap(null), s = null, r) {
var u = (0, w.computeMeterDist)(n, o, i(r.latLng));
e._endDraw({
center: o,
radius: u
})
}
};
n.on("mousemove", a),
n.on("click", u),
this.on("abort", u)
}
},
{
key: "genPathByTwoPoints",
value: function(t, e) {
var n = Math.min(t.getLat(), e.getLat()),
r = Math.max(t.getLat(), e.getLat()),
i = Math.min(t.getLng(), e.getLng()),
o = Math.max(t.getLng(), e.getLng());
return [new TMap.LatLng(r, i), new TMap.LatLng(r, o), new TMap.LatLng(n, o), new TMap.LatLng(n, i)]
}
},
{
key: "calcRectangleFeatureByTwoPoints",
value: function(t, e) {
var n = (0, b.latLngToMercator)(t),
r = (0, b.latLngToMercator)(e);
return {
width: Math.abs(n.getX() - r.getX()),
height: Math.abs(n.getY() - r.getY()),
center: (0, w.computeMidPoint)(this.map, t, e)
}
}
},
{
key: "_drawRectangle",
value: function(t) {
var e = this,
n = this.map,
r = this.style,
i = this.correctHandler,
o = [t],
s = [],
a = t;
s.push(new I.
default({
map:
n,
center: a,
width: 1,
height: 1,
style: {
color: r.color,
borderWidth: 0
}
})),
r.showBorder && s.push(new g.
default({
map:
n,
path: o,
style: {
color: r.borderColor,
width: r.borderWidth || 1
}
}));
var u = (0, w.throttle)(function(n) {
var r = i(n.latLng),
o = e.genPathByTwoPoints(t, r),
a = e.calcRectangleFeatureByTwoPoints(t, r),
u = a.center,
c = a.width,
l = a.height;
s.forEach(function(t, e) {
1 === e ? t.setPath(o.concat([o[0]])) : (t.setCenter(u), t.setWidth(c), t.setHeight(l))
}),
e.emit("drawing", {
center: u,
width: c,
height: l
},
r)
},
20),
c = function r(o) {
if (n.off("mousemove", u), n.off("click", r), e.off("abort", r), s.forEach(function(t) {
t.setMap(null),
t = null
}), o) {
var a = i(o.latLng),
c = e.calcRectangleFeatureByTwoPoints(t, a),
l = c.center,
h = c.width,
f = c.height;
e._endDraw({
center: l,
width: h,
height: f
})
}
};
n.on("mousemove", u),
n.on("click", c),
this.on("abort", c)
}
},
{
key: "_drawEllipse",
value: function(t) {
var e = this,
n = this.map,
r = this.style,
i = this.correctHandler,
o = t,
s = new E.
default({
map:
n,
center: o,
majorRadius: 1,
minorRadius: 1,
style: {
color: r.color,
borderWidth: r.showBorder ? r.borderWidth: 0,
borderColor: r.borderColor
}
}),
a = void 0,
u = (0, w.throttle)(function(t) {
var r = i(t.latLng);
if (a) {
var u = new N(r.getLat(), o.getLng()),
c = (0, w.computeMeterDist)(n, o, u);
s.setMinorRadius(c),
e.emit("drawing", {
center: o,
majorRadius: a,
minorRadius: c
},
r)
} else {
var l = new N(o.getLat(), r.getLng()),
h = (0, w.computeMeterDist)(n, o, l);
s.setMajorRadius(h),
e.emit("drawing", {
center: o,
majorRadius: h,
minorRadius: 1
},
r)
}
},
20),
c = function t(r) {
if (a || !r) {
if (n.off("mousemove", u), n.off("click", t), e.off("abort", t), s.setMap(null), s = null, r) {
var c = new N(i(r.latLng).getLat(), o.getLng()),
l = (0, w.computeMeterDist)(n, o, c);
e._endDraw({
center: o,
majorRadius: a,
minorRadius: l
})
}
} else {
var h = i(r.latLng),
f = new N(o.getLat(), h.getLng()),
p = (0, w.computeMeterDist)(n, o, f);
s.setMajorRadius(p),
e.emit("drawing", {
center: o,
majorRadius: p,
minorRadius: 0
},
h),
a = p
}
};
n.on("mousemove", u),
n.on("click", c),
this.on("abort", c)
}
}]),
e
} (C);
e.
default = L
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(3),
o = r(i),
s = n(0),
a = r(s),
u = n(1),
c = r(u),
l = n(5),
h = r(l),
f = n(4),
p = r(f),
d = TMap,
g = d.Event,
y = function(t) {
function e() { (0, a.
default)(this, e);
var t = (0, h.
default)(this, (e.__proto__ || (0, o.
default)(e)).call(this));
return t._active = !1,
t._selectedLayerId = null,
t
}
return (0, p.
default)(e, t),
(0, c.
default)(e, [{
key: "enable",
value: function(t, e) {
var n = this;
this._active || (t.forEach(function(t) {
t._listener = function(e) {
e.geometry && n._onClick(t.id, e.geometry)
},
t.overlay.on("click", t._listener)
}), this._listenKeyboard(!0), this.layers = t, this._active = !0, this._selectedLayerId = e)
}
},
{
key: "disable",
value: function() {
this._active && (this.layers.forEach(function(t) {
t.overlay.off("click", t._listener),
t._listener = null
}), this._listenKeyboard(!1), this.layers = [], this._active = !1, this._selectedLayerId = null)
}
},
{
key: "_onClick",
value: function(t, e) {
var n = {
layerId: t,
geometry: e
};
this._selectedLayerId !== t ? (this._selectedLayerId = t, this.emit("single", n)) : this._ctrlKeyStatus ? this.emit("multiple", n) : this.emit("single", n)
}
},
{
key: "_clear",
value: function() {
this._selectedLayerId = null,
this.emit("clear")
}
},
{
key: "_listenKeyboard",
value: function() {
arguments.length > 0 && void 0 !== arguments[0] && arguments[0] ? (this._onKeyDown = this._onKeyDown.bind(this), this._onKeyUp = this._onKeyUp.bind(this), document.addEventListener("keydown", this._onKeyDown), document.addEventListener("keyup", this._onKeyUp)) : (document.removeEventListener("keydown", this._onKeyDown), document.removeEventListener("keyup", this._onKeyUp))
}
},
{
key: "_onKeyDown",
value: function(t) {
17 === t.keyCode || 91 === t.keyCode || 93 === t.keyCode ? this._ctrlKeyStatus = !0 : 27 === t.keyCode && this._clear()
}
},
{
key: "_onKeyUp",
value: function(t) {
17 !== t.keyCode && 91 !== t.keyCode && 93 !== t.keyCode || (this._ctrlKeyStatus = !1)
}
},
{
key: "stop",
value: function() {
this._clear()
}
}]),
e
} (g);
e.
default = y
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(16),
o = r(i),
s = n(3),
a = r(s),
u = n(0),
c = r(u),
l = n(1),
h = r(l),
f = n(5),
p = r(f),
d = n(4),
g = r(d),
y = n(336),
v = r(y),
m = n(258),
_ = n(325),
w = r(_),
b = TMap,
x = b.Event,
E = "side",
M = function(t) {
function e(t) {
var n = t.map,
r = t.coords,
i = t.closed,
s = t.style,
u = t.correctHandler,
l = t.iconInfo; (0, c.
default)(this, e);
var h = (0, p.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this));
h.map = n,
h.coords = r,
h.closed = i,
h.style = (0, o.
default)({},
s, {
borderWidth: 0,
dash: [10, 5]
}),
h.correctHandler = u,
h.iconInfo = l;
var f = [],
d = [];
return h.coords.forEach(function(t, e) {
f.push(h.createEditPoint(t));
var i = h.getAt(e + 1, r);
if (i) {
var o = (0, m.computeMidPoint)(n, t, i);
d.push(h.createEditPoint(o, E))
}
}),
h.vertexPoints = f,
h.sidePoints = d,
h.updatePoints(),
h
}
return (0, g.
default)(e, t),
(0, h.
default)(e, [{
key: "getAt",
value: function(t, e) {
var n = this.closed,
r = this.coords,
i = r.length;
switch (t) {
case - 1 : return n ? e[i - 1] : null;
case i:
return n ? e[0] : null;
default:
return e[t]
}
}
},
{
key: "destroy",
value: function() {
this.onEditEnd(),
this.vertexPoints.forEach(function(t) {
return t.destroy()
}),
this.sidePoints.forEach(function(t) {
return t.destroy()
}),
this.removeAllListeners()
}
},
{
key: "updatePoints",
value: function() {
this.vertexPoints.forEach(function(t, e) {
t.index = e,
t.type = "vertex"
}),
this.sidePoints.forEach(function(t, e) {
t.index = e,
t.type = E
})
}
},
{
key: "createEditPoint",
value: function(t) {
var e = this,
n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "vertex",
r = n === E ? this.iconInfo.virtual: this.iconInfo.actual,
i = new v.
default({
map:
this.map,
position: t,
light: n === E,
correctHandler: this.correctHandler,
iconStyle: r
});
return i.on("edit_start",
function() {
e.onEditStart(i)
}),
i.on("editing", this.onEditing.bind(this)),
i.on("edit_end", this.onEditEnd.bind(this)),
"vertex" === n && i.on("dblclick",
function() {
e.onDblClick(i)
}),
i
}
},
{
key: "onEditStart",
value: function(t) {
var e = this.map,
n = this.style,
r = this.coords,
i = this.sidePoints,
o = [],
s = {
map: e,
style: n
},
a = t.getPosition(),
u = t.index,
c = "vertex" === t.type ? u - 1 : u,
l = this.getAt(c, r);
l && (s.path = [a, l], o.push(new w.
default(s)));
var h = this.getAt(u + 1, r);
if (h && (s.path = [a, h], o.push(new w.
default(s))), "vertex" === t.type) {
var f = this.getAt(u - 1, i);
f && f.setMap(null);
var p = this.getAt(u, i);
p && p.setMap(null)
}
this.editingInfo = {
point: t,
lines: o,
preCoord: l,
nextCoord: h
}
}
},
{
key: "onEditing",
value: function() {
var t = this.editingInfo,
e = t.point;
t.lines.forEach(function(t) {
var n = t.getPath();
n[0] = e.getPosition(),
t.setPath(n)
}),
this.emit("editing", e.getPosition())
}
},
{
key: "onEditEnd",
value: function() {
if (this.editingInfo) {
var t = this.map,
e = this.coords,
n = this.vertexPoints,
r = this.sidePoints,
i = this.editingInfo,
o = i.point,
s = i.lines,
a = i.preCoord,
u = i.nextCoord,
c = o.getPosition(),
l = o.index;
if ("vertex" === o.type) {
e[l] = c;
var h = this.getAt(l - 1, r);
if (h) {
var f = (0, m.computeMidPoint)(t, a, c);
h.setPosition(f).setMap(t)
}
var p = this.getAt(l, r);
if (p) {
var d = (0, m.computeMidPoint)(t, u, c);
p.setPosition(d).setMap(t)
}
} else {
e.splice(l + 1, 0, c),
o.setPosition((0, m.computeMidPoint)(t, a, c));
var g = this.createEditPoint(c),
y = this.createEditPoint((0, m.computeMidPoint)(t, c, u), E);
n.splice(l + 1, 0, g),
r.splice(l + 1, 0, y),
this.updatePoints()
}
s.forEach(function(t) {
t.destroy()
}),
this.editingInfo = null,
this.emit("edit_end")
}
}
},
{
key: "onDblClick",
value: function(t) {
var e = this.map,
n = this.coords,
r = this.vertexPoints,
i = this.sidePoints,
o = t.index;
n.splice(o, 1),
r.splice(o, 1),
t.destroy();
var s = i.splice(o, 1)[0];
s && s.destroy();
var a = this.getAt(o - 1, n),
u = this.getAt(o, n),
c = this.getAt(o - 1, i);
a && u ? c.setPosition((0, m.computeMidPoint)(e, a, u)) : c && (c.destroy(), i.splice(o - 1, 1)),
this.updatePoints(),
this.emit("edit_end")
}
}]),
e
} (x);
e.
default = M
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t, e) {
if (!t) throw new Error("line is required");
if (!e) throw new Error("splitter is required");
var n = (0, x.getType)(t),
r = (0, x.getType)(e);
if ("LineString" !== n) throw new Error("line must be LineString");
if ("FeatureCollection" === r) throw new Error("splitter cannot be a FeatureCollection");
if ("GeometryCollection" === r) throw new Error("splitter cannot be a GeometryCollection");
var i = (0, g.
default)(e, {
precision: 7
});
switch (r) {
case "Point":
return s(t, i);
case "MultiPoint":
return o(t, i);
case "LineString":
case "MultiLineString":
case "Polygon":
case "MultiPolygon":
return o(t, (0, _.
default)(t, i))
}
}
function o(t, e) {
var n = [],
r = (0, h.
default)();
return (0, E.flattenEach)(e,
function(e) {
if (n.forEach(function(t, e) {
t.id = e
}), n.length) {
var i = r.search(e);
if (i.features.length) {
var o = a(e, i);
n = n.filter(function(t) {
return t.id !== o.id
}),
r.remove(o),
(0, E.featureEach)(s(o, e),
function(t) {
n.push(t),
r.insert(t)
})
}
} else n = s(t, e).features,
n.forEach(function(t) {
t.bbox || (t.bbox = c((0, p.
default)(t)))
}),
r.load((0, M.featureCollection)(n))
}),
(0, M.featureCollection)(n)
}
function s(t, e) {
var n = [],
r = (0, x.getCoords)(t)[0],
i = (0, x.getCoords)(t)[t.geometry.coordinates.length - 1];
if (u(r, (0, x.getCoord)(e)) || u(i, (0, x.getCoord)(e))) return (0, M.featureCollection)([t]);
var o = (0, h.
default)(),
s = (0, v.
default)(t);
o.load(s);
var c = o.search(e);
if (!c.features.length) return (0, M.featureCollection)([t]);
var l = a(e, c),
f = [r],
p = (0, E.featureReduce)(s,
function(t, r, i) {
var o = (0, x.getCoords)(r)[1],
s = (0, x.getCoord)(e);
return i === l.id ? (t.push(s), n.push((0, M.lineString)(t)), u(s, o) ? [s] : [s, o]) : (t.push(o), t)
},
f);
return p.length > 1 && n.push((0, M.lineString)(p)),
(0, M.featureCollection)(n)
}
function a(t, e) {
if (!e.features.length) throw new Error("lines must contain features");
if (1 === e.features.length) return e.features[0];
var n = void 0,
r = 1 / 0;
return (0, E.featureEach)(e,
function(e) {
var i = (0, b.
default)(e, t),
o = i.properties.dist;
o < r && (n = e, r = o)
}),
n
}
function u(t, e) {
return t[0] === e[0] && t[1] === e[1]
}
function c(t) {
var e = t[0],
n = t[1],
r = t[2],
i = t[3],
o = r - e,
s = i - n;
if (o >= s) {
var a = (n + i) / 2;
return [e, a - s / 2, r, a + s / 2]
}
var u = (e + r) / 2;
return [u - o / 2, n, u + o / 2, i]
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var l = n(357),
h = r(l),
f = n(365),
p = r(f),
d = n(373),
g = r(d),
y = n(329),
v = r(y),
m = n(328),
_ = r(m),
w = n(615),
b = r(w),
x = n(109),
E = n(121),
M = n(48);
e.
default = i
},
function(t, e, n) {
"use strict";
function r(t, e) {
var n = l(t),
r = p([n[0]]),
s = o(t),
a = d(n[0]),
u = h(e, {
precision: 7
}),
y = g(a, u);
if (y.features.length < 2) return null;
y.features = i(a, y.features);
var E = b(y).features[0],
M = (0, c.
default)(a, E),
I = (0, c.
default)(u, E),
S = f(M.features.concat(I.features)),
C = v(S),
N = C.features.filter(function(t) {
var e = m(t);
return ! w(e, t) || w(e, r)
}),
P = N.map(function(t) {
var e = t;
return x(s,
function(t) {
e = _(e, t)
}),
e
});
return f(P)
}
function i(t, e) {
var n = y(t),
r = e.map(function(t) {
var e = null,
r = null;
return n.features.some(function(n, i) {
var o = n.geometry.coordinates[0],
s = n.geometry.coordinates[1],
a = s[0] - o[0],
u = s[1] - o[1],
c = t.geometry.coordinates,
l = c[0] - o[0],
h = c[1] - o[1];
if (a * h - l * u <= .001) return e = i,
r = Math.pow(l, 2) + Math.pow(h, 2),
!0
}),
{
point: t,
idx: e,
disSq: r
}
});
return r.sort(function(t, e) {
return t.idx === e.idx ? t.disSq - e.disSq: t.idx - e.idx
}),
r.map(function(t) {
return t.point
})
}
function o(t) {
var e = [],
n = l(t);
return n.slice(1, n.length).forEach(function(t) {
e.push(p([t]))
}),
f(e)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = r;
var s = n(374),
a = function(t) {
if (t && t.__esModule) return t;
var e = {};
if (null != t) for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
return e.
default = t,
e
} (s),
u = n(717),
c = function(t) {
return t && t.__esModule ? t: {
default:
t
}
} (u),
l = a.getCoords,
h = a.truncate,
f = a.featureCollection,
p = a.polygon,
d = a.lineString,
g = a.lineIntersect,
y = a.lineSegment,
v = a.polygonize,
m = a.centroid,
_ = a.difference,
w = a.booleanWithin,
b = a.combine,
x = a.featureEach
},
function(t, e, n) {
"use strict";
function r(t, e) {
var n = v(t),
r = v(e),
o = m(t);
return i(n, m(e)),
i(r, o),
y(t, e)
}
function i(t, e) {
if ("MultiLineString" === g(t)) f(o(t),
function(t) {
i(t, e)
});
else {
var n = d(t);
f(e,
function(e) {
var r = s(e, t, {
ignoreVertices: !0
});
r.bool && n.splice(r.index + 1, 0, p(e))
})
}
}
function o(t) {
var e = [];
return d(t).forEach(function(t) {
e.push(h(t))
}),
l(e)
}
function s(t, e) {
for (var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},
r = p(t), i = d(e), o = 0; o < i.length - 1; o++) if (a({
start: i[o],
end: i[o + 1],
pt: r,
precision: 5,
ignoreVertices: n.ignoreVertices
})) return {
bool: !0,
index: o
};
return {
bool: !1
}
}
function a(t) {
var e = t.start,
n = t.end,
r = t.pt,
i = t.precision,
o = t.ignoreVertices,
s = r[0],
a = r[1],
u = e[0],
c = e[1],
l = n[0],
h = n[1],
f = s - u,
p = a - c,
d = l - u,
g = h - c;
return ! (Math.abs(f * g - p * d) > i) && (o ? Math.abs(d) >= Math.abs(g) ? d > 0 ? u < s && s < l: l < s && s < u: g > 0 ? c < a && a < h: h < a && a < c: Math.abs(d) >= Math.abs(g) ? d > 0 ? u <= s && s <= l: l <= s && s <= u: g > 0 ? c <= a && a <= h: h <= a && a <= c)
}
Object.defineProperty(e, "__esModule", {
value: !0
}),
e.
default = r;
var u = n(374),
c = function(t) {
if (t && t.__esModule) return t;
var e = {};
if (null != t) for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
return e.
default = t,
e
} (u),
l = c.featureCollection,
h = c.lineString,
f = c.featureEach,
p = c.getCoord,
d = c.getCoords,
g = c.getType,
y = c.union,
v = c.polygonToLine,
m = c.explode
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
var i = n(56),
o = r(i),
s = n(578),
a = r(s),
u = n(461),
c = function(t) {
if (t && t.__esModule) return t;
var e = {};
if (null != t) for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
return e.
default = t,
e
} (u),
l = n(325),
h = r(l),
f = n(363),
p = r(f),
d = n(361),
g = r(d),
y = n(362),
v = r(y),
m = n(579),
_ = r(m);
window.TMap || (window.TMap = window[o.
default] || {});
var w = {
GeometryEditor: a.
default,
Polyline: h.
default,
Polygon: p.
default,
Circle: g.
default,
Image: v.
default,
constants: c,
MeasureTool: _.
default
};
window.TMap.tools = w
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
function i(t) {
var e = O.find(function(e) {
return e.max > t * (e.snap || 1)
}),
n = e.base,
r = e.unit,
i = e.decimal;
return {
value: (0, M.round)(t / n, i || 0),
unit: r
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var o = n(25),
s = r(o),
a = n(3),
u = r(a),
c = n(0),
l = r(c),
h = n(1),
f = r(h),
p = n(5),
d = r(p),
g = n(4),
y = r(g),
v = n(241),
m = r(v),
_ = n(358),
w = r(_),
b = n(359),
x = r(b),
E = n(28),
M = n(10),
I = n(503),
S = r(I),
C = TMap,
N = C.Event,
P = 0,
L = new m.
default,
A = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, l.
default)(this, e);
var n = (0, d.
default)(this, (e.__proto__ || (0, u.
default)(e)).call(this, t));
return n.onInit(t.measureTool),
n
}
return (0, y.
default)(e, t),
(0, f.
default)(e, [{
key: "measureArea",
value: function() {
var t = this;
return new s.
default(function(e, n) {
t._areaResolveFun = e,
t._areaRejectFun = n,
t._measureArea = {
id: "MeasureTool_polygon_" + P,
styleId: "measure",
paths: [],
properties: {}
},
P += 1,
t._measureAreaTips = [],
L.add(t._measureAreaTips)
})
}
},
{
key: "_updateGeometries",
value: function(t, e) {
t.length >= 3 ? (3 === t.length && this._polylineLayer.remove([this._measureArea.id]), this._polygonLayer.updateGeometries([this._measureArea])) : e ? (this._polylineLayer.remove([this._measureArea.id]), this._polygonLayer.remove([this._measureArea.id])) : 2 === t.length && this._polylineLayer.updateGeometries([this._measureArea])
}
},
{
key: "_computeArea",
value: function(t) {
return t.length < 3 ? 0 : (0, w.
default)(t.slice())
}
},
{
key: "_computeCenter",
value: function(t) {
if (t.length >= 3) return (0, x.
default)(t.slice());
var e = new TMap.LatLng(0, 0);
return t.forEach(function(t) {
e.lat += t.lat,
e.lng += t.lng
}),
e.lat /= t.length,
e.lng /= t.length,
e
}
},
{
key: "_onMapClick",
value: function(t) {
if (this.measureTool.isActive() && this.measureTool.currentMeasurement() === this) {
var e = this._measureArea.paths;
null === this._mapDoubleClickZoomState && (this._mapDoubleClickZoomState = this.map.getDoubleClickZoom()),
this.map.setDoubleClickZoom(!1),
e.length > 1 && e.pop(),
e.push(t.latLng),
this._updateGeometries(e),
this._isClicked = !0
}
}
},
{
key: "_onMapMouseMove",
value: function(t) {
if (this.measureTool.isActive() && this.measureTool.currentMeasurement() === this) {
var e = this._measureArea.paths;
0 !== e.length && (e.length > 1 && !this._isClicked && e.pop(), e.push(t.latLng), e.length >= 3 && (this._measureAreaTips.length > 0 && this._measureAreaTips.pop().destroy(), this._measureAreaTips.push(this._createTipOverlay({
area: this._computeArea(e),
position: this._computeCenter(e),
isArea: !0
}))), this._updateGeometries(e), this._isClicked = !1, this._isMousemoving = !0)
}
}
},
{
key: "_onMapDblClick",
value: function() {
var t = this;
if (this.measureTool.isActive() && this.measureTool.currentMeasurement() === this) {
if (this._measureArea.paths.length < 3) return this._measureArea.paths.splice(0),
this._measureAreaTips.forEach(function(t) {
return t.destroy()
}),
L.delete(this._measureAreaTips),
this._updateGeometries(this._measureArea.paths, !0),
this._isMousemoving = !1,
this._isClicked = !1,
this._measureArea = null,
this._measureAreaTips = [],
this._areaRejectFun && this._areaRejectFun(new Error("测量面积失败顶点数量不足3个。")),
void(this.measureTool._currentMeasurement = null);
this.map.setDoubleClickZoom(this._mapDoubleClickZoomState),
this._mapDoubleClickZoomState = null,
this._isMousemoving = !1,
this._isClicked = !1;
var e = this._measureArea,
n = this._measureAreaTips;
this._measureArea = null,
this._measureAreaTips = [],
L.add(this._measureAreaTips);
var r = this._computeArea(e.paths),
i = this._computeCenter(e.paths),
o = {
polygon: e.paths,
area: (0, M.round)(r, 1),
remove: function() {
e && (n.forEach(function(t) {
return t.destroy()
}), L.delete(n), t._polygonLayer.remove(e.id), t._polylineLayer.remove(e.id), e = null)
}
},
s = this._createTipOverlay({
enableClick: !0,
area: r,
position: i,
isArea: !0
});
s.on("remove",
function() {
return o.remove()
}),
n.length > 0 && n.pop().destroy(),
n.push(s),
this._areaResolveFun && this._areaResolveFun(o)
}
}
},
{
key: "_createTipOverlay",
value: function(t) {
var e = t.area,
n = i(e),
r = n.value,
o = n.unit,
s = new S.
default({
position:
t.position,
instance: {
isArea: t.isArea,
area: r,
unit: o
},
map: this.map
});
return t.enableClick || s.disablePointerEvents(),
s
}
},
{
key: "onInit",
value: function(t) {
this.measureTool = t,
this._onMapClick = this._onMapClick.bind(this),
this._onMapMouseMove = (0, E.throttle)(this._onMapMouseMove.bind(this), 25),
this._onMapDblClick = this._onMapDblClick.bind(this),
this._polygonLayer = new TMap.MultiPolygon({
map: this.map || null,
styles: {
measure: new TMap.PolygonStyle({
color: "rgba(55,119,255,0.16)"
})
},
zIndex: 1
}),
this._polylineLayer = new TMap.MultiPolyline({
map: this.map || null,
styles: {
measure: new TMap.PolylineStyle({
color: "#3875ff",
width: 3,
borderWidth: 0,
dashArray: [10, 4],
lineCap: "butt"
})
},
zIndex: 1
}),
this._isClicked = !1,
this._isMousemoving = !1,
this._measureArea = null,
this._areaResolveFun = null,
this._areaRejectFun = null,
this._mapDoubleClickZoomState = null
}
},
{
key: "addToMap",
value: function(t) {
this.map = t,
this.map && (this.map.on("click", this._onMapClick), this.map.on("mousemove", this._onMapMouseMove), this.map.on("dblclick", this._onMapDblClick)),
this._polygonLayer.setMap(this.map),
this._polylineLayer.setMap(this.map)
}
},
{
key: "removeFromMap",
value: function() {
this.map && (this.map.off("click", this._onMapClick), this.map.off("mousemove", this._onMapMouseMove), this.map.off("dblclick", this._onMapDblClick), this._onMapDblClick(), L.forEach(function(t) {
return t.forEach(function(t) {
return t.destroy()
})
}), L.clear(), this._polygonLayer.setGeometries([]), this._polygonLayer.setMap(null), this._polylineLayer.setGeometries([]), this._polylineLayer.setMap(null)),
this.map = null
}
},
{
key: "abort",
value: function() {
if (this.measureTool.currentMeasurement() === this) {
var t = this._measureArea.paths; ! this._isClicked && t.length > 0 && (t.pop(), this._updateGeometries(this._measureArea.paths, !0), this._onMapDblClick(t))
}
}
}]),
e
} (N);
e.
default = A;
var O = [{
base: 1,
max: 1e6,
unit: "平方米",
snap: 10,
decimal: 1
},
{
base: 1e6,
max: 1e10,
unit: "平方公里",
snap: 1,
decimal: 2
},
{
base: 1e10,
max: 1 / 0,
unit: "万平方公里",
snap: 10,
decimal: 2
}]
},
function(t, e, n) {
"use strict";
function r(t) {
return t && t.__esModule ? t: {
default:
t
}
}
Object.defineProperty(e, "__esModule", {
value: !0
});
var i = n(25),
o = r(i),
s = n(3),
a = r(s),
u = n(0),
c = r(u),
l = n(1),
h = r(l),
f = n(5),
p = r(f),
d = n(4),
g = r(d),
y = n(241),
v = r(y),
m = n(388),
_ = r(m),
w = n(28),
b = n(10),
x = n(503),
E = r(x),
M = TMap,
I = M.Event,
S = 0,
C = new v.
default,
N = function(t) {
function e() {
var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; (0, c.
default)(this, e);
var n = (0, p.
default)(this, (e.__proto__ || (0, a.
default)(e)).call(this, t));
return n.onInit(t.measureTool),
n
}
return (0, g.
default)(e, t),
(0, h.
default)(e, [{
key: "measureDistance",
value: function() {
var t = this;
return new o.
default(function(e, n) {
t._distanceResolveFun = e,
t._distanceRejectFun = n,
t._measureLine = {
id: "MeasureTool_polyline_" + S,
styleId: "measure",
paths: [],
properties: {
segmentDistanceList: []
}
},
S += 1,
t._measureLineTips = [],
C.add(t._measureLineTips)
})
}
},
{
key: "_updateGeometries",
value: function(t) {
this._measureLine.paths.length >= 2 ? this._polylineLayer.updateGeometries([this._measureLine]) : t && this._polylineLayer.remove([this._measureLine.id])
}
},
{
key: "_computeDistanceBetween",
value: function(t, e) {
return t && e ? (0, _.
default)(t, e) : 0
}
},
{
key: "_onMapClick",
value: function(t) {
if (this.measureTool.isActive() && this.measureTool.currentMeasurement() === this) {
var e = this._measureLine.paths;
null === this._mapDoubleClickZoomState && (this._mapDoubleClickZoomState = this.map.getDoubleClickZoom()),
this.map.setDoubleClickZoom(!1);
var n = this._measureLine.properties.segmentDistanceList;
if (e.length > 1 && (e.pop(), n.pop(), this._measureLineTips.pop().destroy()), e.push(t.latLng), e.length > 1) {
var r = this._computeDistanceBetween(e[e.length - 2], e[e.length - 1]);
n.push((0, b.round)(r, 1)),
this._measureLineTips.push(this._createTipOverlay({
distance: r,
position: t.latLng,
isInterim: !0
})),
this._updateGeometries()
} else 1 === e.length && this._measureLineTips.push(this._createTipOverlay({
distance: null,
position: e[e.length - 1],
isStart: !0
}));
this._isClicked = !0
}
}
},
{
key: "_onMapMouseMove",
value: function(t) {
if (this.measureTool.isActive() && this.measureTool.currentMeasurement() === this) {
var e = this._measureLine.paths,
n = this._measureLine.properties.segmentDistanceList;
if (0 !== e.length) {
if (e.length > 1 && !this._isClicked && (e.pop(), n.pop(), this._measureLineTips.pop().destroy()), e.push(t.latLng), e.length > 1) {
var r = this._computeDistanceBetween(e[e.length - 2], e[e.length - 1]);
n.push((0, b.round)(r, 1)),
this._measureLineTips.push(this._createTipOverlay({
distance: n.reduce(function(t, e) {
return t + e
},
0),
position: t.latLng,
isEnd: !0
})),
this._updateGeometries()
}
this._isClicked = !1,
this._isMousemoving = !0
}
}
}
},
{
key: "_onMapDblClick",
value: function() {
var t = this;
if (this.measureTool.isActive() && this.measureTool.currentMeasurement() === this) {
if (this._measureLine.paths.length < 2) return this._measureLine.paths.pop(),
this._measureLine.properties.segmentDistanceList.pop(),
this._measureLineTips.pop().destroy(),
this._updateGeometries(!0),
void(this._distanceRejectFun && this._distanceRejectFun(new Error("测量距离失败顶点数量不足2个。")));
this.map.setDoubleClickZoom(this._mapDoubleClickZoomState),
this._mapDoubleClickZoomState = null,
this._isMousemoving = !1,
this._isClicked = !1;
var e = this._measureLine,
n = this._measureLineTips;
this._measureLine = null,
this._measureLineTips = [],
C.add(this._measureLineTips);
var r = e.properties.segmentDistanceList,
i = e.properties.segmentDistanceList.reduce(function(t, e) {
return t + e
},
0),
o = {
path: e.paths,
totalDistance: (0, b.round)(i, 1),
segmentDistanceList: r,
remove: function() {
e && (n.forEach(function(t) {
return t.destroy()
}), C.delete(n), t._polylineLayer.remove(e.id), e = null)
}
},
s = this._createTipOverlay({
enableClick: !0,
distance: i,
position: e.paths[e.paths.length - 1],
isEnd: !0
});
s.on("remove",
function() {
return o.remove()
}),
n.pop().destroy(),
n.push(s),
this._distanceResolveFun && this._distanceResolveFun(o)
}
}
},
{
key: "_createTipOverlay",
value: function(t) {
var e = t.distance,
n = new E.
default({
position:
t.position,
instance: {
isStart: t.isStart,
isInterim: t.isInterim,
isEnd: t.isEnd,
distance: e > 1e3 ? (0, b.round)(e / 1e3, 1) : (0, b.round)(e, 1),
unit: e > 1e3 ? "公里": "米"
},
map: this.map
});
return t.enableClick || n.disablePointerEvents(),
n
}
},
{
key: "onInit",
value: function(t) {
this.measureTool = t,
this._onMapClick = this._onMapClick.bind(this),
this._onMapMouseMove = (0, w.throttle)(this._onMapMouseMove.bind(this), 25),
this._onMapDblClick = this._onMapDblClick.bind(this),
this._polylineLayer = new TMap.MultiPolyline({
map: this.map || null,
styles: {
measure: new TMap.PolylineStyle({
color: "#3875ff",
width: 3,
borderWidth: 0,
dashArray: [10, 4],
lineCap: "butt"
})
},
zIndex: 1
}),
this._isClicked = !1,
this._isMousemoving = !1,
this._measureLine = null,
this._distanceResolveFun = null,
this._distanceRejectFun = null,
this._mapDoubleClickZoomState = null
}
},
{
key: "addToMap",
value: function(t) {
this.map = t,
this.map && (this.map.on("click", this._onMapClick), this.map.on("mousemove", this._onMapMouseMove), this.map.on("dblclick", this._onMapDblClick)),
this._polylineLayer.setMap(this.map)
}
},
{
key: "removeFromMap",
value: function() {
this.map && (this.map.off("click", this._onMapClick), this.map.off("mousemove", this._onMapMouseMove), this.map.off("dblclick", this._onMapDblClick), this._onMapDblClick(), C.forEach(function(t) {
return t.forEach(function(t) {
return t.destroy()
})
}), C.clear(), this._polylineLayer.setGeometries([]), this._polylineLayer.setMap(null)),
this.map = null
}
},
{
key: "abort",
value: function() {
this.measureTool.currentMeasurement() === this && !this._isClicked && this._measureLine.paths.length > 0 && (this._measureLine.paths.pop(), this._measureLine.properties.segmentDistanceList.pop(), this._measureLineTips.pop().destroy(), this._updateGeometries(this._measureLine.paths, !0), this._onMapDblClick())
}
}]),
e
} (I);
e.
default = N
},
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
function(t, e, n) {
e = t.exports = n(273)(),
e.push([t.i, '.measure-tool-tip{position:absolute;background:#fff;border:2px solid #3875ff;box-sizing:border-box;width:8px;height:8px;border-radius:8px;color:#000;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.measure-tool-tip .tip-node{position:absolute;padding:0 6px;top:-8px;left:14px;text-align:center;font-size:12px;line-height:20px;background:#fff;box-shadow:0 2px 8px 0 rgba(0,0,0,.3);border-radius:3px;white-space:nowrap}.measure-tool-tip .tip-end .tip-close{position:absolute;left:12px;top:-15px;width:20px;height:20px;background-color:rgba(0,0,0,.3);border-radius:3px}.measure-tool-tip .tip-end .tip-close:before{transform:rotate(45deg)}.measure-tool-tip .tip-end .tip-close:after,.measure-tool-tip .tip-end .tip-close:before{content:"";width:15px;height:2px;position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;background-color:#fff}.measure-tool-tip .tip-end .tip-close:after{transform:rotate(-45deg)}.measure-tool-tip .tip-end .tip-node{line-height:28px;font-size:14px;left:0;top:9px}.measure-tool-tip .tip-end .tip-node .tip-total{color:#3875ff}', ""])
},
, , , , , , , , , , , , , , , , , ,
function(t, e) {
t.exports = '<div class="measure-tool-tip">\t<% if (obj.isEnd) {%>\t\t<div class="tip-end">\t\t\t<div class="tip-close"></div>\t\t\t<div class="tip-node">总长:<span class="tip-total"><%= obj.distance %></span><%= obj.unit %></div>\t\t</div>\t<% } else if (obj.isStart) {%>\t\t<div class="tip-node">起点</div>\t<% } else if (obj.isInterim) {%>\t\t<div class="tip-node">\t\t\t<%= obj.distance %><%= obj.unit %>\t\t</div>\t<% } else if (obj.isArea) {%>\t\t<div class="tip-end">\t\t\t<div class="tip-close"></div>\t\t\t<div class="tip-node">面积:<span class="tip-total"><%= obj.area %></span><%= obj.unit %></div>\t\t</div>\t<% } %></div> '
},
, , ,
function(t, e, n) {
var r = n(1010);
"string" == typeof r && (r = [[t.i, r, ""]]);
n(275)(r, {});
r.locals && (t.exports = r.locals)
},
, , , , , , , , , , ,
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAPx0lEQVR4Xu1de1yUVfr/PgOCQAh5V9rSvLumZckM6oq32jL1l0m2m/4+2U+zNDF1bWZkU1MTeFEslnXLzTa7mNlurqnppwsq5mVeSF0pNS+rVkLrhVZEBFPm+X3OCITAwHveeUcG8Hw+fOaPeS7f53zn8L7nnOc8h+DjrZ+VQ6/4oY2J0dYJtCGgLZxoA/FJJZ9wfYqWA0YOCNkE5LD4I+SYipHjZOT8dBk5x1Lpsi+HTL4Iro+NB5gYw0EYCaCLkRgZ2GVirCfCpt0KfW2kbSNs+QQh/azcthgYxIShgIuEpkYEp8HGUTDWM2FrcRC27nmJLmnQ8apIrRFiiePeXIwHAAwCXJ+13c4z8BkIW7kY6zIX039qA9ANJ+Q+K3fxM2EKGM8B8KuNoGvyScD3YPylcRCWbZtPF2uSN/L7G0ZI1AyO4ABMYbiICDMyCK/ZIhwUxKgKLfOajwqGvU7IvTYO8wOeI3KNiogbFZiRfhjIBGNZRhK9baTdqmx5jZDHHmO/H9rjORZEGPym5O1Oqcb+VhCWqYn0kbcweIUQi50HshPJIPT2FvBatrvW5I9puxdRttE4DCfEYueJzPgTgCCjwfqUPUIWAc87EmmbkbgMJSTSxgoBViMB+ritQiJMcyTSCqNwGkaI2cbi/+qjRgGrS3YYSMpQyGYEZkMIMdt5Pxg9jQCkxYa/H4qCApAXEoi8kMY43yQIeULvQiHC84sQXlCE8KLLCC9mNNJizyCZtapCoz215REhFju3Y8ZBbz4vmt6C7zu0wQFLJxy8vQXyOrdBXqtwFGkJ/ORphBw7jbBvT6HVvhPofvIsuhcUobkWXV0yhCw1kXrp0i1R0k1I5GyOIid2eeK8Kt3GjZD3qxY41D0Ch4f2wuE+HZFrpI/N+3Dbl4fQ9WgOumT/hO5OJ/yNtA+gUFUoWK9NXYTcPZ3DAwPxX71Oq9JrfSsOP9gLaeMG4MAtwbhqpG13tr7NQZM1X+KeHd9iSH4hWhno85CqUHc99nQRYrZxDn7Zg9Djt0wnLBg/9u+OtDkx+NIjQx4oi39tr36CIXv+jSFXitHYA1PlVVeqCj0la0uaELON/wngEVlHFeUD/FHQpwPSZo1CWhuNzwRPfdakv+UbtHlvG4YcPIXf1CSr5XsCpjgUek2LbKmMFCFmK88BYYGMg6pkf3070scPQtpvuuG0p7a8of9eOrqs/wpDvj8Ljx7QAhszRmUk0TqtODUTYn6BJ8GE5VoNu5O7vyfWLHwCWzy1cyP0n34Nv//6Owz01Beb0DcjgXZrsaOJELON/weAZparcizmDqOj8O6M4fhKCzBfkfnDW3h452HXLqYn7WQxYchXiXS8JiM1EmK2sgWEzQDCazLm7vvQIJxZ8iSW9mpn7JuZXjyyeqmb0HvVdjwjq1dBfkthMUZmLaGC6uxUS4hYQv++PTI8WbUVr7PrbFjqYTC1rn4kG6FPv455l68g1AMwb6gKTdJNiMXK05iQoheApTM2vvp/2KBX3xf1RibghTN56KgXG5nQ35FAO93pux0hYqfPH1D1bi51agP13efxN73AfVkveg4WX76CJrowMlarSfSENCGRNo4jYJEep82b4PjGOCh6dOuCjpjhj/8TFuvFysCDGQp9WpV+lSNEJCQ4A6Hq2QMPbISLb0/F3HatUO3DS28wvqK3ajs6p27CH/TgYWBDhkJVvrlVSYjFxosYiNPjbOZIJI3pi3/r0a1rOgs+xIBNezFWF25CTFV785UIceVNkevZIZ2qMzIS78Q9CrcPLF3AfVzp2eUY868TGKID5lZVocEV9SoRYrZzChjTZB2I5ZA3p+B9Wb36ID98Eezn8tFeNhZmjK+YWnQdISXpnRmyGYVioXDRWCi+ujYl21Gy8ks3oM+HOzFRVk/ke2UoFFle73pCbPwiAwtlDffrgvXJT+ETWb36JP94MiZ/dxZ3S8fEeEBNos9L9a4jxGzl7SC5pWexn7FyGhJ9ZQldukMMUvDgrWuJqtALlQiJsnNHJ+OoLL6H78N7tbm5JIvXm/ITlmHsgR8wQNLHflWhspFVNkLMVp4OwisyxurLOpVMzNXJph9A6xdXw3blKqT21J1+uCcznv4lbJcn5BMQhsmAGz8Qf3n2QeyX0anvstP/hhGOIxguEycBcxwKvVxGSNQMDnIGuHKbNOcxBTbChc0vwh4ciGIZ5/VdVuezZIeqkGvb2DVCzFaOAeHvMp3VoTUyV02HYSmUMr59XXbIPMQXXEYzGZw/m9ByXwKddRFisfNKZjwpY2BYb6yaOwbbZXQaiuyTqRh/OBtRMvES4SlHIq28NkJsfA6QY3TFVFh73HYthfNmu74HdE4UP1IViqHI2dyMnBCEaG7NQ3Fi4x+RqFmhgQnmXkTAwy8jVTLsr1WFelKUje9yAlkyyv264uPk8dgko9PQZB9VMD3nv+gmEXeuqlBzMtv5ATCq3CxxZ2zWI1BiLKgxg0ICTL0Ttb6Nh7YfkksozG+MQLLYeTwz3pLpkdSJiDM6CVrGf12QTVyLqHUZGC+DlQjtxQiZDUa8jOIXc/HcjUqIlsHlS7JvbUH35Z/heRlMIqGOLFZOZcJUrYqB/ihIfxkztco3VLnP9yNizmrMlYqfEENmG/8DgOaTP2EhyP50juf5vVJA66Dw8dMIeeIVuXw0JsSS2cq7QNonMW1vxcG1Nv25WnWwb3VD7huHZVIHghgJYoScANBOq9cuEdj9dixWapVvyHI6llBWCkJEQa8ArR3XpxM2p07wLPFaq6+6LjciHrazF3CnRByfCUKklk163oGtf52MDyScNFjR3y7E3LwCqfouHwlCxCz9Lq291q4l9n4w0/NzIlr91WW56Bex9PJVhGiNgRh/FoSIWbrmAmItmuD4hnqcJqq182qSu3gJ/kMXQK6sEyFOECJm6ZpnlCGByE2bry+rsaYg6tP3mcfQLHaF3IRbLMGL1954EGZr7QyTCVd3xbuKkN1s1fTAPxy4c8k6yJXbIPyWIu08lVhuqfj9GZh5Zz1Ppvb016bn1JUJ6CnWskaDIWbrmtvC32PB/b1geK0ozQDqgODc1Rj02X78TgYqm9BcbFBJl8gYNwCvTx2GfTLOGprspNfxeNZJVEqmrqYfflYVci2/iwIyYrauuXWNwI6VsXhXs0IDFLx/PhbmF6KlROgnVYXaU/d5HBBaBKny20EBOL91geQDSwJZXRcVFSHi3sNLUnEwdqtJ1NeV5BBp450E9JUxYBuFxFFmuZElY78uy855H4M/z8LjMjEQEO9Q6I/X0oCsbGOSS1q4ua/uvrtHL0Zsdi56SBFigsWRQKqLED2JDq3DcWSdHckyThuC7DenEDbxz0iSjPW0qlBrofNLbq+NjwDoJGNo8ZOY21AP6bjrp6R/wrJWhWxZprKCAuWTrZeA5E6VmjthU8oEfCxDYn2XjVmM2FOS/67AeExNItdcsIyQSBs/TMBGmQ5r5IfC+HFIuDlKrvWazoxFJ5vQMiOBXKUMywi59yUO9i90zb6liszc3B/55Sc8Mh7WMxfQQeZHDcJ6NZFEtSVXu+5IW6SN1xAwRsogAPtoJDzSBydl9eqT/Pw1iN68D25LZriLlQkzMxKp7KDU9YTY+VliSJWkE446tYXj3WlyyXb1iYyzFxA47lXY8y6hrWxc5U9PVRoh5jhuhWI4ZJIeSgE88wBSnhrsquHb4Jr1HTy4/SBG6Qi8UvHlSoUDLDaeyZCfX/yqObL+Pktyh0xHBL6m8uUhtJq7GjMLf5Z79rpGA2FQxWL+lQi5dxI38r/VNUqkr5q46w5se2MyVvtap3kTz8hEzDpzXm7+JvAwY0VGEj1dEVvVxWd0JGCXGm5IRQSeWIpJx8/gXh2EF6IYFnUJVToG4raAmdnGorqAuMZOuo0dgOWxw7BXWrEOKUx6Db/L+s51w5x0q+42BbeEWGw8goH10t5KFN6JxazOEcjXq+/LejqXR0pDyjb5w+zudp5qi2Ca7fwBWG4ZudRrYCPkpy/ELF/uWD3Y9GSTlPdDgM2hkNvFx2oJsczmfuzEDj3AhU7LMBxbP1t/KTy9fr2ld+xH3DIuRf4NtAwPIct0GZbdr1ChO4w11u2NtHMisf7dQVFgYPlkLOzaFhe81VE3wu6anej4ygaUFYnR45MY4xxJtKo63RoJEcpmG4uiAjF6QJTqxA5D8tgBEEv8da4t+gj9N2Tifz0EPk9VqMa6+ZoIwTw2mQuxB6SjHlS5KOpisYHJyxGz7wTu95CMd1SFNBVm0EaIGCUvcCeYsAfwqLIz7m6PtNefwYceBuh19R2H0DJlI8b8kKs9Eb1KUISdaiL11wpYMyHCoMXGDzE8P5/eLBQn+3dF+uzRxl+ZpDVwd3LicpfUzYjeexzRepZDKtg9HdQYt22bT5pvDJIiRDiLtPJUIrnUU3fBi7ewgT2wbeYIZHrakZ7qi+oLyR8jWj2K6IIitPDUntA3XUW33cn0rYwtaUJKHvJi/X66jKPqZNveikOD70J6bWRDOp2g+R8i2nEE0XqWz93FxcDwDIWk61DqIsQ1Umy8noARRpEi7EQ0xYEuETg0tBe+GdwDPxppu6ItUdcq4yi6Hf0RPX66iNuN9EWM5x1JJK6flW66CSl5pqxgYIK0Vw0K4mBQh9Y4ODISXxlFjiAh/QB6nziDbvmFcKXdGN2YMTEjid7Ua9cjQkqeKROIvFvILCwYOd1uw97QxigIDcKlsGBcCr8Fl1qEoaBlOC5FNMUlgeXUOYScPo/gc3kI+akAwXkFCMkvQsjZC2h+LAf3FF6Rr9Yt07EM3J2hkEclDz0mRADuY+MBJiBdBnw9kz3gdGJo5mL6j6dxGUKIAFFSM15cUPxrT0HVJX0C3nQoJF3V2l2MhhEiHIhLYPyAv+rJXKlLJJRhJSxUE0munkkNgRpKSKkvvQX96xgpU1WF5E7ZagjQK4QIv2YrTwG5yhN11oCjLolsIUaKI4l0b95VF6zXCBFOo2ZwU2eAixTxJ30fiY+xdICAFIdCb3gTl1cJKQVusXI3vjZaPL0L0Jt94c52Lhgp/sCrO5PI61vSN4SQMmLsPJDZteRSlstaGz0s4XMZnEhRF5P0JQUSPq4TvaGElD30bSyOC4sRY9EL3Mt64mhAiqqQ7u1rvfhqhZByI2Yos+v+JpFudJ/eIAzQcwJII+ALJqSpiST2fWql1Soh5SOOms1d2YlhfK0QjiDIz8s9IspSfUGET01XsWnXEjrjZX+azPsMIeXRdozlwKYhGEaMhwD0YqAZXSuFLnV2pZxN0fm5IJwTWTRM2JSpkE/WrfdJQtz9lMRlydl3oJnThGZORnOQi6RmJZ8iefmc+MNV5F4VnV+M3D3JJFVGXdPP2ItC/w/QvtpjNhjrDQAAAABJRU5ErkJggg=="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAOEklEQVR4Xu2dCXSU1RXHf3dAECxuUFu1Vam4VtzQzES0FaW4YV2AaqvnqC0uBYtbmQlQqtYC+QJUqUWrYl1OPW5FLSrWFbQC8wVpC9rVWi0tqRtq3VKFzO25MyEsySTf++abZJLJPWfOl3Nyt3f/8+Z977377hNKnIYmtd+6HuwcU3bJwM4Cu5BhZ+wpjU+yT6M6lDqENQJ1ah+hLtZAXUape+cT6v5+vXxSyk2WUnTu8JR+JaaMRPg6sE+UPiosjSkLRFi4zJMXo9Qdha6SAGRoUndpgGEqDIcsCDtG0bgAOl5GWaDCooY+LFpxlXwcQKaoLB0GSGKyHqoNjACGQfbZ0fSewhMIi7SBh5bPlNc7wqF2B+SwpO7TI8Y4lPFAj45odFs2BVaj3LB1H+Yuvlo+bIs/yv+3GyCVl+mu2otxShaI7aJsRNF0CX8yYHxP5hbNxhaKiw7IkJRu1wPGi2R7xa7t1bAo7SgsR5lbWyN3RKm3JV1FA2TMGO3xr4GMVwMi4jelYgelFf2LEOb61TK/WD4UBZBElR6tGWYjHFosxztY7wOxnkxYNk3WRO1H5IAkqnSsKj8F+kTtbEnpE1YJXJKulsVR+hUpIBUp9QSSUTpY4rrqRZiQrpZ5UfkZGSDxlNrv6ulROdaZ9CjU1HqSisLnSACJV+lKlAOjcCiIjr69YUA/GLBt46dfTuqt93Oftxufn6wLoi0yngd8T0YVqq0gQBJVuocqfyrmeLHvrhDfC+J7bwy+ARKE3q/PgbP6bfD/Bv7LUPdOEMmQPMIqv1oOCimdFQsNSMUkrZQMSwsx3pJs/35QMQiG7AmHDYLPbx+thZf/Ay+8AiteyQG0bn20+oF635O+YbWGAuTgS3X73r15N6zRluQO2xPOOBISe8NW7bSg8s6HsOgluPf5XC+KkP7se7J/GH2hAImntI6NexBh7DbJDNwpB8SpFQWpKUj4/Y/hniU5YD6Kbrfkdt+T81wdcwYkntIHgVNdDW3Jv21fOHNoDoxtAo4JhdpsS/7VN3OgPFTbFmew/wuMS3tyYzDuHJcTIPGkTkX4kYuBlnhHJXJA7DagUE3FkbcxxoD57Z8L16/KabU18lBQTYEBiU/UC4hxU1DF+fguPxm+MbRQLe0jP/PXMH9Z4bY0xhG1MySQpkCAxFN6ChAY5ZaaYD9Lk0bB8HabrRQeSNPwi6fh5icL1vVag3DsC9Xyj7Y0tQlIPKkJhMeA0C+gXxwAc8+HnTrHLkizmD3zIky+q61Qtvn/Z+ob+PqqWfJRa5ytAmJL6KsHUlvIqq3NJwyMzk7vfgjfuhbebTWcbbbyFt+TC0IDkkjqBBXmtGkmD8PY4WCfrkQX/hxWvha+RRLjyPQMWZJPQ94eYjt9PcEPu7l0/CFw1RnhHS9lyZOmwdoPQnqo3O3XyLecAalI6WSBaWHMHrAbzLN9wi5KBoaBEpYUjq/15PGW5FvsIZaQkOmNH2YPfPtt4L4rwCZ+XZl+9w8Yd3O4Fio8XOuJ5Z81oxYBSaR0msLkMOZu+S4M3j2MZOeTedAHz9YtwpAwuqW9+WaAZPOmJDt2OL+kThkNJx8WxrvOK3PdI3DP86H8X+R7csyWks0AiVfpHJQJriZsOWRiwStcrlZLg3/sDfDSandfVDl3y9SizQBpTO+0pTWnBXAbL2wQL9W1KfdQuUk8uRKm3u0mY9yW71XryWbr3JsDktIfKFzjqvqCr8G3j3WV6lr8qTvhWds7dSVlhF8jTYszmwEST+pzCEe56LT9jHnjS2cJ3cX3KHkLeOua5XsycYMvTYBUVumgjPKyq5NVp3fs5pKrv8Xktzcue/NypJW+Jwc3AySe1EsRrnVRZtuuP+sC61QubW6N959vgQ3wH9S7acz04JDl0+UPJtXUQ+JJfRThRBdVM8+Bo/Zzkej6vPOeAvu4kMDUtCc/bgKk8jLtk+nFf4Gtgiqy7JBfV0FPp/exoNo7L1/IseR535Ps2J3tIfGkjka43yUMXzsIrvmmi0T58J7mwX8cc3I+jbHT72fIW1lAElV6uyrnuIQsdRqcFneRKB/ea+6HR1e4tVeE89LVcnuuh6TUspL6u6h4dArYz1Y3NY9AyInifN+T0VIxSftLBqc0sa6+vF7ol+x/6+Doqc5aXvQ9OVAqUzo4A6tcxC86Ds61s7PdlDcCE26FWrdZ3VrfkwESr9IRKC1uluSzVk5L7GG/c3csghudogofbE1vSVTpuarc5mL4wRTsvIOLRPnx2qBug7sLiTDQesgklOkugr+d1n4J0S5+lRKvZdZfcqubR5ZQJ4mkXq/CxUFFt+sLj/8wKHf58r3yOpx1nWP7hdEST+mvgMAnf/b8PNx1qaOhMmT/78dwnGMWtArfk3hSlyJUBo2ZnWaa852g3OXNd9QUWNfgEANlhvWQV4E9goqdNASmjgnKXd58IZZQbjdA7IhKr6ChO2cYfPe4oNzlzXf+jfDiP51i8IQB4rRsMuYIuKLFjCInw2XBbIO6De4ONN8AsVn64KBCww6AGWcH5S5vPhvUbXAPSqL8zACx+WTgAmKWBGcz9W5qPQI2mNug7kTCZAPEZunnBhW0GbrN1Lup9QjYfogN6i5kS/D22jsdYVJQQTuybDP1bmo9AjaY26DuRMJxUlGlF4tyvYugzdRtxt5N+SNg598n/dItQjE40NayRqHYbD0w2UzdZuzdlD8C9y+F2QvcIqQxBtgGlXOJjOqz4egD3IyVG/dPFsB9boVHPvU9yS6/WwEZm60HplMOz52o7ab8ERgzE/611ilCr/meDJT9r9Re/f6HU0GJz24HDwd+DXByqkswv/oGfNMp5TCbeb3Mr5EjskkOFSldInCESzRuHQ9f/qKLRPnw3rsErn3Yrb0C09OeTMmlASU1pUK1i4oLR8B5zY6buGjouryX3QbL/urWPomRSM8QPwtImESHQ78EN7R64trNoa7CbQXTRjrtv2Zb/obvSfa9dWNub0r/BuzlEpj7vl++h3Tyxemx38HV97lEMcvbVFBg02TrWQhXuKiynyz76eqmjRG4/DZY6vhzhTLGr5HsXLAJkIqUniTwiEtwP7M1/GI87PZZF6muy/vESvih+9G2jMbYqXaGZF+SmwAZcpX27VmPVWp2KjLTvT+y8QsWYkPKEFjgV4tVW8rSZkfaKlJ6r8A3XL/D1kv2L/NX4AfSUBOigJUKl9dWS9OsZXNAqvQiUVzXKDnhELiyi9Y1CfLlrP8Uvj0XbELoSpuenmrWQ+KT9XM0kHZJetjggGWiWEZKOdKdi+GG34RqebPiy80KByRSernCbFf1drTNjriVG61+C8bfkquo7UoiDNuymH8zQIZcoFv13CHbS5yvmhhVCRObhidX9zon/0U3wR+clmZz7VRlXm2NNDsy23LxmRAJ2BvCWU5FBKbcBU+Hu3ivngYS/ixpdgwkbwGzeEqtukCoenDTz4JjAuexdM6eYZtPtgkVhlq7TSEvIImUnqzguOe10b3HfgA7fCaMu6UvE3J5ZEPD1sR6Es93O0+rRTDjVXoPSqgX2h22gcfcj3WVPBqvvwunOmaTbNoogVTak5p8DW0VkMQkHaoZwlWDAg7aA266qORjHNjB9z6C451L82yiXlgV+4TEsmslb62HNuv2VlRptSihM7HspO6dEzr/iV2rRGoVSQshUc5O10irFYDbBMQciKfUDmeNLsQZ2zuxPZTOSAuWw/TCL8q70vekzRMjgQDhSo3F61mB0FS1JkxgO2OxgesXwl3PhWntZjJ3+p4EmjYHA8R6yUTdixhWn6CgcgFnHgmXjiy4gUVX8O+1uX3xJX8p0JSwxK+WI4NqCQyIKUyk9ASFhUGV5+Pb7wtgNRpHlmDBTLvcZX4abPU2zHLIFm1+o8/WfGHx1RL4YiUnQMxYRVIvFnFLPc0HzMF7wOmVMKKga7QK/Xrk5K36wgPLcmCsiejisNh69ls2W5z6mDMgjYO8rd9HdvSzYq9cj/nql6MJrouWjOZ6gwERZvk8ny2FkbWePOrii/GGAiTbU1K6QOBkV4Ot8VfuA4cPgsq9YeDnotTcXNfvX82VvrB0nb9EfKOtKJeka8Sun3Wm0IA0jinzFIpyJnfwbrm7C48dHB04VlzMstINCCvHVwxSZWxtjTiWDNjoSUGANI4p3xEhsrtgWwqS9RYDpl8f2LZP7rnl3yZnF0lavUMbmO3vDU8bExa/VMCNBgGRUzi41pOVAdlbZCsYENN6eEq/EoNnC3Gkk8v+MZNh+PKZ4nbEs4VGRwKI6W2sGW/z2Q4YmjsOToFb056MjcqDyAAxh+wSmB5wc5jMlaga1K56hGv8aom08kukgGwIRtiC/u0azMKNXex7MrdwNZtrKAogZiKe1HEIlwB7R+10B+t7RpQ56RoJvXnXmv9FA8SMVl6mO2Z6ZUGxj/N9JB0c+C3N/1FgTtqTW4rpV1EB2eB4Iqn7aa63XFjMxhRJ91qUOT3huiU1EvYqsMCutQsgTcBU6dGq2SWXzpIsNJcMc/yZ4lbOMnD4mzO2KyBNg35Kz2z8GUsU4HsxRe1owBzfk9Db12Gd6xBANukxw1Wxq2As3agjF+MzwNMCT6nwtF8tjnWpw4a/RHpIS+5XTtJ9NcOJmiuEYwAVu8y/laV6SoTHY+tZuHSWvBldWMNr6tAeks/tQd/T3jtuw4minGDJKwr9JVcK3ensyib6LfhrEd62LBoVFi73pPCN2fBxzytZkoDk89YuS16zO/0zMfpnlAFIFqT+jU9EeNs+rGftegt+A2tXzBanMupFiLGTyv8DB/YeY5As+KUAAAAASUVORK5CYII="
},
function(t, e) {
t.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEQAAABkCAMAAAAIYWa2AAAC8VBMVEVHcEwAAAAAAAAAAAAAAAAzMzPQRUXlSUnnS0vqS0vrTEzhSEgAAADFRUXmS0vtTk7xTU3yTk7yTk6vPz/oTEzvTk7yTk7MRETrS0vyT0/FQUHFPj7uTU3yTk7sTExVKiroS0vyTk5IJCS4QEDuTU3SRETxTU0AAADhSkreSUkAAADoSkryTk7pSkoAAADoTEzmTEziSUndSEjMRETDQUFtJCTwTU3vTExfHx/mSUkAAADFPz/yTk68PDztTEwAAADMRUXBQUHsTEzqTEyzPj7yTk6lOTnjSUnfSEjuTk7yUVH2iYn6wMD95OT+9vYAAADBPT32hob95ub///+2OTkAAADfSUnyT0/5ra3aR0cAAADqS0vwTU3vTU0AAABmKChbJCTBPT24OjrQQkIAAADXRUXRQ0PVRUUAAADcR0fYRkYAAADXRETQQkLNRETIQkLDQUG9Pj6qNzegNTUhCwvxTk4cCQkAAADrTEwAAAAAAADkSkriSEgAAADLQUFnIiLyTk5gHx/oS0vnSkoAAAAAAADOQ0NLHh7wTk4/FRXaRkbXRUVuJSXxTU1vKCgAAADfSEjZRkYAAADwTU3vTU1XHBzSRETIQEAmDw/rTEzoSkoIBQWhNDSMLS3NQkIAAAAAAAAlDw/oSkrnSkqBKyvwTU3vTU1lISG5PT2qODgAAADURUXKQkIBAQHjSUncRkYAAAAAAAA1FBTkSkoYCgpjISHsS0s/FxcAAABtJSXsTU3pS0tTGhp0JibsTExYHR1bHBzsTExpIyOVMzPuTU19KyujNjbxTk7uTU2MLS2xOTnxTk6bMTHCPj60OTniSEjcR0fuTU07FxefNDTbR0fTRUXpS0uiNDThSEiDKyvXRkZ6JyfhSUmSLi7pS0vIQUFQGBjmSkrGQUGCKSntTEzrTEzdSEjbR0edMzOYMTHZR0eTLy8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6Ei6pAAAA+3RSTlMAAQIDBAUhRVhlcUYFFlSTzvX/EGC6/B6P8h8YmPiZBmvtBxe7MNwGVlcHhf6PCHx8WlwtLw7T1BCDCSz3LrQLNzqwsSX9KICC2///////DjL///81CnP//3UMtOPkERkcPkFcDWdqdg98fhBvcmFjUlY8Phf4GxTRFxKlqBZsJfopwMIaE3ci7iSRky/5MhimnBvy7C2DeiHVzSBIQoceFSLQxTvw6zVnWx2Qgh+3qSEZJsAkMtssHDbh1jE73zQ14jpL6UFU9e9IXfRScma0p+crU56T0k2vOpQ0rULLdCm4cTHY1JeWPD6aQC42PDkwKCsvMjQsKSUnKiijw/sAAAUASURBVHgB1M8DcoRBEIbhNNbutW3EtnP/E2V/rDUzKeUpo9/q7+gfATA/tSAiORARpjQLiMTs8fr8gWAw4A95PWEmO6SRII5EY/GEzCXisWgkzIodu5BMpTOyIZNOJZmsjEIim8vLDvlcIXwgYw3hYqkse5QrRTuz741qrS4H1GsN3lmx3mimRUGrGabtkwAo3O6Ikk67u3USIIV7eVGU7w82JwEgdYcjUTYablasRk60jCdrFQDqHoumk3ll3jgVbWfWokUDw+d50Za/GND8FUC+vBID1zddt2KNGdyKkdu7MLoR7N4/iJGHR3cQIN89iaGnZ+cVoO7LSAyNXicMYD/yJsben7sI1iMfn2Ls82vC0wjffcsf/DyH8ZdUskbLIIyBcJCSag+BQ4+36+7uisv58d+T6pt23ic6sH1wJ5CEKMmKqiqyJJKIoB3vwM6xTgKGaf3LNEjIdnZh99IlXM+3luR7BBaEB7B3FxGub63IJ7BIO4ZjLSZ2sdZEbJSkl3Ce4UkTzfUipojnLXfgssAbSNaGJJwsQ3Aq3JI3i8g4WdVw1+CWsllEwclWgzDALXWziIqTXQ/1wFpknKC+Z13n4bvII+thn1Kon1lf/DJB/cqxhY17myB8v2aL/cdXKWYNHLcWheGlcmt3r32URP2E1FeqQoatDJrRpI0sJTIzyTEzoxIzY9gMYWY0M1fRXWXOsizdvf18c/6Dv3SNNpBspH8DGMlRhgv8df9WwQ0h1HDaFuXfUopiSQNBR8f4sx5jYvkLhn9ChTh/FnV8AkPImy0xyR9IEidvNstpJjkFn5GSypJWeduHCmn4kPQE5rTFYJL1ZGTiMjKzhFD57hgtBC1m40Ju5vAXrCbkTgLZjFw8Rl4+RxFm+RbLoTBiAR6kMIdXDIo9lKJiHEZJqYACsUPkrHBlMRhmqzzBdsEeCKJYST4nXT+korIqVPFsinsMraqu0cuoLRWZ02CHkeNixLp6fYyGxhweeS2jw5XLgpp02b+AZskhBgSx0i09kNstHA1i0FMqJLS0ame0tXfYKwMQ5RPhAiN2lmhldHUn8IH/gBjntHT09Gpj1PT1s6GODxXntAQm5gwMamEMDUtVFOHCgLTIyc0ZGdXAuCMJNPq+8ISg5Iay/SMhxzF671Z6ZQCFquovb1Bn3LtfydEXrJBUD4oVUR6otu7DRy0c450BlNNUlTQ27psxMYkYUFxfFFqQpnzu3OmZFlGdAZTKWV+QuVLRRqow4K/DaYZrmffOeNzewasygIIGIP+JN8bo05zEwP/NJnUGDEDClJe9EPBMgmZXeTAAbP9zT8iLFoEmjmfAXqCETo9ZfNkN06+JYr1g63jlJihgsj/RY/rV0xKY2P/arTItAkyudkFvXFpufKCDgT8D2gUluOT2rcTqEOM4Re9inK5dj0jrEQOnqOO9A5Ldn2j/oNf1UG6ryoBx8gMKRIcYCMWW8BFOpqQnEHgoKwL4yk8djM5AoEB87F9/0vq5KlBnIBAKxX1RIPM5NjiZekMh2asK5CtHybcb63+5nNpvSm2yWMWaYer5jiA/kBojHsT0D8n+RJBfeGqgVRam5RW/yGLVBlqlanFpaRm8GVYoTPvK6tra+ka7TbcagEibW9s7q6u7G3v7lbgQy8Hh/tbe9vbK1tHhgcWA+Yj+w839o62j/cN+ApeBskIyPM8EQlaxQcd32W/E9Jewb6BBFAAAAABJRU5ErkJggg=="
}]);