@zhangdali1996/lr-map-viewer 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +537 -0
- package/dist/lr-map-viewer.css +2 -0
- package/dist/lr-map-viewer.js +3948 -0
- package/package.json +32 -0
|
@@ -0,0 +1,3948 @@
|
|
|
1
|
+
import { Fragment as e, computed as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createVNode as o, nextTick as s, normalizeClass as c, onBeforeUnmount as l, onMounted as u, onUnmounted as d, openBlock as f, ref as p, renderList as m, toDisplayString as h, unref as g, vModelText as _, watch as v, withDirectives as y } from "vue";
|
|
2
|
+
import { LrYMap as b, useMap as x } from "@longruan/lr-map";
|
|
3
|
+
//#region packages/lr-map-viewer/src/config/lr2d.js
|
|
4
|
+
var S = {
|
|
5
|
+
engine: "lr-map",
|
|
6
|
+
behavior: {
|
|
7
|
+
autoInitLayer: !0,
|
|
8
|
+
autoShowLayer: !0,
|
|
9
|
+
captureLayerTree: !0
|
|
10
|
+
},
|
|
11
|
+
options: {
|
|
12
|
+
ygis_dsGuid: "",
|
|
13
|
+
ygis_username: "",
|
|
14
|
+
ygis_password: "",
|
|
15
|
+
ygis_url: "",
|
|
16
|
+
extent: "",
|
|
17
|
+
Url: "",
|
|
18
|
+
layerName: "",
|
|
19
|
+
layerCode: "",
|
|
20
|
+
token: "",
|
|
21
|
+
rotate: !1,
|
|
22
|
+
animate: !1,
|
|
23
|
+
zoomAnimation: !1,
|
|
24
|
+
markerZoomAnimation: !1,
|
|
25
|
+
fadeAnimation: !1
|
|
26
|
+
}
|
|
27
|
+
}, C = [
|
|
28
|
+
"ygis_dsGuid",
|
|
29
|
+
"ygis_url",
|
|
30
|
+
"Url"
|
|
31
|
+
];
|
|
32
|
+
function w(e) {
|
|
33
|
+
return Object.prototype.toString.call(e) === "[object Object]";
|
|
34
|
+
}
|
|
35
|
+
function T(e) {
|
|
36
|
+
return Array.isArray(e) ? e.map((e) => T(e)) : w(e) ? Object.keys(e).reduce((t, n) => (t[n] = T(e[n]), t), {}) : e;
|
|
37
|
+
}
|
|
38
|
+
function E(e, t) {
|
|
39
|
+
if (Array.isArray(t)) return t.map((e) => T(e));
|
|
40
|
+
if (!w(e) || !w(t)) return T(t === void 0 ? e : t);
|
|
41
|
+
let n = { ...T(e) };
|
|
42
|
+
return Object.keys(t).forEach((r) => {
|
|
43
|
+
let i = t[r];
|
|
44
|
+
i !== void 0 && (n[r] = E(e[r], i));
|
|
45
|
+
}), n;
|
|
46
|
+
}
|
|
47
|
+
function D(e = {}) {
|
|
48
|
+
let t = String(e.token || "").trim(), n = String(e.ygis_username || "").trim(), r = String(e.ygis_password || "").trim();
|
|
49
|
+
return !!(t || n && r);
|
|
50
|
+
}
|
|
51
|
+
function O(e = {}) {
|
|
52
|
+
let t = j(e), n = [...C];
|
|
53
|
+
return t.behavior.autoShowLayer && n.push("layerName"), n;
|
|
54
|
+
}
|
|
55
|
+
function k(e = {}) {
|
|
56
|
+
let t = j(e), n = O(t).filter((e) => !String(t.options[e] || "").trim());
|
|
57
|
+
return D(t.options) || n.push("token | ygis_username + ygis_password"), n;
|
|
58
|
+
}
|
|
59
|
+
function ee(e = {}) {
|
|
60
|
+
return k(e).length === 0;
|
|
61
|
+
}
|
|
62
|
+
var te = T(S);
|
|
63
|
+
function A() {
|
|
64
|
+
return T(S);
|
|
65
|
+
}
|
|
66
|
+
function ne() {
|
|
67
|
+
return T(te);
|
|
68
|
+
}
|
|
69
|
+
function re() {
|
|
70
|
+
return ne().options;
|
|
71
|
+
}
|
|
72
|
+
function ie(e = {}) {
|
|
73
|
+
return te = E(S, e), ne();
|
|
74
|
+
}
|
|
75
|
+
function ae() {
|
|
76
|
+
return te = T(S), ne();
|
|
77
|
+
}
|
|
78
|
+
function j(e = {}) {
|
|
79
|
+
return E(S, e);
|
|
80
|
+
}
|
|
81
|
+
//#endregion
|
|
82
|
+
//#region packages/lr-map-viewer/src/adapters/lr2d/index.js
|
|
83
|
+
var M = null;
|
|
84
|
+
function oe(e, t = "") {
|
|
85
|
+
if (e?.dataset) {
|
|
86
|
+
if (t) {
|
|
87
|
+
e.dataset.mapMode = t;
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
delete e.dataset.mapMode;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
function se(e) {
|
|
94
|
+
return e?.getContainer?.() || null;
|
|
95
|
+
}
|
|
96
|
+
function N() {
|
|
97
|
+
return x();
|
|
98
|
+
}
|
|
99
|
+
async function P({ map: e, config: t = {} } = {}) {
|
|
100
|
+
if (!e) throw Error("未找到 2D 地图实例");
|
|
101
|
+
let n = j(t), r = k(n);
|
|
102
|
+
if (r.length) throw Error(`2D 地图配置不完整,缺少:${r.join("、")}`);
|
|
103
|
+
let i = se(e), { behavior: a, options: o } = n, { setMap: s, initLayer: c, showLayer: l, getLayerTree: u } = N();
|
|
104
|
+
await s(e);
|
|
105
|
+
let d = [];
|
|
106
|
+
return a.autoInitLayer && await c(), a.captureLayerTree && (d = await u()), a.autoShowLayer && o.layerName && await l(o.layerName, o.layerCode || ""), M = {
|
|
107
|
+
mode: "2d",
|
|
108
|
+
ready: !0,
|
|
109
|
+
engineType: "lr-map",
|
|
110
|
+
map: e,
|
|
111
|
+
host: i,
|
|
112
|
+
config: n,
|
|
113
|
+
options: { ...o },
|
|
114
|
+
behavior: { ...a },
|
|
115
|
+
layerTree: d
|
|
116
|
+
}, oe(i, "2d"), M;
|
|
117
|
+
}
|
|
118
|
+
function F() {
|
|
119
|
+
return M;
|
|
120
|
+
}
|
|
121
|
+
function ce() {
|
|
122
|
+
M?.host && oe(M.host), M = null;
|
|
123
|
+
}
|
|
124
|
+
function le() {
|
|
125
|
+
let e = M?.map;
|
|
126
|
+
return e?.invalidateSize ? (e.invalidateSize(), !0) : !1;
|
|
127
|
+
}
|
|
128
|
+
//#endregion
|
|
129
|
+
//#region packages/lr-map-viewer/src/utils/loadScript.js
|
|
130
|
+
var ue = /* @__PURE__ */ new Map();
|
|
131
|
+
function de(e) {
|
|
132
|
+
return new URL(e, window.location.origin).toString();
|
|
133
|
+
}
|
|
134
|
+
function fe(e) {
|
|
135
|
+
return document.querySelector(`script[data-script-src="${e}"]`);
|
|
136
|
+
}
|
|
137
|
+
function pe(e, t = {}) {
|
|
138
|
+
if (!e) return Promise.reject(/* @__PURE__ */ Error("脚本地址不能为空"));
|
|
139
|
+
if (typeof window > "u" || typeof document > "u") return Promise.reject(/* @__PURE__ */ Error("当前环境不支持动态加载脚本"));
|
|
140
|
+
let n = de(e);
|
|
141
|
+
if (ue.has(n)) return ue.get(n);
|
|
142
|
+
let r = new Promise((r, i) => {
|
|
143
|
+
let a = fe(n), o = (e) => {
|
|
144
|
+
e.dataset.loadState = "loaded", r(e);
|
|
145
|
+
}, s = (t) => {
|
|
146
|
+
t.dataset.loadState = "error", ue.delete(n), i(/* @__PURE__ */ Error(`脚本加载失败: ${e}`));
|
|
147
|
+
};
|
|
148
|
+
if (a) {
|
|
149
|
+
if (a.dataset.loadState === "loaded") {
|
|
150
|
+
r(a);
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
a.addEventListener("load", () => o(a), { once: !0 }), a.addEventListener("error", () => s(a), { once: !0 });
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
let c = document.createElement("script"), { async: l = !0, defer: u = !1, type: d, crossOrigin: f, referrerPolicy: p, attributes: m = {} } = t;
|
|
157
|
+
c.src = n, c.async = l, c.defer = u, c.dataset.scriptSrc = n, c.dataset.loadState = "loading", d && (c.type = d), f && (c.crossOrigin = f), p && (c.referrerPolicy = p), Object.entries(m).forEach(([e, t]) => {
|
|
158
|
+
c.setAttribute(e, t);
|
|
159
|
+
}), c.addEventListener("load", () => o(c), { once: !0 }), c.addEventListener("error", () => s(c), { once: !0 }), document.head.appendChild(c);
|
|
160
|
+
});
|
|
161
|
+
return ue.set(n, r), r;
|
|
162
|
+
}
|
|
163
|
+
//#endregion
|
|
164
|
+
//#region packages/lr-map-viewer/src/config/lr3d.js
|
|
165
|
+
var me = {
|
|
166
|
+
sdk: {
|
|
167
|
+
basePath: "/editorapp",
|
|
168
|
+
scriptSrc: "/editorapp/editorapp.bundle.js",
|
|
169
|
+
globalNames: ["lr3dapp", "EditorApp"],
|
|
170
|
+
dependencies: [
|
|
171
|
+
{
|
|
172
|
+
src: "/resource/js/three.min.js",
|
|
173
|
+
globalNames: ["THREE"]
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
src: "/resource/js/vue.2.6.11.js",
|
|
177
|
+
globalNames: ["Vue"]
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
src: "/resource/js/element_ui.js",
|
|
181
|
+
globalNames: ["ELEMENT"]
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
src: "/resource/js/jquery-3.1.1.min.js",
|
|
185
|
+
globalNames: ["jQuery", "$"]
|
|
186
|
+
}
|
|
187
|
+
]
|
|
188
|
+
},
|
|
189
|
+
scene: {
|
|
190
|
+
containerId: "lr3d-viewer",
|
|
191
|
+
autoResize: !0
|
|
192
|
+
},
|
|
193
|
+
initOptions: {
|
|
194
|
+
showMenu: !1,
|
|
195
|
+
showToolbar: !1,
|
|
196
|
+
showSidebar: !1,
|
|
197
|
+
theme: "shallow",
|
|
198
|
+
basePoint: {
|
|
199
|
+
x: 0,
|
|
200
|
+
y: 0,
|
|
201
|
+
z: 0
|
|
202
|
+
}
|
|
203
|
+
},
|
|
204
|
+
dataSource: {
|
|
205
|
+
type: "cloud",
|
|
206
|
+
autoLoad: !1,
|
|
207
|
+
loadMode: "workfaceOnly",
|
|
208
|
+
cloud: {
|
|
209
|
+
server: "",
|
|
210
|
+
mapServerUrl: "",
|
|
211
|
+
username: "",
|
|
212
|
+
password: "",
|
|
213
|
+
dsGuid: "",
|
|
214
|
+
dsname: "",
|
|
215
|
+
layers: [],
|
|
216
|
+
demoPerson: {
|
|
217
|
+
layer: "",
|
|
218
|
+
startPoint: null
|
|
219
|
+
},
|
|
220
|
+
laneSize: {
|
|
221
|
+
width: 10,
|
|
222
|
+
height: 10
|
|
223
|
+
},
|
|
224
|
+
coalLayers: [],
|
|
225
|
+
geofaultLayers: [],
|
|
226
|
+
workfaceFeatureTypes: ["0202030030"],
|
|
227
|
+
regionFeatureTypes: [
|
|
228
|
+
"0202030030",
|
|
229
|
+
"0106020009",
|
|
230
|
+
"0202030004",
|
|
231
|
+
"0202030006"
|
|
232
|
+
],
|
|
233
|
+
enableRegionAssist: !1,
|
|
234
|
+
enableLane: !0
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
};
|
|
238
|
+
function I(e) {
|
|
239
|
+
return Object.prototype.toString.call(e) === "[object Object]";
|
|
240
|
+
}
|
|
241
|
+
function he(e) {
|
|
242
|
+
return Array.isArray(e) ? e.map((e) => he(e)) : I(e) ? Object.keys(e).reduce((t, n) => (t[n] = he(e[n]), t), {}) : e;
|
|
243
|
+
}
|
|
244
|
+
function L(e, t) {
|
|
245
|
+
if (Array.isArray(t)) return t.map((e) => he(e));
|
|
246
|
+
if (!I(e) || !I(t)) return he(t === void 0 ? e : t);
|
|
247
|
+
let n = { ...he(e) };
|
|
248
|
+
return Object.keys(t).forEach((r) => {
|
|
249
|
+
let i = t[r];
|
|
250
|
+
i !== void 0 && (n[r] = L(e[r], i));
|
|
251
|
+
}), n;
|
|
252
|
+
}
|
|
253
|
+
var ge = he(me);
|
|
254
|
+
function _e() {
|
|
255
|
+
return he(me);
|
|
256
|
+
}
|
|
257
|
+
function ve() {
|
|
258
|
+
return he(ge);
|
|
259
|
+
}
|
|
260
|
+
function ye() {
|
|
261
|
+
return ve().sdk;
|
|
262
|
+
}
|
|
263
|
+
function be() {
|
|
264
|
+
return ve().scene;
|
|
265
|
+
}
|
|
266
|
+
function xe() {
|
|
267
|
+
return ve().initOptions;
|
|
268
|
+
}
|
|
269
|
+
function Se() {
|
|
270
|
+
return ve().dataSource;
|
|
271
|
+
}
|
|
272
|
+
function Ce(e = {}) {
|
|
273
|
+
return ge = L(me, e), ve();
|
|
274
|
+
}
|
|
275
|
+
function we() {
|
|
276
|
+
return ge = he(me), ve();
|
|
277
|
+
}
|
|
278
|
+
function Te(e = {}) {
|
|
279
|
+
return L(me, e);
|
|
280
|
+
}
|
|
281
|
+
//#endregion
|
|
282
|
+
//#region node_modules/pako/dist/pako.esm.mjs
|
|
283
|
+
var Ee = 4, De = 0, Oe = 1, ke = 2;
|
|
284
|
+
function Ae(e) {
|
|
285
|
+
let t = e.length;
|
|
286
|
+
for (; --t >= 0;) e[t] = 0;
|
|
287
|
+
}
|
|
288
|
+
var je = 0, Me = 1, Ne = 2, Pe = 3, Fe = 258, Ie = 29, Le = 256, Re = Le + 1 + Ie, ze = 30, Be = 19, Ve = 2 * Re + 1, He = 15, Ue = 16, We = 7, Ge = 256, Ke = 16, R = 17, qe = 18, Je = new Uint8Array([
|
|
289
|
+
0,
|
|
290
|
+
0,
|
|
291
|
+
0,
|
|
292
|
+
0,
|
|
293
|
+
0,
|
|
294
|
+
0,
|
|
295
|
+
0,
|
|
296
|
+
0,
|
|
297
|
+
1,
|
|
298
|
+
1,
|
|
299
|
+
1,
|
|
300
|
+
1,
|
|
301
|
+
2,
|
|
302
|
+
2,
|
|
303
|
+
2,
|
|
304
|
+
2,
|
|
305
|
+
3,
|
|
306
|
+
3,
|
|
307
|
+
3,
|
|
308
|
+
3,
|
|
309
|
+
4,
|
|
310
|
+
4,
|
|
311
|
+
4,
|
|
312
|
+
4,
|
|
313
|
+
5,
|
|
314
|
+
5,
|
|
315
|
+
5,
|
|
316
|
+
5,
|
|
317
|
+
0
|
|
318
|
+
]), Ye = new Uint8Array([
|
|
319
|
+
0,
|
|
320
|
+
0,
|
|
321
|
+
0,
|
|
322
|
+
0,
|
|
323
|
+
1,
|
|
324
|
+
1,
|
|
325
|
+
2,
|
|
326
|
+
2,
|
|
327
|
+
3,
|
|
328
|
+
3,
|
|
329
|
+
4,
|
|
330
|
+
4,
|
|
331
|
+
5,
|
|
332
|
+
5,
|
|
333
|
+
6,
|
|
334
|
+
6,
|
|
335
|
+
7,
|
|
336
|
+
7,
|
|
337
|
+
8,
|
|
338
|
+
8,
|
|
339
|
+
9,
|
|
340
|
+
9,
|
|
341
|
+
10,
|
|
342
|
+
10,
|
|
343
|
+
11,
|
|
344
|
+
11,
|
|
345
|
+
12,
|
|
346
|
+
12,
|
|
347
|
+
13,
|
|
348
|
+
13
|
|
349
|
+
]), Xe = new Uint8Array([
|
|
350
|
+
0,
|
|
351
|
+
0,
|
|
352
|
+
0,
|
|
353
|
+
0,
|
|
354
|
+
0,
|
|
355
|
+
0,
|
|
356
|
+
0,
|
|
357
|
+
0,
|
|
358
|
+
0,
|
|
359
|
+
0,
|
|
360
|
+
0,
|
|
361
|
+
0,
|
|
362
|
+
0,
|
|
363
|
+
0,
|
|
364
|
+
0,
|
|
365
|
+
0,
|
|
366
|
+
2,
|
|
367
|
+
3,
|
|
368
|
+
7
|
|
369
|
+
]), Ze = new Uint8Array([
|
|
370
|
+
16,
|
|
371
|
+
17,
|
|
372
|
+
18,
|
|
373
|
+
0,
|
|
374
|
+
8,
|
|
375
|
+
7,
|
|
376
|
+
9,
|
|
377
|
+
6,
|
|
378
|
+
10,
|
|
379
|
+
5,
|
|
380
|
+
11,
|
|
381
|
+
4,
|
|
382
|
+
12,
|
|
383
|
+
3,
|
|
384
|
+
13,
|
|
385
|
+
2,
|
|
386
|
+
14,
|
|
387
|
+
1,
|
|
388
|
+
15
|
|
389
|
+
]), Qe = 512, $e = Array((Re + 2) * 2);
|
|
390
|
+
Ae($e);
|
|
391
|
+
var et = Array(ze * 2);
|
|
392
|
+
Ae(et);
|
|
393
|
+
var tt = Array(Qe);
|
|
394
|
+
Ae(tt);
|
|
395
|
+
var nt = Array(Fe - Pe + 1);
|
|
396
|
+
Ae(nt);
|
|
397
|
+
var rt = Array(Ie);
|
|
398
|
+
Ae(rt);
|
|
399
|
+
var it = Array(ze);
|
|
400
|
+
Ae(it);
|
|
401
|
+
function at(e, t, n, r, i) {
|
|
402
|
+
this.static_tree = e, this.extra_bits = t, this.extra_base = n, this.elems = r, this.max_length = i, this.has_stree = e && e.length;
|
|
403
|
+
}
|
|
404
|
+
var ot, st, ct;
|
|
405
|
+
function lt(e, t) {
|
|
406
|
+
this.dyn_tree = e, this.max_code = 0, this.stat_desc = t;
|
|
407
|
+
}
|
|
408
|
+
var ut = (e) => e < 256 ? tt[e] : tt[256 + (e >>> 7)], dt = (e, t) => {
|
|
409
|
+
e.pending_buf[e.pending++] = t & 255, e.pending_buf[e.pending++] = t >>> 8 & 255;
|
|
410
|
+
}, z = (e, t, n) => {
|
|
411
|
+
e.bi_valid > Ue - n ? (e.bi_buf |= t << e.bi_valid & 65535, dt(e, e.bi_buf), e.bi_buf = t >> Ue - e.bi_valid, e.bi_valid += n - Ue) : (e.bi_buf |= t << e.bi_valid & 65535, e.bi_valid += n);
|
|
412
|
+
}, ft = (e, t, n) => {
|
|
413
|
+
z(e, n[t * 2], n[t * 2 + 1]);
|
|
414
|
+
}, pt = (e, t) => {
|
|
415
|
+
let n = 0;
|
|
416
|
+
do
|
|
417
|
+
n |= e & 1, e >>>= 1, n <<= 1;
|
|
418
|
+
while (--t > 0);
|
|
419
|
+
return n >>> 1;
|
|
420
|
+
}, mt = (e) => {
|
|
421
|
+
e.bi_valid === 16 ? (dt(e, e.bi_buf), e.bi_buf = 0, e.bi_valid = 0) : e.bi_valid >= 8 && (e.pending_buf[e.pending++] = e.bi_buf & 255, e.bi_buf >>= 8, e.bi_valid -= 8);
|
|
422
|
+
}, ht = (e, t) => {
|
|
423
|
+
let n = t.dyn_tree, r = t.max_code, i = t.stat_desc.static_tree, a = t.stat_desc.has_stree, o = t.stat_desc.extra_bits, s = t.stat_desc.extra_base, c = t.stat_desc.max_length, l, u, d, f, p, m, h = 0;
|
|
424
|
+
for (f = 0; f <= He; f++) e.bl_count[f] = 0;
|
|
425
|
+
for (n[e.heap[e.heap_max] * 2 + 1] = 0, l = e.heap_max + 1; l < Ve; l++) u = e.heap[l], f = n[n[u * 2 + 1] * 2 + 1] + 1, f > c && (f = c, h++), n[u * 2 + 1] = f, !(u > r) && (e.bl_count[f]++, p = 0, u >= s && (p = o[u - s]), m = n[u * 2], e.opt_len += m * (f + p), a && (e.static_len += m * (i[u * 2 + 1] + p)));
|
|
426
|
+
if (h !== 0) {
|
|
427
|
+
do {
|
|
428
|
+
for (f = c - 1; e.bl_count[f] === 0;) f--;
|
|
429
|
+
e.bl_count[f]--, e.bl_count[f + 1] += 2, e.bl_count[c]--, h -= 2;
|
|
430
|
+
} while (h > 0);
|
|
431
|
+
for (f = c; f !== 0; f--) for (u = e.bl_count[f]; u !== 0;) d = e.heap[--l], !(d > r) && (n[d * 2 + 1] !== f && (e.opt_len += (f - n[d * 2 + 1]) * n[d * 2], n[d * 2 + 1] = f), u--);
|
|
432
|
+
}
|
|
433
|
+
}, gt = (e, t, n) => {
|
|
434
|
+
let r = Array(He + 1), i = 0, a, o;
|
|
435
|
+
for (a = 1; a <= He; a++) i = i + n[a - 1] << 1, r[a] = i;
|
|
436
|
+
for (o = 0; o <= t; o++) {
|
|
437
|
+
let t = e[o * 2 + 1];
|
|
438
|
+
t !== 0 && (e[o * 2] = pt(r[t]++, t));
|
|
439
|
+
}
|
|
440
|
+
}, _t = () => {
|
|
441
|
+
let e, t, n, r, i, a = Array(He + 1);
|
|
442
|
+
for (n = 0, r = 0; r < Ie - 1; r++) for (rt[r] = n, e = 0; e < 1 << Je[r]; e++) nt[n++] = r;
|
|
443
|
+
for (nt[n - 1] = r, i = 0, r = 0; r < 16; r++) for (it[r] = i, e = 0; e < 1 << Ye[r]; e++) tt[i++] = r;
|
|
444
|
+
for (i >>= 7; r < ze; r++) for (it[r] = i << 7, e = 0; e < 1 << Ye[r] - 7; e++) tt[256 + i++] = r;
|
|
445
|
+
for (t = 0; t <= He; t++) a[t] = 0;
|
|
446
|
+
for (e = 0; e <= 143;) $e[e * 2 + 1] = 8, e++, a[8]++;
|
|
447
|
+
for (; e <= 255;) $e[e * 2 + 1] = 9, e++, a[9]++;
|
|
448
|
+
for (; e <= 279;) $e[e * 2 + 1] = 7, e++, a[7]++;
|
|
449
|
+
for (; e <= 287;) $e[e * 2 + 1] = 8, e++, a[8]++;
|
|
450
|
+
for (gt($e, Re + 1, a), e = 0; e < ze; e++) et[e * 2 + 1] = 5, et[e * 2] = pt(e, 5);
|
|
451
|
+
ot = new at($e, Je, Le + 1, Re, He), st = new at(et, Ye, 0, ze, He), ct = new at([], Xe, 0, Be, We);
|
|
452
|
+
}, vt = (e) => {
|
|
453
|
+
let t;
|
|
454
|
+
for (t = 0; t < Re; t++) e.dyn_ltree[t * 2] = 0;
|
|
455
|
+
for (t = 0; t < ze; t++) e.dyn_dtree[t * 2] = 0;
|
|
456
|
+
for (t = 0; t < Be; t++) e.bl_tree[t * 2] = 0;
|
|
457
|
+
e.dyn_ltree[Ge * 2] = 1, e.opt_len = e.static_len = 0, e.sym_next = e.matches = 0;
|
|
458
|
+
}, yt = (e) => {
|
|
459
|
+
e.bi_valid > 8 ? dt(e, e.bi_buf) : e.bi_valid > 0 && (e.pending_buf[e.pending++] = e.bi_buf), e.bi_buf = 0, e.bi_valid = 0;
|
|
460
|
+
}, bt = (e, t, n, r) => {
|
|
461
|
+
let i = t * 2, a = n * 2;
|
|
462
|
+
return e[i] < e[a] || e[i] === e[a] && r[t] <= r[n];
|
|
463
|
+
}, xt = (e, t, n) => {
|
|
464
|
+
let r = e.heap[n], i = n << 1;
|
|
465
|
+
for (; i <= e.heap_len && (i < e.heap_len && bt(t, e.heap[i + 1], e.heap[i], e.depth) && i++, !bt(t, r, e.heap[i], e.depth));) e.heap[n] = e.heap[i], n = i, i <<= 1;
|
|
466
|
+
e.heap[n] = r;
|
|
467
|
+
}, St = (e, t, n) => {
|
|
468
|
+
let r, i, a = 0, o, s;
|
|
469
|
+
if (e.sym_next !== 0) do
|
|
470
|
+
r = e.pending_buf[e.sym_buf + a++] & 255, r += (e.pending_buf[e.sym_buf + a++] & 255) << 8, i = e.pending_buf[e.sym_buf + a++], r === 0 ? ft(e, i, t) : (o = nt[i], ft(e, o + Le + 1, t), s = Je[o], s !== 0 && (i -= rt[o], z(e, i, s)), r--, o = ut(r), ft(e, o, n), s = Ye[o], s !== 0 && (r -= it[o], z(e, r, s)));
|
|
471
|
+
while (a < e.sym_next);
|
|
472
|
+
ft(e, Ge, t);
|
|
473
|
+
}, Ct = (e, t) => {
|
|
474
|
+
let n = t.dyn_tree, r = t.stat_desc.static_tree, i = t.stat_desc.has_stree, a = t.stat_desc.elems, o, s, c = -1, l;
|
|
475
|
+
for (e.heap_len = 0, e.heap_max = Ve, o = 0; o < a; o++) n[o * 2] === 0 ? n[o * 2 + 1] = 0 : (e.heap[++e.heap_len] = c = o, e.depth[o] = 0);
|
|
476
|
+
for (; e.heap_len < 2;) l = e.heap[++e.heap_len] = c < 2 ? ++c : 0, n[l * 2] = 1, e.depth[l] = 0, e.opt_len--, i && (e.static_len -= r[l * 2 + 1]);
|
|
477
|
+
for (t.max_code = c, o = e.heap_len >> 1; o >= 1; o--) xt(e, n, o);
|
|
478
|
+
l = a;
|
|
479
|
+
do
|
|
480
|
+
o = e.heap[1], e.heap[1] = e.heap[e.heap_len--], xt(e, n, 1), s = e.heap[1], e.heap[--e.heap_max] = o, e.heap[--e.heap_max] = s, n[l * 2] = n[o * 2] + n[s * 2], e.depth[l] = (e.depth[o] >= e.depth[s] ? e.depth[o] : e.depth[s]) + 1, n[o * 2 + 1] = n[s * 2 + 1] = l, e.heap[1] = l++, xt(e, n, 1);
|
|
481
|
+
while (e.heap_len >= 2);
|
|
482
|
+
e.heap[--e.heap_max] = e.heap[1], ht(e, t), gt(n, c, e.bl_count);
|
|
483
|
+
}, wt = (e, t, n) => {
|
|
484
|
+
let r, i = -1, a, o = t[1], s = 0, c = 7, l = 4;
|
|
485
|
+
for (o === 0 && (c = 138, l = 3), t[(n + 1) * 2 + 1] = 65535, r = 0; r <= n; r++) a = o, o = t[(r + 1) * 2 + 1], !(++s < c && a === o) && (s < l ? e.bl_tree[a * 2] += s : a === 0 ? s <= 10 ? e.bl_tree[R * 2]++ : e.bl_tree[qe * 2]++ : (a !== i && e.bl_tree[a * 2]++, e.bl_tree[Ke * 2]++), s = 0, i = a, o === 0 ? (c = 138, l = 3) : a === o ? (c = 6, l = 3) : (c = 7, l = 4));
|
|
486
|
+
}, Tt = (e, t, n) => {
|
|
487
|
+
let r, i = -1, a, o = t[1], s = 0, c = 7, l = 4;
|
|
488
|
+
for (o === 0 && (c = 138, l = 3), r = 0; r <= n; r++) if (a = o, o = t[(r + 1) * 2 + 1], !(++s < c && a === o)) {
|
|
489
|
+
if (s < l) do
|
|
490
|
+
ft(e, a, e.bl_tree);
|
|
491
|
+
while (--s !== 0);
|
|
492
|
+
else a === 0 ? s <= 10 ? (ft(e, R, e.bl_tree), z(e, s - 3, 3)) : (ft(e, qe, e.bl_tree), z(e, s - 11, 7)) : (a !== i && (ft(e, a, e.bl_tree), s--), ft(e, Ke, e.bl_tree), z(e, s - 3, 2));
|
|
493
|
+
s = 0, i = a, o === 0 ? (c = 138, l = 3) : a === o ? (c = 6, l = 3) : (c = 7, l = 4);
|
|
494
|
+
}
|
|
495
|
+
}, Et = (e) => {
|
|
496
|
+
let t;
|
|
497
|
+
for (wt(e, e.dyn_ltree, e.l_desc.max_code), wt(e, e.dyn_dtree, e.d_desc.max_code), Ct(e, e.bl_desc), t = Be - 1; t >= 3 && e.bl_tree[Ze[t] * 2 + 1] === 0; t--);
|
|
498
|
+
return e.opt_len += 3 * (t + 1) + 5 + 5 + 4, t;
|
|
499
|
+
}, Dt = (e, t, n, r) => {
|
|
500
|
+
let i;
|
|
501
|
+
for (z(e, t - 257, 5), z(e, n - 1, 5), z(e, r - 4, 4), i = 0; i < r; i++) z(e, e.bl_tree[Ze[i] * 2 + 1], 3);
|
|
502
|
+
Tt(e, e.dyn_ltree, t - 1), Tt(e, e.dyn_dtree, n - 1);
|
|
503
|
+
}, Ot = (e) => {
|
|
504
|
+
let t = 4093624447, n;
|
|
505
|
+
for (n = 0; n <= 31; n++, t >>>= 1) if (t & 1 && e.dyn_ltree[n * 2] !== 0) return De;
|
|
506
|
+
if (e.dyn_ltree[18] !== 0 || e.dyn_ltree[20] !== 0 || e.dyn_ltree[26] !== 0) return Oe;
|
|
507
|
+
for (n = 32; n < Le; n++) if (e.dyn_ltree[n * 2] !== 0) return Oe;
|
|
508
|
+
return De;
|
|
509
|
+
}, kt = !1, At = (e) => {
|
|
510
|
+
kt ||= (_t(), !0), e.l_desc = new lt(e.dyn_ltree, ot), e.d_desc = new lt(e.dyn_dtree, st), e.bl_desc = new lt(e.bl_tree, ct), e.bi_buf = 0, e.bi_valid = 0, vt(e);
|
|
511
|
+
}, jt = (e, t, n, r) => {
|
|
512
|
+
z(e, (je << 1) + (r ? 1 : 0), 3), yt(e), dt(e, n), dt(e, ~n), n && e.pending_buf.set(e.window.subarray(t, t + n), e.pending), e.pending += n;
|
|
513
|
+
}, Mt = {
|
|
514
|
+
_tr_init: At,
|
|
515
|
+
_tr_stored_block: jt,
|
|
516
|
+
_tr_flush_block: (e, t, n, r) => {
|
|
517
|
+
let i, a, o = 0;
|
|
518
|
+
e.level > 0 ? (e.strm.data_type === ke && (e.strm.data_type = Ot(e)), Ct(e, e.l_desc), Ct(e, e.d_desc), o = Et(e), i = e.opt_len + 3 + 7 >>> 3, a = e.static_len + 3 + 7 >>> 3, a <= i && (i = a)) : i = a = n + 5, n + 4 <= i && t !== -1 ? jt(e, t, n, r) : e.strategy === Ee || a === i ? (z(e, (Me << 1) + (r ? 1 : 0), 3), St(e, $e, et)) : (z(e, (Ne << 1) + (r ? 1 : 0), 3), Dt(e, e.l_desc.max_code + 1, e.d_desc.max_code + 1, o + 1), St(e, e.dyn_ltree, e.dyn_dtree)), vt(e), r && yt(e);
|
|
519
|
+
},
|
|
520
|
+
_tr_tally: (e, t, n) => (e.pending_buf[e.sym_buf + e.sym_next++] = t, e.pending_buf[e.sym_buf + e.sym_next++] = t >> 8, e.pending_buf[e.sym_buf + e.sym_next++] = n, t === 0 ? e.dyn_ltree[n * 2]++ : (e.matches++, t--, e.dyn_ltree[(nt[n] + Le + 1) * 2]++, e.dyn_dtree[ut(t) * 2]++), e.sym_next === e.sym_end),
|
|
521
|
+
_tr_align: (e) => {
|
|
522
|
+
z(e, Me << 1, 3), ft(e, Ge, $e), mt(e);
|
|
523
|
+
}
|
|
524
|
+
}, Nt = (e, t, n, r) => {
|
|
525
|
+
let i = e & 65535 | 0, a = e >>> 16 & 65535 | 0, o = 0;
|
|
526
|
+
for (; n !== 0;) {
|
|
527
|
+
o = n > 2e3 ? 2e3 : n, n -= o;
|
|
528
|
+
do
|
|
529
|
+
i = i + t[r++] | 0, a = a + i | 0;
|
|
530
|
+
while (--o);
|
|
531
|
+
i %= 65521, a %= 65521;
|
|
532
|
+
}
|
|
533
|
+
return i | a << 16 | 0;
|
|
534
|
+
}, Pt = new Uint32Array((() => {
|
|
535
|
+
let e, t = [];
|
|
536
|
+
for (var n = 0; n < 256; n++) {
|
|
537
|
+
e = n;
|
|
538
|
+
for (var r = 0; r < 8; r++) e = e & 1 ? 3988292384 ^ e >>> 1 : e >>> 1;
|
|
539
|
+
t[n] = e;
|
|
540
|
+
}
|
|
541
|
+
return t;
|
|
542
|
+
})()), B = (e, t, n, r) => {
|
|
543
|
+
let i = Pt, a = r + n;
|
|
544
|
+
e ^= -1;
|
|
545
|
+
for (let n = r; n < a; n++) e = e >>> 8 ^ i[(e ^ t[n]) & 255];
|
|
546
|
+
return e ^ -1;
|
|
547
|
+
}, Ft = {
|
|
548
|
+
2: "need dictionary",
|
|
549
|
+
1: "stream end",
|
|
550
|
+
0: "",
|
|
551
|
+
"-1": "file error",
|
|
552
|
+
"-2": "stream error",
|
|
553
|
+
"-3": "data error",
|
|
554
|
+
"-4": "insufficient memory",
|
|
555
|
+
"-5": "buffer error",
|
|
556
|
+
"-6": "incompatible version"
|
|
557
|
+
}, It = {
|
|
558
|
+
Z_NO_FLUSH: 0,
|
|
559
|
+
Z_PARTIAL_FLUSH: 1,
|
|
560
|
+
Z_SYNC_FLUSH: 2,
|
|
561
|
+
Z_FULL_FLUSH: 3,
|
|
562
|
+
Z_FINISH: 4,
|
|
563
|
+
Z_BLOCK: 5,
|
|
564
|
+
Z_TREES: 6,
|
|
565
|
+
Z_OK: 0,
|
|
566
|
+
Z_STREAM_END: 1,
|
|
567
|
+
Z_NEED_DICT: 2,
|
|
568
|
+
Z_ERRNO: -1,
|
|
569
|
+
Z_STREAM_ERROR: -2,
|
|
570
|
+
Z_DATA_ERROR: -3,
|
|
571
|
+
Z_MEM_ERROR: -4,
|
|
572
|
+
Z_BUF_ERROR: -5,
|
|
573
|
+
Z_NO_COMPRESSION: 0,
|
|
574
|
+
Z_BEST_SPEED: 1,
|
|
575
|
+
Z_BEST_COMPRESSION: 9,
|
|
576
|
+
Z_DEFAULT_COMPRESSION: -1,
|
|
577
|
+
Z_FILTERED: 1,
|
|
578
|
+
Z_HUFFMAN_ONLY: 2,
|
|
579
|
+
Z_RLE: 3,
|
|
580
|
+
Z_FIXED: 4,
|
|
581
|
+
Z_DEFAULT_STRATEGY: 0,
|
|
582
|
+
Z_BINARY: 0,
|
|
583
|
+
Z_TEXT: 1,
|
|
584
|
+
Z_UNKNOWN: 2,
|
|
585
|
+
Z_DEFLATED: 8
|
|
586
|
+
}, { _tr_init: Lt, _tr_stored_block: Rt, _tr_flush_block: zt, _tr_tally: Bt, _tr_align: Vt } = Mt, { Z_NO_FLUSH: Ht, Z_PARTIAL_FLUSH: Ut, Z_FULL_FLUSH: Wt, Z_FINISH: V, Z_BLOCK: Gt, Z_OK: H, Z_STREAM_END: Kt, Z_STREAM_ERROR: U, Z_DATA_ERROR: qt, Z_BUF_ERROR: Jt, Z_DEFAULT_COMPRESSION: Yt, Z_FILTERED: Xt, Z_HUFFMAN_ONLY: Zt, Z_RLE: Qt, Z_FIXED: $t, Z_DEFAULT_STRATEGY: en, Z_UNKNOWN: tn, Z_DEFLATED: nn } = It, rn = 9, an = 15, on = 8, sn = 286, cn = 30, ln = 19, un = 2 * sn + 1, dn = 15, W = 3, fn = 258, G = fn + W + 1, pn = 32, mn = 42, hn = 57, gn = 69, _n = 73, vn = 91, yn = 103, bn = 113, xn = 666, K = 1, Sn = 2, Cn = 3, wn = 4, Tn = 3, En = (e, t) => (e.msg = Ft[t], t), Dn = (e) => e * 2 - (e > 4 ? 9 : 0), On = (e) => {
|
|
587
|
+
let t = e.length;
|
|
588
|
+
for (; --t >= 0;) e[t] = 0;
|
|
589
|
+
}, kn = (e) => {
|
|
590
|
+
let t, n, r, i = e.w_size;
|
|
591
|
+
t = e.hash_size, r = t;
|
|
592
|
+
do
|
|
593
|
+
n = e.head[--r], e.head[r] = n >= i ? n - i : 0;
|
|
594
|
+
while (--t);
|
|
595
|
+
t = i, r = t;
|
|
596
|
+
do
|
|
597
|
+
n = e.prev[--r], e.prev[r] = n >= i ? n - i : 0;
|
|
598
|
+
while (--t);
|
|
599
|
+
}, An = (e, t, n) => (t << e.hash_shift ^ n) & e.hash_mask, q = (e) => {
|
|
600
|
+
let t = e.state, n = t.pending;
|
|
601
|
+
n > e.avail_out && (n = e.avail_out), n !== 0 && (e.output.set(t.pending_buf.subarray(t.pending_out, t.pending_out + n), e.next_out), e.next_out += n, t.pending_out += n, e.total_out += n, e.avail_out -= n, t.pending -= n, t.pending === 0 && (t.pending_out = 0));
|
|
602
|
+
}, J = (e, t) => {
|
|
603
|
+
zt(e, e.block_start >= 0 ? e.block_start : -1, e.strstart - e.block_start, t), e.block_start = e.strstart, q(e.strm);
|
|
604
|
+
}, Y = (e, t) => {
|
|
605
|
+
e.pending_buf[e.pending++] = t;
|
|
606
|
+
}, jn = (e, t) => {
|
|
607
|
+
e.pending_buf[e.pending++] = t >>> 8 & 255, e.pending_buf[e.pending++] = t & 255;
|
|
608
|
+
}, Mn = (e, t, n, r) => {
|
|
609
|
+
let i = e.avail_in;
|
|
610
|
+
return i > r && (i = r), i === 0 ? 0 : (e.avail_in -= i, t.set(e.input.subarray(e.next_in, e.next_in + i), n), e.state.wrap === 1 ? e.adler = Nt(e.adler, t, i, n) : e.state.wrap === 2 && (e.adler = B(e.adler, t, i, n)), e.next_in += i, e.total_in += i, i);
|
|
611
|
+
}, Nn = (e, t) => {
|
|
612
|
+
let n = e.max_chain_length, r = e.strstart, i, a, o = e.prev_length, s = e.nice_match, c = e.strstart > e.w_size - G ? e.strstart - (e.w_size - G) : 0, l = e.window, u = e.w_mask, d = e.prev, f = e.strstart + fn, p = l[r + o - 1], m = l[r + o];
|
|
613
|
+
e.prev_length >= e.good_match && (n >>= 2), s > e.lookahead && (s = e.lookahead);
|
|
614
|
+
do {
|
|
615
|
+
if (i = t, l[i + o] !== m || l[i + o - 1] !== p || l[i] !== l[r] || l[++i] !== l[r + 1]) continue;
|
|
616
|
+
r += 2, i++;
|
|
617
|
+
do ;
|
|
618
|
+
while (l[++r] === l[++i] && l[++r] === l[++i] && l[++r] === l[++i] && l[++r] === l[++i] && l[++r] === l[++i] && l[++r] === l[++i] && l[++r] === l[++i] && l[++r] === l[++i] && r < f);
|
|
619
|
+
if (a = fn - (f - r), r = f - fn, a > o) {
|
|
620
|
+
if (e.match_start = t, o = a, a >= s) break;
|
|
621
|
+
p = l[r + o - 1], m = l[r + o];
|
|
622
|
+
}
|
|
623
|
+
} while ((t = d[t & u]) > c && --n !== 0);
|
|
624
|
+
return o <= e.lookahead ? o : e.lookahead;
|
|
625
|
+
}, Pn = (e) => {
|
|
626
|
+
let t = e.w_size, n, r, i;
|
|
627
|
+
do {
|
|
628
|
+
if (r = e.window_size - e.lookahead - e.strstart, e.strstart >= t + (t - G) && (e.window.set(e.window.subarray(t, t + t - r), 0), e.match_start -= t, e.strstart -= t, e.block_start -= t, e.insert > e.strstart && (e.insert = e.strstart), kn(e), r += t), e.strm.avail_in === 0) break;
|
|
629
|
+
if (n = Mn(e.strm, e.window, e.strstart + e.lookahead, r), e.lookahead += n, e.lookahead + e.insert >= W) for (i = e.strstart - e.insert, e.ins_h = e.window[i], e.ins_h = An(e, e.ins_h, e.window[i + 1]); e.insert && (e.ins_h = An(e, e.ins_h, e.window[i + W - 1]), e.prev[i & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = i, i++, e.insert--, !(e.lookahead + e.insert < W)););
|
|
630
|
+
} while (e.lookahead < G && e.strm.avail_in !== 0);
|
|
631
|
+
}, Fn = (e, t) => {
|
|
632
|
+
let n = e.pending_buf_size - 5 > e.w_size ? e.w_size : e.pending_buf_size - 5, r, i, a, o = 0, s = e.strm.avail_in;
|
|
633
|
+
do {
|
|
634
|
+
if (r = 65535, a = e.bi_valid + 42 >> 3, e.strm.avail_out < a || (a = e.strm.avail_out - a, i = e.strstart - e.block_start, r > i + e.strm.avail_in && (r = i + e.strm.avail_in), r > a && (r = a), r < n && (r === 0 && t !== V || t === Ht || r !== i + e.strm.avail_in))) break;
|
|
635
|
+
o = t === V && r === i + e.strm.avail_in ? 1 : 0, Rt(e, 0, 0, o), e.pending_buf[e.pending - 4] = r, e.pending_buf[e.pending - 3] = r >> 8, e.pending_buf[e.pending - 2] = ~r, e.pending_buf[e.pending - 1] = ~r >> 8, q(e.strm), i && (i > r && (i = r), e.strm.output.set(e.window.subarray(e.block_start, e.block_start + i), e.strm.next_out), e.strm.next_out += i, e.strm.avail_out -= i, e.strm.total_out += i, e.block_start += i, r -= i), r && (Mn(e.strm, e.strm.output, e.strm.next_out, r), e.strm.next_out += r, e.strm.avail_out -= r, e.strm.total_out += r);
|
|
636
|
+
} while (o === 0);
|
|
637
|
+
return s -= e.strm.avail_in, s && (s >= e.w_size ? (e.matches = 2, e.window.set(e.strm.input.subarray(e.strm.next_in - e.w_size, e.strm.next_in), 0), e.strstart = e.w_size, e.insert = e.strstart) : (e.window_size - e.strstart <= s && (e.strstart -= e.w_size, e.window.set(e.window.subarray(e.w_size, e.w_size + e.strstart), 0), e.matches < 2 && e.matches++, e.insert > e.strstart && (e.insert = e.strstart)), e.window.set(e.strm.input.subarray(e.strm.next_in - s, e.strm.next_in), e.strstart), e.strstart += s, e.insert += s > e.w_size - e.insert ? e.w_size - e.insert : s), e.block_start = e.strstart), e.high_water < e.strstart && (e.high_water = e.strstart), o ? wn : t !== Ht && t !== V && e.strm.avail_in === 0 && e.strstart === e.block_start ? Sn : (a = e.window_size - e.strstart, e.strm.avail_in > a && e.block_start >= e.w_size && (e.block_start -= e.w_size, e.strstart -= e.w_size, e.window.set(e.window.subarray(e.w_size, e.w_size + e.strstart), 0), e.matches < 2 && e.matches++, a += e.w_size, e.insert > e.strstart && (e.insert = e.strstart)), a > e.strm.avail_in && (a = e.strm.avail_in), a && (Mn(e.strm, e.window, e.strstart, a), e.strstart += a, e.insert += a > e.w_size - e.insert ? e.w_size - e.insert : a), e.high_water < e.strstart && (e.high_water = e.strstart), a = e.bi_valid + 42 >> 3, a = e.pending_buf_size - a > 65535 ? 65535 : e.pending_buf_size - a, n = a > e.w_size ? e.w_size : a, i = e.strstart - e.block_start, (i >= n || (i || t === V) && t !== Ht && e.strm.avail_in === 0 && i <= a) && (r = i > a ? a : i, o = t === V && e.strm.avail_in === 0 && r === i ? 1 : 0, Rt(e, e.block_start, r, o), e.block_start += r, q(e.strm)), o ? Cn : K);
|
|
638
|
+
}, In = (e, t) => {
|
|
639
|
+
let n, r;
|
|
640
|
+
for (;;) {
|
|
641
|
+
if (e.lookahead < G) {
|
|
642
|
+
if (Pn(e), e.lookahead < G && t === Ht) return K;
|
|
643
|
+
if (e.lookahead === 0) break;
|
|
644
|
+
}
|
|
645
|
+
if (n = 0, e.lookahead >= W && (e.ins_h = An(e, e.ins_h, e.window[e.strstart + W - 1]), n = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart), n !== 0 && e.strstart - n <= e.w_size - G && (e.match_length = Nn(e, n)), e.match_length >= W) if (r = Bt(e, e.strstart - e.match_start, e.match_length - W), e.lookahead -= e.match_length, e.match_length <= e.max_lazy_match && e.lookahead >= W) {
|
|
646
|
+
e.match_length--;
|
|
647
|
+
do
|
|
648
|
+
e.strstart++, e.ins_h = An(e, e.ins_h, e.window[e.strstart + W - 1]), n = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart;
|
|
649
|
+
while (--e.match_length !== 0);
|
|
650
|
+
e.strstart++;
|
|
651
|
+
} else e.strstart += e.match_length, e.match_length = 0, e.ins_h = e.window[e.strstart], e.ins_h = An(e, e.ins_h, e.window[e.strstart + 1]);
|
|
652
|
+
else r = Bt(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++;
|
|
653
|
+
if (r && (J(e, !1), e.strm.avail_out === 0)) return K;
|
|
654
|
+
}
|
|
655
|
+
return e.insert = e.strstart < W - 1 ? e.strstart : W - 1, t === V ? (J(e, !0), e.strm.avail_out === 0 ? Cn : wn) : e.sym_next && (J(e, !1), e.strm.avail_out === 0) ? K : Sn;
|
|
656
|
+
}, Ln = (e, t) => {
|
|
657
|
+
let n, r, i;
|
|
658
|
+
for (;;) {
|
|
659
|
+
if (e.lookahead < G) {
|
|
660
|
+
if (Pn(e), e.lookahead < G && t === Ht) return K;
|
|
661
|
+
if (e.lookahead === 0) break;
|
|
662
|
+
}
|
|
663
|
+
if (n = 0, e.lookahead >= W && (e.ins_h = An(e, e.ins_h, e.window[e.strstart + W - 1]), n = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart), e.prev_length = e.match_length, e.prev_match = e.match_start, e.match_length = W - 1, n !== 0 && e.prev_length < e.max_lazy_match && e.strstart - n <= e.w_size - G && (e.match_length = Nn(e, n), e.match_length <= 5 && (e.strategy === Xt || e.match_length === W && e.strstart - e.match_start > 4096) && (e.match_length = W - 1)), e.prev_length >= W && e.match_length <= e.prev_length) {
|
|
664
|
+
i = e.strstart + e.lookahead - W, r = Bt(e, e.strstart - 1 - e.prev_match, e.prev_length - W), e.lookahead -= e.prev_length - 1, e.prev_length -= 2;
|
|
665
|
+
do
|
|
666
|
+
++e.strstart <= i && (e.ins_h = An(e, e.ins_h, e.window[e.strstart + W - 1]), n = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart);
|
|
667
|
+
while (--e.prev_length !== 0);
|
|
668
|
+
if (e.match_available = 0, e.match_length = W - 1, e.strstart++, r && (J(e, !1), e.strm.avail_out === 0)) return K;
|
|
669
|
+
} else if (e.match_available) {
|
|
670
|
+
if (r = Bt(e, 0, e.window[e.strstart - 1]), r && J(e, !1), e.strstart++, e.lookahead--, e.strm.avail_out === 0) return K;
|
|
671
|
+
} else e.match_available = 1, e.strstart++, e.lookahead--;
|
|
672
|
+
}
|
|
673
|
+
return e.match_available &&= (r = Bt(e, 0, e.window[e.strstart - 1]), 0), e.insert = e.strstart < W - 1 ? e.strstart : W - 1, t === V ? (J(e, !0), e.strm.avail_out === 0 ? Cn : wn) : e.sym_next && (J(e, !1), e.strm.avail_out === 0) ? K : Sn;
|
|
674
|
+
}, Rn = (e, t) => {
|
|
675
|
+
let n, r, i, a, o = e.window;
|
|
676
|
+
for (;;) {
|
|
677
|
+
if (e.lookahead <= fn) {
|
|
678
|
+
if (Pn(e), e.lookahead <= fn && t === Ht) return K;
|
|
679
|
+
if (e.lookahead === 0) break;
|
|
680
|
+
}
|
|
681
|
+
if (e.match_length = 0, e.lookahead >= W && e.strstart > 0 && (i = e.strstart - 1, r = o[i], r === o[++i] && r === o[++i] && r === o[++i])) {
|
|
682
|
+
a = e.strstart + fn;
|
|
683
|
+
do ;
|
|
684
|
+
while (r === o[++i] && r === o[++i] && r === o[++i] && r === o[++i] && r === o[++i] && r === o[++i] && r === o[++i] && r === o[++i] && i < a);
|
|
685
|
+
e.match_length = fn - (a - i), e.match_length > e.lookahead && (e.match_length = e.lookahead);
|
|
686
|
+
}
|
|
687
|
+
if (e.match_length >= W ? (n = Bt(e, 1, e.match_length - W), e.lookahead -= e.match_length, e.strstart += e.match_length, e.match_length = 0) : (n = Bt(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++), n && (J(e, !1), e.strm.avail_out === 0)) return K;
|
|
688
|
+
}
|
|
689
|
+
return e.insert = 0, t === V ? (J(e, !0), e.strm.avail_out === 0 ? Cn : wn) : e.sym_next && (J(e, !1), e.strm.avail_out === 0) ? K : Sn;
|
|
690
|
+
}, zn = (e, t) => {
|
|
691
|
+
let n;
|
|
692
|
+
for (;;) {
|
|
693
|
+
if (e.lookahead === 0 && (Pn(e), e.lookahead === 0)) {
|
|
694
|
+
if (t === Ht) return K;
|
|
695
|
+
break;
|
|
696
|
+
}
|
|
697
|
+
if (e.match_length = 0, n = Bt(e, 0, e.window[e.strstart]), e.lookahead--, e.strstart++, n && (J(e, !1), e.strm.avail_out === 0)) return K;
|
|
698
|
+
}
|
|
699
|
+
return e.insert = 0, t === V ? (J(e, !0), e.strm.avail_out === 0 ? Cn : wn) : e.sym_next && (J(e, !1), e.strm.avail_out === 0) ? K : Sn;
|
|
700
|
+
};
|
|
701
|
+
function Bn(e, t, n, r, i) {
|
|
702
|
+
this.good_length = e, this.max_lazy = t, this.nice_length = n, this.max_chain = r, this.func = i;
|
|
703
|
+
}
|
|
704
|
+
var Vn = [
|
|
705
|
+
new Bn(0, 0, 0, 0, Fn),
|
|
706
|
+
new Bn(4, 4, 8, 4, In),
|
|
707
|
+
new Bn(4, 5, 16, 8, In),
|
|
708
|
+
new Bn(4, 6, 32, 32, In),
|
|
709
|
+
new Bn(4, 4, 16, 16, Ln),
|
|
710
|
+
new Bn(8, 16, 32, 32, Ln),
|
|
711
|
+
new Bn(8, 16, 128, 128, Ln),
|
|
712
|
+
new Bn(8, 32, 128, 256, Ln),
|
|
713
|
+
new Bn(32, 128, 258, 1024, Ln),
|
|
714
|
+
new Bn(32, 258, 258, 4096, Ln)
|
|
715
|
+
], Hn = (e) => {
|
|
716
|
+
e.window_size = 2 * e.w_size, On(e.head), e.max_lazy_match = Vn[e.level].max_lazy, e.good_match = Vn[e.level].good_length, e.nice_match = Vn[e.level].nice_length, e.max_chain_length = Vn[e.level].max_chain, e.strstart = 0, e.block_start = 0, e.lookahead = 0, e.insert = 0, e.match_length = e.prev_length = W - 1, e.match_available = 0, e.ins_h = 0;
|
|
717
|
+
};
|
|
718
|
+
function Un() {
|
|
719
|
+
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 = nn, 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 Uint16Array(un * 2), this.dyn_dtree = new Uint16Array((2 * cn + 1) * 2), this.bl_tree = new Uint16Array((2 * ln + 1) * 2), On(this.dyn_ltree), On(this.dyn_dtree), On(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new Uint16Array(dn + 1), this.heap = new Uint16Array(2 * sn + 1), On(this.heap), this.heap_len = 0, this.heap_max = 0, this.depth = new Uint16Array(2 * sn + 1), On(this.depth), this.sym_buf = 0, this.lit_bufsize = 0, this.sym_next = 0, this.sym_end = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0, this.insert = 0, this.bi_buf = 0, this.bi_valid = 0;
|
|
720
|
+
}
|
|
721
|
+
var Wn = (e) => {
|
|
722
|
+
if (!e) return 1;
|
|
723
|
+
let t = e.state;
|
|
724
|
+
return !t || t.strm !== e || t.status !== mn && t.status !== hn && t.status !== gn && t.status !== _n && t.status !== vn && t.status !== yn && t.status !== bn && t.status !== xn ? 1 : 0;
|
|
725
|
+
}, Gn = (e) => {
|
|
726
|
+
if (Wn(e)) return En(e, U);
|
|
727
|
+
e.total_in = e.total_out = 0, e.data_type = tn;
|
|
728
|
+
let t = e.state;
|
|
729
|
+
return t.pending = 0, t.pending_out = 0, t.wrap < 0 && (t.wrap = -t.wrap), t.status = t.wrap === 2 ? hn : t.wrap ? mn : bn, e.adler = t.wrap === 2 ? 0 : 1, t.last_flush = -2, Lt(t), H;
|
|
730
|
+
}, Kn = (e) => {
|
|
731
|
+
let t = Gn(e);
|
|
732
|
+
return t === H && Hn(e.state), t;
|
|
733
|
+
}, qn = (e, t) => Wn(e) || e.state.wrap !== 2 ? U : (e.state.gzhead = t, H), Jn = (e, t, n, r, i, a) => {
|
|
734
|
+
if (!e) return U;
|
|
735
|
+
let o = 1;
|
|
736
|
+
if (t === Yt && (t = 6), r < 0 ? (o = 0, r = -r) : r > 15 && (o = 2, r -= 16), i < 1 || i > rn || n !== nn || r < 8 || r > 15 || t < 0 || t > 9 || a < 0 || a > $t || r === 8 && o !== 1) return En(e, U);
|
|
737
|
+
r === 8 && (r = 9);
|
|
738
|
+
let s = new Un();
|
|
739
|
+
return e.state = s, s.strm = e, s.status = mn, s.wrap = o, s.gzhead = null, s.w_bits = r, s.w_size = 1 << s.w_bits, s.w_mask = s.w_size - 1, s.hash_bits = i + 7, s.hash_size = 1 << s.hash_bits, s.hash_mask = s.hash_size - 1, s.hash_shift = ~~((s.hash_bits + W - 1) / W), s.window = new Uint8Array(s.w_size * 2), s.head = new Uint16Array(s.hash_size), s.prev = new Uint16Array(s.w_size), s.lit_bufsize = 1 << i + 6, s.pending_buf_size = s.lit_bufsize * 4, s.pending_buf = new Uint8Array(s.pending_buf_size), s.sym_buf = s.lit_bufsize, s.sym_end = (s.lit_bufsize - 1) * 3, s.level = t, s.strategy = a, s.method = n, Kn(e);
|
|
740
|
+
}, Yn = {
|
|
741
|
+
deflateInit: (e, t) => Jn(e, t, nn, an, on, en),
|
|
742
|
+
deflateInit2: Jn,
|
|
743
|
+
deflateReset: Kn,
|
|
744
|
+
deflateResetKeep: Gn,
|
|
745
|
+
deflateSetHeader: qn,
|
|
746
|
+
deflate: (e, t) => {
|
|
747
|
+
if (Wn(e) || t > Gt || t < 0) return e ? En(e, U) : U;
|
|
748
|
+
let n = e.state;
|
|
749
|
+
if (!e.output || e.avail_in !== 0 && !e.input || n.status === xn && t !== V) return En(e, e.avail_out === 0 ? Jt : U);
|
|
750
|
+
let r = n.last_flush;
|
|
751
|
+
if (n.last_flush = t, n.pending !== 0) {
|
|
752
|
+
if (q(e), e.avail_out === 0) return n.last_flush = -1, H;
|
|
753
|
+
} else if (e.avail_in === 0 && Dn(t) <= Dn(r) && t !== V) return En(e, Jt);
|
|
754
|
+
if (n.status === xn && e.avail_in !== 0) return En(e, Jt);
|
|
755
|
+
if (n.status === mn && n.wrap === 0 && (n.status = bn), n.status === mn) {
|
|
756
|
+
let t = nn + (n.w_bits - 8 << 4) << 8, r = -1;
|
|
757
|
+
if (r = n.strategy >= Zt || n.level < 2 ? 0 : n.level < 6 ? 1 : n.level === 6 ? 2 : 3, t |= r << 6, n.strstart !== 0 && (t |= pn), t += 31 - t % 31, jn(n, t), n.strstart !== 0 && (jn(n, e.adler >>> 16), jn(n, e.adler & 65535)), e.adler = 1, n.status = bn, q(e), n.pending !== 0) return n.last_flush = -1, H;
|
|
758
|
+
}
|
|
759
|
+
if (n.status === hn) {
|
|
760
|
+
if (e.adler = 0, Y(n, 31), Y(n, 139), Y(n, 8), n.gzhead) Y(n, (n.gzhead.text ? 1 : 0) + (n.gzhead.hcrc ? 2 : 0) + (n.gzhead.extra ? 4 : 0) + (n.gzhead.name ? 8 : 0) + (n.gzhead.comment ? 16 : 0)), Y(n, n.gzhead.time & 255), Y(n, n.gzhead.time >> 8 & 255), Y(n, n.gzhead.time >> 16 & 255), Y(n, n.gzhead.time >> 24 & 255), Y(n, n.level === 9 ? 2 : n.strategy >= Zt || n.level < 2 ? 4 : 0), Y(n, n.gzhead.os & 255), n.gzhead.extra && n.gzhead.extra.length && (Y(n, n.gzhead.extra.length & 255), Y(n, n.gzhead.extra.length >> 8 & 255)), n.gzhead.hcrc && (e.adler = B(e.adler, n.pending_buf, n.pending, 0)), n.gzindex = 0, n.status = gn;
|
|
761
|
+
else if (Y(n, 0), Y(n, 0), Y(n, 0), Y(n, 0), Y(n, 0), Y(n, n.level === 9 ? 2 : n.strategy >= Zt || n.level < 2 ? 4 : 0), Y(n, Tn), n.status = bn, q(e), n.pending !== 0) return n.last_flush = -1, H;
|
|
762
|
+
}
|
|
763
|
+
if (n.status === gn) {
|
|
764
|
+
if (n.gzhead.extra) {
|
|
765
|
+
let t = n.pending, r = (n.gzhead.extra.length & 65535) - n.gzindex;
|
|
766
|
+
for (; n.pending + r > n.pending_buf_size;) {
|
|
767
|
+
let i = n.pending_buf_size - n.pending;
|
|
768
|
+
if (n.pending_buf.set(n.gzhead.extra.subarray(n.gzindex, n.gzindex + i), n.pending), n.pending = n.pending_buf_size, n.gzhead.hcrc && n.pending > t && (e.adler = B(e.adler, n.pending_buf, n.pending - t, t)), n.gzindex += i, q(e), n.pending !== 0) return n.last_flush = -1, H;
|
|
769
|
+
t = 0, r -= i;
|
|
770
|
+
}
|
|
771
|
+
let i = new Uint8Array(n.gzhead.extra);
|
|
772
|
+
n.pending_buf.set(i.subarray(n.gzindex, n.gzindex + r), n.pending), n.pending += r, n.gzhead.hcrc && n.pending > t && (e.adler = B(e.adler, n.pending_buf, n.pending - t, t)), n.gzindex = 0;
|
|
773
|
+
}
|
|
774
|
+
n.status = _n;
|
|
775
|
+
}
|
|
776
|
+
if (n.status === _n) {
|
|
777
|
+
if (n.gzhead.name) {
|
|
778
|
+
let t = n.pending, r;
|
|
779
|
+
do {
|
|
780
|
+
if (n.pending === n.pending_buf_size) {
|
|
781
|
+
if (n.gzhead.hcrc && n.pending > t && (e.adler = B(e.adler, n.pending_buf, n.pending - t, t)), q(e), n.pending !== 0) return n.last_flush = -1, H;
|
|
782
|
+
t = 0;
|
|
783
|
+
}
|
|
784
|
+
r = n.gzindex < n.gzhead.name.length ? n.gzhead.name.charCodeAt(n.gzindex++) & 255 : 0, Y(n, r);
|
|
785
|
+
} while (r !== 0);
|
|
786
|
+
n.gzhead.hcrc && n.pending > t && (e.adler = B(e.adler, n.pending_buf, n.pending - t, t)), n.gzindex = 0;
|
|
787
|
+
}
|
|
788
|
+
n.status = vn;
|
|
789
|
+
}
|
|
790
|
+
if (n.status === vn) {
|
|
791
|
+
if (n.gzhead.comment) {
|
|
792
|
+
let t = n.pending, r;
|
|
793
|
+
do {
|
|
794
|
+
if (n.pending === n.pending_buf_size) {
|
|
795
|
+
if (n.gzhead.hcrc && n.pending > t && (e.adler = B(e.adler, n.pending_buf, n.pending - t, t)), q(e), n.pending !== 0) return n.last_flush = -1, H;
|
|
796
|
+
t = 0;
|
|
797
|
+
}
|
|
798
|
+
r = n.gzindex < n.gzhead.comment.length ? n.gzhead.comment.charCodeAt(n.gzindex++) & 255 : 0, Y(n, r);
|
|
799
|
+
} while (r !== 0);
|
|
800
|
+
n.gzhead.hcrc && n.pending > t && (e.adler = B(e.adler, n.pending_buf, n.pending - t, t));
|
|
801
|
+
}
|
|
802
|
+
n.status = yn;
|
|
803
|
+
}
|
|
804
|
+
if (n.status === yn) {
|
|
805
|
+
if (n.gzhead.hcrc) {
|
|
806
|
+
if (n.pending + 2 > n.pending_buf_size && (q(e), n.pending !== 0)) return n.last_flush = -1, H;
|
|
807
|
+
Y(n, e.adler & 255), Y(n, e.adler >> 8 & 255), e.adler = 0;
|
|
808
|
+
}
|
|
809
|
+
if (n.status = bn, q(e), n.pending !== 0) return n.last_flush = -1, H;
|
|
810
|
+
}
|
|
811
|
+
if (e.avail_in !== 0 || n.lookahead !== 0 || t !== Ht && n.status !== xn) {
|
|
812
|
+
let r = n.level === 0 ? Fn(n, t) : n.strategy === Zt ? zn(n, t) : n.strategy === Qt ? Rn(n, t) : Vn[n.level].func(n, t);
|
|
813
|
+
if ((r === Cn || r === wn) && (n.status = xn), r === K || r === Cn) return e.avail_out === 0 && (n.last_flush = -1), H;
|
|
814
|
+
if (r === Sn && (t === Ut ? Vt(n) : t !== Gt && (Rt(n, 0, 0, !1), t === Wt && (On(n.head), n.lookahead === 0 && (n.strstart = 0, n.block_start = 0, n.insert = 0))), q(e), e.avail_out === 0)) return n.last_flush = -1, H;
|
|
815
|
+
}
|
|
816
|
+
return t === V ? n.wrap <= 0 ? Kt : (n.wrap === 2 ? (Y(n, e.adler & 255), Y(n, e.adler >> 8 & 255), Y(n, e.adler >> 16 & 255), Y(n, e.adler >> 24 & 255), Y(n, e.total_in & 255), Y(n, e.total_in >> 8 & 255), Y(n, e.total_in >> 16 & 255), Y(n, e.total_in >> 24 & 255)) : (jn(n, e.adler >>> 16), jn(n, e.adler & 65535)), q(e), n.wrap > 0 && (n.wrap = -n.wrap), n.pending === 0 ? Kt : H) : H;
|
|
817
|
+
},
|
|
818
|
+
deflateEnd: (e) => {
|
|
819
|
+
if (Wn(e)) return U;
|
|
820
|
+
let t = e.state.status;
|
|
821
|
+
return e.state = null, t === bn ? En(e, qt) : H;
|
|
822
|
+
},
|
|
823
|
+
deflateSetDictionary: (e, t) => {
|
|
824
|
+
let n = t.length;
|
|
825
|
+
if (Wn(e)) return U;
|
|
826
|
+
let r = e.state, i = r.wrap;
|
|
827
|
+
if (i === 2 || i === 1 && r.status !== mn || r.lookahead) return U;
|
|
828
|
+
if (i === 1 && (e.adler = Nt(e.adler, t, n, 0)), r.wrap = 0, n >= r.w_size) {
|
|
829
|
+
i === 0 && (On(r.head), r.strstart = 0, r.block_start = 0, r.insert = 0);
|
|
830
|
+
let e = new Uint8Array(r.w_size);
|
|
831
|
+
e.set(t.subarray(n - r.w_size, n), 0), t = e, n = r.w_size;
|
|
832
|
+
}
|
|
833
|
+
let a = e.avail_in, o = e.next_in, s = e.input;
|
|
834
|
+
for (e.avail_in = n, e.next_in = 0, e.input = t, Pn(r); r.lookahead >= W;) {
|
|
835
|
+
let e = r.strstart, t = r.lookahead - (W - 1);
|
|
836
|
+
do
|
|
837
|
+
r.ins_h = An(r, r.ins_h, r.window[e + W - 1]), r.prev[e & r.w_mask] = r.head[r.ins_h], r.head[r.ins_h] = e, e++;
|
|
838
|
+
while (--t);
|
|
839
|
+
r.strstart = e, r.lookahead = W - 1, Pn(r);
|
|
840
|
+
}
|
|
841
|
+
return r.strstart += r.lookahead, r.block_start = r.strstart, r.insert = r.lookahead, r.lookahead = 0, r.match_length = r.prev_length = W - 1, r.match_available = 0, e.next_in = o, e.input = s, e.avail_in = a, r.wrap = i, H;
|
|
842
|
+
},
|
|
843
|
+
deflateInfo: "pako deflate (from Nodeca project)"
|
|
844
|
+
}, Xn = (e, t) => Object.prototype.hasOwnProperty.call(e, t), Zn = {
|
|
845
|
+
assign: function(e) {
|
|
846
|
+
let t = Array.prototype.slice.call(arguments, 1);
|
|
847
|
+
for (; t.length;) {
|
|
848
|
+
let n = t.shift();
|
|
849
|
+
if (n) {
|
|
850
|
+
if (typeof n != "object") throw TypeError(n + "must be non-object");
|
|
851
|
+
for (let t in n) Xn(n, t) && (e[t] = n[t]);
|
|
852
|
+
}
|
|
853
|
+
}
|
|
854
|
+
return e;
|
|
855
|
+
},
|
|
856
|
+
flattenChunks: (e) => {
|
|
857
|
+
let t = 0;
|
|
858
|
+
for (let n = 0, r = e.length; n < r; n++) t += e[n].length;
|
|
859
|
+
let n = new Uint8Array(t);
|
|
860
|
+
for (let t = 0, r = 0, i = e.length; t < i; t++) {
|
|
861
|
+
let i = e[t];
|
|
862
|
+
n.set(i, r), r += i.length;
|
|
863
|
+
}
|
|
864
|
+
return n;
|
|
865
|
+
}
|
|
866
|
+
}, Qn = !0;
|
|
867
|
+
try {
|
|
868
|
+
String.fromCharCode.apply(null, new Uint8Array(1));
|
|
869
|
+
} catch {
|
|
870
|
+
Qn = !1;
|
|
871
|
+
}
|
|
872
|
+
var $n = new Uint8Array(256);
|
|
873
|
+
for (let e = 0; e < 256; e++) $n[e] = e >= 252 ? 6 : e >= 248 ? 5 : e >= 240 ? 4 : e >= 224 ? 3 : e >= 192 ? 2 : 1;
|
|
874
|
+
$n[254] = $n[254] = 1;
|
|
875
|
+
var er = (e) => {
|
|
876
|
+
if (typeof TextEncoder == "function" && TextEncoder.prototype.encode) return new TextEncoder().encode(e);
|
|
877
|
+
let t, n, r, i, a, o = e.length, s = 0;
|
|
878
|
+
for (i = 0; i < o; i++) n = e.charCodeAt(i), (n & 64512) == 55296 && i + 1 < o && (r = e.charCodeAt(i + 1), (r & 64512) == 56320 && (n = 65536 + (n - 55296 << 10) + (r - 56320), i++)), s += n < 128 ? 1 : n < 2048 ? 2 : n < 65536 ? 3 : 4;
|
|
879
|
+
for (t = new Uint8Array(s), a = 0, i = 0; a < s; i++) n = e.charCodeAt(i), (n & 64512) == 55296 && i + 1 < o && (r = e.charCodeAt(i + 1), (r & 64512) == 56320 && (n = 65536 + (n - 55296 << 10) + (r - 56320), i++)), n < 128 ? t[a++] = n : n < 2048 ? (t[a++] = 192 | n >>> 6, t[a++] = 128 | n & 63) : n < 65536 ? (t[a++] = 224 | n >>> 12, t[a++] = 128 | n >>> 6 & 63, t[a++] = 128 | n & 63) : (t[a++] = 240 | n >>> 18, t[a++] = 128 | n >>> 12 & 63, t[a++] = 128 | n >>> 6 & 63, t[a++] = 128 | n & 63);
|
|
880
|
+
return t;
|
|
881
|
+
}, tr = (e, t) => {
|
|
882
|
+
if (t < 65534 && e.subarray && Qn) return String.fromCharCode.apply(null, e.length === t ? e : e.subarray(0, t));
|
|
883
|
+
let n = "";
|
|
884
|
+
for (let r = 0; r < t; r++) n += String.fromCharCode(e[r]);
|
|
885
|
+
return n;
|
|
886
|
+
}, nr = {
|
|
887
|
+
string2buf: er,
|
|
888
|
+
buf2string: (e, t) => {
|
|
889
|
+
let n = t || e.length;
|
|
890
|
+
if (typeof TextDecoder == "function" && TextDecoder.prototype.decode) return new TextDecoder().decode(e.subarray(0, t));
|
|
891
|
+
let r, i, a = Array(n * 2);
|
|
892
|
+
for (i = 0, r = 0; r < n;) {
|
|
893
|
+
let t = e[r++];
|
|
894
|
+
if (t < 128) {
|
|
895
|
+
a[i++] = t;
|
|
896
|
+
continue;
|
|
897
|
+
}
|
|
898
|
+
let o = $n[t];
|
|
899
|
+
if (o > 4) {
|
|
900
|
+
a[i++] = 65533, r += o - 1;
|
|
901
|
+
continue;
|
|
902
|
+
}
|
|
903
|
+
for (t &= o === 2 ? 31 : o === 3 ? 15 : 7; o > 1 && r < n;) t = t << 6 | e[r++] & 63, o--;
|
|
904
|
+
if (o > 1) {
|
|
905
|
+
a[i++] = 65533;
|
|
906
|
+
continue;
|
|
907
|
+
}
|
|
908
|
+
t < 65536 ? a[i++] = t : (t -= 65536, a[i++] = 55296 | t >> 10 & 1023, a[i++] = 56320 | t & 1023);
|
|
909
|
+
}
|
|
910
|
+
return tr(a, i);
|
|
911
|
+
},
|
|
912
|
+
utf8border: (e, t) => {
|
|
913
|
+
t ||= e.length, t > e.length && (t = e.length);
|
|
914
|
+
let n = t - 1;
|
|
915
|
+
for (; n >= 0 && (e[n] & 192) == 128;) n--;
|
|
916
|
+
return n < 0 || n === 0 ? t : n + $n[e[n]] > t ? n : t;
|
|
917
|
+
}
|
|
918
|
+
};
|
|
919
|
+
function rr() {
|
|
920
|
+
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;
|
|
921
|
+
}
|
|
922
|
+
var ir = rr, ar = Object.prototype.toString, { Z_NO_FLUSH: or, Z_SYNC_FLUSH: sr, Z_FULL_FLUSH: cr, Z_FINISH: lr, Z_OK: ur, Z_STREAM_END: dr, Z_DEFAULT_COMPRESSION: fr, Z_DEFAULT_STRATEGY: pr, Z_DEFLATED: mr } = It;
|
|
923
|
+
function hr(e) {
|
|
924
|
+
this.options = Zn.assign({
|
|
925
|
+
level: fr,
|
|
926
|
+
method: mr,
|
|
927
|
+
chunkSize: 16384,
|
|
928
|
+
windowBits: 15,
|
|
929
|
+
memLevel: 8,
|
|
930
|
+
strategy: pr
|
|
931
|
+
}, e || {});
|
|
932
|
+
let t = this.options;
|
|
933
|
+
t.raw && t.windowBits > 0 ? t.windowBits = -t.windowBits : t.gzip && t.windowBits > 0 && t.windowBits < 16 && (t.windowBits += 16), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new ir(), this.strm.avail_out = 0;
|
|
934
|
+
let n = Yn.deflateInit2(this.strm, t.level, t.method, t.windowBits, t.memLevel, t.strategy);
|
|
935
|
+
if (n !== ur) throw Error(Ft[n]);
|
|
936
|
+
if (t.header && Yn.deflateSetHeader(this.strm, t.header), t.dictionary) {
|
|
937
|
+
let e;
|
|
938
|
+
if (e = typeof t.dictionary == "string" ? nr.string2buf(t.dictionary) : ar.call(t.dictionary) === "[object ArrayBuffer]" ? new Uint8Array(t.dictionary) : t.dictionary, n = Yn.deflateSetDictionary(this.strm, e), n !== ur) throw Error(Ft[n]);
|
|
939
|
+
this._dict_set = !0;
|
|
940
|
+
}
|
|
941
|
+
}
|
|
942
|
+
hr.prototype.push = function(e, t) {
|
|
943
|
+
let n = this.strm, r = this.options.chunkSize, i, a;
|
|
944
|
+
if (this.ended) return !1;
|
|
945
|
+
for (a = t === ~~t ? t : t === !0 ? lr : or, typeof e == "string" ? n.input = nr.string2buf(e) : ar.call(e) === "[object ArrayBuffer]" ? n.input = new Uint8Array(e) : n.input = e, n.next_in = 0, n.avail_in = n.input.length;;) {
|
|
946
|
+
if (n.avail_out === 0 && (n.output = new Uint8Array(r), n.next_out = 0, n.avail_out = r), (a === sr || a === cr) && n.avail_out <= 6) {
|
|
947
|
+
this.onData(n.output.subarray(0, n.next_out)), n.avail_out = 0;
|
|
948
|
+
continue;
|
|
949
|
+
}
|
|
950
|
+
if (i = Yn.deflate(n, a), i === dr) return n.next_out > 0 && this.onData(n.output.subarray(0, n.next_out)), i = Yn.deflateEnd(this.strm), this.onEnd(i), this.ended = !0, i === ur;
|
|
951
|
+
if (n.avail_out === 0) {
|
|
952
|
+
this.onData(n.output);
|
|
953
|
+
continue;
|
|
954
|
+
}
|
|
955
|
+
if (a > 0 && n.next_out > 0) {
|
|
956
|
+
this.onData(n.output.subarray(0, n.next_out)), n.avail_out = 0;
|
|
957
|
+
continue;
|
|
958
|
+
}
|
|
959
|
+
if (n.avail_in === 0) break;
|
|
960
|
+
}
|
|
961
|
+
return !0;
|
|
962
|
+
}, hr.prototype.onData = function(e) {
|
|
963
|
+
this.chunks.push(e);
|
|
964
|
+
}, hr.prototype.onEnd = function(e) {
|
|
965
|
+
e === ur && (this.result = Zn.flattenChunks(this.chunks)), this.chunks = [], this.err = e, this.msg = this.strm.msg;
|
|
966
|
+
};
|
|
967
|
+
function gr(e, t) {
|
|
968
|
+
let n = new hr(t);
|
|
969
|
+
if (n.push(e, !0), n.err) throw n.msg || Ft[n.err];
|
|
970
|
+
return n.result;
|
|
971
|
+
}
|
|
972
|
+
function _r(e, t) {
|
|
973
|
+
return t ||= {}, t.raw = !0, gr(e, t);
|
|
974
|
+
}
|
|
975
|
+
function vr(e, t) {
|
|
976
|
+
return t ||= {}, t.gzip = !0, gr(e, t);
|
|
977
|
+
}
|
|
978
|
+
var yr = {
|
|
979
|
+
Deflate: hr,
|
|
980
|
+
deflate: gr,
|
|
981
|
+
deflateRaw: _r,
|
|
982
|
+
gzip: vr,
|
|
983
|
+
constants: It
|
|
984
|
+
}, br = 16209, xr = 16191, Sr = function(e, t) {
|
|
985
|
+
let n, r, i, a, o, s, c, l, u, d, f, p, m, h, g, _, v, y, b, x, S, C, w, T, E = e.state;
|
|
986
|
+
n = e.next_in, w = e.input, r = n + (e.avail_in - 5), i = e.next_out, T = e.output, a = i - (t - e.avail_out), o = i + (e.avail_out - 257), s = E.dmax, c = E.wsize, l = E.whave, u = E.wnext, d = E.window, f = E.hold, p = E.bits, m = E.lencode, h = E.distcode, g = (1 << E.lenbits) - 1, _ = (1 << E.distbits) - 1;
|
|
987
|
+
top: do {
|
|
988
|
+
p < 15 && (f += w[n++] << p, p += 8, f += w[n++] << p, p += 8), v = m[f & g];
|
|
989
|
+
dolen: for (;;) {
|
|
990
|
+
if (y = v >>> 24, f >>>= y, p -= y, y = v >>> 16 & 255, y === 0) T[i++] = v & 65535;
|
|
991
|
+
else if (y & 16) {
|
|
992
|
+
b = v & 65535, y &= 15, y && (p < y && (f += w[n++] << p, p += 8), b += f & (1 << y) - 1, f >>>= y, p -= y), p < 15 && (f += w[n++] << p, p += 8, f += w[n++] << p, p += 8), v = h[f & _];
|
|
993
|
+
dodist: for (;;) {
|
|
994
|
+
if (y = v >>> 24, f >>>= y, p -= y, y = v >>> 16 & 255, y & 16) {
|
|
995
|
+
if (x = v & 65535, y &= 15, p < y && (f += w[n++] << p, p += 8, p < y && (f += w[n++] << p, p += 8)), x += f & (1 << y) - 1, x > s) {
|
|
996
|
+
e.msg = "invalid distance too far back", E.mode = br;
|
|
997
|
+
break top;
|
|
998
|
+
}
|
|
999
|
+
if (f >>>= y, p -= y, y = i - a, x > y) {
|
|
1000
|
+
if (y = x - y, y > l && E.sane) {
|
|
1001
|
+
e.msg = "invalid distance too far back", E.mode = br;
|
|
1002
|
+
break top;
|
|
1003
|
+
}
|
|
1004
|
+
if (S = 0, C = d, u === 0) {
|
|
1005
|
+
if (S += c - y, y < b) {
|
|
1006
|
+
b -= y;
|
|
1007
|
+
do
|
|
1008
|
+
T[i++] = d[S++];
|
|
1009
|
+
while (--y);
|
|
1010
|
+
S = i - x, C = T;
|
|
1011
|
+
}
|
|
1012
|
+
} else if (u < y) {
|
|
1013
|
+
if (S += c + u - y, y -= u, y < b) {
|
|
1014
|
+
b -= y;
|
|
1015
|
+
do
|
|
1016
|
+
T[i++] = d[S++];
|
|
1017
|
+
while (--y);
|
|
1018
|
+
if (S = 0, u < b) {
|
|
1019
|
+
y = u, b -= y;
|
|
1020
|
+
do
|
|
1021
|
+
T[i++] = d[S++];
|
|
1022
|
+
while (--y);
|
|
1023
|
+
S = i - x, C = T;
|
|
1024
|
+
}
|
|
1025
|
+
}
|
|
1026
|
+
} else if (S += u - y, y < b) {
|
|
1027
|
+
b -= y;
|
|
1028
|
+
do
|
|
1029
|
+
T[i++] = d[S++];
|
|
1030
|
+
while (--y);
|
|
1031
|
+
S = i - x, C = T;
|
|
1032
|
+
}
|
|
1033
|
+
for (; b > 2;) T[i++] = C[S++], T[i++] = C[S++], T[i++] = C[S++], b -= 3;
|
|
1034
|
+
b && (T[i++] = C[S++], b > 1 && (T[i++] = C[S++]));
|
|
1035
|
+
} else {
|
|
1036
|
+
S = i - x;
|
|
1037
|
+
do
|
|
1038
|
+
T[i++] = T[S++], T[i++] = T[S++], T[i++] = T[S++], b -= 3;
|
|
1039
|
+
while (b > 2);
|
|
1040
|
+
b && (T[i++] = T[S++], b > 1 && (T[i++] = T[S++]));
|
|
1041
|
+
}
|
|
1042
|
+
} else if (y & 64) {
|
|
1043
|
+
e.msg = "invalid distance code", E.mode = br;
|
|
1044
|
+
break top;
|
|
1045
|
+
} else {
|
|
1046
|
+
v = h[(v & 65535) + (f & (1 << y) - 1)];
|
|
1047
|
+
continue dodist;
|
|
1048
|
+
}
|
|
1049
|
+
break;
|
|
1050
|
+
}
|
|
1051
|
+
} else if (!(y & 64)) {
|
|
1052
|
+
v = m[(v & 65535) + (f & (1 << y) - 1)];
|
|
1053
|
+
continue dolen;
|
|
1054
|
+
} else if (y & 32) {
|
|
1055
|
+
E.mode = xr;
|
|
1056
|
+
break top;
|
|
1057
|
+
} else {
|
|
1058
|
+
e.msg = "invalid literal/length code", E.mode = br;
|
|
1059
|
+
break top;
|
|
1060
|
+
}
|
|
1061
|
+
break;
|
|
1062
|
+
}
|
|
1063
|
+
} while (n < r && i < o);
|
|
1064
|
+
b = p >> 3, n -= b, p -= b << 3, f &= (1 << p) - 1, e.next_in = n, e.next_out = i, e.avail_in = n < r ? 5 + (r - n) : 5 - (n - r), e.avail_out = i < o ? 257 + (o - i) : 257 - (i - o), E.hold = f, E.bits = p;
|
|
1065
|
+
}, Cr = 15, wr = 852, Tr = 592, Er = 0, Dr = 1, Or = 2, kr = new Uint16Array([
|
|
1066
|
+
3,
|
|
1067
|
+
4,
|
|
1068
|
+
5,
|
|
1069
|
+
6,
|
|
1070
|
+
7,
|
|
1071
|
+
8,
|
|
1072
|
+
9,
|
|
1073
|
+
10,
|
|
1074
|
+
11,
|
|
1075
|
+
13,
|
|
1076
|
+
15,
|
|
1077
|
+
17,
|
|
1078
|
+
19,
|
|
1079
|
+
23,
|
|
1080
|
+
27,
|
|
1081
|
+
31,
|
|
1082
|
+
35,
|
|
1083
|
+
43,
|
|
1084
|
+
51,
|
|
1085
|
+
59,
|
|
1086
|
+
67,
|
|
1087
|
+
83,
|
|
1088
|
+
99,
|
|
1089
|
+
115,
|
|
1090
|
+
131,
|
|
1091
|
+
163,
|
|
1092
|
+
195,
|
|
1093
|
+
227,
|
|
1094
|
+
258,
|
|
1095
|
+
0,
|
|
1096
|
+
0
|
|
1097
|
+
]), Ar = new Uint8Array([
|
|
1098
|
+
16,
|
|
1099
|
+
16,
|
|
1100
|
+
16,
|
|
1101
|
+
16,
|
|
1102
|
+
16,
|
|
1103
|
+
16,
|
|
1104
|
+
16,
|
|
1105
|
+
16,
|
|
1106
|
+
17,
|
|
1107
|
+
17,
|
|
1108
|
+
17,
|
|
1109
|
+
17,
|
|
1110
|
+
18,
|
|
1111
|
+
18,
|
|
1112
|
+
18,
|
|
1113
|
+
18,
|
|
1114
|
+
19,
|
|
1115
|
+
19,
|
|
1116
|
+
19,
|
|
1117
|
+
19,
|
|
1118
|
+
20,
|
|
1119
|
+
20,
|
|
1120
|
+
20,
|
|
1121
|
+
20,
|
|
1122
|
+
21,
|
|
1123
|
+
21,
|
|
1124
|
+
21,
|
|
1125
|
+
21,
|
|
1126
|
+
16,
|
|
1127
|
+
72,
|
|
1128
|
+
78
|
|
1129
|
+
]), jr = new Uint16Array([
|
|
1130
|
+
1,
|
|
1131
|
+
2,
|
|
1132
|
+
3,
|
|
1133
|
+
4,
|
|
1134
|
+
5,
|
|
1135
|
+
7,
|
|
1136
|
+
9,
|
|
1137
|
+
13,
|
|
1138
|
+
17,
|
|
1139
|
+
25,
|
|
1140
|
+
33,
|
|
1141
|
+
49,
|
|
1142
|
+
65,
|
|
1143
|
+
97,
|
|
1144
|
+
129,
|
|
1145
|
+
193,
|
|
1146
|
+
257,
|
|
1147
|
+
385,
|
|
1148
|
+
513,
|
|
1149
|
+
769,
|
|
1150
|
+
1025,
|
|
1151
|
+
1537,
|
|
1152
|
+
2049,
|
|
1153
|
+
3073,
|
|
1154
|
+
4097,
|
|
1155
|
+
6145,
|
|
1156
|
+
8193,
|
|
1157
|
+
12289,
|
|
1158
|
+
16385,
|
|
1159
|
+
24577,
|
|
1160
|
+
0,
|
|
1161
|
+
0
|
|
1162
|
+
]), Mr = new Uint8Array([
|
|
1163
|
+
16,
|
|
1164
|
+
16,
|
|
1165
|
+
16,
|
|
1166
|
+
16,
|
|
1167
|
+
17,
|
|
1168
|
+
17,
|
|
1169
|
+
18,
|
|
1170
|
+
18,
|
|
1171
|
+
19,
|
|
1172
|
+
19,
|
|
1173
|
+
20,
|
|
1174
|
+
20,
|
|
1175
|
+
21,
|
|
1176
|
+
21,
|
|
1177
|
+
22,
|
|
1178
|
+
22,
|
|
1179
|
+
23,
|
|
1180
|
+
23,
|
|
1181
|
+
24,
|
|
1182
|
+
24,
|
|
1183
|
+
25,
|
|
1184
|
+
25,
|
|
1185
|
+
26,
|
|
1186
|
+
26,
|
|
1187
|
+
27,
|
|
1188
|
+
27,
|
|
1189
|
+
28,
|
|
1190
|
+
28,
|
|
1191
|
+
29,
|
|
1192
|
+
29,
|
|
1193
|
+
64,
|
|
1194
|
+
64
|
|
1195
|
+
]), Nr = (e, t, n, r, i, a, o, s) => {
|
|
1196
|
+
let c = s.bits, l = 0, u = 0, d = 0, f = 0, p = 0, m = 0, h = 0, g = 0, _ = 0, v = 0, y, b, x, S, C, w = null, T, E = new Uint16Array(Cr + 1), D = new Uint16Array(Cr + 1), O = null, k, ee, te;
|
|
1197
|
+
for (l = 0; l <= Cr; l++) E[l] = 0;
|
|
1198
|
+
for (u = 0; u < r; u++) E[t[n + u]]++;
|
|
1199
|
+
for (p = c, f = Cr; f >= 1 && E[f] === 0; f--);
|
|
1200
|
+
if (p > f && (p = f), f === 0) return i[a++] = 20971520, i[a++] = 20971520, s.bits = 1, 0;
|
|
1201
|
+
for (d = 1; d < f && E[d] === 0; d++);
|
|
1202
|
+
for (p < d && (p = d), g = 1, l = 1; l <= Cr; l++) if (g <<= 1, g -= E[l], g < 0) return -1;
|
|
1203
|
+
if (g > 0 && (e === Er || f !== 1)) return -1;
|
|
1204
|
+
for (D[1] = 0, l = 1; l < Cr; l++) D[l + 1] = D[l] + E[l];
|
|
1205
|
+
for (u = 0; u < r; u++) t[n + u] !== 0 && (o[D[t[n + u]]++] = u);
|
|
1206
|
+
if (e === Er ? (w = O = o, T = 20) : e === Dr ? (w = kr, O = Ar, T = 257) : (w = jr, O = Mr, T = 0), v = 0, u = 0, l = d, C = a, m = p, h = 0, x = -1, _ = 1 << p, S = _ - 1, e === Dr && _ > wr || e === Or && _ > Tr) return 1;
|
|
1207
|
+
for (;;) {
|
|
1208
|
+
k = l - h, o[u] + 1 < T ? (ee = 0, te = o[u]) : o[u] >= T ? (ee = O[o[u] - T], te = w[o[u] - T]) : (ee = 96, te = 0), y = 1 << l - h, b = 1 << m, d = b;
|
|
1209
|
+
do
|
|
1210
|
+
b -= y, i[C + (v >> h) + b] = k << 24 | ee << 16 | te | 0;
|
|
1211
|
+
while (b !== 0);
|
|
1212
|
+
for (y = 1 << l - 1; v & y;) y >>= 1;
|
|
1213
|
+
if (y === 0 ? v = 0 : (v &= y - 1, v += y), u++, --E[l] === 0) {
|
|
1214
|
+
if (l === f) break;
|
|
1215
|
+
l = t[n + o[u]];
|
|
1216
|
+
}
|
|
1217
|
+
if (l > p && (v & S) !== x) {
|
|
1218
|
+
for (h === 0 && (h = p), C += d, m = l - h, g = 1 << m; m + h < f && (g -= E[m + h], !(g <= 0));) m++, g <<= 1;
|
|
1219
|
+
if (_ += 1 << m, e === Dr && _ > wr || e === Or && _ > Tr) return 1;
|
|
1220
|
+
x = v & S, i[x] = p << 24 | m << 16 | C - a | 0;
|
|
1221
|
+
}
|
|
1222
|
+
}
|
|
1223
|
+
return v !== 0 && (i[C + v] = l - h << 24 | 4194304), s.bits = p, 0;
|
|
1224
|
+
}, Pr = 0, Fr = 1, Ir = 2, { Z_FINISH: Lr, Z_BLOCK: Rr, Z_TREES: zr, Z_OK: Br, Z_STREAM_END: Vr, Z_NEED_DICT: Hr, Z_STREAM_ERROR: X, Z_DATA_ERROR: Ur, Z_MEM_ERROR: Wr, Z_BUF_ERROR: Gr, Z_DEFLATED: Kr } = It, qr = 16180, Jr = 16181, Yr = 16182, Xr = 16183, Zr = 16184, Qr = 16185, $r = 16186, ei = 16187, ti = 16188, ni = 16189, ri = 16190, ii = 16191, ai = 16192, oi = 16193, si = 16194, ci = 16195, li = 16196, ui = 16197, di = 16198, fi = 16199, pi = 16200, mi = 16201, hi = 16202, gi = 16203, _i = 16204, vi = 16205, yi = 16206, bi = 16207, xi = 16208, Z = 16209, Si = 16210, Ci = 16211, wi = 852, Ti = 592, Ei = 15, Di = (e) => (e >>> 24 & 255) + (e >>> 8 & 65280) + ((e & 65280) << 8) + ((e & 255) << 24);
|
|
1225
|
+
function Oi() {
|
|
1226
|
+
this.strm = null, 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 Uint16Array(320), this.work = new Uint16Array(288), this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0;
|
|
1227
|
+
}
|
|
1228
|
+
var ki = (e) => {
|
|
1229
|
+
if (!e) return 1;
|
|
1230
|
+
let t = e.state;
|
|
1231
|
+
return !t || t.strm !== e || t.mode < qr || t.mode > Ci ? 1 : 0;
|
|
1232
|
+
}, Ai = (e) => {
|
|
1233
|
+
if (ki(e)) return X;
|
|
1234
|
+
let t = e.state;
|
|
1235
|
+
return e.total_in = e.total_out = t.total = 0, e.msg = "", t.wrap && (e.adler = t.wrap & 1), t.mode = qr, t.last = 0, t.havedict = 0, t.flags = -1, t.dmax = 32768, t.head = null, t.hold = 0, t.bits = 0, t.lencode = t.lendyn = new Int32Array(wi), t.distcode = t.distdyn = new Int32Array(Ti), t.sane = 1, t.back = -1, Br;
|
|
1236
|
+
}, ji = (e) => {
|
|
1237
|
+
if (ki(e)) return X;
|
|
1238
|
+
let t = e.state;
|
|
1239
|
+
return t.wsize = 0, t.whave = 0, t.wnext = 0, Ai(e);
|
|
1240
|
+
}, Mi = (e, t) => {
|
|
1241
|
+
let n;
|
|
1242
|
+
if (ki(e)) return X;
|
|
1243
|
+
let r = e.state;
|
|
1244
|
+
return t < 0 ? (n = 0, t = -t) : (n = (t >> 4) + 5, t < 48 && (t &= 15)), t && (t < 8 || t > 15) ? X : (r.window !== null && r.wbits !== t && (r.window = null), r.wrap = n, r.wbits = t, ji(e));
|
|
1245
|
+
}, Ni = (e, t) => {
|
|
1246
|
+
if (!e) return X;
|
|
1247
|
+
let n = new Oi();
|
|
1248
|
+
e.state = n, n.strm = e, n.window = null, n.mode = qr;
|
|
1249
|
+
let r = Mi(e, t);
|
|
1250
|
+
return r !== Br && (e.state = null), r;
|
|
1251
|
+
}, Pi = (e) => Ni(e, Ei), Fi = !0, Ii, Li, Ri = (e) => {
|
|
1252
|
+
if (Fi) {
|
|
1253
|
+
Ii = new Int32Array(512), Li = new Int32Array(32);
|
|
1254
|
+
let t = 0;
|
|
1255
|
+
for (; t < 144;) e.lens[t++] = 8;
|
|
1256
|
+
for (; t < 256;) e.lens[t++] = 9;
|
|
1257
|
+
for (; t < 280;) e.lens[t++] = 7;
|
|
1258
|
+
for (; t < 288;) e.lens[t++] = 8;
|
|
1259
|
+
for (Nr(Fr, e.lens, 0, 288, Ii, 0, e.work, { bits: 9 }), t = 0; t < 32;) e.lens[t++] = 5;
|
|
1260
|
+
Nr(Ir, e.lens, 0, 32, Li, 0, e.work, { bits: 5 }), Fi = !1;
|
|
1261
|
+
}
|
|
1262
|
+
e.lencode = Ii, e.lenbits = 9, e.distcode = Li, e.distbits = 5;
|
|
1263
|
+
}, zi = (e, t, n, r) => {
|
|
1264
|
+
let i, a = e.state;
|
|
1265
|
+
return a.window === null && (a.wsize = 1 << a.wbits, a.wnext = 0, a.whave = 0, a.window = new Uint8Array(a.wsize)), r >= a.wsize ? (a.window.set(t.subarray(n - a.wsize, n), 0), a.wnext = 0, a.whave = a.wsize) : (i = a.wsize - a.wnext, i > r && (i = r), a.window.set(t.subarray(n - r, n - r + i), a.wnext), r -= i, r ? (a.window.set(t.subarray(n - r, n), 0), a.wnext = r, a.whave = a.wsize) : (a.wnext += i, a.wnext === a.wsize && (a.wnext = 0), a.whave < a.wsize && (a.whave += i))), 0;
|
|
1266
|
+
}, Bi = {
|
|
1267
|
+
inflateReset: ji,
|
|
1268
|
+
inflateReset2: Mi,
|
|
1269
|
+
inflateResetKeep: Ai,
|
|
1270
|
+
inflateInit: Pi,
|
|
1271
|
+
inflateInit2: Ni,
|
|
1272
|
+
inflate: (e, t) => {
|
|
1273
|
+
let n, r, i, a, o, s, c, l, u, d, f, p, m, h, g = 0, _, v, y, b, x, S, C, w, T = new Uint8Array(4), E, D, O = new Uint8Array([
|
|
1274
|
+
16,
|
|
1275
|
+
17,
|
|
1276
|
+
18,
|
|
1277
|
+
0,
|
|
1278
|
+
8,
|
|
1279
|
+
7,
|
|
1280
|
+
9,
|
|
1281
|
+
6,
|
|
1282
|
+
10,
|
|
1283
|
+
5,
|
|
1284
|
+
11,
|
|
1285
|
+
4,
|
|
1286
|
+
12,
|
|
1287
|
+
3,
|
|
1288
|
+
13,
|
|
1289
|
+
2,
|
|
1290
|
+
14,
|
|
1291
|
+
1,
|
|
1292
|
+
15
|
|
1293
|
+
]);
|
|
1294
|
+
if (ki(e) || !e.output || !e.input && e.avail_in !== 0) return X;
|
|
1295
|
+
n = e.state, n.mode === ii && (n.mode = ai), o = e.next_out, i = e.output, c = e.avail_out, a = e.next_in, r = e.input, s = e.avail_in, l = n.hold, u = n.bits, d = s, f = c, w = Br;
|
|
1296
|
+
inf_leave: for (;;) switch (n.mode) {
|
|
1297
|
+
case qr:
|
|
1298
|
+
if (n.wrap === 0) {
|
|
1299
|
+
n.mode = ai;
|
|
1300
|
+
break;
|
|
1301
|
+
}
|
|
1302
|
+
for (; u < 16;) {
|
|
1303
|
+
if (s === 0) break inf_leave;
|
|
1304
|
+
s--, l += r[a++] << u, u += 8;
|
|
1305
|
+
}
|
|
1306
|
+
if (n.wrap & 2 && l === 35615) {
|
|
1307
|
+
n.wbits === 0 && (n.wbits = 15), n.check = 0, T[0] = l & 255, T[1] = l >>> 8 & 255, n.check = B(n.check, T, 2, 0), l = 0, u = 0, n.mode = Jr;
|
|
1308
|
+
break;
|
|
1309
|
+
}
|
|
1310
|
+
if (n.head && (n.head.done = !1), !(n.wrap & 1) || (((l & 255) << 8) + (l >> 8)) % 31) {
|
|
1311
|
+
e.msg = "incorrect header check", n.mode = Z;
|
|
1312
|
+
break;
|
|
1313
|
+
}
|
|
1314
|
+
if ((l & 15) !== Kr) {
|
|
1315
|
+
e.msg = "unknown compression method", n.mode = Z;
|
|
1316
|
+
break;
|
|
1317
|
+
}
|
|
1318
|
+
if (l >>>= 4, u -= 4, C = (l & 15) + 8, n.wbits === 0 && (n.wbits = C), C > 15 || C > n.wbits) {
|
|
1319
|
+
e.msg = "invalid window size", n.mode = Z;
|
|
1320
|
+
break;
|
|
1321
|
+
}
|
|
1322
|
+
n.dmax = 1 << n.wbits, n.flags = 0, e.adler = n.check = 1, n.mode = l & 512 ? ni : ii, l = 0, u = 0;
|
|
1323
|
+
break;
|
|
1324
|
+
case Jr:
|
|
1325
|
+
for (; u < 16;) {
|
|
1326
|
+
if (s === 0) break inf_leave;
|
|
1327
|
+
s--, l += r[a++] << u, u += 8;
|
|
1328
|
+
}
|
|
1329
|
+
if (n.flags = l, (n.flags & 255) !== Kr) {
|
|
1330
|
+
e.msg = "unknown compression method", n.mode = Z;
|
|
1331
|
+
break;
|
|
1332
|
+
}
|
|
1333
|
+
if (n.flags & 57344) {
|
|
1334
|
+
e.msg = "unknown header flags set", n.mode = Z;
|
|
1335
|
+
break;
|
|
1336
|
+
}
|
|
1337
|
+
n.head && (n.head.text = l >> 8 & 1), n.flags & 512 && n.wrap & 4 && (T[0] = l & 255, T[1] = l >>> 8 & 255, n.check = B(n.check, T, 2, 0)), l = 0, u = 0, n.mode = Yr;
|
|
1338
|
+
case Yr:
|
|
1339
|
+
for (; u < 32;) {
|
|
1340
|
+
if (s === 0) break inf_leave;
|
|
1341
|
+
s--, l += r[a++] << u, u += 8;
|
|
1342
|
+
}
|
|
1343
|
+
n.head && (n.head.time = l), n.flags & 512 && n.wrap & 4 && (T[0] = l & 255, T[1] = l >>> 8 & 255, T[2] = l >>> 16 & 255, T[3] = l >>> 24 & 255, n.check = B(n.check, T, 4, 0)), l = 0, u = 0, n.mode = Xr;
|
|
1344
|
+
case Xr:
|
|
1345
|
+
for (; u < 16;) {
|
|
1346
|
+
if (s === 0) break inf_leave;
|
|
1347
|
+
s--, l += r[a++] << u, u += 8;
|
|
1348
|
+
}
|
|
1349
|
+
n.head && (n.head.xflags = l & 255, n.head.os = l >> 8), n.flags & 512 && n.wrap & 4 && (T[0] = l & 255, T[1] = l >>> 8 & 255, n.check = B(n.check, T, 2, 0)), l = 0, u = 0, n.mode = Zr;
|
|
1350
|
+
case Zr:
|
|
1351
|
+
if (n.flags & 1024) {
|
|
1352
|
+
for (; u < 16;) {
|
|
1353
|
+
if (s === 0) break inf_leave;
|
|
1354
|
+
s--, l += r[a++] << u, u += 8;
|
|
1355
|
+
}
|
|
1356
|
+
n.length = l, n.head && (n.head.extra_len = l), n.flags & 512 && n.wrap & 4 && (T[0] = l & 255, T[1] = l >>> 8 & 255, n.check = B(n.check, T, 2, 0)), l = 0, u = 0;
|
|
1357
|
+
} else n.head && (n.head.extra = null);
|
|
1358
|
+
n.mode = Qr;
|
|
1359
|
+
case Qr:
|
|
1360
|
+
if (n.flags & 1024 && (p = n.length, p > s && (p = s), p && (n.head && (C = n.head.extra_len - n.length, n.head.extra || (n.head.extra = new Uint8Array(n.head.extra_len)), n.head.extra.set(r.subarray(a, a + p), C)), n.flags & 512 && n.wrap & 4 && (n.check = B(n.check, r, p, a)), s -= p, a += p, n.length -= p), n.length)) break inf_leave;
|
|
1361
|
+
n.length = 0, n.mode = $r;
|
|
1362
|
+
case $r:
|
|
1363
|
+
if (n.flags & 2048) {
|
|
1364
|
+
if (s === 0) break inf_leave;
|
|
1365
|
+
p = 0;
|
|
1366
|
+
do
|
|
1367
|
+
C = r[a + p++], n.head && C && n.length < 65536 && (n.head.name += String.fromCharCode(C));
|
|
1368
|
+
while (C && p < s);
|
|
1369
|
+
if (n.flags & 512 && n.wrap & 4 && (n.check = B(n.check, r, p, a)), s -= p, a += p, C) break inf_leave;
|
|
1370
|
+
} else n.head && (n.head.name = null);
|
|
1371
|
+
n.length = 0, n.mode = ei;
|
|
1372
|
+
case ei:
|
|
1373
|
+
if (n.flags & 4096) {
|
|
1374
|
+
if (s === 0) break inf_leave;
|
|
1375
|
+
p = 0;
|
|
1376
|
+
do
|
|
1377
|
+
C = r[a + p++], n.head && C && n.length < 65536 && (n.head.comment += String.fromCharCode(C));
|
|
1378
|
+
while (C && p < s);
|
|
1379
|
+
if (n.flags & 512 && n.wrap & 4 && (n.check = B(n.check, r, p, a)), s -= p, a += p, C) break inf_leave;
|
|
1380
|
+
} else n.head && (n.head.comment = null);
|
|
1381
|
+
n.mode = ti;
|
|
1382
|
+
case ti:
|
|
1383
|
+
if (n.flags & 512) {
|
|
1384
|
+
for (; u < 16;) {
|
|
1385
|
+
if (s === 0) break inf_leave;
|
|
1386
|
+
s--, l += r[a++] << u, u += 8;
|
|
1387
|
+
}
|
|
1388
|
+
if (n.wrap & 4 && l !== (n.check & 65535)) {
|
|
1389
|
+
e.msg = "header crc mismatch", n.mode = Z;
|
|
1390
|
+
break;
|
|
1391
|
+
}
|
|
1392
|
+
l = 0, u = 0;
|
|
1393
|
+
}
|
|
1394
|
+
n.head && (n.head.hcrc = n.flags >> 9 & 1, n.head.done = !0), e.adler = n.check = 0, n.mode = ii;
|
|
1395
|
+
break;
|
|
1396
|
+
case ni:
|
|
1397
|
+
for (; u < 32;) {
|
|
1398
|
+
if (s === 0) break inf_leave;
|
|
1399
|
+
s--, l += r[a++] << u, u += 8;
|
|
1400
|
+
}
|
|
1401
|
+
e.adler = n.check = Di(l), l = 0, u = 0, n.mode = ri;
|
|
1402
|
+
case ri:
|
|
1403
|
+
if (n.havedict === 0) return e.next_out = o, e.avail_out = c, e.next_in = a, e.avail_in = s, n.hold = l, n.bits = u, Hr;
|
|
1404
|
+
e.adler = n.check = 1, n.mode = ii;
|
|
1405
|
+
case ii: if (t === Rr || t === zr) break inf_leave;
|
|
1406
|
+
case ai:
|
|
1407
|
+
if (n.last) {
|
|
1408
|
+
l >>>= u & 7, u -= u & 7, n.mode = yi;
|
|
1409
|
+
break;
|
|
1410
|
+
}
|
|
1411
|
+
for (; u < 3;) {
|
|
1412
|
+
if (s === 0) break inf_leave;
|
|
1413
|
+
s--, l += r[a++] << u, u += 8;
|
|
1414
|
+
}
|
|
1415
|
+
switch (n.last = l & 1, l >>>= 1, --u, l & 3) {
|
|
1416
|
+
case 0:
|
|
1417
|
+
n.mode = oi;
|
|
1418
|
+
break;
|
|
1419
|
+
case 1:
|
|
1420
|
+
if (Ri(n), n.mode = fi, t === zr) {
|
|
1421
|
+
l >>>= 2, u -= 2;
|
|
1422
|
+
break inf_leave;
|
|
1423
|
+
}
|
|
1424
|
+
break;
|
|
1425
|
+
case 2:
|
|
1426
|
+
n.mode = li;
|
|
1427
|
+
break;
|
|
1428
|
+
case 3: e.msg = "invalid block type", n.mode = Z;
|
|
1429
|
+
}
|
|
1430
|
+
l >>>= 2, u -= 2;
|
|
1431
|
+
break;
|
|
1432
|
+
case oi:
|
|
1433
|
+
for (l >>>= u & 7, u -= u & 7; u < 32;) {
|
|
1434
|
+
if (s === 0) break inf_leave;
|
|
1435
|
+
s--, l += r[a++] << u, u += 8;
|
|
1436
|
+
}
|
|
1437
|
+
if ((l & 65535) != (l >>> 16 ^ 65535)) {
|
|
1438
|
+
e.msg = "invalid stored block lengths", n.mode = Z;
|
|
1439
|
+
break;
|
|
1440
|
+
}
|
|
1441
|
+
if (n.length = l & 65535, l = 0, u = 0, n.mode = si, t === zr) break inf_leave;
|
|
1442
|
+
case si: n.mode = ci;
|
|
1443
|
+
case ci:
|
|
1444
|
+
if (p = n.length, p) {
|
|
1445
|
+
if (p > s && (p = s), p > c && (p = c), p === 0) break inf_leave;
|
|
1446
|
+
i.set(r.subarray(a, a + p), o), s -= p, a += p, c -= p, o += p, n.length -= p;
|
|
1447
|
+
break;
|
|
1448
|
+
}
|
|
1449
|
+
n.mode = ii;
|
|
1450
|
+
break;
|
|
1451
|
+
case li:
|
|
1452
|
+
for (; u < 14;) {
|
|
1453
|
+
if (s === 0) break inf_leave;
|
|
1454
|
+
s--, l += r[a++] << u, u += 8;
|
|
1455
|
+
}
|
|
1456
|
+
if (n.nlen = (l & 31) + 257, l >>>= 5, u -= 5, n.ndist = (l & 31) + 1, l >>>= 5, u -= 5, n.ncode = (l & 15) + 4, l >>>= 4, u -= 4, n.nlen > 286 || n.ndist > 30) {
|
|
1457
|
+
e.msg = "too many length or distance symbols", n.mode = Z;
|
|
1458
|
+
break;
|
|
1459
|
+
}
|
|
1460
|
+
n.have = 0, n.mode = ui;
|
|
1461
|
+
case ui:
|
|
1462
|
+
for (; n.have < n.ncode;) {
|
|
1463
|
+
for (; u < 3;) {
|
|
1464
|
+
if (s === 0) break inf_leave;
|
|
1465
|
+
s--, l += r[a++] << u, u += 8;
|
|
1466
|
+
}
|
|
1467
|
+
n.lens[O[n.have++]] = l & 7, l >>>= 3, u -= 3;
|
|
1468
|
+
}
|
|
1469
|
+
for (; n.have < 19;) n.lens[O[n.have++]] = 0;
|
|
1470
|
+
if (n.lencode = n.lendyn, n.lenbits = 7, E = { bits: n.lenbits }, w = Nr(Pr, n.lens, 0, 19, n.lencode, 0, n.work, E), n.lenbits = E.bits, w) {
|
|
1471
|
+
e.msg = "invalid code lengths set", n.mode = Z;
|
|
1472
|
+
break;
|
|
1473
|
+
}
|
|
1474
|
+
n.have = 0, n.mode = di;
|
|
1475
|
+
case di:
|
|
1476
|
+
for (; n.have < n.nlen + n.ndist;) {
|
|
1477
|
+
for (; g = n.lencode[l & (1 << n.lenbits) - 1], _ = g >>> 24, v = g >>> 16 & 255, y = g & 65535, !(_ <= u);) {
|
|
1478
|
+
if (s === 0) break inf_leave;
|
|
1479
|
+
s--, l += r[a++] << u, u += 8;
|
|
1480
|
+
}
|
|
1481
|
+
if (y < 16) l >>>= _, u -= _, n.lens[n.have++] = y;
|
|
1482
|
+
else {
|
|
1483
|
+
if (y === 16) {
|
|
1484
|
+
for (D = _ + 2; u < D;) {
|
|
1485
|
+
if (s === 0) break inf_leave;
|
|
1486
|
+
s--, l += r[a++] << u, u += 8;
|
|
1487
|
+
}
|
|
1488
|
+
if (l >>>= _, u -= _, n.have === 0) {
|
|
1489
|
+
e.msg = "invalid bit length repeat", n.mode = Z;
|
|
1490
|
+
break;
|
|
1491
|
+
}
|
|
1492
|
+
C = n.lens[n.have - 1], p = 3 + (l & 3), l >>>= 2, u -= 2;
|
|
1493
|
+
} else if (y === 17) {
|
|
1494
|
+
for (D = _ + 3; u < D;) {
|
|
1495
|
+
if (s === 0) break inf_leave;
|
|
1496
|
+
s--, l += r[a++] << u, u += 8;
|
|
1497
|
+
}
|
|
1498
|
+
l >>>= _, u -= _, C = 0, p = 3 + (l & 7), l >>>= 3, u -= 3;
|
|
1499
|
+
} else {
|
|
1500
|
+
for (D = _ + 7; u < D;) {
|
|
1501
|
+
if (s === 0) break inf_leave;
|
|
1502
|
+
s--, l += r[a++] << u, u += 8;
|
|
1503
|
+
}
|
|
1504
|
+
l >>>= _, u -= _, C = 0, p = 11 + (l & 127), l >>>= 7, u -= 7;
|
|
1505
|
+
}
|
|
1506
|
+
if (n.have + p > n.nlen + n.ndist) {
|
|
1507
|
+
e.msg = "invalid bit length repeat", n.mode = Z;
|
|
1508
|
+
break;
|
|
1509
|
+
}
|
|
1510
|
+
for (; p--;) n.lens[n.have++] = C;
|
|
1511
|
+
}
|
|
1512
|
+
}
|
|
1513
|
+
if (n.mode === Z) break;
|
|
1514
|
+
if (n.lens[256] === 0) {
|
|
1515
|
+
e.msg = "invalid code -- missing end-of-block", n.mode = Z;
|
|
1516
|
+
break;
|
|
1517
|
+
}
|
|
1518
|
+
if (n.lenbits = 9, E = { bits: n.lenbits }, w = Nr(Fr, n.lens, 0, n.nlen, n.lencode, 0, n.work, E), n.lenbits = E.bits, w) {
|
|
1519
|
+
e.msg = "invalid literal/lengths set", n.mode = Z;
|
|
1520
|
+
break;
|
|
1521
|
+
}
|
|
1522
|
+
if (n.distbits = 6, n.distcode = n.distdyn, E = { bits: n.distbits }, w = Nr(Ir, n.lens, n.nlen, n.ndist, n.distcode, 0, n.work, E), n.distbits = E.bits, w) {
|
|
1523
|
+
e.msg = "invalid distances set", n.mode = Z;
|
|
1524
|
+
break;
|
|
1525
|
+
}
|
|
1526
|
+
if (n.mode = fi, t === zr) break inf_leave;
|
|
1527
|
+
case fi: n.mode = pi;
|
|
1528
|
+
case pi:
|
|
1529
|
+
if (s >= 6 && c >= 258) {
|
|
1530
|
+
e.next_out = o, e.avail_out = c, e.next_in = a, e.avail_in = s, n.hold = l, n.bits = u, Sr(e, f), o = e.next_out, i = e.output, c = e.avail_out, a = e.next_in, r = e.input, s = e.avail_in, l = n.hold, u = n.bits, n.mode === ii && (n.back = -1);
|
|
1531
|
+
break;
|
|
1532
|
+
}
|
|
1533
|
+
for (n.back = 0; g = n.lencode[l & (1 << n.lenbits) - 1], _ = g >>> 24, v = g >>> 16 & 255, y = g & 65535, !(_ <= u);) {
|
|
1534
|
+
if (s === 0) break inf_leave;
|
|
1535
|
+
s--, l += r[a++] << u, u += 8;
|
|
1536
|
+
}
|
|
1537
|
+
if (v && !(v & 240)) {
|
|
1538
|
+
for (b = _, x = v, S = y; g = n.lencode[S + ((l & (1 << b + x) - 1) >> b)], _ = g >>> 24, v = g >>> 16 & 255, y = g & 65535, !(b + _ <= u);) {
|
|
1539
|
+
if (s === 0) break inf_leave;
|
|
1540
|
+
s--, l += r[a++] << u, u += 8;
|
|
1541
|
+
}
|
|
1542
|
+
l >>>= b, u -= b, n.back += b;
|
|
1543
|
+
}
|
|
1544
|
+
if (l >>>= _, u -= _, n.back += _, n.length = y, v === 0) {
|
|
1545
|
+
n.mode = vi;
|
|
1546
|
+
break;
|
|
1547
|
+
}
|
|
1548
|
+
if (v & 32) {
|
|
1549
|
+
n.back = -1, n.mode = ii;
|
|
1550
|
+
break;
|
|
1551
|
+
}
|
|
1552
|
+
if (v & 64) {
|
|
1553
|
+
e.msg = "invalid literal/length code", n.mode = Z;
|
|
1554
|
+
break;
|
|
1555
|
+
}
|
|
1556
|
+
n.extra = v & 15, n.mode = mi;
|
|
1557
|
+
case mi:
|
|
1558
|
+
if (n.extra) {
|
|
1559
|
+
for (D = n.extra; u < D;) {
|
|
1560
|
+
if (s === 0) break inf_leave;
|
|
1561
|
+
s--, l += r[a++] << u, u += 8;
|
|
1562
|
+
}
|
|
1563
|
+
n.length += l & (1 << n.extra) - 1, l >>>= n.extra, u -= n.extra, n.back += n.extra;
|
|
1564
|
+
}
|
|
1565
|
+
n.was = n.length, n.mode = hi;
|
|
1566
|
+
case hi:
|
|
1567
|
+
for (; g = n.distcode[l & (1 << n.distbits) - 1], _ = g >>> 24, v = g >>> 16 & 255, y = g & 65535, !(_ <= u);) {
|
|
1568
|
+
if (s === 0) break inf_leave;
|
|
1569
|
+
s--, l += r[a++] << u, u += 8;
|
|
1570
|
+
}
|
|
1571
|
+
if (!(v & 240)) {
|
|
1572
|
+
for (b = _, x = v, S = y; g = n.distcode[S + ((l & (1 << b + x) - 1) >> b)], _ = g >>> 24, v = g >>> 16 & 255, y = g & 65535, !(b + _ <= u);) {
|
|
1573
|
+
if (s === 0) break inf_leave;
|
|
1574
|
+
s--, l += r[a++] << u, u += 8;
|
|
1575
|
+
}
|
|
1576
|
+
l >>>= b, u -= b, n.back += b;
|
|
1577
|
+
}
|
|
1578
|
+
if (l >>>= _, u -= _, n.back += _, v & 64) {
|
|
1579
|
+
e.msg = "invalid distance code", n.mode = Z;
|
|
1580
|
+
break;
|
|
1581
|
+
}
|
|
1582
|
+
n.offset = y, n.extra = v & 15, n.mode = gi;
|
|
1583
|
+
case gi:
|
|
1584
|
+
if (n.extra) {
|
|
1585
|
+
for (D = n.extra; u < D;) {
|
|
1586
|
+
if (s === 0) break inf_leave;
|
|
1587
|
+
s--, l += r[a++] << u, u += 8;
|
|
1588
|
+
}
|
|
1589
|
+
n.offset += l & (1 << n.extra) - 1, l >>>= n.extra, u -= n.extra, n.back += n.extra;
|
|
1590
|
+
}
|
|
1591
|
+
if (n.offset > n.dmax) {
|
|
1592
|
+
e.msg = "invalid distance too far back", n.mode = Z;
|
|
1593
|
+
break;
|
|
1594
|
+
}
|
|
1595
|
+
n.mode = _i;
|
|
1596
|
+
case _i:
|
|
1597
|
+
if (c === 0) break inf_leave;
|
|
1598
|
+
if (p = f - c, n.offset > p) {
|
|
1599
|
+
if (p = n.offset - p, p > n.whave && n.sane) {
|
|
1600
|
+
e.msg = "invalid distance too far back", n.mode = Z;
|
|
1601
|
+
break;
|
|
1602
|
+
}
|
|
1603
|
+
p > n.wnext ? (p -= n.wnext, m = n.wsize - p) : m = n.wnext - p, p > n.length && (p = n.length), h = n.window;
|
|
1604
|
+
} else h = i, m = o - n.offset, p = n.length;
|
|
1605
|
+
p > c && (p = c), c -= p, n.length -= p;
|
|
1606
|
+
do
|
|
1607
|
+
i[o++] = h[m++];
|
|
1608
|
+
while (--p);
|
|
1609
|
+
n.length === 0 && (n.mode = pi);
|
|
1610
|
+
break;
|
|
1611
|
+
case vi:
|
|
1612
|
+
if (c === 0) break inf_leave;
|
|
1613
|
+
i[o++] = n.length, c--, n.mode = pi;
|
|
1614
|
+
break;
|
|
1615
|
+
case yi:
|
|
1616
|
+
if (n.wrap) {
|
|
1617
|
+
for (; u < 32;) {
|
|
1618
|
+
if (s === 0) break inf_leave;
|
|
1619
|
+
s--, l |= r[a++] << u, u += 8;
|
|
1620
|
+
}
|
|
1621
|
+
if (f -= c, e.total_out += f, n.total += f, n.wrap & 4 && f && (e.adler = n.check = n.flags ? B(n.check, i, f, o - f) : Nt(n.check, i, f, o - f)), f = c, n.wrap & 4 && (n.flags ? l : Di(l)) !== n.check) {
|
|
1622
|
+
e.msg = "incorrect data check", n.mode = Z;
|
|
1623
|
+
break;
|
|
1624
|
+
}
|
|
1625
|
+
l = 0, u = 0;
|
|
1626
|
+
}
|
|
1627
|
+
n.mode = bi;
|
|
1628
|
+
case bi:
|
|
1629
|
+
if (n.wrap && n.flags) {
|
|
1630
|
+
for (; u < 32;) {
|
|
1631
|
+
if (s === 0) break inf_leave;
|
|
1632
|
+
s--, l += r[a++] << u, u += 8;
|
|
1633
|
+
}
|
|
1634
|
+
if (n.wrap & 4 && l !== (n.total & 4294967295)) {
|
|
1635
|
+
e.msg = "incorrect length check", n.mode = Z;
|
|
1636
|
+
break;
|
|
1637
|
+
}
|
|
1638
|
+
l = 0, u = 0;
|
|
1639
|
+
}
|
|
1640
|
+
n.mode = xi;
|
|
1641
|
+
case xi:
|
|
1642
|
+
w = Vr;
|
|
1643
|
+
break inf_leave;
|
|
1644
|
+
case Z:
|
|
1645
|
+
w = Ur;
|
|
1646
|
+
break inf_leave;
|
|
1647
|
+
case Si: return Wr;
|
|
1648
|
+
case Ci:
|
|
1649
|
+
default: return X;
|
|
1650
|
+
}
|
|
1651
|
+
return e.next_out = o, e.avail_out = c, e.next_in = a, e.avail_in = s, n.hold = l, n.bits = u, (n.wsize || f !== e.avail_out && n.mode < Z && (n.mode < yi || t !== Lr)) && zi(e, e.output, e.next_out, f - e.avail_out), d -= e.avail_in, f -= e.avail_out, e.total_in += d, e.total_out += f, n.total += f, n.wrap & 4 && f && (e.adler = n.check = n.flags ? B(n.check, i, f, e.next_out - f) : Nt(n.check, i, f, e.next_out - f)), e.data_type = n.bits + (n.last ? 64 : 0) + (n.mode === ii ? 128 : 0) + (n.mode === fi || n.mode === si ? 256 : 0), (d === 0 && f === 0 || t === Lr) && w === Br && (w = Gr), w;
|
|
1652
|
+
},
|
|
1653
|
+
inflateEnd: (e) => {
|
|
1654
|
+
if (ki(e)) return X;
|
|
1655
|
+
let t = e.state;
|
|
1656
|
+
return t.window &&= null, e.state = null, Br;
|
|
1657
|
+
},
|
|
1658
|
+
inflateGetHeader: (e, t) => {
|
|
1659
|
+
if (ki(e)) return X;
|
|
1660
|
+
let n = e.state;
|
|
1661
|
+
return n.wrap & 2 ? (n.head = t, t.done = !1, Br) : X;
|
|
1662
|
+
},
|
|
1663
|
+
inflateSetDictionary: (e, t) => {
|
|
1664
|
+
let n = t.length, r, i, a;
|
|
1665
|
+
return ki(e) || (r = e.state, r.wrap !== 0 && r.mode !== ri) ? X : r.mode === ri && (i = 1, i = Nt(i, t, n, 0), i !== r.check) ? Ur : (a = zi(e, t, n, n), a ? (r.mode = Si, Wr) : (r.havedict = 1, Br));
|
|
1666
|
+
},
|
|
1667
|
+
inflateInfo: "pako inflate (from Nodeca project)"
|
|
1668
|
+
};
|
|
1669
|
+
function Vi() {
|
|
1670
|
+
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;
|
|
1671
|
+
}
|
|
1672
|
+
var Hi = Vi, Ui = Object.prototype.toString, { Z_NO_FLUSH: Wi, Z_FINISH: Gi, Z_OK: Ki, Z_STREAM_END: qi, Z_NEED_DICT: Ji, Z_STREAM_ERROR: Yi, Z_DATA_ERROR: Xi, Z_MEM_ERROR: Zi } = It;
|
|
1673
|
+
function Qi(e) {
|
|
1674
|
+
this.options = Zn.assign({
|
|
1675
|
+
chunkSize: 1024 * 64,
|
|
1676
|
+
windowBits: 15,
|
|
1677
|
+
to: ""
|
|
1678
|
+
}, e || {});
|
|
1679
|
+
let t = this.options;
|
|
1680
|
+
t.raw && t.windowBits >= 0 && t.windowBits < 16 && (t.windowBits = -t.windowBits, t.windowBits === 0 && (t.windowBits = -15)), t.windowBits >= 0 && t.windowBits < 16 && !(e && e.windowBits) && (t.windowBits += 32), t.windowBits > 15 && t.windowBits < 48 && (t.windowBits & 15 || (t.windowBits |= 15)), this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new ir(), this.strm.avail_out = 0;
|
|
1681
|
+
let n = Bi.inflateInit2(this.strm, t.windowBits);
|
|
1682
|
+
if (n !== Ki || (this.header = new Hi(), Bi.inflateGetHeader(this.strm, this.header), t.dictionary && (typeof t.dictionary == "string" ? t.dictionary = nr.string2buf(t.dictionary) : Ui.call(t.dictionary) === "[object ArrayBuffer]" && (t.dictionary = new Uint8Array(t.dictionary)), t.raw && (n = Bi.inflateSetDictionary(this.strm, t.dictionary), n !== Ki)))) throw Error(Ft[n]);
|
|
1683
|
+
}
|
|
1684
|
+
Qi.prototype.push = function(e, t) {
|
|
1685
|
+
let n = this.strm, r = this.options.chunkSize, i = this.options.dictionary, a, o, s;
|
|
1686
|
+
if (this.ended) return !1;
|
|
1687
|
+
for (o = t === ~~t ? t : t === !0 ? Gi : Wi, Ui.call(e) === "[object ArrayBuffer]" ? n.input = new Uint8Array(e) : n.input = e, n.next_in = 0, n.avail_in = n.input.length;;) {
|
|
1688
|
+
for (n.avail_out === 0 && (n.output = new Uint8Array(r), n.next_out = 0, n.avail_out = r), a = Bi.inflate(n, o), a === Ji && i && (a = Bi.inflateSetDictionary(n, i), a === Ki ? a = Bi.inflate(n, o) : a === Xi && (a = Ji)); n.avail_in > 0 && a === qi && n.state.wrap > 0 && e[n.next_in] !== 0;) Bi.inflateReset(n), a = Bi.inflate(n, o);
|
|
1689
|
+
switch (a) {
|
|
1690
|
+
case Yi:
|
|
1691
|
+
case Xi:
|
|
1692
|
+
case Ji:
|
|
1693
|
+
case Zi: return this.onEnd(a), this.ended = !0, !1;
|
|
1694
|
+
}
|
|
1695
|
+
if (s = n.avail_out, n.next_out && (n.avail_out === 0 || a === qi)) if (this.options.to === "string") {
|
|
1696
|
+
let e = nr.utf8border(n.output, n.next_out), t = n.next_out - e, i = nr.buf2string(n.output, e);
|
|
1697
|
+
n.next_out = t, n.avail_out = r - t, t && n.output.set(n.output.subarray(e, e + t), 0), this.onData(i);
|
|
1698
|
+
} else this.onData(n.output.length === n.next_out ? n.output : n.output.subarray(0, n.next_out));
|
|
1699
|
+
if (!(a === Ki && s === 0)) {
|
|
1700
|
+
if (a === qi) return a = Bi.inflateEnd(this.strm), this.onEnd(a), this.ended = !0, !0;
|
|
1701
|
+
if (n.avail_in === 0) break;
|
|
1702
|
+
}
|
|
1703
|
+
}
|
|
1704
|
+
return !0;
|
|
1705
|
+
}, Qi.prototype.onData = function(e) {
|
|
1706
|
+
this.chunks.push(e);
|
|
1707
|
+
}, Qi.prototype.onEnd = function(e) {
|
|
1708
|
+
e === Ki && (this.options.to === "string" ? this.result = this.chunks.join("") : this.result = Zn.flattenChunks(this.chunks)), this.chunks = [], this.err = e, this.msg = this.strm.msg;
|
|
1709
|
+
};
|
|
1710
|
+
function $i(e, t) {
|
|
1711
|
+
let n = new Qi(t);
|
|
1712
|
+
if (n.push(e), n.err) throw n.msg || Ft[n.err];
|
|
1713
|
+
return n.result;
|
|
1714
|
+
}
|
|
1715
|
+
function ea(e, t) {
|
|
1716
|
+
return t ||= {}, t.raw = !0, $i(e, t);
|
|
1717
|
+
}
|
|
1718
|
+
var ta = {
|
|
1719
|
+
Inflate: Qi,
|
|
1720
|
+
inflate: $i,
|
|
1721
|
+
inflateRaw: ea,
|
|
1722
|
+
ungzip: $i,
|
|
1723
|
+
constants: It
|
|
1724
|
+
}, { Deflate: na, deflate: ra, deflateRaw: ia, gzip: aa } = yr, { Inflate: oa, inflate: sa, inflateRaw: ca, ungzip: la } = ta, ua = {
|
|
1725
|
+
Deflate: na,
|
|
1726
|
+
deflate: ra,
|
|
1727
|
+
deflateRaw: ia,
|
|
1728
|
+
gzip: aa,
|
|
1729
|
+
Inflate: oa,
|
|
1730
|
+
inflate: sa,
|
|
1731
|
+
inflateRaw: ca,
|
|
1732
|
+
ungzip: la,
|
|
1733
|
+
constants: It
|
|
1734
|
+
};
|
|
1735
|
+
//#endregion
|
|
1736
|
+
//#region packages/lr-map-viewer/src/sdk/lr3d/CLoudDataLoader.js
|
|
1737
|
+
function da(e) {
|
|
1738
|
+
let t = window.atob(e), n = t.length, r = new Uint8Array(n);
|
|
1739
|
+
for (let e = 0; e < n; e++) r[e] = t.charCodeAt(e);
|
|
1740
|
+
return r;
|
|
1741
|
+
}
|
|
1742
|
+
function fa(e) {
|
|
1743
|
+
return e[0] === 31 && e[1] === 139 ? "gzip" : e[0] === 120 ? "zlib" : "deflate";
|
|
1744
|
+
}
|
|
1745
|
+
function pa(e) {
|
|
1746
|
+
let t = da(e).slice(4), n = fa(t), r;
|
|
1747
|
+
try {
|
|
1748
|
+
r = n === "gzip" ? ua.ungzip(t) : n === "zlib" ? ua.inflate(t) : ua.inflate(t, { raw: !0 });
|
|
1749
|
+
} catch (e) {
|
|
1750
|
+
console.error("Decompression failed:", e);
|
|
1751
|
+
}
|
|
1752
|
+
if (r) return new DataView(r.buffer);
|
|
1753
|
+
}
|
|
1754
|
+
var ma = class {
|
|
1755
|
+
constructor(e = {}) {
|
|
1756
|
+
this.params = e, window.lr3dapp && (this.editorApp = window.lr3dapp), this.coalLayers = [], this.geofaultLayers = [];
|
|
1757
|
+
}
|
|
1758
|
+
expandMap() {
|
|
1759
|
+
var e = new Headers();
|
|
1760
|
+
e.append("Content-Type", "application/x-www-form-urlencoded");
|
|
1761
|
+
var t = new URLSearchParams();
|
|
1762
|
+
t.append("token", this.params.token), t.append("dsGuid", this.params.dsGuid), t.append("forceRebuild", "true"), t.append("only2d", "false");
|
|
1763
|
+
var n = {
|
|
1764
|
+
method: "POST",
|
|
1765
|
+
headers: e,
|
|
1766
|
+
body: t,
|
|
1767
|
+
redirect: "follow"
|
|
1768
|
+
};
|
|
1769
|
+
fetch(this.params.server + "/api/gis/mapserver/rest/feature/expand", n).then((e) => e.json()).then((e) => {
|
|
1770
|
+
e.code != 0 && console.error("图形展开失败:", e.msg);
|
|
1771
|
+
}).catch((e) => console.log("error", e));
|
|
1772
|
+
}
|
|
1773
|
+
async load() {
|
|
1774
|
+
if (!this.params.server || !this.params.dsGuid) return console.error("please set server && dsGuid params"), !1;
|
|
1775
|
+
if (!this.params.token && this.params.username && this.params.password) {
|
|
1776
|
+
let e = await this.getToken();
|
|
1777
|
+
if (e) this.params.token = e;
|
|
1778
|
+
else return console.error("username or password wrong"), !1;
|
|
1779
|
+
}
|
|
1780
|
+
if (this.params.basePoint) this.params.basePoint = {
|
|
1781
|
+
x: .5 * (Number(this.params.basePoint[0]) + Number(this.params.basePoint[2])),
|
|
1782
|
+
y: .5 * (Number(this.params.basePoint[1]) + Number(this.params.basePoint[3])),
|
|
1783
|
+
z: 0
|
|
1784
|
+
};
|
|
1785
|
+
else {
|
|
1786
|
+
let e = await this.getMap();
|
|
1787
|
+
if (!e) return console.error("get map info error"), !1;
|
|
1788
|
+
let t = e.data.box.split(",");
|
|
1789
|
+
this.params.basePoint = {
|
|
1790
|
+
x: .5 * (Number(t[0]) + Number(t[2])),
|
|
1791
|
+
y: .5 * (Number(t[1]) + Number(t[3])),
|
|
1792
|
+
z: 0
|
|
1793
|
+
};
|
|
1794
|
+
}
|
|
1795
|
+
this.editorApp.basePoint.copy(this.params.basePoint), this.editorApp.isSetBasePoint = !0;
|
|
1796
|
+
let e = {}, t = await this.queryFeatureDict();
|
|
1797
|
+
t.code == 0 && (this.featureDict = t.data.Features);
|
|
1798
|
+
let n = await this.queryLaneData();
|
|
1799
|
+
e.laneData = n, await this.addLaneData(n);
|
|
1800
|
+
let r = await this.queryRegionAssistData();
|
|
1801
|
+
e.regionAssistData = r, await this.addRegionAssistData(r);
|
|
1802
|
+
let i = await this.queryRegionData();
|
|
1803
|
+
e.regionData = i, await this.addRegionData(i), e.coalData = [];
|
|
1804
|
+
for (let t of this.coalLayers) {
|
|
1805
|
+
let n = await this.queryCoalData(t);
|
|
1806
|
+
e.coalData.push(n), await this.addCoalData(n, t);
|
|
1807
|
+
}
|
|
1808
|
+
e.geofaultData = [];
|
|
1809
|
+
for (let t of this.geofaultLayers) {
|
|
1810
|
+
let n = await this.queryGeoFaultData(t);
|
|
1811
|
+
e.geofaultData.push(n), await this.addGeoFaultData(n, t);
|
|
1812
|
+
}
|
|
1813
|
+
let a = await this.queryCoalResversData();
|
|
1814
|
+
e.coalResversData = a, await this.addCoalResversData(a);
|
|
1815
|
+
let o = await this.queryBoundaryData();
|
|
1816
|
+
e.boundaryData = o, await this.addBoundaryData(o);
|
|
1817
|
+
let s = await this.queryGeologyData();
|
|
1818
|
+
e.geologyData = s, await this.addGeologyData(s);
|
|
1819
|
+
let c = await this.queryPointSymbolData();
|
|
1820
|
+
return e.pointSymbolData = c, await this.addPointSymbolData(c), e;
|
|
1821
|
+
}
|
|
1822
|
+
async queryTxtData() {
|
|
1823
|
+
var e = new FormData();
|
|
1824
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "line,polyline,text"), e.append("returnFeatureInfo", "geometry,attributes"), e.append("attributesFilter", "{\"op\":\"=\",\"left\":\"FEATURETYPE\",\"right\":\"0701010001\"} "), e.append("returnGroupByLayer", "true"), this.queryFeature(e);
|
|
1825
|
+
}
|
|
1826
|
+
async addTxtData(e) {
|
|
1827
|
+
if (!(e && e.data && e.data.featureGroups)) return !1;
|
|
1828
|
+
let t = [];
|
|
1829
|
+
e.data.featureGroups.forEach((e) => {
|
|
1830
|
+
e.features.forEach((e) => {
|
|
1831
|
+
if (Object.prototype.hasOwnProperty.call(e.attributes, "3DTEXT")) {
|
|
1832
|
+
let n = e.attributes["3DTEXT"].data;
|
|
1833
|
+
t.push(JSON.parse(n));
|
|
1834
|
+
}
|
|
1835
|
+
});
|
|
1836
|
+
}), t.length > 0 && this.editorApp.interfaces.addText(t);
|
|
1837
|
+
}
|
|
1838
|
+
async queryRegionAssistData() {
|
|
1839
|
+
var e = new FormData();
|
|
1840
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "point,compound"), e.append("returnFeatureInfo", "geometry,attributes"), e.append("attributesFilter", JSON.stringify({
|
|
1841
|
+
op: "or",
|
|
1842
|
+
left: {
|
|
1843
|
+
op: "=",
|
|
1844
|
+
left: "FEATURETYPE",
|
|
1845
|
+
right: "0202030012"
|
|
1846
|
+
},
|
|
1847
|
+
right: {
|
|
1848
|
+
op: "=",
|
|
1849
|
+
left: "FEATURETYPE",
|
|
1850
|
+
right: "0202030010"
|
|
1851
|
+
}
|
|
1852
|
+
})), e.append("returnGroupByLayer", "true"), e.append("returnFeatureAttributes", "FEATUREID,FEATURENAME,FEATURETYPE,WORKFACENAME,工作面名称,色块剖面坐标序列,注记文本,COALMININGLINECOORS"), this.queryFeature(e);
|
|
1853
|
+
}
|
|
1854
|
+
async addRegionAssistData(e) {
|
|
1855
|
+
if (!(e && e.data && e.data.featureGroups)) return !1;
|
|
1856
|
+
let t = [];
|
|
1857
|
+
e.data.featureGroups.forEach((e) => {
|
|
1858
|
+
let n = e.layer;
|
|
1859
|
+
e.features.forEach((e) => {
|
|
1860
|
+
let r = e.attributes.FEATURETYPE.data;
|
|
1861
|
+
if (r === "0202030010" && !e.attributes.工作面名称 || r === "0202030012" && !e.attributes.WORKFACENAME) return;
|
|
1862
|
+
let i = r === "0202030010" ? e.attributes.工作面名称.data : e.attributes.WORKFACENAME.data, a = [];
|
|
1863
|
+
if (r === "0202030010") {
|
|
1864
|
+
if (!e.attributes.hasOwnProperty("色块剖面坐标序列") || !e.attributes.hasOwnProperty("注记文本") || e.attributes.注记文本.data !== "开采起始线") return;
|
|
1865
|
+
let t = e.attributes.色块剖面坐标序列.data.split(";");
|
|
1866
|
+
if (t.length < 3 || t[0] !== t[1]) return;
|
|
1867
|
+
for (let e = 1; e < 3; e++) {
|
|
1868
|
+
let n = t[e].split(",");
|
|
1869
|
+
a.push(Number(n[0]), Number(n[1]), Number(n[2]));
|
|
1870
|
+
}
|
|
1871
|
+
} else if (r === "0202030012") {
|
|
1872
|
+
let t = {
|
|
1873
|
+
x: e.geometry.coordinates[0],
|
|
1874
|
+
y: e.geometry.coordinates[1],
|
|
1875
|
+
z: e.geometry.coordinates[2]
|
|
1876
|
+
};
|
|
1877
|
+
if (a.push(t.x, t.y, t.z), !e.attributes.hasOwnProperty("COALMININGLINECOORS")) return;
|
|
1878
|
+
let n = e.attributes.COALMININGLINECOORS.data.split(";");
|
|
1879
|
+
if (n.length < 2) return;
|
|
1880
|
+
for (let e = 0; e < n.length; e++) {
|
|
1881
|
+
let t = n[e].split(",");
|
|
1882
|
+
a.push(Number(t[0]), Number(t[1]), Number(t[2]));
|
|
1883
|
+
}
|
|
1884
|
+
} else return;
|
|
1885
|
+
let o = e.id;
|
|
1886
|
+
t.push({
|
|
1887
|
+
id: o,
|
|
1888
|
+
layername: n,
|
|
1889
|
+
geometry: { coordinates: a },
|
|
1890
|
+
attrs: {
|
|
1891
|
+
linkName: i,
|
|
1892
|
+
FeatureType: r
|
|
1893
|
+
}
|
|
1894
|
+
});
|
|
1895
|
+
});
|
|
1896
|
+
}), t.length > 0 && this.editorApp.interfaces.addRegionAssistData(t);
|
|
1897
|
+
}
|
|
1898
|
+
async queryRegionData() {
|
|
1899
|
+
var e = new FormData();
|
|
1900
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "line,polyline"), e.append("returnFeatureInfo", "geometry,attributes"), e.append("attributesFilter", JSON.stringify({
|
|
1901
|
+
op: "or",
|
|
1902
|
+
left: {
|
|
1903
|
+
op: "or",
|
|
1904
|
+
left: {
|
|
1905
|
+
op: "=",
|
|
1906
|
+
left: "FEATURETYPE",
|
|
1907
|
+
right: "0202030006"
|
|
1908
|
+
},
|
|
1909
|
+
right: {
|
|
1910
|
+
op: "=",
|
|
1911
|
+
left: "FEATURETYPE",
|
|
1912
|
+
right: "0202030011"
|
|
1913
|
+
}
|
|
1914
|
+
},
|
|
1915
|
+
right: {
|
|
1916
|
+
op: "or",
|
|
1917
|
+
left: {
|
|
1918
|
+
op: "or",
|
|
1919
|
+
left: {
|
|
1920
|
+
op: "=",
|
|
1921
|
+
left: "FEATURETYPE",
|
|
1922
|
+
right: "0202030032"
|
|
1923
|
+
},
|
|
1924
|
+
right: {
|
|
1925
|
+
op: "=",
|
|
1926
|
+
left: "FEATURETYPE",
|
|
1927
|
+
right: "0202030031"
|
|
1928
|
+
}
|
|
1929
|
+
},
|
|
1930
|
+
right: {
|
|
1931
|
+
op: "or",
|
|
1932
|
+
left: {
|
|
1933
|
+
op: "=",
|
|
1934
|
+
left: "FEATURETYPE",
|
|
1935
|
+
right: "0106020009"
|
|
1936
|
+
},
|
|
1937
|
+
right: {
|
|
1938
|
+
op: "or",
|
|
1939
|
+
left: {
|
|
1940
|
+
op: "=",
|
|
1941
|
+
left: "FEATURETYPE",
|
|
1942
|
+
right: "0202030004"
|
|
1943
|
+
},
|
|
1944
|
+
right: {
|
|
1945
|
+
op: "=",
|
|
1946
|
+
left: "FEATURETYPE",
|
|
1947
|
+
right: "0202030030"
|
|
1948
|
+
}
|
|
1949
|
+
}
|
|
1950
|
+
}
|
|
1951
|
+
}
|
|
1952
|
+
})), e.append("returnGroupByLayer", "true"), e.append("returnFeatureAttributes", "FEATUREID,FEATURENAME,FEATURETYPE,MININGFACE,MININGLEVEL,MININGREGION"), this.queryFeature(e);
|
|
1953
|
+
}
|
|
1954
|
+
async addRegionData(e) {
|
|
1955
|
+
if (!(e && e.data && e.data.featureGroups)) return !1;
|
|
1956
|
+
let t = [];
|
|
1957
|
+
e.data.featureGroups.forEach((e) => {
|
|
1958
|
+
let n = e.layer;
|
|
1959
|
+
e.features.forEach((e) => {
|
|
1960
|
+
let r = [];
|
|
1961
|
+
for (let t = 0; t < e.geometry.coordinates.length; t++) r.push(e.geometry.coordinates[t][0], e.geometry.coordinates[t][1], e.geometry.coordinates[t][2]);
|
|
1962
|
+
let i = "";
|
|
1963
|
+
Object.prototype.hasOwnProperty.call(e.attributes, "名称") && (i = e.attributes.名称.data);
|
|
1964
|
+
let a = e.id, o = "0202030004";
|
|
1965
|
+
Object.prototype.hasOwnProperty.call(e.attributes, "FEATURETYPE") && (o = e.attributes.FEATURETYPE.data, Object.prototype.hasOwnProperty.call(e.attributes, "FEATUREID") && (i = e.attributes.FEATUREID.data)), t.push({
|
|
1966
|
+
id: a,
|
|
1967
|
+
layername: n,
|
|
1968
|
+
geometry: { coordinates: r },
|
|
1969
|
+
attrs: {
|
|
1970
|
+
图层: n,
|
|
1971
|
+
实体ID: a,
|
|
1972
|
+
名称: i,
|
|
1973
|
+
FeatureType: o
|
|
1974
|
+
},
|
|
1975
|
+
isSJGZM: !1
|
|
1976
|
+
});
|
|
1977
|
+
});
|
|
1978
|
+
}), t.length > 0 && await this.editorApp.interfaces.addRegion(t);
|
|
1979
|
+
}
|
|
1980
|
+
async queryCoalResversData() {
|
|
1981
|
+
var e = new FormData();
|
|
1982
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "line,polyline"), e.append("returnFeatureInfo", "geometry,attributes"), e.append("attributesFilter", JSON.stringify({
|
|
1983
|
+
op: "or",
|
|
1984
|
+
left: {
|
|
1985
|
+
op: "or",
|
|
1986
|
+
left: {
|
|
1987
|
+
op: "=",
|
|
1988
|
+
left: "FEATURETYPE",
|
|
1989
|
+
right: "0105100001"
|
|
1990
|
+
},
|
|
1991
|
+
right: {
|
|
1992
|
+
op: "=",
|
|
1993
|
+
left: "FEATURETYPE",
|
|
1994
|
+
right: "0105100002"
|
|
1995
|
+
}
|
|
1996
|
+
},
|
|
1997
|
+
right: {
|
|
1998
|
+
op: "or",
|
|
1999
|
+
left: {
|
|
2000
|
+
op: "or",
|
|
2001
|
+
left: {
|
|
2002
|
+
op: "=",
|
|
2003
|
+
left: "FEATURETYPE",
|
|
2004
|
+
right: "0105100003"
|
|
2005
|
+
},
|
|
2006
|
+
right: {
|
|
2007
|
+
op: "=",
|
|
2008
|
+
left: "FEATURETYPE",
|
|
2009
|
+
right: "0105100004"
|
|
2010
|
+
}
|
|
2011
|
+
},
|
|
2012
|
+
right: {
|
|
2013
|
+
op: "=",
|
|
2014
|
+
left: "FEATURETYPE",
|
|
2015
|
+
right: "0105100005"
|
|
2016
|
+
}
|
|
2017
|
+
}
|
|
2018
|
+
})), e.append("returnGroupByLayer", "true"), this.queryFeature(e);
|
|
2019
|
+
}
|
|
2020
|
+
async addCoalResversData(e) {
|
|
2021
|
+
let t = {};
|
|
2022
|
+
if (this.featureDict) {
|
|
2023
|
+
let e = /(0105100001|0105100002|0105100003|0105100004|0105100005)/;
|
|
2024
|
+
for (let n of this.featureDict) n.FeatureType.search(e) !== -1 && (t[n.FeatureType] = n);
|
|
2025
|
+
}
|
|
2026
|
+
if (!e?.data?.featureGroups) return !1;
|
|
2027
|
+
let n = [];
|
|
2028
|
+
e.data.featureGroups.forEach((e) => {
|
|
2029
|
+
let r = e.layer;
|
|
2030
|
+
e.features.forEach((e) => {
|
|
2031
|
+
let i = [];
|
|
2032
|
+
for (let t = 0; t < e.geometry.coordinates.length; t++) i.push(e.geometry.coordinates[t][0], e.geometry.coordinates[t][1], e.geometry.coordinates[t][2]);
|
|
2033
|
+
let a = "0105100001";
|
|
2034
|
+
Object.prototype.hasOwnProperty.call(e.attributes, "FeatureType") && (a = e.attributes.FEATURETYPE.data);
|
|
2035
|
+
let o = {};
|
|
2036
|
+
if (t && t[a]) {
|
|
2037
|
+
let n = t[a].Properties;
|
|
2038
|
+
for (let t of n) {
|
|
2039
|
+
let n = t.PropName;
|
|
2040
|
+
Object.prototype.hasOwnProperty.call(e.attributes, n.toUpperCase()) && (t.DefaultValue = e.attributes[n.toUpperCase()].data), o[n] = Object.assign({}, t);
|
|
2041
|
+
}
|
|
2042
|
+
}
|
|
2043
|
+
let s = e.id;
|
|
2044
|
+
n.push({
|
|
2045
|
+
id: s,
|
|
2046
|
+
layername: r,
|
|
2047
|
+
geometry: { coordinates: i },
|
|
2048
|
+
attrs: o
|
|
2049
|
+
});
|
|
2050
|
+
});
|
|
2051
|
+
}), n.length > 0 && (this.editorApp.interfaces.addCoalReserves(n), n.forEach((e) => {
|
|
2052
|
+
window.lr3dapp.editor.manager.modules.CoalReservesModule.getLayerGroup(e.layername).visible = !0;
|
|
2053
|
+
}));
|
|
2054
|
+
}
|
|
2055
|
+
async queryBoundaryData() {
|
|
2056
|
+
var e = new FormData();
|
|
2057
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "line,polyline"), e.append("returnFeatureInfo", "geometry,attributes"), e.append("attributesFilter", JSON.stringify({
|
|
2058
|
+
op: "=",
|
|
2059
|
+
left: "FEATURETYPE",
|
|
2060
|
+
right: "0104020001"
|
|
2061
|
+
})), e.append("returnGroupByLayer", "true"), this.queryFeature(e);
|
|
2062
|
+
}
|
|
2063
|
+
async addBoundaryData(e) {
|
|
2064
|
+
if (!e?.data?.featureGroups) return !1;
|
|
2065
|
+
let t = [];
|
|
2066
|
+
e.data.featureGroups.forEach((e) => {
|
|
2067
|
+
let n = e.layer;
|
|
2068
|
+
e.features.forEach((e) => {
|
|
2069
|
+
let r = [];
|
|
2070
|
+
for (let t = 0; t < e.geometry.coordinates.length; t++) r.push(e.geometry.coordinates[t][0], e.geometry.coordinates[t][1], e.geometry.coordinates[t][2]);
|
|
2071
|
+
if (!Object.prototype.hasOwnProperty.call(e.attributes, "名称")) return;
|
|
2072
|
+
let i = e.attributes.名称.data.split(":");
|
|
2073
|
+
if (i.length < 3) return;
|
|
2074
|
+
let a = Number(i[1]), o = Number(i[2]), s = e.id;
|
|
2075
|
+
t.push({
|
|
2076
|
+
layername: n,
|
|
2077
|
+
id: s,
|
|
2078
|
+
points: r,
|
|
2079
|
+
attrs: {
|
|
2080
|
+
图层: n,
|
|
2081
|
+
实体ID: s,
|
|
2082
|
+
名称: "井田边界"
|
|
2083
|
+
},
|
|
2084
|
+
groundelevation: a,
|
|
2085
|
+
bottomevation: o
|
|
2086
|
+
});
|
|
2087
|
+
});
|
|
2088
|
+
}), t.length > 0 && this.editorApp.interfaces.addBoundary(t);
|
|
2089
|
+
}
|
|
2090
|
+
async queryGeologyData() {
|
|
2091
|
+
let e = new FormData();
|
|
2092
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "polyline"), e.append("returnFeatureInfo", "all"), e.append("attributesFilter", JSON.stringify({
|
|
2093
|
+
op: "=",
|
|
2094
|
+
left: "FEATURETYPE",
|
|
2095
|
+
right: "0103030002"
|
|
2096
|
+
})), e.append("returnGroupByLayer", "true"), this.queryFeature(e);
|
|
2097
|
+
}
|
|
2098
|
+
async addGeologyData(e) {
|
|
2099
|
+
if (!e?.data?.featureGroups) return !1;
|
|
2100
|
+
let t = [];
|
|
2101
|
+
e.data.featureGroups.forEach((e) => {
|
|
2102
|
+
e.features.forEach((n) => {
|
|
2103
|
+
if (Object.prototype.hasOwnProperty.call(n.attributes, "3D_STRATUM_DATA")) {
|
|
2104
|
+
let r = e.layer, i = n.id;
|
|
2105
|
+
t.push({
|
|
2106
|
+
id: i,
|
|
2107
|
+
layername: r,
|
|
2108
|
+
datatype: n.attributes["3D_STRATUM_DATATYPE"].data,
|
|
2109
|
+
stratumdata: n.attributes["3D_STRATUM_DATA"].data,
|
|
2110
|
+
data3dMat: JSON.parse(n.attributes.DATA3DMAT.data),
|
|
2111
|
+
info: {
|
|
2112
|
+
类型: "地层",
|
|
2113
|
+
图层: r
|
|
2114
|
+
}
|
|
2115
|
+
});
|
|
2116
|
+
}
|
|
2117
|
+
});
|
|
2118
|
+
}), t.length > 0 && window.lr3dapp.interfaces.addStratumModel(t);
|
|
2119
|
+
}
|
|
2120
|
+
async queryPointSymbolData() {
|
|
2121
|
+
let e = new FormData();
|
|
2122
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "point"), e.append("returnFeatureInfo", "all"), e.append("attributesFilter", JSON.stringify({
|
|
2123
|
+
op: "=",
|
|
2124
|
+
left: "FEATURETYPE",
|
|
2125
|
+
right: "0103030003"
|
|
2126
|
+
})), e.append("returnGroupByLayer", "true"), this.queryFeature(e);
|
|
2127
|
+
}
|
|
2128
|
+
async addPointSymbolData(e) {
|
|
2129
|
+
if (!e?.data?.featureGroups) return !1;
|
|
2130
|
+
let t = await this.queryFeatureDict(), n = {};
|
|
2131
|
+
if (t.data.Features) for (let e of t.data.Features) {
|
|
2132
|
+
let t = e.FeatureType;
|
|
2133
|
+
n[t] = e;
|
|
2134
|
+
}
|
|
2135
|
+
let r = [];
|
|
2136
|
+
e.data.featureGroups.forEach((e) => {
|
|
2137
|
+
e.features.forEach((t) => {
|
|
2138
|
+
if (Object.prototype.hasOwnProperty.call(t.attributes, "MODEL_TRANSFORM")) {
|
|
2139
|
+
let i = t.geometry.coordinates[0], a = t.geometry.coordinates[1], o = t.geometry.coordinates[2], s = e.layer, c = t.id, l = JSON.parse(t.attributes.MODEL_TRANSFORM.data), u = {};
|
|
2140
|
+
if (Object.prototype.hasOwnProperty.call(t.attributes, "FEATURETYPE")) {
|
|
2141
|
+
let e = t.attributes.FEATURETYPE.data;
|
|
2142
|
+
if (n && n[e]) {
|
|
2143
|
+
let r = n[e].Properties;
|
|
2144
|
+
for (let e of r) {
|
|
2145
|
+
let n = e.PropName;
|
|
2146
|
+
Object.prototype.hasOwnProperty.call(t.attributes, n) && (e.DefaultValue = t.attributes[n].data), u[n] = Object.assign({}, e);
|
|
2147
|
+
}
|
|
2148
|
+
}
|
|
2149
|
+
}
|
|
2150
|
+
r.push({
|
|
2151
|
+
id: c,
|
|
2152
|
+
layername: s,
|
|
2153
|
+
geometry: { coor: {
|
|
2154
|
+
x: i,
|
|
2155
|
+
y: a,
|
|
2156
|
+
z: o
|
|
2157
|
+
} },
|
|
2158
|
+
guid: t?.style?.styles?.[0]?.guid ?? "",
|
|
2159
|
+
info: u || {
|
|
2160
|
+
类型: "点符号",
|
|
2161
|
+
图层: s
|
|
2162
|
+
},
|
|
2163
|
+
transform: l
|
|
2164
|
+
});
|
|
2165
|
+
}
|
|
2166
|
+
});
|
|
2167
|
+
}), r.length > 0 && await window.lr3dapp.interfaces.addModel(r);
|
|
2168
|
+
}
|
|
2169
|
+
async queryDrillData() {
|
|
2170
|
+
let e = new FormData();
|
|
2171
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "compound"), e.append("returnFeatureInfo", "all"), e.append("returnGroupByLayer", "true"), this.queryFeature(e);
|
|
2172
|
+
}
|
|
2173
|
+
async addDrillData(e) {
|
|
2174
|
+
if (!e?.data?.featureGroups) return !1;
|
|
2175
|
+
let t = [];
|
|
2176
|
+
e.data.featureGroups.forEach((e) => {
|
|
2177
|
+
let n = {}, r = e.layer;
|
|
2178
|
+
e.features.forEach((e) => {
|
|
2179
|
+
if (e.attributes.hasOwnProperty("KK_X") && e.attributes.hasOwnProperty("KK_Y") && e.attributes.hasOwnProperty("KK_Z") && e.attributes.hasOwnProperty("JMD_X") && e.attributes.hasOwnProperty("JMD_Y") && e.attributes.hasOwnProperty("JMD_Z")) {
|
|
2180
|
+
let t = e.id, i = {
|
|
2181
|
+
x: 0,
|
|
2182
|
+
y: 0,
|
|
2183
|
+
z: 0
|
|
2184
|
+
};
|
|
2185
|
+
i.x = e.attributes.KK_X.data, i.y = e.attributes.KK_Y.data, i.z = e.attributes.KK_Z.data;
|
|
2186
|
+
let a = {
|
|
2187
|
+
x: 0,
|
|
2188
|
+
y: 0,
|
|
2189
|
+
z: 0
|
|
2190
|
+
};
|
|
2191
|
+
a.x = e.attributes.JMD_X.data, a.y = e.attributes.JMD_Y.data, a.z = e.attributes.JMD_Z.data;
|
|
2192
|
+
let o = {};
|
|
2193
|
+
Object.prototype.hasOwnProperty.call(e.attributes, "properties") && Object.assign(o, e.properties), n[r + ":" + t] = {
|
|
2194
|
+
id: t,
|
|
2195
|
+
layername: r,
|
|
2196
|
+
geometry: {
|
|
2197
|
+
beginCoor: i,
|
|
2198
|
+
endCoor: a
|
|
2199
|
+
},
|
|
2200
|
+
info: o
|
|
2201
|
+
};
|
|
2202
|
+
}
|
|
2203
|
+
}), Object.keys(n).length > 0 && t.push({
|
|
2204
|
+
layername: r,
|
|
2205
|
+
drills: n
|
|
2206
|
+
});
|
|
2207
|
+
}), t.length > 0 && window.lr3dapp.interfaces.addDrill(t);
|
|
2208
|
+
}
|
|
2209
|
+
async queryLaneData() {
|
|
2210
|
+
var e = new FormData();
|
|
2211
|
+
return e.append("stamp", "1687166665966"), e.append("dsGuid", this.params.dsGuid), e.append("geometryTypes", "line,polyline,point"), e.append("returnFeatureInfo", "geometry,attributes,style"), e.append("attributesFilter", JSON.stringify({
|
|
2212
|
+
op: "or",
|
|
2213
|
+
left: {
|
|
2214
|
+
op: "=",
|
|
2215
|
+
left: "FEATURETYPE",
|
|
2216
|
+
right: "0202020005"
|
|
2217
|
+
},
|
|
2218
|
+
right: {
|
|
2219
|
+
op: "or",
|
|
2220
|
+
left: {
|
|
2221
|
+
op: "=",
|
|
2222
|
+
left: "FEATURETYPE",
|
|
2223
|
+
right: "1002010101"
|
|
2224
|
+
},
|
|
2225
|
+
right: {
|
|
2226
|
+
op: "=",
|
|
2227
|
+
left: "FEATURETYPE",
|
|
2228
|
+
right: "1002010102"
|
|
2229
|
+
}
|
|
2230
|
+
}
|
|
2231
|
+
})), e.append("returnGroupByLayer", "true"), e.append("returnFeatureAttributes", "FEATUREID,FEATURENAME,FEATURETYPE,MININGFACE,MININGLEVEL,MININGREGION,ROADWAYAREA,ROADWAYHEIGHT,ROADWAYLENGTH,ROADWAYPURPOSE,ROADWAYSHAPE,ROADWAYSIDEHEIGHT,ROADWAYSUPPORT,ROADWAYTOPWIDTH,ROADWAYTYPE,ROADWAYWIDTH"), this.queryFeature(e);
|
|
2232
|
+
}
|
|
2233
|
+
async addLaneData(e) {
|
|
2234
|
+
if (!(e && e.data && e.data.featureGroups)) return !1;
|
|
2235
|
+
let t = [];
|
|
2236
|
+
e.data.featureGroups.forEach((e) => {
|
|
2237
|
+
let n = e.layer;
|
|
2238
|
+
e.features.forEach((e) => {
|
|
2239
|
+
let r = e.attributes, i = [
|
|
2240
|
+
"水平",
|
|
2241
|
+
"采区",
|
|
2242
|
+
"工作面",
|
|
2243
|
+
"井下巷道"
|
|
2244
|
+
];
|
|
2245
|
+
Object.prototype.hasOwnProperty.call(r, "ID") && (i = r.ID.data.split(",")), i.length < 4 && (i = [
|
|
2246
|
+
"水平",
|
|
2247
|
+
"采区",
|
|
2248
|
+
"工作面",
|
|
2249
|
+
"井下巷道"
|
|
2250
|
+
]);
|
|
2251
|
+
let a = [];
|
|
2252
|
+
if (e.geometry.type === "Point") {
|
|
2253
|
+
if (!r.hasOwnProperty("ROCKSHAFTBEGINELE")) return;
|
|
2254
|
+
let t = Number(r.ROCKSHAFTBEGINELE.data), n = Number(r.ROCKSHAFTENDELE.data);
|
|
2255
|
+
a.push({
|
|
2256
|
+
x: e.geometry.coordinates[0],
|
|
2257
|
+
y: e.geometry.coordinates[1],
|
|
2258
|
+
z: t
|
|
2259
|
+
}), a.push({
|
|
2260
|
+
x: e.geometry.coordinates[0],
|
|
2261
|
+
y: e.geometry.coordinates[1],
|
|
2262
|
+
z: n
|
|
2263
|
+
});
|
|
2264
|
+
} else for (let t = 0; t < e.geometry.coordinates.length; t++) a.push({
|
|
2265
|
+
x: e.geometry.coordinates[t][0],
|
|
2266
|
+
y: e.geometry.coordinates[t][1],
|
|
2267
|
+
z: e.geometry.coordinates[t][2]
|
|
2268
|
+
});
|
|
2269
|
+
let o = {
|
|
2270
|
+
图层: n,
|
|
2271
|
+
实体ID: e.id
|
|
2272
|
+
};
|
|
2273
|
+
e.geometry.type === "Point" ? (o.名称 = r.ROCKSHAFTNAME.data, o.井筒用途 = r.ROCKSHAFTUSAGE.data, r.hasOwnProperty("ROCKSHAFTRADIUS") && (o.井筒半径 = r.ROCKSHAFTRADIUS.data, o.竖井类型 = "0"), r.hasOwnProperty("ROCKSHAFTSIDELEN") && (o.井筒边长 = r.ROCKSHAFTSIDELEN.data, o.竖井类型 = "1")) : (o.水平 = i[0], o.采区 = i[1], o.工作面 = i[2], o.名称 = r.hasOwnProperty("FEATURENAME") ? r.FEATURENAME.data : i[3], r.hasOwnProperty("COALSEAM") && (o.所属采区 = r.COALSEAM.data, r.hasOwnProperty("MININGREGION") && (o.所属中段 = r.MININGREGION.data), r.hasOwnProperty("ROADWAYTYPE") && (o.巷道类型 = r.ROADWAYTYPE.data))), n.indexOf("施工进度") > -1 && r.FEATURETYPE && r.FEATURETYPE.data == "0202020005" && (r.FOOTAGE && (o.FOOTAGE = r.FOOTAGE.data), r.TOTALFOOTAGE && (o.TOTALFOOTAGE = r.TOTALFOOTAGE.data), r.UPDATE && (o.UPDATE = r.UPDATE.data), r.FEATURETYPE && (o.FEATURETYPE = r.FEATURETYPE.data)), t.push({
|
|
2274
|
+
points: a,
|
|
2275
|
+
layername: n,
|
|
2276
|
+
id: e.id,
|
|
2277
|
+
attrs: o,
|
|
2278
|
+
height: this.params?.laneSize?.height ?? 10,
|
|
2279
|
+
width: this.params?.laneSize?.width ?? 10,
|
|
2280
|
+
modeType: 0,
|
|
2281
|
+
topWidth: 3,
|
|
2282
|
+
archHeight: 2,
|
|
2283
|
+
startTime: 0,
|
|
2284
|
+
endTime: 0,
|
|
2285
|
+
colorStr: e?.style?.styles?.[0]?.foreColor ? e?.style?.styles?.[0]?.foreColor : "#AAAAAA"
|
|
2286
|
+
});
|
|
2287
|
+
});
|
|
2288
|
+
}), t.length > 0 && await this.editorApp.interfaces.addLane(t);
|
|
2289
|
+
}
|
|
2290
|
+
async queryCoalData(e) {
|
|
2291
|
+
var t = {};
|
|
2292
|
+
return t.stamp = "1687166665966", t.dsGuid = this.params.dsGuid, t.layerName = e, t.returnAttribute = "true", this.queryLayer(t);
|
|
2293
|
+
}
|
|
2294
|
+
async addCoalData(e, t) {
|
|
2295
|
+
if (!(e && e.data && e.data.attributes)) return !1;
|
|
2296
|
+
let n = this.parseCoalFunc(e.data.attributes, t);
|
|
2297
|
+
if (n) {
|
|
2298
|
+
if (Object.prototype.hasOwnProperty.call(e.data.attributes, "coalInfo")) {
|
|
2299
|
+
let r = JSON.parse(e.data.attributes.coalInfo);
|
|
2300
|
+
n[t].coalInfo = Object.assign({}, r);
|
|
2301
|
+
}
|
|
2302
|
+
n && await this.editorApp.interfaces.addCoal2Data([n]);
|
|
2303
|
+
}
|
|
2304
|
+
}
|
|
2305
|
+
parseCoalFunc(e, t) {
|
|
2306
|
+
let n = {
|
|
2307
|
+
triData: /* @__PURE__ */ new Map(),
|
|
2308
|
+
pntData: /* @__PURE__ */ new Map(),
|
|
2309
|
+
edgeData: /* @__PURE__ */ new Map(),
|
|
2310
|
+
layername: t
|
|
2311
|
+
};
|
|
2312
|
+
if (!Object.prototype.hasOwnProperty.call(e, "_tin_data") || !Object.prototype.hasOwnProperty.call(e, "_tri_model")) return !1;
|
|
2313
|
+
let r = !0;
|
|
2314
|
+
Object.prototype.hasOwnProperty.call(e, "_tin_hd") || (r = !1);
|
|
2315
|
+
let i = pa(e._tin_data.data), a;
|
|
2316
|
+
r && (a = pa(e._tin_hd.data));
|
|
2317
|
+
let o = pa(e._tri_model.data), s = n.triData, c = n.pntData, l = n.edgeData, u = 0;
|
|
2318
|
+
u += 20;
|
|
2319
|
+
let d = o.getUint32(u, !0);
|
|
2320
|
+
u += 4;
|
|
2321
|
+
let f = o.getUint32(u, !0);
|
|
2322
|
+
u += 4, u += 4, u += 480;
|
|
2323
|
+
for (let e = 0; e < d; e++) {
|
|
2324
|
+
let t = o.getInt32(u, !0);
|
|
2325
|
+
u += 4;
|
|
2326
|
+
let n = o.getInt32(u, !0);
|
|
2327
|
+
u += 4;
|
|
2328
|
+
let r = o.getInt32(u, !0);
|
|
2329
|
+
u += 4, u += 4, u += 4, u += 4, s.set(String(e), [
|
|
2330
|
+
String(e),
|
|
2331
|
+
String(t),
|
|
2332
|
+
String(n),
|
|
2333
|
+
String(r)
|
|
2334
|
+
]);
|
|
2335
|
+
let i = "";
|
|
2336
|
+
i = Number(t) < Number(n) ? t + ":" + n : n + ":" + t;
|
|
2337
|
+
let a = l.get(i);
|
|
2338
|
+
a ? l.set(i, a + 1) : l.set(i, 1), i = Number(n) < Number(r) ? n + ":" + r : r + ":" + n, a = l.get(i), a ? l.set(i, a + 1) : l.set(i, 1), i = Number(r) < Number(t) ? r + ":" + t : t + ":" + r, a = l.get(i), a ? l.set(i, a + 1) : l.set(i, 1);
|
|
2339
|
+
}
|
|
2340
|
+
let p, m = 0;
|
|
2341
|
+
if (p = i.getInt32(0, !0), m += 4, p !== f) return console.log("tin_data he tri module 标识的点数不一致"), !1;
|
|
2342
|
+
let h = 0;
|
|
2343
|
+
for (let e = 0; e < p; e++) {
|
|
2344
|
+
if (m > i.byteLength) return !1;
|
|
2345
|
+
let t = i.getFloat64(m, !0), n = i.getFloat64(m + 8, !0), o = i.getFloat64(m + 16, !0);
|
|
2346
|
+
m += 24;
|
|
2347
|
+
let s = 0;
|
|
2348
|
+
r && (s = a.getFloat64(h, !0), h += 8), c.set(String(e + 1), [
|
|
2349
|
+
String(e + 1),
|
|
2350
|
+
t,
|
|
2351
|
+
n,
|
|
2352
|
+
o,
|
|
2353
|
+
s
|
|
2354
|
+
]);
|
|
2355
|
+
}
|
|
2356
|
+
return n;
|
|
2357
|
+
}
|
|
2358
|
+
async queryGeoFaultData(e) {
|
|
2359
|
+
var t = {};
|
|
2360
|
+
return t.stamp = "1687166665968", t.dsGuid = this.params.dsGuid, t.layerName = e, t.returnAttribute = "true", this.queryLayer(t);
|
|
2361
|
+
}
|
|
2362
|
+
async addGeoFaultData(e, t) {
|
|
2363
|
+
if (!(e && e.data && e.data.attributes)) return !1;
|
|
2364
|
+
let n = this.parseGeoFaultFunc(e.data.attributes, t);
|
|
2365
|
+
if (n) {
|
|
2366
|
+
if (Object.prototype.hasOwnProperty.call(e.data.attributes, "geofaultInfo")) {
|
|
2367
|
+
let r = JSON.parse(e.data.attributes.geofaultInfo);
|
|
2368
|
+
n[t].geofaultInfo = Object.assign({}, r);
|
|
2369
|
+
}
|
|
2370
|
+
n && await this.editorApp.interfaces.addGeoFault([n]);
|
|
2371
|
+
}
|
|
2372
|
+
}
|
|
2373
|
+
parseGeoFaultFunc(e, t) {
|
|
2374
|
+
if (!Object.prototype.hasOwnProperty.call(e, "_tin_data") || !Object.prototype.hasOwnProperty.call(e, "_tri_model") || !Object.prototype.hasOwnProperty.call(e, "_tin_id_value")) return !1;
|
|
2375
|
+
let n = {
|
|
2376
|
+
layername: t,
|
|
2377
|
+
data: {
|
|
2378
|
+
triData: [],
|
|
2379
|
+
pntData: []
|
|
2380
|
+
}
|
|
2381
|
+
}, r = pa(e._tin_data.data), i = pa(e._tin_id_value.data), a = pa(e._tri_model.data), o = n.data.triData, s = n.data.pntData, c = 0;
|
|
2382
|
+
c += 20;
|
|
2383
|
+
let l = a.getUint32(c, !0);
|
|
2384
|
+
c += 4;
|
|
2385
|
+
let u = a.getUint32(c, !0);
|
|
2386
|
+
c += 4, c += 4, c += 480;
|
|
2387
|
+
for (let e = 0; e < l; e++) {
|
|
2388
|
+
let e = [];
|
|
2389
|
+
for (let t = 0; t < 6; t++) {
|
|
2390
|
+
let t = a.getInt32(c, !0);
|
|
2391
|
+
e.push(t), c += 4;
|
|
2392
|
+
}
|
|
2393
|
+
o.push(e);
|
|
2394
|
+
}
|
|
2395
|
+
let d, f = 0;
|
|
2396
|
+
if (d = r.getInt32(0, !0), f += 4, d !== u) return console.log("tin_data he tri module 标识的点数不一致"), !1;
|
|
2397
|
+
let p = 0, m = 0, h = 0;
|
|
2398
|
+
for (let e = 0; e < d; e++) {
|
|
2399
|
+
if (f > r.byteLength) return !1;
|
|
2400
|
+
let e = [], t = r.getFloat64(f, !0), n = r.getFloat64(f + 8, !0), a = r.getFloat64(f + 16, !0);
|
|
2401
|
+
f += 24, e.push(t, n, a), e.push(i.getInt32(p, !0)), p += 4, m += e[3], e[3] > h && (h = e[3]), s.push(e);
|
|
2402
|
+
}
|
|
2403
|
+
return n;
|
|
2404
|
+
}
|
|
2405
|
+
async getToken() {
|
|
2406
|
+
return new Promise((e, t) => {
|
|
2407
|
+
fetch(this.params.server + "/api/gis/mapserver/rest/auth?user_name=" + this.params.username + "&password=" + this.params.password, {
|
|
2408
|
+
method: "POST",
|
|
2409
|
+
redirect: "follow"
|
|
2410
|
+
}).then((e) => e.json()).then((t) => {
|
|
2411
|
+
e(t.data.token);
|
|
2412
|
+
}).catch((e) => {
|
|
2413
|
+
console.log("error", e), t(!1);
|
|
2414
|
+
});
|
|
2415
|
+
});
|
|
2416
|
+
}
|
|
2417
|
+
async getMap() {
|
|
2418
|
+
return new Promise((e, t) => {
|
|
2419
|
+
var n = new Headers();
|
|
2420
|
+
n.append("Authorization", " Bearer " + this.params.token);
|
|
2421
|
+
var r = {
|
|
2422
|
+
method: "GET",
|
|
2423
|
+
headers: n,
|
|
2424
|
+
redirect: "follow"
|
|
2425
|
+
};
|
|
2426
|
+
fetch(this.params.server + "/api/gis/mapserver/rest/map?dsGuid=" + this.params.dsGuid + "&fields=id,name,guid,box&token=" + this.params.token, r).then((e) => e.json()).then((t) => e(t)).catch((e) => {
|
|
2427
|
+
console.log("error", e), t(!1);
|
|
2428
|
+
});
|
|
2429
|
+
});
|
|
2430
|
+
}
|
|
2431
|
+
async getDatasource() {
|
|
2432
|
+
let e = await this.getToken();
|
|
2433
|
+
if (e) this.params.token = e;
|
|
2434
|
+
else return !1;
|
|
2435
|
+
return new Promise((e, t) => {
|
|
2436
|
+
var n = new Headers();
|
|
2437
|
+
n.append("Authorization", " Bearer " + this.params.token);
|
|
2438
|
+
var r = {
|
|
2439
|
+
method: "GET",
|
|
2440
|
+
headers: n,
|
|
2441
|
+
redirect: "follow"
|
|
2442
|
+
};
|
|
2443
|
+
fetch(this.params.server + "/api/gis/mapserver/rest/datasources?type=all", r).then((e) => e.json()).then((t) => e(t)).catch((e) => {
|
|
2444
|
+
console.log("error", e), t(!1);
|
|
2445
|
+
});
|
|
2446
|
+
});
|
|
2447
|
+
}
|
|
2448
|
+
async queryFeature(e) {
|
|
2449
|
+
return new Promise((t, n) => {
|
|
2450
|
+
var r = new Headers();
|
|
2451
|
+
r.append("Authorization", " Bearer " + this.params.token);
|
|
2452
|
+
var i = {
|
|
2453
|
+
method: "POST",
|
|
2454
|
+
headers: r,
|
|
2455
|
+
body: e,
|
|
2456
|
+
redirect: "follow"
|
|
2457
|
+
};
|
|
2458
|
+
fetch(this.params.server + "/api/gis/mapserver/rest/feature/query", i).then((e) => e.json()).then((e) => t(e)).catch((e) => {
|
|
2459
|
+
console.log("error", e), n(!1);
|
|
2460
|
+
});
|
|
2461
|
+
});
|
|
2462
|
+
}
|
|
2463
|
+
async queryFeatureDict() {
|
|
2464
|
+
return new Promise((e, t) => {
|
|
2465
|
+
var n = new Headers();
|
|
2466
|
+
n.append("Authorization", " Bearer " + this.params.token), n.append("Content-Type", "application/json;");
|
|
2467
|
+
var r = {
|
|
2468
|
+
method: "GET",
|
|
2469
|
+
headers: n,
|
|
2470
|
+
redirect: "follow"
|
|
2471
|
+
};
|
|
2472
|
+
fetch(this.params.server + "/api/cfg/features/get", r).then((e) => e.json()).then((t) => e(t)).catch((e) => {
|
|
2473
|
+
console.log("error", e), t(!1);
|
|
2474
|
+
});
|
|
2475
|
+
});
|
|
2476
|
+
}
|
|
2477
|
+
async queryLayer(e) {
|
|
2478
|
+
return new Promise((t, n) => {
|
|
2479
|
+
var r = new Headers();
|
|
2480
|
+
r.append("Authorization", " Bearer " + this.params.token);
|
|
2481
|
+
let i = {
|
|
2482
|
+
method: "GET",
|
|
2483
|
+
headers: r,
|
|
2484
|
+
async: !0,
|
|
2485
|
+
redirect: "follow"
|
|
2486
|
+
}, a = "", o = !0;
|
|
2487
|
+
for (let t in e) o || (a += "&"), o = !1, a += t + "=" + e[t];
|
|
2488
|
+
fetch(this.params.server + "/api/gis/mapserver/rest/layer?" + a, i).then((e) => e.json()).then((e) => t(e)).catch((e) => {
|
|
2489
|
+
console.log("error", e), n(!1);
|
|
2490
|
+
});
|
|
2491
|
+
});
|
|
2492
|
+
}
|
|
2493
|
+
}, ha = [
|
|
2494
|
+
"0202030030",
|
|
2495
|
+
"0106020009",
|
|
2496
|
+
"0202030004",
|
|
2497
|
+
"0202030006"
|
|
2498
|
+
], ga = {
|
|
2499
|
+
"0202030030": "工作面",
|
|
2500
|
+
"0106020009": "积水区",
|
|
2501
|
+
"0202030004": "回采工作面",
|
|
2502
|
+
"0202030006": "采空区"
|
|
2503
|
+
}, _a = /* @__PURE__ */ new Map(), Q = null;
|
|
2504
|
+
function va(e = ye().globalNames) {
|
|
2505
|
+
if (typeof window > "u") return null;
|
|
2506
|
+
for (let t of e) if (window[t]) return {
|
|
2507
|
+
name: t,
|
|
2508
|
+
value: window[t]
|
|
2509
|
+
};
|
|
2510
|
+
return null;
|
|
2511
|
+
}
|
|
2512
|
+
function ya(e = []) {
|
|
2513
|
+
if (typeof window > "u") return null;
|
|
2514
|
+
for (let t of e) if (window[t]) return {
|
|
2515
|
+
name: t,
|
|
2516
|
+
value: window[t]
|
|
2517
|
+
};
|
|
2518
|
+
return null;
|
|
2519
|
+
}
|
|
2520
|
+
async function ba(e, t = {}) {
|
|
2521
|
+
let { src: n, globalNames: r = [] } = e;
|
|
2522
|
+
if (!n) throw Error("存在未配置脚本地址的 SDK 前置依赖");
|
|
2523
|
+
try {
|
|
2524
|
+
await pe(n, t);
|
|
2525
|
+
} catch {
|
|
2526
|
+
throw Error(`SDK 前置依赖加载失败: ${n}`);
|
|
2527
|
+
}
|
|
2528
|
+
if (r.length > 0 && !ya(r)) throw Error(`SDK 前置依赖已加载,但未检测到全局对象: ${r.join(", ")} (${n})`);
|
|
2529
|
+
}
|
|
2530
|
+
function xa(e = ye().globalNames) {
|
|
2531
|
+
return va(e);
|
|
2532
|
+
}
|
|
2533
|
+
async function Sa(e = {}) {
|
|
2534
|
+
let t = ye(), n = t.scriptSrc, r = t.globalNames, i = t.dependencies ?? [], { src: a = n, globalNames: o = r, dependencies: s = i, validateGlobal: c = !0, scriptOptions: l = {} } = e, u = `${a}::${s.map(({ src: e }) => e).join("|")}`;
|
|
2535
|
+
if (_a.has(u)) return _a.get(u);
|
|
2536
|
+
let d = (async () => {
|
|
2537
|
+
for (let e of s) await ba(e, l);
|
|
2538
|
+
await pe(a, l);
|
|
2539
|
+
let e = va(o);
|
|
2540
|
+
if (c && !e) throw Error(`龙软 GIS SDK 脚本已加载,但未检测到全局对象: ${o.join(", ")}`);
|
|
2541
|
+
return {
|
|
2542
|
+
src: a,
|
|
2543
|
+
global: e
|
|
2544
|
+
};
|
|
2545
|
+
})();
|
|
2546
|
+
_a.set(u, d);
|
|
2547
|
+
try {
|
|
2548
|
+
return await d;
|
|
2549
|
+
} catch (e) {
|
|
2550
|
+
throw _a.delete(u), e;
|
|
2551
|
+
}
|
|
2552
|
+
}
|
|
2553
|
+
function Ca(e) {
|
|
2554
|
+
return [
|
|
2555
|
+
e?.value?.EditorApp,
|
|
2556
|
+
e?.value,
|
|
2557
|
+
window.EditorApp?.EditorApp,
|
|
2558
|
+
window.EditorApp
|
|
2559
|
+
].find((e) => typeof e == "function") ?? null;
|
|
2560
|
+
}
|
|
2561
|
+
function wa(e) {
|
|
2562
|
+
e && e.replaceChildren();
|
|
2563
|
+
}
|
|
2564
|
+
function Ta() {
|
|
2565
|
+
return Q;
|
|
2566
|
+
}
|
|
2567
|
+
function Ea() {
|
|
2568
|
+
Q && typeof Q.onWindowResize == "function" && Q.onWindowResize();
|
|
2569
|
+
}
|
|
2570
|
+
function Da(e = null) {
|
|
2571
|
+
typeof window < "u" && Q && typeof Q.onWindowResize == "function" && window.removeEventListener("resize", Q.onWindowResize, !1), typeof window < "u" && window.lr3dapp === Q && delete window.lr3dapp, wa(e), Q = null;
|
|
2572
|
+
}
|
|
2573
|
+
async function Oa(e, t = {}) {
|
|
2574
|
+
let n = be(), r = xe();
|
|
2575
|
+
if (!e) throw Error(`未找到场景容器: ${n.containerId}`);
|
|
2576
|
+
Da(e);
|
|
2577
|
+
let { initOptions: i = {}, autoResize: a = n.autoResize } = t, { global: o } = await Sa(), s = Ca(o);
|
|
2578
|
+
if (!s) throw Error("未检测到可用的 EditorApp 构造器");
|
|
2579
|
+
return Q = new s({
|
|
2580
|
+
...r,
|
|
2581
|
+
...i,
|
|
2582
|
+
dom: e
|
|
2583
|
+
}), typeof window < "u" && (window.lr3dapp = Q), a && Ea(), {
|
|
2584
|
+
instance: Q,
|
|
2585
|
+
globalName: o?.name ?? "未知"
|
|
2586
|
+
};
|
|
2587
|
+
}
|
|
2588
|
+
function ka() {
|
|
2589
|
+
let e = Ta();
|
|
2590
|
+
if (!e) throw Error("龙软 GIS 三维实例不存在,请先完成场景初始化");
|
|
2591
|
+
return e;
|
|
2592
|
+
}
|
|
2593
|
+
function Aa() {
|
|
2594
|
+
return ka();
|
|
2595
|
+
}
|
|
2596
|
+
function ja() {
|
|
2597
|
+
let e = ka();
|
|
2598
|
+
if (!e.editor) throw Error("当前三维实例缺少 editor 对象");
|
|
2599
|
+
return e.editor;
|
|
2600
|
+
}
|
|
2601
|
+
function Ma() {
|
|
2602
|
+
let e = ka();
|
|
2603
|
+
if (!e.interfaces) throw Error("当前三维实例缺少 interfaces 对象");
|
|
2604
|
+
return e.interfaces;
|
|
2605
|
+
}
|
|
2606
|
+
function Na() {
|
|
2607
|
+
Ea();
|
|
2608
|
+
}
|
|
2609
|
+
function Pa(e) {
|
|
2610
|
+
e?.interfaces?.signals?.sceneGraphChanged?.dispatch?.(), e?.editor?.signals?.sceneGraphChanged?.dispatch?.();
|
|
2611
|
+
}
|
|
2612
|
+
function Fa() {
|
|
2613
|
+
Pa(ka());
|
|
2614
|
+
}
|
|
2615
|
+
async function Ia(e, t = null) {
|
|
2616
|
+
if (!e || typeof e != "string") throw Error("toolName 必须是非空字符串");
|
|
2617
|
+
let n = ka();
|
|
2618
|
+
if (typeof n.activeTool != "function") throw Error("当前三维实例不支持 activeTool 接口");
|
|
2619
|
+
return n.activeTool(e, t);
|
|
2620
|
+
}
|
|
2621
|
+
function La(e) {
|
|
2622
|
+
return e.endsWith("/") ? e.slice(0, -1) : e;
|
|
2623
|
+
}
|
|
2624
|
+
function Ra(e, t) {
|
|
2625
|
+
return `${La(e)}/map/getMeta?dsname=${encodeURIComponent(t)}`;
|
|
2626
|
+
}
|
|
2627
|
+
function za(e) {
|
|
2628
|
+
let t = Number(e?.laneSize?.width), n = Number(e?.laneSize?.height);
|
|
2629
|
+
return {
|
|
2630
|
+
width: Number.isFinite(t) && t > 0 ? t : 10,
|
|
2631
|
+
height: Number.isFinite(n) && n > 0 ? n : 10
|
|
2632
|
+
};
|
|
2633
|
+
}
|
|
2634
|
+
function Ba(e = {}) {
|
|
2635
|
+
let t = Se(), n = e.loadMode ?? t?.loadMode ?? "all", r = e.enableRegionAssist ?? t?.cloud?.enableRegionAssist ?? !1, i = e.regionFeatureTypes ?? t?.cloud?.regionFeatureTypes ?? ha, a = e.enableLane ?? t?.cloud?.enableLane ?? !1, o = {
|
|
2636
|
+
...t?.cloud ?? {},
|
|
2637
|
+
...e,
|
|
2638
|
+
loadMode: n,
|
|
2639
|
+
enableRegionAssist: r,
|
|
2640
|
+
regionFeatureTypes: i,
|
|
2641
|
+
enableLane: a
|
|
2642
|
+
};
|
|
2643
|
+
if ([
|
|
2644
|
+
"server",
|
|
2645
|
+
"mapServerUrl",
|
|
2646
|
+
"username",
|
|
2647
|
+
"password",
|
|
2648
|
+
"dsGuid",
|
|
2649
|
+
"dsname"
|
|
2650
|
+
].forEach((e) => {
|
|
2651
|
+
let t = o[e];
|
|
2652
|
+
if (typeof t != "string" || !t.trim()) throw Error(`云 GIS 数据源配置缺失: ${e}`);
|
|
2653
|
+
}), !Array.isArray(o.coalLayers)) throw Error("云 GIS 数据源配置错误: coalLayers 必须为数组");
|
|
2654
|
+
if (!Array.isArray(o.workfaceFeatureTypes)) throw Error("云 GIS 数据源配置错误: workfaceFeatureTypes 必须为数组");
|
|
2655
|
+
if (!Array.isArray(o.regionFeatureTypes)) throw Error("云 GIS 数据源配置错误: regionFeatureTypes 必须为数组");
|
|
2656
|
+
if (!Array.isArray(o.layers ?? [])) throw Error("云 GIS 数据源配置错误: layers 必须为数组");
|
|
2657
|
+
if (!Array.isArray(o.geofaultLayers ?? [])) throw Error("云 GIS 数据源配置错误: geofaultLayers 必须为数组");
|
|
2658
|
+
let s = o.workfaceFeatureTypes.map((e) => typeof e == "string" ? e.trim() : "").filter(Boolean), c = o.regionFeatureTypes.map((e) => typeof e == "string" ? e.trim() : "").filter(Boolean);
|
|
2659
|
+
if (n === "workfaceOnly" && s.length === 0) throw Error("工作面加载模式下,workfaceFeatureTypes 至少需要一个要素编码");
|
|
2660
|
+
return {
|
|
2661
|
+
...o,
|
|
2662
|
+
loadMode: n,
|
|
2663
|
+
enableRegionAssist: !!o.enableRegionAssist,
|
|
2664
|
+
enableLane: !!o.enableLane,
|
|
2665
|
+
laneSize: za(o),
|
|
2666
|
+
coalLayers: o.coalLayers.map((e) => typeof e == "string" ? e.trim() : "").filter(Boolean),
|
|
2667
|
+
layers: (o.layers ?? []).map((e) => typeof e == "string" ? e.trim() : "").filter(Boolean),
|
|
2668
|
+
geofaultLayers: (o.geofaultLayers ?? []).map((e) => typeof e == "string" ? e.trim() : "").filter(Boolean),
|
|
2669
|
+
regionFeatureTypes: c.length > 0 ? c : [...ha],
|
|
2670
|
+
workfaceFeatureTypes: s
|
|
2671
|
+
};
|
|
2672
|
+
}
|
|
2673
|
+
function Va(e) {
|
|
2674
|
+
return e?.attributes?.FEATURETYPE?.data ?? e?.attributes?.FeatureType?.data ?? "";
|
|
2675
|
+
}
|
|
2676
|
+
function $(e, t) {
|
|
2677
|
+
let n = e?.attributes?.[t]?.data;
|
|
2678
|
+
return typeof n == "string" ? n.trim() : "";
|
|
2679
|
+
}
|
|
2680
|
+
function Ha(e) {
|
|
2681
|
+
return $(e, "工作面名称") || $(e, "FEATUREID") || $(e, "名称") || $(e, "FEATURENAME") || "";
|
|
2682
|
+
}
|
|
2683
|
+
function Ua(e) {
|
|
2684
|
+
return ga[e] ?? `类型 ${e || "未知"}`;
|
|
2685
|
+
}
|
|
2686
|
+
function Wa(e, t) {
|
|
2687
|
+
return t === "0202030030" ? Ha(e) : $(e, "FEATUREID") || $(e, "名称") || $(e, "FEATURENAME") || $(e, "工作面名称") || "";
|
|
2688
|
+
}
|
|
2689
|
+
function Ga(e) {
|
|
2690
|
+
let t = lo(e), n = [];
|
|
2691
|
+
return t.forEach((e) => {
|
|
2692
|
+
let t = typeof e?.layer == "string" ? e.layer : "";
|
|
2693
|
+
!t || !Array.isArray(e?.features) || e.features.forEach((e) => {
|
|
2694
|
+
let r = String(e?.id ?? "").trim();
|
|
2695
|
+
if (!r) return;
|
|
2696
|
+
let i = String(Va(e)).trim(), a = $(e, "FEATUREID"), o = $(e, "FEATURENAME"), s = $(e, "工作面名称"), c = Ua(i), l = Wa(e, i) || `${c}-${r}`, u = `${t}::${r}`;
|
|
2697
|
+
n.push({
|
|
2698
|
+
key: u,
|
|
2699
|
+
featureType: i,
|
|
2700
|
+
typeLabel: c,
|
|
2701
|
+
layerName: t,
|
|
2702
|
+
entityId: r,
|
|
2703
|
+
featureId: a,
|
|
2704
|
+
featureName: o,
|
|
2705
|
+
workfaceName: s,
|
|
2706
|
+
displayName: l
|
|
2707
|
+
});
|
|
2708
|
+
});
|
|
2709
|
+
}), n;
|
|
2710
|
+
}
|
|
2711
|
+
function Ka(e) {
|
|
2712
|
+
return $(e, "FEATURENAME") || $(e, "名称") || $(e, "ID") || $(e, "FEATUREID") || "";
|
|
2713
|
+
}
|
|
2714
|
+
function qa(e) {
|
|
2715
|
+
if (e?.geometry?.type === "Point" && Array.isArray(e?.geometry?.coordinates)) {
|
|
2716
|
+
let [t, n, r] = e.geometry.coordinates;
|
|
2717
|
+
return [{
|
|
2718
|
+
x: Number(t),
|
|
2719
|
+
y: Number(n),
|
|
2720
|
+
z: Number(r)
|
|
2721
|
+
}];
|
|
2722
|
+
}
|
|
2723
|
+
return Array.isArray(e?.geometry?.coordinates) ? e.geometry.coordinates.filter((e) => Array.isArray(e) && e.length >= 3).map(([e, t, n]) => ({
|
|
2724
|
+
x: Number(e),
|
|
2725
|
+
y: Number(t),
|
|
2726
|
+
z: Number(n)
|
|
2727
|
+
})) : [];
|
|
2728
|
+
}
|
|
2729
|
+
function Ja(e) {
|
|
2730
|
+
let t = lo(e), n = [];
|
|
2731
|
+
return t.forEach((e) => {
|
|
2732
|
+
let t = typeof e?.layer == "string" ? e.layer : "";
|
|
2733
|
+
!t || !Array.isArray(e?.features) || e.features.forEach((e) => {
|
|
2734
|
+
let r = String(e?.id ?? "").trim();
|
|
2735
|
+
if (!r) return;
|
|
2736
|
+
let i = $(e, "FEATUREID"), a = $(e, "FEATURENAME"), o = String(Va(e)).trim(), s = Ka(e) || `巷道-${r}`, c = `${t}::${r}`;
|
|
2737
|
+
n.push({
|
|
2738
|
+
key: c,
|
|
2739
|
+
layerName: t,
|
|
2740
|
+
entityId: r,
|
|
2741
|
+
featureId: i,
|
|
2742
|
+
featureName: a,
|
|
2743
|
+
featureType: o,
|
|
2744
|
+
typeLabel: "巷道",
|
|
2745
|
+
displayName: s,
|
|
2746
|
+
coordinates: qa(e)
|
|
2747
|
+
});
|
|
2748
|
+
});
|
|
2749
|
+
}), n;
|
|
2750
|
+
}
|
|
2751
|
+
function Ya(e, t = []) {
|
|
2752
|
+
let n = new Set(t), r = e?.data?.featureGroups;
|
|
2753
|
+
if (!Array.isArray(r)) return {
|
|
2754
|
+
...e ?? {},
|
|
2755
|
+
data: {
|
|
2756
|
+
...e?.data ?? {},
|
|
2757
|
+
featureGroups: [],
|
|
2758
|
+
type: e?.data?.type ?? "FeatureGroupCollection"
|
|
2759
|
+
}
|
|
2760
|
+
};
|
|
2761
|
+
let i = r.map((e) => {
|
|
2762
|
+
let t = Array.isArray(e?.features) ? e.features.filter((e) => n.has(String(Va(e)).trim())) : [];
|
|
2763
|
+
return {
|
|
2764
|
+
...e,
|
|
2765
|
+
features: t
|
|
2766
|
+
};
|
|
2767
|
+
}).filter((e) => e.features.length > 0);
|
|
2768
|
+
return {
|
|
2769
|
+
...e,
|
|
2770
|
+
data: {
|
|
2771
|
+
...e.data,
|
|
2772
|
+
featureGroups: i
|
|
2773
|
+
}
|
|
2774
|
+
};
|
|
2775
|
+
}
|
|
2776
|
+
function Xa(e, t = []) {
|
|
2777
|
+
let n = new Set(t.map((e) => typeof e == "string" ? e.trim() : "").filter(Boolean)), r = e?.data?.featureGroups;
|
|
2778
|
+
if (n.size === 0) return e;
|
|
2779
|
+
if (!Array.isArray(r)) return {
|
|
2780
|
+
...e ?? {},
|
|
2781
|
+
data: {
|
|
2782
|
+
...e?.data ?? {},
|
|
2783
|
+
featureGroups: [],
|
|
2784
|
+
type: e?.data?.type ?? "FeatureGroupCollection"
|
|
2785
|
+
}
|
|
2786
|
+
};
|
|
2787
|
+
let i = r.filter((e) => n.has(typeof e?.layer == "string" ? e.layer.trim() : ""));
|
|
2788
|
+
return {
|
|
2789
|
+
...e,
|
|
2790
|
+
data: {
|
|
2791
|
+
...e?.data ?? {},
|
|
2792
|
+
featureGroups: i,
|
|
2793
|
+
type: e?.data?.type ?? "FeatureGroupCollection"
|
|
2794
|
+
}
|
|
2795
|
+
};
|
|
2796
|
+
}
|
|
2797
|
+
function Za(e, t) {
|
|
2798
|
+
return Ya(e, t);
|
|
2799
|
+
}
|
|
2800
|
+
function Qa(e) {
|
|
2801
|
+
return e.reduce((e, t) => e + (Array.isArray(t?.features) ? t.features.length : 0), 0);
|
|
2802
|
+
}
|
|
2803
|
+
function $a(e) {
|
|
2804
|
+
let t = e?.result?.extent;
|
|
2805
|
+
if (!Array.isArray(t) || t.length < 4) throw Error("map/getMeta 返回结果缺少有效 extent");
|
|
2806
|
+
return t;
|
|
2807
|
+
}
|
|
2808
|
+
function eo(e) {
|
|
2809
|
+
return {
|
|
2810
|
+
x: .5 * (Number(e[0]) + Number(e[2])),
|
|
2811
|
+
y: .5 * (Number(e[1]) + Number(e[3])),
|
|
2812
|
+
z: 0
|
|
2813
|
+
};
|
|
2814
|
+
}
|
|
2815
|
+
function to(e, t) {
|
|
2816
|
+
e && (e.basePoint && typeof e.basePoint.copy == "function" ? e.basePoint.copy(t) : e.basePoint = { ...t }, e.isSetBasePoint = !0);
|
|
2817
|
+
}
|
|
2818
|
+
function no(e, t) {
|
|
2819
|
+
!e || typeof e.getLayerGroup != "function" || t.forEach((t) => {
|
|
2820
|
+
let n = t?.layer;
|
|
2821
|
+
if (typeof n != "string" || !n) return;
|
|
2822
|
+
let r = e.getLayerGroup(n);
|
|
2823
|
+
r && (r.visible = !0);
|
|
2824
|
+
});
|
|
2825
|
+
}
|
|
2826
|
+
function ro(e) {
|
|
2827
|
+
return e?.editor?.manager?.modules?.regionmodule ?? e?.interfaces?.manager?.modules?.regionmodule;
|
|
2828
|
+
}
|
|
2829
|
+
function io(e) {
|
|
2830
|
+
return e?.editor?.manager?.modules?.lanemodulen ?? e?.interfaces?.manager?.modules?.lanemodulen;
|
|
2831
|
+
}
|
|
2832
|
+
function ao(e) {
|
|
2833
|
+
return [...new Set(e.map((e) => e?.layer).filter((e) => typeof e == "string" && e))];
|
|
2834
|
+
}
|
|
2835
|
+
function oo(e, t, n, r = 1500, i = 50) {
|
|
2836
|
+
let a = ao(n);
|
|
2837
|
+
if (a.length === 0) return Promise.resolve(!1);
|
|
2838
|
+
let o = Date.now();
|
|
2839
|
+
return new Promise((n) => {
|
|
2840
|
+
function s() {
|
|
2841
|
+
let c = e(t);
|
|
2842
|
+
if (a.some((e) => {
|
|
2843
|
+
let t = c?.getLayerGroup?.(e);
|
|
2844
|
+
return (Array.isArray(t?.children) ? t.children.length : 0) > 0;
|
|
2845
|
+
})) {
|
|
2846
|
+
n(!0);
|
|
2847
|
+
return;
|
|
2848
|
+
}
|
|
2849
|
+
if (Date.now() - o >= r) {
|
|
2850
|
+
n(!1);
|
|
2851
|
+
return;
|
|
2852
|
+
}
|
|
2853
|
+
setTimeout(s, i);
|
|
2854
|
+
}
|
|
2855
|
+
s();
|
|
2856
|
+
});
|
|
2857
|
+
}
|
|
2858
|
+
function so() {
|
|
2859
|
+
return new Promise((e) => {
|
|
2860
|
+
if (typeof requestAnimationFrame == "function") {
|
|
2861
|
+
requestAnimationFrame(() => e());
|
|
2862
|
+
return;
|
|
2863
|
+
}
|
|
2864
|
+
setTimeout(e, 16);
|
|
2865
|
+
});
|
|
2866
|
+
}
|
|
2867
|
+
async function co(e) {
|
|
2868
|
+
let t = Ra(e.mapServerUrl, e.dsname), n = await fetch(t);
|
|
2869
|
+
if (!n.ok) throw Error(`map/getMeta 请求失败: ${n.status}`);
|
|
2870
|
+
return n.json();
|
|
2871
|
+
}
|
|
2872
|
+
function lo(e) {
|
|
2873
|
+
return Array.isArray(e?.data?.featureGroups) ? e.data.featureGroups : [];
|
|
2874
|
+
}
|
|
2875
|
+
function uo(e) {
|
|
2876
|
+
let t = lo(e);
|
|
2877
|
+
return {
|
|
2878
|
+
featureGroupCount: t.length,
|
|
2879
|
+
featureCount: Qa(t),
|
|
2880
|
+
featureGroups: t
|
|
2881
|
+
};
|
|
2882
|
+
}
|
|
2883
|
+
async function fo(e) {
|
|
2884
|
+
let t = await e.queryFeatureDict();
|
|
2885
|
+
t?.code === 0 && Array.isArray(t?.data?.Features) && (e.featureDict = t.data.Features);
|
|
2886
|
+
}
|
|
2887
|
+
async function po(e, t = !0) {
|
|
2888
|
+
t && (Pa(e), await so()), e.editor && typeof e.editor.focusScene == "function" && e.editor.focusScene();
|
|
2889
|
+
}
|
|
2890
|
+
async function mo(e = {}) {
|
|
2891
|
+
let t = ka(), n = Ba(e), r = $a(await co(n)), i = eo(r), a = new ma({
|
|
2892
|
+
server: n.server,
|
|
2893
|
+
username: n.username,
|
|
2894
|
+
password: n.password,
|
|
2895
|
+
dsGuid: n.dsGuid,
|
|
2896
|
+
basePoint: r,
|
|
2897
|
+
laneSize: n.laneSize
|
|
2898
|
+
});
|
|
2899
|
+
typeof window < "u" && (window.lr3dLoader = a);
|
|
2900
|
+
let o = await a.getDatasource();
|
|
2901
|
+
if (!o) throw Error("云 GIS 数据源认证失败或未返回数据源列表");
|
|
2902
|
+
return to(t, i), {
|
|
2903
|
+
app: t,
|
|
2904
|
+
config: n,
|
|
2905
|
+
datasource: o,
|
|
2906
|
+
loader: a,
|
|
2907
|
+
basePointCenter: i
|
|
2908
|
+
};
|
|
2909
|
+
}
|
|
2910
|
+
async function ho(e = {}) {
|
|
2911
|
+
let { app: t, config: n, datasource: r, loader: i, basePointCenter: a } = await mo(e);
|
|
2912
|
+
if (n.loadMode === "workfaceOnly") {
|
|
2913
|
+
let e = Xa(Ya(await i.queryRegionData(), n.regionFeatureTypes), n.layers), o = lo(e), s = lo(Za(e, n.workfaceFeatureTypes)), c = Ga(e), l = new Set(n.workfaceFeatureTypes), u = c.filter((e) => l.has(e.featureType)), d = {
|
|
2914
|
+
featureGroupCount: s.length,
|
|
2915
|
+
featureCount: Qa(s),
|
|
2916
|
+
featureTypes: n.workfaceFeatureTypes,
|
|
2917
|
+
items: u,
|
|
2918
|
+
renderReady: !1
|
|
2919
|
+
}, f = {
|
|
2920
|
+
featureGroupCount: o.length,
|
|
2921
|
+
featureCount: Qa(o),
|
|
2922
|
+
featureTypes: n.regionFeatureTypes,
|
|
2923
|
+
items: c
|
|
2924
|
+
}, p = {
|
|
2925
|
+
enabled: n.enableLane,
|
|
2926
|
+
featureGroupCount: 0,
|
|
2927
|
+
featureCount: 0,
|
|
2928
|
+
items: [],
|
|
2929
|
+
renderReady: !1
|
|
2930
|
+
};
|
|
2931
|
+
if (f.featureGroupCount > 0 && (await i.addRegionData(e), d.renderReady = await oo(ro, t, o) && d.featureGroupCount > 0, no(ro(t), o)), n.enableLane) {
|
|
2932
|
+
let e = Xa(await i.queryLaneData(), n.layers), r = lo(e);
|
|
2933
|
+
p.featureGroupCount = r.length, p.featureCount = Qa(r), p.items = Ja(e), p.featureGroupCount > 0 && (await i.addLaneData(e), p.renderReady = await oo(io, t, r), no(io(t), r));
|
|
2934
|
+
}
|
|
2935
|
+
return await po(t, f.featureGroupCount > 0 || p.featureGroupCount > 0), {
|
|
2936
|
+
loadMode: n.loadMode,
|
|
2937
|
+
datasource: r,
|
|
2938
|
+
regions: f,
|
|
2939
|
+
workface: d,
|
|
2940
|
+
lane: p,
|
|
2941
|
+
basePoint: a
|
|
2942
|
+
};
|
|
2943
|
+
}
|
|
2944
|
+
i.coalLayers = n.coalLayers, i.geofaultLayers = n.geofaultLayers;
|
|
2945
|
+
let o = await i.load();
|
|
2946
|
+
if (!o) throw Error("云 GIS 数据加载失败");
|
|
2947
|
+
return await po(t, !0), {
|
|
2948
|
+
loadMode: n.loadMode,
|
|
2949
|
+
layers: o,
|
|
2950
|
+
datasource: r,
|
|
2951
|
+
coalLayers: n.coalLayers,
|
|
2952
|
+
geofaultLayers: n.geofaultLayers
|
|
2953
|
+
};
|
|
2954
|
+
}
|
|
2955
|
+
async function go(e = {}) {
|
|
2956
|
+
let { app: t, datasource: n, loader: r, basePointCenter: i } = await mo(e), a = await r.queryRegionAssistData(), { featureGroupCount: o, featureCount: s } = uo(a);
|
|
2957
|
+
return o > 0 && await r.addRegionAssistData(a), await po(t, o > 0), {
|
|
2958
|
+
datasource: n,
|
|
2959
|
+
basePoint: i,
|
|
2960
|
+
featureGroupCount: o,
|
|
2961
|
+
featureCount: s,
|
|
2962
|
+
loadSuccess: o > 0
|
|
2963
|
+
};
|
|
2964
|
+
}
|
|
2965
|
+
async function _o(e = {}) {
|
|
2966
|
+
let { app: t, datasource: n, loader: r, basePointCenter: i } = await mo(e);
|
|
2967
|
+
await fo(r);
|
|
2968
|
+
let a = await r.queryCoalResversData(), { featureGroupCount: o, featureCount: s } = uo(a);
|
|
2969
|
+
return o > 0 && await r.addCoalResversData(a), await po(t, o > 0), {
|
|
2970
|
+
datasource: n,
|
|
2971
|
+
basePoint: i,
|
|
2972
|
+
featureGroupCount: o,
|
|
2973
|
+
featureCount: s,
|
|
2974
|
+
loadSuccess: o > 0
|
|
2975
|
+
};
|
|
2976
|
+
}
|
|
2977
|
+
async function vo(e = {}) {
|
|
2978
|
+
let { app: t, datasource: n, loader: r, basePointCenter: i } = await mo(e), a = await r.queryBoundaryData(), { featureGroupCount: o, featureCount: s } = uo(a);
|
|
2979
|
+
return o > 0 && await r.addBoundaryData(a), await po(t, o > 0), {
|
|
2980
|
+
datasource: n,
|
|
2981
|
+
basePoint: i,
|
|
2982
|
+
featureGroupCount: o,
|
|
2983
|
+
featureCount: s,
|
|
2984
|
+
loadSuccess: o > 0
|
|
2985
|
+
};
|
|
2986
|
+
}
|
|
2987
|
+
async function yo(e = {}) {
|
|
2988
|
+
let { app: t, datasource: n, loader: r, basePointCenter: i } = await mo(e), a = await r.queryGeologyData(), { featureGroupCount: o, featureCount: s } = uo(a);
|
|
2989
|
+
return o > 0 && await r.addGeologyData(a), await po(t, o > 0), {
|
|
2990
|
+
datasource: n,
|
|
2991
|
+
basePoint: i,
|
|
2992
|
+
featureGroupCount: o,
|
|
2993
|
+
featureCount: s,
|
|
2994
|
+
loadSuccess: o > 0
|
|
2995
|
+
};
|
|
2996
|
+
}
|
|
2997
|
+
async function bo(e = {}) {
|
|
2998
|
+
let { app: t, datasource: n, loader: r, basePointCenter: i } = await mo(e), a = await r.queryPointSymbolData(), { featureGroupCount: o, featureCount: s } = uo(a);
|
|
2999
|
+
return o > 0 && await r.addPointSymbolData(a), await po(t, o > 0), {
|
|
3000
|
+
datasource: n,
|
|
3001
|
+
basePoint: i,
|
|
3002
|
+
featureGroupCount: o,
|
|
3003
|
+
featureCount: s,
|
|
3004
|
+
loadSuccess: o > 0
|
|
3005
|
+
};
|
|
3006
|
+
}
|
|
3007
|
+
async function xo(e = {}) {
|
|
3008
|
+
let { app: t, config: n, datasource: r, loader: i, basePointCenter: a } = await mo(e), o = n.coalLayers, s = [];
|
|
3009
|
+
for (let e of o) {
|
|
3010
|
+
let t = await i.queryCoalData(e);
|
|
3011
|
+
t?.data?.attributes && (await i.addCoalData(t, e), s.push(e));
|
|
3012
|
+
}
|
|
3013
|
+
return await po(t, s.length > 0), {
|
|
3014
|
+
datasource: r,
|
|
3015
|
+
basePoint: a,
|
|
3016
|
+
configuredLayerNames: o,
|
|
3017
|
+
loadedLayerNames: s,
|
|
3018
|
+
configuredLayerCount: o.length,
|
|
3019
|
+
loadedLayerCount: s.length,
|
|
3020
|
+
loadSuccess: s.length > 0
|
|
3021
|
+
};
|
|
3022
|
+
}
|
|
3023
|
+
async function So(e = {}) {
|
|
3024
|
+
let { app: t, config: n, datasource: r, loader: i, basePointCenter: a } = await mo(e), o = n.geofaultLayers, s = [];
|
|
3025
|
+
for (let e of o) {
|
|
3026
|
+
let t = await i.queryGeoFaultData(e);
|
|
3027
|
+
t?.data?.attributes && (await i.addGeoFaultData(t, e), s.push(e));
|
|
3028
|
+
}
|
|
3029
|
+
return await po(t, s.length > 0), {
|
|
3030
|
+
datasource: r,
|
|
3031
|
+
basePoint: a,
|
|
3032
|
+
configuredLayerNames: o,
|
|
3033
|
+
loadedLayerNames: s,
|
|
3034
|
+
configuredLayerCount: o.length,
|
|
3035
|
+
loadedLayerCount: s.length,
|
|
3036
|
+
loadSuccess: s.length > 0
|
|
3037
|
+
};
|
|
3038
|
+
}
|
|
3039
|
+
//#endregion
|
|
3040
|
+
//#region packages/lr-map-viewer/src/core/mode-manager.js
|
|
3041
|
+
var Co = "3d", wo = ["2d", "3d"];
|
|
3042
|
+
function To() {
|
|
3043
|
+
return [...wo];
|
|
3044
|
+
}
|
|
3045
|
+
function Eo(e) {
|
|
3046
|
+
if (typeof e != "string") return Co;
|
|
3047
|
+
let t = e.trim().toLowerCase();
|
|
3048
|
+
return wo.includes(t) ? t : Co;
|
|
3049
|
+
}
|
|
3050
|
+
function Do(e = []) {
|
|
3051
|
+
if (!Array.isArray(e) || e.length === 0) return [Co];
|
|
3052
|
+
let t = [];
|
|
3053
|
+
return e.forEach((e) => {
|
|
3054
|
+
if (typeof e != "string") return;
|
|
3055
|
+
let n = e.trim().toLowerCase();
|
|
3056
|
+
wo.includes(n) && (t.includes(n) || t.push(n));
|
|
3057
|
+
}), t.length > 0 ? t : [Co];
|
|
3058
|
+
}
|
|
3059
|
+
function Oo(e, t = []) {
|
|
3060
|
+
let n = Do(t), r = Eo(e);
|
|
3061
|
+
return n.includes(r) ? r : n[0];
|
|
3062
|
+
}
|
|
3063
|
+
function ko(e, t = []) {
|
|
3064
|
+
return Do(t).includes(Eo(e));
|
|
3065
|
+
}
|
|
3066
|
+
//#endregion
|
|
3067
|
+
//#region \0plugin-vue:export-helper
|
|
3068
|
+
var Ao = (e, t) => {
|
|
3069
|
+
let n = e.__vccOpts || e;
|
|
3070
|
+
for (let [e, r] of t) n[e] = r;
|
|
3071
|
+
return n;
|
|
3072
|
+
}, jo = { class: "lr2d-viewer" }, Mo = {
|
|
3073
|
+
key: 0,
|
|
3074
|
+
class: "lr2d-viewer__error"
|
|
3075
|
+
}, No = {
|
|
3076
|
+
key: 1,
|
|
3077
|
+
class: "lr2d-viewer__placeholder"
|
|
3078
|
+
}, Po = /* @__PURE__ */ Ao({
|
|
3079
|
+
__name: "Lr2dViewer",
|
|
3080
|
+
props: { config: {
|
|
3081
|
+
type: Object,
|
|
3082
|
+
default: () => ({})
|
|
3083
|
+
} },
|
|
3084
|
+
setup(e) {
|
|
3085
|
+
let o = e, s = p(""), c = t(() => o.config?.options || {}), u = t(() => k(o.config)), d = t(() => u.value.length ? `2D 地图配置不完整,缺少:${u.value.join("、")}` : ""), m = t(() => s.value || d.value);
|
|
3086
|
+
async function _(e) {
|
|
3087
|
+
if (s.value = "", !u.value.length) try {
|
|
3088
|
+
await P({
|
|
3089
|
+
map: e,
|
|
3090
|
+
config: o.config
|
|
3091
|
+
});
|
|
3092
|
+
} catch (e) {
|
|
3093
|
+
s.value = e instanceof Error ? e.message : String(e);
|
|
3094
|
+
}
|
|
3095
|
+
}
|
|
3096
|
+
return l(() => {
|
|
3097
|
+
ce();
|
|
3098
|
+
}), (e, t) => (f(), i("section", jo, [m.value ? (f(), i("div", Mo, h(m.value), 1)) : r("", !0), d.value ? (f(), i("div", No, [...t[0] ||= [a("p", null, "2D 地图配置待补充", -1), a("small", null, "请通过 `map2dConfig.options` 传入云 GIS 图纸所需参数。", -1)]])) : (f(), n(g(b), {
|
|
3099
|
+
key: 2,
|
|
3100
|
+
class: "lr2d-viewer__map",
|
|
3101
|
+
options: c.value,
|
|
3102
|
+
onInitMap: _
|
|
3103
|
+
}, null, 8, ["options"]))]));
|
|
3104
|
+
}
|
|
3105
|
+
}, [["__scopeId", "data-v-34a88c66"]]), Fo = {
|
|
3106
|
+
regionAssist: "掘进辅助",
|
|
3107
|
+
coalResvers: "储量块段",
|
|
3108
|
+
boundary: "矿井边界",
|
|
3109
|
+
geology: "地质体",
|
|
3110
|
+
pointSymbol: "点符号",
|
|
3111
|
+
coal: "煤层",
|
|
3112
|
+
geofault: "断层"
|
|
3113
|
+
}, Io = {
|
|
3114
|
+
regionAssist: go,
|
|
3115
|
+
coalResvers: _o,
|
|
3116
|
+
boundary: vo,
|
|
3117
|
+
geology: yo,
|
|
3118
|
+
pointSymbol: bo,
|
|
3119
|
+
coal: xo,
|
|
3120
|
+
geofault: So
|
|
3121
|
+
};
|
|
3122
|
+
function Lo(e) {
|
|
3123
|
+
return e == null ? "" : String(e).trim().toLowerCase();
|
|
3124
|
+
}
|
|
3125
|
+
function Ro(e) {
|
|
3126
|
+
let t = Lo(e?.layerName), n = Lo(e?.entityId), r = Lo(e?.featureId), i = Lo(e?.displayName);
|
|
3127
|
+
return t && r ? `layer-feature::${t}::${r}` : t && i ? `layer-name::${t}::${i}` : t && n ? `layer-entity::${t}::${n}` : "";
|
|
3128
|
+
}
|
|
3129
|
+
function zo(e) {
|
|
3130
|
+
let t = Lo(e?.layerName), n = Lo(e?.entityId), r = Lo(e?.featureId), i = Lo(e?.displayName);
|
|
3131
|
+
return t && r ? `lane-feature::${t}::${r}` : t && i ? `lane-name::${t}::${i}` : t && n ? `lane-entity::${t}::${n}` : "";
|
|
3132
|
+
}
|
|
3133
|
+
function Bo(e) {
|
|
3134
|
+
if (!Array.isArray(e) || e.length === 0) return [];
|
|
3135
|
+
let t = [], n = /* @__PURE__ */ new Set();
|
|
3136
|
+
return e.forEach((e) => {
|
|
3137
|
+
let r = Ro(e);
|
|
3138
|
+
if (!r) {
|
|
3139
|
+
t.push(e);
|
|
3140
|
+
return;
|
|
3141
|
+
}
|
|
3142
|
+
n.has(r) || (n.add(r), t.push(e));
|
|
3143
|
+
}), t;
|
|
3144
|
+
}
|
|
3145
|
+
function Vo(e) {
|
|
3146
|
+
if (!Array.isArray(e) || e.length === 0) return [];
|
|
3147
|
+
let t = [], n = /* @__PURE__ */ new Set();
|
|
3148
|
+
return e.forEach((e) => {
|
|
3149
|
+
let r = zo(e);
|
|
3150
|
+
if (!r) {
|
|
3151
|
+
t.push(e);
|
|
3152
|
+
return;
|
|
3153
|
+
}
|
|
3154
|
+
n.has(r) || (n.add(r), t.push(e));
|
|
3155
|
+
}), t;
|
|
3156
|
+
}
|
|
3157
|
+
function Ho(e) {
|
|
3158
|
+
return e?.data?.featureGroups?.length ?? 0;
|
|
3159
|
+
}
|
|
3160
|
+
function Uo(e) {
|
|
3161
|
+
if (e.loadMode === "workfaceOnly") {
|
|
3162
|
+
let t = e.regions?.featureGroupCount ?? 0, n = e.regions?.featureCount ?? 0, r = e.workface?.featureGroupCount ?? 0, i = e.workface?.featureCount ?? 0, a = e.workface?.featureTypes?.join(", ") ?? "", o = e.workface?.renderReady === !0 ? "是" : "否", s = e.lane?.enabled === !0, c = e.lane?.featureGroupCount ?? 0, l = e.lane?.featureCount ?? 0, u = e.lane?.renderReady === !0 ? "是" : "否", d = s ? `巷道 图层组 ${c},要素 ${l},渲染就绪 ${u}` : "巷道 未启用";
|
|
3163
|
+
return `区域要素 图层组 ${t},要素 ${n};工作面 图层组 ${r},要素 ${i},要素编码 ${a || "未配置"},渲染就绪 ${o};${d}`;
|
|
3164
|
+
}
|
|
3165
|
+
let t = Ho(e.layers?.laneData), n = Ho(e.layers?.regionAssistData), r = Ho(e.layers?.regionData), i = Ho(e.layers?.coalResversData), a = Ho(e.layers?.boundaryData), o = Ho(e.layers?.geologyData), s = Ho(e.layers?.pointSymbolData), c = Array.isArray(e.layers?.coalData) ? e.layers.coalData.length : 0, l = Array.isArray(e.layers?.geofaultData) ? e.layers.geofaultData.length : 0;
|
|
3166
|
+
return `云GIS全量加载完成:巷道组 ${t},工作面辅助组 ${n},区域组 ${r},煤量组 ${i},边界组 ${a},地质体组 ${o},点符号组 ${s},煤层 ${c}(配置煤层 ${Array.isArray(e.coalLayers) ? e.coalLayers.length : 0}),断层 ${l}(配置断层 ${Array.isArray(e.geofaultLayers) ? e.geofaultLayers.length : 0})`;
|
|
3167
|
+
}
|
|
3168
|
+
function Wo(e, t) {
|
|
3169
|
+
let n = Fo[e] ?? e;
|
|
3170
|
+
if (e === "coal" || e === "geofault") {
|
|
3171
|
+
let e = t?.configuredLayerCount ?? 0, r = t?.loadedLayerCount ?? 0;
|
|
3172
|
+
return e === 0 ? `${n}未加载:未配置图层名` : `${n}加载完成:已加载图层 ${r}/${e}`;
|
|
3173
|
+
}
|
|
3174
|
+
return `${n}加载完成:图层组 ${t?.featureGroupCount ?? 0},要素 ${t?.featureCount ?? 0},加载成功 ${t?.loadSuccess === !0 ? "是" : "否"}`;
|
|
3175
|
+
}
|
|
3176
|
+
async function Go(e = {}) {
|
|
3177
|
+
let t = await ho(e), n = Bo(t?.regions?.items ?? []), r = Array.isArray(t?.lane?.items) ? t.lane.items : [];
|
|
3178
|
+
return {
|
|
3179
|
+
result: t,
|
|
3180
|
+
regionItems: n,
|
|
3181
|
+
laneItems: Vo(t?.lane?.items ?? []),
|
|
3182
|
+
lanePathItems: r,
|
|
3183
|
+
summary: Uo(t)
|
|
3184
|
+
};
|
|
3185
|
+
}
|
|
3186
|
+
async function Ko(e, t = {}) {
|
|
3187
|
+
let n = Io[e];
|
|
3188
|
+
if (!n) throw Error(`未找到手动加载类型: ${e}`);
|
|
3189
|
+
let r = await n(t);
|
|
3190
|
+
return {
|
|
3191
|
+
result: r,
|
|
3192
|
+
loaded: r?.loadSuccess === !0,
|
|
3193
|
+
summary: Wo(e, r)
|
|
3194
|
+
};
|
|
3195
|
+
}
|
|
3196
|
+
//#endregion
|
|
3197
|
+
//#region packages/lr-map-viewer/src/components/Lr3dViewer.vue
|
|
3198
|
+
var qo = { class: "lr3d-viewer" }, Jo = { class: "lr3d-viewer__canvas" }, Yo = ["id"], Xo = { class: "lr3d-workface-panel__header" }, Zo = {
|
|
3199
|
+
key: 0,
|
|
3200
|
+
class: "lr3d-workface-panel__body"
|
|
3201
|
+
}, Qo = { class: "lr3d-workface-panel__meta" }, $o = { class: "lr3d-workface-panel__actions" }, es = { class: "lr3d-workface-panel__status" }, ts = {
|
|
3202
|
+
key: 0,
|
|
3203
|
+
class: "lr3d-workface-panel__empty"
|
|
3204
|
+
}, ns = {
|
|
3205
|
+
key: 1,
|
|
3206
|
+
class: "lr3d-workface-panel__groups"
|
|
3207
|
+
}, rs = { class: "lr3d-workface-panel__group-title" }, is = { class: "lr3d-workface-panel__list" }, as = { class: "lr3d-workface-panel__label" }, os = ["checked", "onChange"], ss = {
|
|
3208
|
+
key: 0,
|
|
3209
|
+
class: "lr3d-workface-panel__group"
|
|
3210
|
+
}, cs = { class: "lr3d-workface-panel__group-title" }, ls = { class: "lr3d-workface-panel__list" }, us = { class: "lr3d-workface-panel__label" }, ds = ["checked", "onChange"], fs = {
|
|
3211
|
+
key: 1,
|
|
3212
|
+
class: "lr3d-viewer__placeholder"
|
|
3213
|
+
}, ps = {
|
|
3214
|
+
key: 2,
|
|
3215
|
+
class: "lr3d-viewer__placeholder lr3d-viewer__placeholder--error"
|
|
3216
|
+
}, ms = {
|
|
3217
|
+
key: 0,
|
|
3218
|
+
class: "lr3d-debug-panel"
|
|
3219
|
+
}, hs = { class: "lr3d-debug-panel__actions" }, gs = { class: "lr3d-debug-panel__actions" }, _s = ["disabled"], vs = ["disabled"], ys = ["disabled"], bs = ["disabled"], xs = ["disabled"], Ss = ["disabled"], Cs = ["disabled"], ws = { class: "lr3d-debug-panel__tool" }, Ts = { class: "lr3d-debug-panel__log" }, Es = "demo-person", Ds = /* @__PURE__ */ Ao({
|
|
3220
|
+
__name: "Lr3dViewer",
|
|
3221
|
+
props: {
|
|
3222
|
+
config: {
|
|
3223
|
+
type: Object,
|
|
3224
|
+
default: () => ({})
|
|
3225
|
+
},
|
|
3226
|
+
showRegionPanel: {
|
|
3227
|
+
type: Boolean,
|
|
3228
|
+
default: !1
|
|
3229
|
+
},
|
|
3230
|
+
showDebugPanel: {
|
|
3231
|
+
type: Boolean,
|
|
3232
|
+
default: !1
|
|
3233
|
+
}
|
|
3234
|
+
},
|
|
3235
|
+
setup(n, { expose: o }) {
|
|
3236
|
+
let s = n, l = p(Te(s.config)), g = t(() => l.value.scene.containerId), b = p(null), x = p("idle"), S = p("eval_route_gene"), C = p("等待调试操作"), w = p(!1), T = p(!1), E = p(!1), D = p(!1), O = p(!0), k = p(null), ee = p(null), te = p(!1), A = p("等待操作"), ne = p([]), re = p([]), ie = p(null), ae = p(() => {}), j = p(null), M = p({
|
|
3237
|
+
key: "",
|
|
3238
|
+
timestamp: 0
|
|
3239
|
+
}), oe = p({
|
|
3240
|
+
regionAssist: {
|
|
3241
|
+
loading: !1,
|
|
3242
|
+
loaded: !1
|
|
3243
|
+
},
|
|
3244
|
+
coalResvers: {
|
|
3245
|
+
loading: !1,
|
|
3246
|
+
loaded: !1
|
|
3247
|
+
},
|
|
3248
|
+
boundary: {
|
|
3249
|
+
loading: !1,
|
|
3250
|
+
loaded: !1
|
|
3251
|
+
},
|
|
3252
|
+
geology: {
|
|
3253
|
+
loading: !1,
|
|
3254
|
+
loaded: !1
|
|
3255
|
+
},
|
|
3256
|
+
pointSymbol: {
|
|
3257
|
+
loading: !1,
|
|
3258
|
+
loaded: !1
|
|
3259
|
+
},
|
|
3260
|
+
coal: {
|
|
3261
|
+
loading: !1,
|
|
3262
|
+
loaded: !1
|
|
3263
|
+
},
|
|
3264
|
+
geofault: {
|
|
3265
|
+
loading: !1,
|
|
3266
|
+
loaded: !1
|
|
3267
|
+
}
|
|
3268
|
+
}), se = p([]), N = p({}), P = p([]), F = p({}), ce = [
|
|
3269
|
+
"0202030030",
|
|
3270
|
+
"0106020009",
|
|
3271
|
+
"0202030004",
|
|
3272
|
+
"0202030006"
|
|
3273
|
+
], le = {
|
|
3274
|
+
"0202030030": "工作面",
|
|
3275
|
+
"0106020009": "积水区",
|
|
3276
|
+
"0202030004": "回采工作面",
|
|
3277
|
+
"0202030006": "采空区"
|
|
3278
|
+
};
|
|
3279
|
+
v(() => s.config, (e) => {
|
|
3280
|
+
l.value = Te(e ?? {}), Ce(l.value);
|
|
3281
|
+
}, {
|
|
3282
|
+
deep: !0,
|
|
3283
|
+
immediate: !0
|
|
3284
|
+
});
|
|
3285
|
+
let ue = t(() => se.value), de = t(() => {
|
|
3286
|
+
let e = /* @__PURE__ */ new Map();
|
|
3287
|
+
ue.value.forEach((t) => {
|
|
3288
|
+
let n = t?.featureType || "unknown", r = t?.typeLabel || le[n] || `类型 ${n}`;
|
|
3289
|
+
e.has(n) || e.set(n, {
|
|
3290
|
+
featureType: n,
|
|
3291
|
+
typeLabel: r,
|
|
3292
|
+
items: []
|
|
3293
|
+
}), e.get(n).items.push(t);
|
|
3294
|
+
});
|
|
3295
|
+
let t = Array.from(e.values());
|
|
3296
|
+
return t.sort((e, t) => {
|
|
3297
|
+
let n = ce.indexOf(e.featureType), r = ce.indexOf(t.featureType), i = n === -1 ? 2 ** 53 - 1 : n, a = r === -1 ? 2 ** 53 - 1 : r;
|
|
3298
|
+
return i === a ? e.typeLabel.localeCompare(t.typeLabel, "zh-CN") : i - a;
|
|
3299
|
+
}), t;
|
|
3300
|
+
}), fe = t(() => de.value.length > 0 || P.value.length > 0), pe = t(() => l.value?.dataSource?.type === "cloud" && l.value?.dataSource?.autoLoad === !0), me = t(() => l.value?.dataSource?.cloud?.demoPerson ?? {});
|
|
3301
|
+
t(() => {
|
|
3302
|
+
let e = me.value?.layer;
|
|
3303
|
+
return typeof e == "string" ? e.trim() : "";
|
|
3304
|
+
}), t(() => {
|
|
3305
|
+
let e = me.value?.startPoint, t = Number(e?.x), n = Number(e?.y), r = Number(e?.z);
|
|
3306
|
+
return !Number.isFinite(t) || !Number.isFinite(n) || !Number.isFinite(r) ? null : {
|
|
3307
|
+
x: t,
|
|
3308
|
+
y: n,
|
|
3309
|
+
z: r
|
|
3310
|
+
};
|
|
3311
|
+
});
|
|
3312
|
+
function I(e) {
|
|
3313
|
+
C.value = `${(/* @__PURE__ */ new Date()).toLocaleTimeString()} - ${e}`;
|
|
3314
|
+
}
|
|
3315
|
+
function he(e) {
|
|
3316
|
+
let t = (/* @__PURE__ */ new Date()).toLocaleTimeString();
|
|
3317
|
+
C.value = `${C.value}\n${t} - ${e}`;
|
|
3318
|
+
}
|
|
3319
|
+
function L(e) {
|
|
3320
|
+
return e instanceof Error ? e.message : "未知错误";
|
|
3321
|
+
}
|
|
3322
|
+
function ge(e) {
|
|
3323
|
+
return e == null ? "" : String(e).trim().toLowerCase();
|
|
3324
|
+
}
|
|
3325
|
+
function _e() {
|
|
3326
|
+
if (typeof window > "u" || !window.THREE) throw Error("当前环境缺少 THREE 全局对象");
|
|
3327
|
+
return window.THREE;
|
|
3328
|
+
}
|
|
3329
|
+
function ve() {
|
|
3330
|
+
ja()?.signals?.sceneBackgroundChanged?.dispatch?.("Gradientcolor", null, null, null, null, "#696969", "#696969");
|
|
3331
|
+
}
|
|
3332
|
+
function ye(e) {
|
|
3333
|
+
let t = [], n = e?.userData ?? {}, r = n?.attrs ?? n?.info ?? n ?? {};
|
|
3334
|
+
return [
|
|
3335
|
+
"实体ID",
|
|
3336
|
+
"entityId",
|
|
3337
|
+
"entityID",
|
|
3338
|
+
"id",
|
|
3339
|
+
"FEATUREID",
|
|
3340
|
+
"featureId",
|
|
3341
|
+
"名称",
|
|
3342
|
+
"name",
|
|
3343
|
+
"FEATURENAME",
|
|
3344
|
+
"工作面名称"
|
|
3345
|
+
].forEach((e) => {
|
|
3346
|
+
let n = r?.[e];
|
|
3347
|
+
n != null && String(n).trim() && t.push(String(n));
|
|
3348
|
+
}), typeof e?.name == "string" && e.name.trim() && t.push(e.name), e?.id !== null && e?.id !== void 0 && t.push(String(e.id)), t.map((e) => ge(e)).filter(Boolean);
|
|
3349
|
+
}
|
|
3350
|
+
function be(...e) {
|
|
3351
|
+
for (let t of e) if (t != null && String(t).trim()) return t;
|
|
3352
|
+
return "";
|
|
3353
|
+
}
|
|
3354
|
+
function xe(e) {
|
|
3355
|
+
let t = {
|
|
3356
|
+
ids: [],
|
|
3357
|
+
names: [],
|
|
3358
|
+
layerNames: [],
|
|
3359
|
+
types: []
|
|
3360
|
+
}, n = e;
|
|
3361
|
+
for (; n;) {
|
|
3362
|
+
let e = n?.userData ?? {}, r = e?.attrs ?? e?.info ?? e ?? {};
|
|
3363
|
+
t.ids.push(e?.entityId, e?.entityID, e?.id, e?.featureId, r?.实体ID, r?.entityId, r?.entityID, r?.id, r?.FEATUREID, r?.featureId, n?.id), t.names.push(e?.name, e?.displayName, r?.名称, r?.name, r?.FEATURENAME, r?.工作面名称, n?.name), t.layerNames.push(e?.layername, e?.layerName, e?.layer, r?.layername, r?.layerName, r?.layer, n?.layername, n?.layerName), t.types.push(e?.type, r?.FEATURETYPE, r?.type, n?.type), n = n.parent ?? null;
|
|
3364
|
+
}
|
|
3365
|
+
return t;
|
|
3366
|
+
}
|
|
3367
|
+
function Se(e, t = "selection") {
|
|
3368
|
+
let n = e?.object ?? e ?? null;
|
|
3369
|
+
if (!n || typeof n != "object") return null;
|
|
3370
|
+
let r = xe(n), i = n?.position, a = i && Number.isFinite(Number(i.x)) ? {
|
|
3371
|
+
x: Number(i.x),
|
|
3372
|
+
y: Number(i.y),
|
|
3373
|
+
z: Number(i.z)
|
|
3374
|
+
} : null;
|
|
3375
|
+
return {
|
|
3376
|
+
id: be(...r.ids) || null,
|
|
3377
|
+
name: be(...r.names) || null,
|
|
3378
|
+
layerName: be(...r.layerNames) || null,
|
|
3379
|
+
position: a
|
|
3380
|
+
};
|
|
3381
|
+
}
|
|
3382
|
+
function we(e) {
|
|
3383
|
+
let t = ie.value;
|
|
3384
|
+
if (typeof t != "function" || !e) return !1;
|
|
3385
|
+
let n = [
|
|
3386
|
+
e?.id ?? "",
|
|
3387
|
+
e?.name ?? "",
|
|
3388
|
+
e?.layerName ?? "",
|
|
3389
|
+
e?.type ?? ""
|
|
3390
|
+
].join("::"), r = Date.now();
|
|
3391
|
+
return n && n === M.value.key && r - M.value.timestamp < 150 ? !1 : (M.value = {
|
|
3392
|
+
key: n,
|
|
3393
|
+
timestamp: r
|
|
3394
|
+
}, t(e), !0);
|
|
3395
|
+
}
|
|
3396
|
+
function Ee() {
|
|
3397
|
+
ae.value?.();
|
|
3398
|
+
let e = [];
|
|
3399
|
+
if (b.value) {
|
|
3400
|
+
let t = () => {
|
|
3401
|
+
j.value !== null && window.clearTimeout(j.value), j.value = window.setTimeout(() => {
|
|
3402
|
+
j.value = null;
|
|
3403
|
+
try {
|
|
3404
|
+
let e = Se(ja()?.selected, "click-fallback");
|
|
3405
|
+
we(e) && I(`模型信息查询触发:${e?.name || e?.id || "未命名对象"}`);
|
|
3406
|
+
} catch {}
|
|
3407
|
+
}, 0);
|
|
3408
|
+
};
|
|
3409
|
+
b.value.addEventListener("click", t, !0), e.push(() => b.value?.removeEventListener("click", t, !0));
|
|
3410
|
+
}
|
|
3411
|
+
ae.value = () => {
|
|
3412
|
+
e.forEach((e) => e()), j.value !== null && (window.clearTimeout(j.value), j.value = null);
|
|
3413
|
+
};
|
|
3414
|
+
}
|
|
3415
|
+
function De(e) {
|
|
3416
|
+
if (e != null && typeof e != "function") throw Error("模型信息查询回调必须是函数");
|
|
3417
|
+
return ie.value = typeof e == "function" ? e : null, ie.value !== null;
|
|
3418
|
+
}
|
|
3419
|
+
function Oe(e) {
|
|
3420
|
+
return [ge(e?.entityId), ge(e?.featureId)].filter(Boolean);
|
|
3421
|
+
}
|
|
3422
|
+
function ke(e) {
|
|
3423
|
+
se.value = Array.isArray(e) ? e : [];
|
|
3424
|
+
let t = {};
|
|
3425
|
+
se.value.forEach((e) => {
|
|
3426
|
+
t[e.key] = !0;
|
|
3427
|
+
}), N.value = t;
|
|
3428
|
+
}
|
|
3429
|
+
function Ae(e) {
|
|
3430
|
+
P.value = Array.isArray(e) ? e : [];
|
|
3431
|
+
let t = {};
|
|
3432
|
+
P.value.forEach((e) => {
|
|
3433
|
+
t[e.key] = !0;
|
|
3434
|
+
}), F.value = t;
|
|
3435
|
+
}
|
|
3436
|
+
function je(e) {
|
|
3437
|
+
ne.value = Array.isArray(e) ? e : [];
|
|
3438
|
+
}
|
|
3439
|
+
function Me() {
|
|
3440
|
+
k.value !== null && (window.clearInterval(k.value), k.value = null), te.value = !1, ee.value = null, re.value = [], ne.value = [];
|
|
3441
|
+
try {
|
|
3442
|
+
let e = ja();
|
|
3443
|
+
e?.PersonModuleInterfaces?.stopPerLoop?.(), e?.PersonModuleInterfaces?.deletePersonAll?.(Es);
|
|
3444
|
+
} catch {}
|
|
3445
|
+
}
|
|
3446
|
+
function Ne(e, t, n) {
|
|
3447
|
+
let r = Number(e), i = Number(t), a = Number(n);
|
|
3448
|
+
return !Number.isFinite(r) || !Number.isFinite(i) || !Number.isFinite(a) ? null : {
|
|
3449
|
+
x: r,
|
|
3450
|
+
y: i,
|
|
3451
|
+
z: a
|
|
3452
|
+
};
|
|
3453
|
+
}
|
|
3454
|
+
function Pe(e, t) {
|
|
3455
|
+
try {
|
|
3456
|
+
let n = _e(), r = Aa(), i = ja(), a = r?.basePoint ?? {
|
|
3457
|
+
x: 0,
|
|
3458
|
+
y: 0,
|
|
3459
|
+
z: 0
|
|
3460
|
+
}, o = new n.Vector3(Number(e.x) - Number(a.x ?? 0), Number(e.y) - Number(a.y ?? 0), Number(e.z) - Number(a.z ?? 0));
|
|
3461
|
+
if (he(`准备聚焦${t}:绝对坐标(${Number(e.x).toFixed(2)}, ${Number(e.y).toFixed(2)}, ${Number(e.z).toFixed(2)}),basePoint(${Number(a.x ?? 0).toFixed(2)}, ${Number(a.y ?? 0).toFixed(2)}, ${Number(a.z ?? 0).toFixed(2)}),相对坐标(${o.x.toFixed(2)}, ${o.y.toFixed(2)}, ${o.z.toFixed(2)})`), A.value = `准备聚焦:${Number(e.x).toFixed(2)}, ${Number(e.y).toFixed(2)}, ${Number(e.z).toFixed(2)}`, typeof i?.focusPoint != "function") throw Error("editor.focusPoint 不存在");
|
|
3462
|
+
return i.focusPoint(null, o), A.value = "聚焦接口已调用", I(`已聚焦到${t}:${Number(e.x).toFixed(2)}, ${Number(e.y).toFixed(2)}, ${Number(e.z).toFixed(2)}`), !0;
|
|
3463
|
+
} catch (e) {
|
|
3464
|
+
return A.value = `聚焦失败:${L(e)}`, I(`聚焦${t}失败:${L(e)}`), !1;
|
|
3465
|
+
}
|
|
3466
|
+
}
|
|
3467
|
+
function Fe(e, t, n) {
|
|
3468
|
+
A.value = `点击移动视角:${(/* @__PURE__ */ new Date()).toLocaleTimeString()}`;
|
|
3469
|
+
let r = Ne(e, t, n);
|
|
3470
|
+
return r ? Pe(r, "目标点") : (A.value = "移动视角失败:坐标参数无效", I("移动视角失败:坐标参数无效"), !1);
|
|
3471
|
+
}
|
|
3472
|
+
function Ie(e) {
|
|
3473
|
+
if (!Array.isArray(e) || e.length === 0) return;
|
|
3474
|
+
let t = ja()?.manager?.modules?.lanemodulen;
|
|
3475
|
+
if (!t || typeof t.toggleLaneMaterial != "function") throw Error("当前三维实例缺少巷道材质切换接口");
|
|
3476
|
+
[...new Set(e.map((e) => typeof e?.layerName == "string" ? e.layerName.trim() : "").filter(Boolean))].forEach((e) => {
|
|
3477
|
+
t.toggleLaneMaterial(e, "glass");
|
|
3478
|
+
}), (Array.isArray(t.typeGroup?.children) ? t.typeGroup.children : []).forEach((e) => {
|
|
3479
|
+
(Array.isArray(e?.children) ? e.children : []).forEach((e) => {
|
|
3480
|
+
(Array.isArray(e?.material) ? e.material : [e?.material]).forEach((e) => {
|
|
3481
|
+
e && (e.transparent = !0, e.opacity = .4, e.needsUpdate = !0);
|
|
3482
|
+
});
|
|
3483
|
+
});
|
|
3484
|
+
}), Fa();
|
|
3485
|
+
}
|
|
3486
|
+
function Le(e, t) {
|
|
3487
|
+
let n = (ja()?.manager?.modules?.regionmodule)?.getLayerGroup?.(e.layerName);
|
|
3488
|
+
if (!n) return !1;
|
|
3489
|
+
let r = new Set(Oe(e)), i = !1;
|
|
3490
|
+
return n.traverse?.((e) => {
|
|
3491
|
+
ye(e).some((e) => r.has(e)) && (e.visible = t, i = !0);
|
|
3492
|
+
}), !i && Array.isArray(n.children) && n.children.forEach((e) => {
|
|
3493
|
+
ye(e).some((e) => r.has(e)) && (e.visible = t, i = !0);
|
|
3494
|
+
}), i;
|
|
3495
|
+
}
|
|
3496
|
+
function Re(e, t) {
|
|
3497
|
+
if (!Array.isArray(e) || e.length === 0) return 0;
|
|
3498
|
+
let n = { ...N.value }, r = 0;
|
|
3499
|
+
return e.forEach((e) => {
|
|
3500
|
+
Le(e, t) && (n[e.key] = t, r += 1);
|
|
3501
|
+
}), N.value = n, D.value = t, Fa(), r;
|
|
3502
|
+
}
|
|
3503
|
+
function ze(e, t) {
|
|
3504
|
+
let n = t?.target, r = n?.checked === !0, i = N.value[e.key] !== !1;
|
|
3505
|
+
N.value = {
|
|
3506
|
+
...N.value,
|
|
3507
|
+
[e.key]: r
|
|
3508
|
+
};
|
|
3509
|
+
try {
|
|
3510
|
+
if (!Le(e, r)) throw Error(`未找到区域对象: ${e.displayName}`);
|
|
3511
|
+
Fa(), D.value = ue.value.some((e) => N.value[e.key] !== !1), I(`${e.typeLabel || "区域"}显隐已更新:${e.displayName} -> ${r ? "显示" : "隐藏"}`);
|
|
3512
|
+
} catch (t) {
|
|
3513
|
+
N.value = {
|
|
3514
|
+
...N.value,
|
|
3515
|
+
[e.key]: i
|
|
3516
|
+
}, n && (n.checked = i), I(`区域要素显隐更新失败:${L(t)}`);
|
|
3517
|
+
}
|
|
3518
|
+
}
|
|
3519
|
+
function Be(e, t) {
|
|
3520
|
+
let n = (ja()?.manager?.modules?.lanemodulen)?.getLayerGroup?.(e.layerName);
|
|
3521
|
+
if (!n) return !1;
|
|
3522
|
+
t && (n.visible = !0);
|
|
3523
|
+
let r = new Set(Oe(e));
|
|
3524
|
+
[ge(e?.featureName), ge(e?.displayName)].filter(Boolean).forEach((e) => r.add(e));
|
|
3525
|
+
let i = !1;
|
|
3526
|
+
return n.traverse?.((e) => {
|
|
3527
|
+
ye(e).some((e) => r.has(e)) && (e.visible = t, i = !0);
|
|
3528
|
+
}), !i && Array.isArray(n.children) && n.children.forEach((e) => {
|
|
3529
|
+
ye(e).some((e) => r.has(e)) && (e.visible = t, i = !0);
|
|
3530
|
+
}), i ||= (n.visible = t, !0), i;
|
|
3531
|
+
}
|
|
3532
|
+
function Ve(e, t) {
|
|
3533
|
+
let n = t?.target, r = n?.checked === !0, i = F.value[e.key] !== !1;
|
|
3534
|
+
F.value = {
|
|
3535
|
+
...F.value,
|
|
3536
|
+
[e.key]: r
|
|
3537
|
+
};
|
|
3538
|
+
try {
|
|
3539
|
+
if (!Be(e, r)) throw Error(`未找到巷道对象: ${e.displayName}`);
|
|
3540
|
+
Fa(), O.value = P.value.some((e) => F.value[e.key] !== !1), I(`巷道显隐已更新:${e.displayName} -> ${r ? "显示" : "隐藏"}`);
|
|
3541
|
+
} catch (t) {
|
|
3542
|
+
F.value = {
|
|
3543
|
+
...F.value,
|
|
3544
|
+
[e.key]: i
|
|
3545
|
+
}, n && (n.checked = i), I(`巷道显隐更新失败:${L(t)}`);
|
|
3546
|
+
}
|
|
3547
|
+
}
|
|
3548
|
+
function He(e, t) {
|
|
3549
|
+
if (!Array.isArray(e) || e.length === 0) return 0;
|
|
3550
|
+
let n = ja()?.manager?.modules?.lanemodulen, r = [...new Set(e.map((e) => typeof e?.layerName == "string" ? e.layerName.trim() : "").filter(Boolean))], i = 0;
|
|
3551
|
+
r.forEach((e) => {
|
|
3552
|
+
let r = n?.getLayerGroup?.(e);
|
|
3553
|
+
r && (r.traverse?.((e) => {
|
|
3554
|
+
e !== r && (e.visible = t, i += 1);
|
|
3555
|
+
}), r.visible = !0);
|
|
3556
|
+
});
|
|
3557
|
+
let a = { ...F.value };
|
|
3558
|
+
return e.forEach((e) => {
|
|
3559
|
+
a[e.key] = t;
|
|
3560
|
+
}), F.value = a, O.value = t, Fa(), i;
|
|
3561
|
+
}
|
|
3562
|
+
function Ue() {
|
|
3563
|
+
if (P.value.length === 0) {
|
|
3564
|
+
A.value = "当前没有可切换的巷道";
|
|
3565
|
+
return;
|
|
3566
|
+
}
|
|
3567
|
+
let e = !O.value, t = He(P.value, e);
|
|
3568
|
+
A.value = e ? `已显示 ${t} 条巷道` : `已隐藏 ${t} 条巷道`, I(e ? `已批量显示巷道:${t} 条` : `已批量隐藏巷道:${t} 条`);
|
|
3569
|
+
}
|
|
3570
|
+
function We() {
|
|
3571
|
+
if (ue.value.length === 0) {
|
|
3572
|
+
A.value = "当前没有可切换的区域";
|
|
3573
|
+
return;
|
|
3574
|
+
}
|
|
3575
|
+
let e = !D.value, t = Re(ue.value, e);
|
|
3576
|
+
A.value = e ? `已显示 ${t} 个区域` : `已隐藏 ${t} 个区域,当前仅保留巷道显示`, I(e ? `已批量显示区域:${t} 个` : `已批量隐藏区域:${t} 个,保留巷道显示`);
|
|
3577
|
+
}
|
|
3578
|
+
async function Ge(e) {
|
|
3579
|
+
let t = Fo[e] ?? e, n = oe.value[e];
|
|
3580
|
+
if (!n) throw Error(`未找到手动加载类型: ${e}`);
|
|
3581
|
+
if (n.loading) {
|
|
3582
|
+
I(`${t}正在加载,已忽略重复请求`);
|
|
3583
|
+
return;
|
|
3584
|
+
}
|
|
3585
|
+
if (n.loaded) {
|
|
3586
|
+
I(`${t}已加载,跳过重复请求`);
|
|
3587
|
+
return;
|
|
3588
|
+
}
|
|
3589
|
+
n.loading = !0, I(`开始手动加载:${t}`);
|
|
3590
|
+
try {
|
|
3591
|
+
let t = await Ko(e);
|
|
3592
|
+
n.loaded = t.loaded, I(t.summary);
|
|
3593
|
+
} finally {
|
|
3594
|
+
n.loading = !1;
|
|
3595
|
+
}
|
|
3596
|
+
}
|
|
3597
|
+
async function Ke({ trigger: e = "manual", forceReload: t = !1 } = {}) {
|
|
3598
|
+
if (w.value) return I("数据源正在加载,已忽略重复请求"), null;
|
|
3599
|
+
if (T.value && !t) return I("区域要素与巷道已加载,跳过重复请求"), null;
|
|
3600
|
+
let n = e === "auto" ? "自动" : "手动";
|
|
3601
|
+
w.value = !0, I(`${n}加载开始:区域要素与巷道`);
|
|
3602
|
+
try {
|
|
3603
|
+
let e = await Go();
|
|
3604
|
+
return T.value = !0, ke(e.regionItems), Ae(e.laneItems), je(e.lanePathItems), Ie(e.laneItems), Me(), D.value = e.regionItems.length > 0, O.value = e.laneItems.length > 0, I(`${n}加载完成:${e.summary}`), e.result;
|
|
3605
|
+
} finally {
|
|
3606
|
+
w.value = !1;
|
|
3607
|
+
}
|
|
3608
|
+
}
|
|
3609
|
+
async function R(e) {
|
|
3610
|
+
try {
|
|
3611
|
+
if (e === "resize") {
|
|
3612
|
+
Na(), I("已触发场景 resize");
|
|
3613
|
+
return;
|
|
3614
|
+
}
|
|
3615
|
+
if (e === "editor") {
|
|
3616
|
+
I(`editor 可用,当前 selected id: ${ja()?.selected?.id ?? "none"}`);
|
|
3617
|
+
return;
|
|
3618
|
+
}
|
|
3619
|
+
if (e === "interfaces") {
|
|
3620
|
+
let e = Ma();
|
|
3621
|
+
I(`interfaces 可用,activingTool 字段存在: ${Object.prototype.hasOwnProperty.call(e, "activingTool")}`);
|
|
3622
|
+
return;
|
|
3623
|
+
}
|
|
3624
|
+
if (e === "refresh") {
|
|
3625
|
+
Fa(), I("已触发 sceneGraphChanged 刷新");
|
|
3626
|
+
return;
|
|
3627
|
+
}
|
|
3628
|
+
if (e === "tool") {
|
|
3629
|
+
let e = S.value.trim();
|
|
3630
|
+
if (!e) throw Error("请先输入工具名称");
|
|
3631
|
+
await Ia(e), I(`activeTool 调用完成: ${e}`);
|
|
3632
|
+
return;
|
|
3633
|
+
}
|
|
3634
|
+
if (e === "datasource") {
|
|
3635
|
+
await Ke({ trigger: "manual" });
|
|
3636
|
+
return;
|
|
3637
|
+
}
|
|
3638
|
+
if (e === "regionAssist") {
|
|
3639
|
+
await Ge("regionAssist");
|
|
3640
|
+
return;
|
|
3641
|
+
}
|
|
3642
|
+
if (e === "coalResvers") {
|
|
3643
|
+
await Ge("coalResvers");
|
|
3644
|
+
return;
|
|
3645
|
+
}
|
|
3646
|
+
if (e === "boundary") {
|
|
3647
|
+
await Ge("boundary");
|
|
3648
|
+
return;
|
|
3649
|
+
}
|
|
3650
|
+
if (e === "geology") {
|
|
3651
|
+
await Ge("geology");
|
|
3652
|
+
return;
|
|
3653
|
+
}
|
|
3654
|
+
if (e === "pointSymbol") {
|
|
3655
|
+
await Ge("pointSymbol");
|
|
3656
|
+
return;
|
|
3657
|
+
}
|
|
3658
|
+
if (e === "coal") {
|
|
3659
|
+
await Ge("coal");
|
|
3660
|
+
return;
|
|
3661
|
+
}
|
|
3662
|
+
if (e === "geofault") {
|
|
3663
|
+
await Ge("geofault");
|
|
3664
|
+
return;
|
|
3665
|
+
}
|
|
3666
|
+
} catch (e) {
|
|
3667
|
+
I(`调试失败: ${L(e)}`);
|
|
3668
|
+
}
|
|
3669
|
+
}
|
|
3670
|
+
async function qe() {
|
|
3671
|
+
if (!b.value) {
|
|
3672
|
+
x.value = "error", I(`场景初始化失败:未找到场景容器 ${g.value}`);
|
|
3673
|
+
return;
|
|
3674
|
+
}
|
|
3675
|
+
x.value = "loading", I("开始加载龙软 GIS SDK 脚本");
|
|
3676
|
+
try {
|
|
3677
|
+
x.value = "initializing", I("SDK 脚本加载完成,开始创建 EditorApp 实例");
|
|
3678
|
+
let { globalName: e } = await Oa(b.value);
|
|
3679
|
+
if (ve(), Ee(), x.value = "ready", I(`场景初始化成功,检测到全局对象:${e}`), pe.value) try {
|
|
3680
|
+
await Ke({ trigger: "auto" });
|
|
3681
|
+
} catch (e) {
|
|
3682
|
+
I(`场景初始化成功,自动加载失败:${L(e)}`);
|
|
3683
|
+
}
|
|
3684
|
+
else I("场景初始化成功,未开启自动云数据加载");
|
|
3685
|
+
} catch (e) {
|
|
3686
|
+
x.value = "error", I(`场景初始化失败:${L(e)}`), ke([]), Ae([]), je([]), Da(b.value);
|
|
3687
|
+
}
|
|
3688
|
+
}
|
|
3689
|
+
return u(() => {
|
|
3690
|
+
qe();
|
|
3691
|
+
}), d(() => {
|
|
3692
|
+
ae.value?.(), Me(), ke([]), Ae([]), je([]), Da(b.value);
|
|
3693
|
+
}), o({
|
|
3694
|
+
moveView: Fe,
|
|
3695
|
+
registerModelInfoQuery: De
|
|
3696
|
+
}), (t, n) => (f(), i("section", qo, [a("div", { class: c(["lr3d-viewer__stage", { "lr3d-viewer__stage--with-debug": s.showDebugPanel }]) }, [a("div", Jo, [
|
|
3697
|
+
a("div", {
|
|
3698
|
+
id: g.value,
|
|
3699
|
+
ref_key: "viewerHost",
|
|
3700
|
+
ref: b,
|
|
3701
|
+
class: "lr3d-viewer__host"
|
|
3702
|
+
}, null, 8, Yo),
|
|
3703
|
+
s.showRegionPanel && x.value === "ready" ? (f(), i("aside", {
|
|
3704
|
+
key: 0,
|
|
3705
|
+
class: c(["lr3d-workface-panel", { "lr3d-workface-panel--expanded": E.value }])
|
|
3706
|
+
}, [a("div", Xo, [n[15] ||= a("h3", { class: "lr3d-workface-panel__title" }, "图层控制", -1), a("button", {
|
|
3707
|
+
type: "button",
|
|
3708
|
+
class: "lr3d-workface-panel__toggle",
|
|
3709
|
+
onClick: n[0] ||= (e) => E.value = !E.value
|
|
3710
|
+
}, h(E.value ? "收起" : "展开"), 1)]), E.value ? (f(), i("div", Zo, [
|
|
3711
|
+
a("p", Qo, " 当前区域要素数量:" + h(ue.value.length) + ",巷道数量:" + h(P.value.length), 1),
|
|
3712
|
+
a("div", $o, [a("button", {
|
|
3713
|
+
type: "button",
|
|
3714
|
+
class: "lr3d-workface-panel__action lr3d-workface-panel__action--secondary",
|
|
3715
|
+
onClick: We
|
|
3716
|
+
}, h(D.value ? "隐藏区域" : "显示区域"), 1), a("button", {
|
|
3717
|
+
type: "button",
|
|
3718
|
+
class: "lr3d-workface-panel__action lr3d-workface-panel__action--secondary",
|
|
3719
|
+
onClick: Ue
|
|
3720
|
+
}, h(O.value ? "隐藏巷道" : "显示巷道"), 1)]),
|
|
3721
|
+
a("p", es, h(A.value), 1),
|
|
3722
|
+
fe.value ? (f(), i("div", ns, [(f(!0), i(e, null, m(de.value, (t) => (f(), i("section", {
|
|
3723
|
+
key: t.featureType,
|
|
3724
|
+
class: "lr3d-workface-panel__group"
|
|
3725
|
+
}, [a("h4", rs, h(t.typeLabel) + "(" + h(t.items.length) + ") ", 1), a("ul", is, [(f(!0), i(e, null, m(t.items, (e) => (f(), i("li", {
|
|
3726
|
+
key: e.key,
|
|
3727
|
+
class: "lr3d-workface-panel__item"
|
|
3728
|
+
}, [a("label", as, [a("input", {
|
|
3729
|
+
type: "checkbox",
|
|
3730
|
+
checked: N.value[e.key] !== !1,
|
|
3731
|
+
onChange: (t) => ze(e, t)
|
|
3732
|
+
}, null, 40, os), a("span", null, h(e.displayName), 1)])]))), 128))])]))), 128)), P.value.length > 0 ? (f(), i("section", ss, [a("h4", cs, " 巷道(" + h(P.value.length) + ") ", 1), a("ul", ls, [(f(!0), i(e, null, m(P.value, (e) => (f(), i("li", {
|
|
3733
|
+
key: e.key,
|
|
3734
|
+
class: "lr3d-workface-panel__item"
|
|
3735
|
+
}, [a("label", us, [a("input", {
|
|
3736
|
+
type: "checkbox",
|
|
3737
|
+
checked: F.value[e.key] !== !1,
|
|
3738
|
+
onChange: (t) => Ve(e, t)
|
|
3739
|
+
}, null, 40, ds), a("span", null, h(e.displayName), 1)])]))), 128))])])) : r("", !0)])) : (f(), i("div", ts, " 暂无可控制的区域要素或巷道 "))
|
|
3740
|
+
])) : r("", !0)], 2)) : r("", !0),
|
|
3741
|
+
x.value === "idle" || x.value === "loading" ? (f(), i("div", fs, [...n[16] ||= [a("p", null, "正在准备三维场景", -1), a("small", null, "SDK 脚本加载完成后会在当前容器内创建最小场景实例", -1)]])) : r("", !0),
|
|
3742
|
+
x.value === "error" ? (f(), i("div", ps, [...n[17] ||= [a("p", null, "最小初始化未完成", -1), a("small", null, "请根据状态信息检查 SDK 依赖或资源路径", -1)]])) : r("", !0)
|
|
3743
|
+
]), s.showDebugPanel ? (f(), i("section", ms, [
|
|
3744
|
+
n[19] ||= a("div", { class: "lr3d-debug-panel__header" }, [a("h2", null, "基础调试面板"), a("p", null, "用于验证基础 API 是否可调用")], -1),
|
|
3745
|
+
a("div", hs, [
|
|
3746
|
+
a("button", {
|
|
3747
|
+
type: "button",
|
|
3748
|
+
onClick: n[1] ||= (e) => R("resize")
|
|
3749
|
+
}, "Resize 场景"),
|
|
3750
|
+
a("button", {
|
|
3751
|
+
type: "button",
|
|
3752
|
+
onClick: n[2] ||= (e) => R("refresh")
|
|
3753
|
+
}, "测试刷新(sceneGraphChanged)"),
|
|
3754
|
+
a("button", {
|
|
3755
|
+
type: "button",
|
|
3756
|
+
onClick: n[3] ||= (e) => R("editor")
|
|
3757
|
+
}, "检查 editor"),
|
|
3758
|
+
a("button", {
|
|
3759
|
+
type: "button",
|
|
3760
|
+
onClick: n[4] ||= (e) => R("interfaces")
|
|
3761
|
+
}, "检查 interfaces"),
|
|
3762
|
+
a("button", {
|
|
3763
|
+
type: "button",
|
|
3764
|
+
onClick: n[5] ||= (e) => R("datasource")
|
|
3765
|
+
}, "手动重试加载区域+巷道")
|
|
3766
|
+
]),
|
|
3767
|
+
n[20] ||= a("div", { class: "lr3d-debug-panel__header" }, [a("h2", null, "手动加载其他类型"), a("p", null, "默认不自动加载,按按钮逐项触发")], -1),
|
|
3768
|
+
a("div", gs, [
|
|
3769
|
+
a("button", {
|
|
3770
|
+
type: "button",
|
|
3771
|
+
disabled: oe.value.regionAssist.loading,
|
|
3772
|
+
onClick: n[6] ||= (e) => R("regionAssist")
|
|
3773
|
+
}, " 加载掘进辅助 ", 8, _s),
|
|
3774
|
+
a("button", {
|
|
3775
|
+
type: "button",
|
|
3776
|
+
disabled: oe.value.coalResvers.loading,
|
|
3777
|
+
onClick: n[7] ||= (e) => R("coalResvers")
|
|
3778
|
+
}, " 加载储量块段 ", 8, vs),
|
|
3779
|
+
a("button", {
|
|
3780
|
+
type: "button",
|
|
3781
|
+
disabled: oe.value.boundary.loading,
|
|
3782
|
+
onClick: n[8] ||= (e) => R("boundary")
|
|
3783
|
+
}, " 加载矿井边界 ", 8, ys),
|
|
3784
|
+
a("button", {
|
|
3785
|
+
type: "button",
|
|
3786
|
+
disabled: oe.value.geology.loading,
|
|
3787
|
+
onClick: n[9] ||= (e) => R("geology")
|
|
3788
|
+
}, " 加载地质体 ", 8, bs),
|
|
3789
|
+
a("button", {
|
|
3790
|
+
type: "button",
|
|
3791
|
+
disabled: oe.value.pointSymbol.loading,
|
|
3792
|
+
onClick: n[10] ||= (e) => R("pointSymbol")
|
|
3793
|
+
}, " 加载点符号 ", 8, xs),
|
|
3794
|
+
a("button", {
|
|
3795
|
+
type: "button",
|
|
3796
|
+
disabled: oe.value.coal.loading,
|
|
3797
|
+
onClick: n[11] ||= (e) => R("coal")
|
|
3798
|
+
}, " 加载煤层 ", 8, Ss),
|
|
3799
|
+
a("button", {
|
|
3800
|
+
type: "button",
|
|
3801
|
+
disabled: oe.value.geofault.loading,
|
|
3802
|
+
onClick: n[12] ||= (e) => R("geofault")
|
|
3803
|
+
}, " 加载断层 ", 8, Cs)
|
|
3804
|
+
]),
|
|
3805
|
+
a("div", ws, [
|
|
3806
|
+
n[18] ||= a("label", { for: "lr3d-tool-input" }, "activeTool 名称", -1),
|
|
3807
|
+
y(a("input", {
|
|
3808
|
+
id: "lr3d-tool-input",
|
|
3809
|
+
"onUpdate:modelValue": n[13] ||= (e) => S.value = e,
|
|
3810
|
+
type: "text",
|
|
3811
|
+
placeholder: "输入工具名称,例如 eval_route_gene"
|
|
3812
|
+
}, null, 512), [[_, S.value]]),
|
|
3813
|
+
a("button", {
|
|
3814
|
+
type: "button",
|
|
3815
|
+
onClick: n[14] ||= (e) => R("tool")
|
|
3816
|
+
}, "执行 activeTool")
|
|
3817
|
+
]),
|
|
3818
|
+
a("pre", Ts, h(C.value), 1)
|
|
3819
|
+
])) : r("", !0)], 2)]));
|
|
3820
|
+
}
|
|
3821
|
+
}, [["__scopeId", "data-v-4ea74269"]]), Os = { class: "lr-map-viewer" }, ks = { class: "lr-map-viewer__stack" }, As = /* @__PURE__ */ Ao({
|
|
3822
|
+
__name: "LrMapViewer",
|
|
3823
|
+
props: {
|
|
3824
|
+
mode: {
|
|
3825
|
+
type: String,
|
|
3826
|
+
default: "3d"
|
|
3827
|
+
},
|
|
3828
|
+
modes: {
|
|
3829
|
+
type: Array,
|
|
3830
|
+
default: () => ["3d"]
|
|
3831
|
+
},
|
|
3832
|
+
showRegionPanel: {
|
|
3833
|
+
type: Boolean,
|
|
3834
|
+
default: !1
|
|
3835
|
+
},
|
|
3836
|
+
showDebugPanel: {
|
|
3837
|
+
type: Boolean,
|
|
3838
|
+
default: !1
|
|
3839
|
+
},
|
|
3840
|
+
map2dConfig: {
|
|
3841
|
+
type: Object,
|
|
3842
|
+
default: () => ({})
|
|
3843
|
+
},
|
|
3844
|
+
lr3dConfig: {
|
|
3845
|
+
type: Object,
|
|
3846
|
+
default: () => ({})
|
|
3847
|
+
}
|
|
3848
|
+
},
|
|
3849
|
+
emits: ["mode-change"],
|
|
3850
|
+
setup(e, { expose: n, emit: u }) {
|
|
3851
|
+
let d = e, m = u, h = p(Oo(d.mode, d.modes)), g = p(null), _ = p(null), y = t(() => Do(d.modes)), b = t(() => y.value.includes("2d")), x = t(() => y.value.includes("3d")), S = t(() => j(d.map2dConfig)), C = t(() => Te(d.lr3dConfig));
|
|
3852
|
+
function w(e, t) {
|
|
3853
|
+
m("mode-change", {
|
|
3854
|
+
mode: e,
|
|
3855
|
+
previousMode: t,
|
|
3856
|
+
supportedModes: y.value
|
|
3857
|
+
});
|
|
3858
|
+
}
|
|
3859
|
+
function T(e) {
|
|
3860
|
+
return {
|
|
3861
|
+
"lr-map-viewer__layer--active": h.value === e,
|
|
3862
|
+
"lr-map-viewer__layer--inactive": h.value !== e
|
|
3863
|
+
};
|
|
3864
|
+
}
|
|
3865
|
+
async function E(e) {
|
|
3866
|
+
if (await s(), e === "2d") {
|
|
3867
|
+
le();
|
|
3868
|
+
return;
|
|
3869
|
+
}
|
|
3870
|
+
e === "3d" && Ta() && Na();
|
|
3871
|
+
}
|
|
3872
|
+
function D(e) {
|
|
3873
|
+
let t = Oo(e, y.value);
|
|
3874
|
+
if (t === h.value) return h.value;
|
|
3875
|
+
let n = h.value;
|
|
3876
|
+
return h.value = t, w(t, n), t;
|
|
3877
|
+
}
|
|
3878
|
+
function O() {
|
|
3879
|
+
return h.value;
|
|
3880
|
+
}
|
|
3881
|
+
function k() {
|
|
3882
|
+
return F();
|
|
3883
|
+
}
|
|
3884
|
+
function ee() {
|
|
3885
|
+
return Ta();
|
|
3886
|
+
}
|
|
3887
|
+
function te() {
|
|
3888
|
+
return h.value === "2d" ? k() : ee();
|
|
3889
|
+
}
|
|
3890
|
+
function A() {
|
|
3891
|
+
return h.value === "2d" ? le() : Ta() ? (Na(), !0) : !1;
|
|
3892
|
+
}
|
|
3893
|
+
function ne() {
|
|
3894
|
+
return h.value !== "3d" || !Ta() ? !1 : (Fa(), !0);
|
|
3895
|
+
}
|
|
3896
|
+
function re(e, t, n) {
|
|
3897
|
+
return !g.value || typeof g.value.moveView != "function" ? !1 : g.value.moveView(e, t, n);
|
|
3898
|
+
}
|
|
3899
|
+
function ie(e) {
|
|
3900
|
+
if (e != null && typeof e != "function") throw Error("模型信息查询回调必须是函数");
|
|
3901
|
+
return _.value = typeof e == "function" ? e : null, g.value && typeof g.value.registerModelInfoQuery == "function" ? g.value.registerModelInfoQuery(_.value) : !1;
|
|
3902
|
+
}
|
|
3903
|
+
return v(() => [d.mode, d.modes], ([e, t]) => {
|
|
3904
|
+
let n = Oo(e, t);
|
|
3905
|
+
if (n === h.value) return;
|
|
3906
|
+
let r = h.value;
|
|
3907
|
+
h.value = n, w(n, r);
|
|
3908
|
+
}, { deep: !0 }), v(h, (e) => {
|
|
3909
|
+
E(e);
|
|
3910
|
+
}, { immediate: !0 }), v(g, (e) => {
|
|
3911
|
+
e && typeof e.registerModelInfoQuery == "function" && _.value && e.registerModelInfoQuery(_.value);
|
|
3912
|
+
}, { immediate: !0 }), l(() => {
|
|
3913
|
+
ce(), Da();
|
|
3914
|
+
}), n({
|
|
3915
|
+
switchMode: D,
|
|
3916
|
+
getCurrentMode: O,
|
|
3917
|
+
getCurrentEngine: te,
|
|
3918
|
+
get2dInstance: k,
|
|
3919
|
+
get3dInstance: ee,
|
|
3920
|
+
resize: A,
|
|
3921
|
+
refreshScene: ne,
|
|
3922
|
+
moveView: re,
|
|
3923
|
+
registerModelInfoQuery: ie
|
|
3924
|
+
}), (t, n) => (f(), i("section", Os, [a("div", ks, [b.value ? (f(), i("div", {
|
|
3925
|
+
key: 0,
|
|
3926
|
+
class: c(["lr-map-viewer__layer", T("2d")])
|
|
3927
|
+
}, [o(Po, { config: S.value }, null, 8, ["config"])], 2)) : r("", !0), x.value ? (f(), i("div", {
|
|
3928
|
+
key: 1,
|
|
3929
|
+
class: c(["lr-map-viewer__layer", T("3d")])
|
|
3930
|
+
}, [o(Ds, {
|
|
3931
|
+
ref_key: "lr3dViewerRef",
|
|
3932
|
+
ref: g,
|
|
3933
|
+
config: C.value,
|
|
3934
|
+
"show-region-panel": e.showRegionPanel,
|
|
3935
|
+
"show-debug-panel": e.showDebugPanel
|
|
3936
|
+
}, null, 8, [
|
|
3937
|
+
"config",
|
|
3938
|
+
"show-region-panel",
|
|
3939
|
+
"show-debug-panel"
|
|
3940
|
+
])], 2)) : r("", !0)])]));
|
|
3941
|
+
}
|
|
3942
|
+
}, [["__scopeId", "data-v-bb4c5174"]]), js = "LrMapViewer";
|
|
3943
|
+
function Ms(e) {
|
|
3944
|
+
!e || typeof e.component != "function" || e.component(js, As);
|
|
3945
|
+
}
|
|
3946
|
+
var Ns = { install: Ms };
|
|
3947
|
+
//#endregion
|
|
3948
|
+
export { Po as Lr2dViewer, Ds as Lr3dViewer, As as LrMapViewer, ko as canSwitchMapMode, P as createLr2dAdapter, Oa as createLr3dInstance, Ns as default, ce as destroyLr2dAdapter, Da as destroyLr3dInstance, A as getDefaultLr2dConfig, _e as getDefaultLr3dConfig, F as getLr2dAdapterInstance, ne as getLr2dConfig, re as getLr2dMapOptions, Aa as getLr3dApp, ve as getLr3dConfig, ja as getLr3dEditor, xa as getLr3dGlobal, Ta as getLr3dInstance, Ma as getLr3dInterfaces, k as getMissingLr2dOptionFields, O as getRequiredLr2dOptionFields, To as getSupportedMapModes, Fo as gisManualLoadLabels, Ms as install, ee as isLr2dConfigReady, Go as loadGisCloudDataSource, Ko as loadGisManualData, vo as loadLr3dBoundaryData, ho as loadLr3dCloudDataSource, xo as loadLr3dCoalData, _o as loadLr3dCoalResversData, So as loadLr3dGeoFaultData, yo as loadLr3dGeologyData, bo as loadLr3dPointSymbolData, go as loadLr3dRegionAssistData, Sa as loadLr3dSdk, Eo as normalizeMapMode, Fa as refreshLr3dSceneGraph, ae as resetLr2dConfig, we as resetLr3dConfig, le as resizeLr2dAdapter, Na as resizeLr3d, Ea as resizeLr3dInstance, Oo as resolveInitialMapMode, j as resolveLr2dConfig, Te as resolveLr3dConfig, Do as resolveMapModes, Ia as runLr3dTool, ie as setLr2dConfig, Ce as setLr3dConfig };
|