@eyeon/map 2.0.19 → 2.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/MapViewer.css +1 -1
- package/dist/assets/index.css +1 -1
- package/dist/chunks/MapViewer.js +449 -446
- package/dist/chunks/MapViewer.js.map +1 -1
- package/dist/chunks/responsive.js +967 -929
- package/dist/chunks/responsive.js.map +1 -1
- package/dist/chunks/wheelZoom.js +33 -33
- package/dist/chunks/wheelZoom.js.map +1 -1
- package/dist/core/assignment.d.ts +6 -2
- package/dist/core/assignment.d.ts.map +1 -1
- package/dist/core/index.js +185 -183
- package/dist/core/layerStyles.d.ts +19 -5
- package/dist/core/layerStyles.d.ts.map +1 -1
- package/dist/core/types.d.ts +1 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/editor/GridPrefsControl.d.ts +16 -0
- package/dist/editor/GridPrefsControl.d.ts.map +1 -0
- package/dist/editor/MapEditor.d.ts +17 -1
- package/dist/editor/MapEditor.d.ts.map +1 -1
- package/dist/editor/canvas/EditorCanvas.d.ts +5 -1
- package/dist/editor/canvas/EditorCanvas.d.ts.map +1 -1
- package/dist/editor/canvas/editorHover.d.ts +12 -0
- package/dist/editor/canvas/editorHover.d.ts.map +1 -1
- package/dist/editor/dirty.d.ts +24 -0
- package/dist/editor/dirty.d.ts.map +1 -0
- package/dist/editor/draftOps.d.ts.map +1 -1
- package/dist/editor/geometryEdit.d.ts +2 -0
- package/dist/editor/geometryEdit.d.ts.map +1 -1
- package/dist/editor/index.css +70 -4
- package/dist/editor/index.d.ts +1 -0
- package/dist/editor/index.d.ts.map +1 -1
- package/dist/editor/index.js +4326 -3923
- package/dist/editor/index.js.map +1 -1
- package/dist/editor/labels.d.ts.map +1 -1
- package/dist/editor/ortho.d.ts +20 -0
- package/dist/editor/ortho.d.ts.map +1 -0
- package/dist/editor/panels/AssignForm.d.ts.map +1 -1
- package/dist/editor/panels/EntranceIconForm.d.ts.map +1 -1
- package/dist/editor/panels/LeftRail.d.ts +1 -1
- package/dist/editor/panels/LeftRail.d.ts.map +1 -1
- package/dist/editor/railAssignments.d.ts +5 -1
- package/dist/editor/railAssignments.d.ts.map +1 -1
- package/dist/editor/railListCopy.d.ts +1 -1
- package/dist/editor/railListCopy.d.ts.map +1 -1
- package/dist/editor/routeStubs.d.ts +10 -0
- package/dist/editor/routeStubs.d.ts.map +1 -1
- package/dist/editor/shapeCopy.d.ts.map +1 -1
- package/dist/editor/tools.d.ts +12 -4
- package/dist/editor/tools.d.ts.map +1 -1
- package/dist/viewer/components/SvgVectorLayer.d.ts.map +1 -1
- package/dist/viewer/index.js +2 -2
- package/dist/viewer/pointer.d.ts.map +1 -1
- package/package.json +4 -4
- package/dist/test-maps/shops-at-south-town/BASE - Shops At South Town.ai +42 -26689
- package/dist/test-maps/shops-at-south-town/LF - Shops At South Town.ai +0 -4459
- package/dist/test-maps/shops-at-south-town/SVG/BASE - Shops At South Town.svg +0 -567
- package/dist/test-maps/shops-at-south-town/SVG/LF - Shops At South Town.svg +0 -238
- package/dist/test-maps/shops-at-south-town/SVG/escalator.svg +0 -13
- package/dist/test-maps/shops-at-south-town/UF - Shops At South Town.ai +2 -4130
package/dist/chunks/MapViewer.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx as O, jsxs as ne, Fragment as _t } from "react/jsx-runtime";
|
|
2
2
|
import Cn, { useId as On, useRef as ue, useState as he, useMemo as ie, useCallback as ge, useEffect as me, useLayoutEffect as $t, useImperativeHandle as Ln, Suspense as Nn } from "react";
|
|
3
|
-
import {
|
|
4
|
-
import { useThree as ze, useFrame as cn, Canvas as
|
|
5
|
-
import { Text as Vt, Html as sn, OrthographicCamera as
|
|
3
|
+
import { aF as En, c5 as Sn, aK as Tn, aL as kn, u as en, a2 as Pn, aN as zn, bJ as Rn, n as Vn, O as Gn, m as Dn, cx as Wn, cB as Fn, cy as Hn, aW as nt, k as Un, bR as tn, b7 as Bn, aw as Zn, a0 as Xn, ak as Yn, bU as kt, aI as Be, bs as Pt, bf as qn, a as Kn, D as jn, _ as Qn, $ as Jn, cw as _n, b9 as Re, al as $n, bX as er, bQ as wt, cq as tr, c as nr, bb as rr, aP as or, b6 as ir, b4 as pt, a$ as yt, b8 as gt, aR as cr, B as sr, c8 as ar, c2 as nn, au as rn, J as lr, cs as ur, a6 as fr, b3 as rt, by as dr, cl as on, cF as mr, cG as hr, aH as pr, bw as yr, bv as zt, ao as ot, cn as He, cr as it, aD as gr, aA as Ar, bz as xr, aj as vr, cI as br, cD as Mr, cu as wr, bn as Ir, cm as Cr, M as Or, cC as Lr, c3 as Nr, aC as ct, cH as Er, ap as Sr, bj as Rt, ax as Tr, bZ as kr } from "./responsive.js";
|
|
4
|
+
import { useThree as ze, useFrame as cn, Canvas as Pr } from "@react-three/fiber";
|
|
5
|
+
import { Text as Vt, Html as sn, OrthographicCamera as zr, OrbitControls as Rr } from "@react-three/drei";
|
|
6
6
|
import * as oe from "three";
|
|
7
|
-
import { Loader as
|
|
7
|
+
import { Loader as Vr, FileLoader as Gr, Matrix3 as Pe, Vector2 as de, Vector3 as Ze, Box2 as Dr, ShapeUtils as Wr, Shape as Fr, Path as st, BufferGeometry as Hr, Float32BufferAttribute as at, SRGBColorSpace as Ur, ShapePath as Se } from "three";
|
|
8
8
|
import { createPortal as an } from "react-dom";
|
|
9
|
-
function
|
|
9
|
+
function Br({
|
|
10
10
|
levels: e,
|
|
11
11
|
activeLevelId: t,
|
|
12
12
|
onActiveLevelChange: n,
|
|
@@ -73,7 +73,7 @@ function Zr({
|
|
|
73
73
|
] })
|
|
74
74
|
] }) });
|
|
75
75
|
}
|
|
76
|
-
const
|
|
76
|
+
const Ji = "Montserrat, sans-serif", Gt = 1.15, ve = {
|
|
77
77
|
Entrance: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
|
|
78
78
|
<path fill="none" stroke="#444444" stroke-width="2.25" stroke-linecap="round" stroke-linejoin="round" d="M8.25 3.75h8.25A3.5 3.5 0 0 1 20 7.25v9.5a3.5 3.5 0 0 1-3.5 3.5H8.25"/>
|
|
79
79
|
<path fill="none" stroke="#444444" stroke-width="2.25" stroke-linecap="round" stroke-linejoin="round" d="M3.5 12h12.35M12.2 7.85 16.4 12l-4.2 4.15"/>
|
|
@@ -167,75 +167,75 @@ const _i = "Montserrat, sans-serif", Gt = 1.15, xe = {
|
|
|
167
167
|
{
|
|
168
168
|
name: "ATM",
|
|
169
169
|
type: "atm",
|
|
170
|
-
svgCode:
|
|
170
|
+
svgCode: ve.ATM
|
|
171
171
|
},
|
|
172
172
|
{
|
|
173
173
|
name: "Management",
|
|
174
174
|
type: "management",
|
|
175
|
-
svgCode:
|
|
175
|
+
svgCode: ve.Management
|
|
176
176
|
},
|
|
177
177
|
{
|
|
178
178
|
name: "Kids Area",
|
|
179
179
|
type: "playarea",
|
|
180
|
-
svgCode:
|
|
180
|
+
svgCode: ve.PlayArea
|
|
181
181
|
},
|
|
182
182
|
{
|
|
183
183
|
name: "Restroom",
|
|
184
184
|
type: "restroom",
|
|
185
|
-
svgCode:
|
|
185
|
+
svgCode: ve.RestRoom
|
|
186
186
|
},
|
|
187
187
|
{
|
|
188
188
|
name: "Family Restroom",
|
|
189
189
|
type: "family-restroom",
|
|
190
|
-
svgCode:
|
|
190
|
+
svgCode: ve.FamilyRestRoom
|
|
191
191
|
},
|
|
192
192
|
{
|
|
193
193
|
name: "Elevator",
|
|
194
194
|
type: "elevator",
|
|
195
|
-
svgCode:
|
|
195
|
+
svgCode: ve.Elevator
|
|
196
196
|
},
|
|
197
197
|
{
|
|
198
198
|
name: "Security",
|
|
199
199
|
type: "security",
|
|
200
|
-
svgCode:
|
|
200
|
+
svgCode: ve.Security
|
|
201
201
|
},
|
|
202
202
|
{
|
|
203
203
|
name: "Escalator",
|
|
204
204
|
type: "escalator",
|
|
205
|
-
svgCode:
|
|
205
|
+
svgCode: ve.Escalator
|
|
206
206
|
},
|
|
207
207
|
{
|
|
208
208
|
name: "Child Stroller",
|
|
209
209
|
type: "child-stroller",
|
|
210
|
-
svgCode:
|
|
210
|
+
svgCode: ve.ChildStroller
|
|
211
211
|
},
|
|
212
212
|
{
|
|
213
213
|
name: "Vending Machine",
|
|
214
214
|
type: "vending-machine",
|
|
215
|
-
svgCode:
|
|
215
|
+
svgCode: ve.VendingMachine
|
|
216
216
|
},
|
|
217
217
|
{
|
|
218
218
|
name: "Stairs",
|
|
219
219
|
type: "stairs",
|
|
220
|
-
svgCode:
|
|
220
|
+
svgCode: ve.Stairs
|
|
221
221
|
},
|
|
222
222
|
{
|
|
223
223
|
name: "Charging Station",
|
|
224
224
|
type: "charging-station",
|
|
225
|
-
svgCode:
|
|
225
|
+
svgCode: ve.ChargingStation
|
|
226
226
|
},
|
|
227
227
|
{
|
|
228
228
|
name: "Wheelchair",
|
|
229
229
|
type: "wheelchair",
|
|
230
|
-
svgCode:
|
|
230
|
+
svgCode: ve.WheelChair
|
|
231
231
|
}
|
|
232
|
-
],
|
|
232
|
+
], Zr = /* @__PURE__ */ new Set([
|
|
233
233
|
"elevator",
|
|
234
234
|
"escalator"
|
|
235
235
|
]), It = ln.filter(
|
|
236
|
-
(e) => !
|
|
237
|
-
),
|
|
238
|
-
function
|
|
236
|
+
(e) => !Zr.has(e.type)
|
|
237
|
+
), Xr = ve.Kiosk, Yr = ve.Entrance, qr = ve.EscalatorUp, Kr = ve.EscalatorDown;
|
|
238
|
+
function jr(e) {
|
|
239
239
|
return It.some((t) => t.type === e);
|
|
240
240
|
}
|
|
241
241
|
function un(e) {
|
|
@@ -243,7 +243,7 @@ function un(e) {
|
|
|
243
243
|
}
|
|
244
244
|
function Ct(e) {
|
|
245
245
|
var t;
|
|
246
|
-
return e === "kiosk" ?
|
|
246
|
+
return e === "kiosk" ? Xr : e === "entrance" ? Yr : e === "escalator-up" ? qr : e === "escalator-down" ? Kr : (t = un(e)) == null ? void 0 : t.svgCode;
|
|
247
247
|
}
|
|
248
248
|
function fn(e, t) {
|
|
249
249
|
const n = t.startsWith("#") ? t : `#${t}`;
|
|
@@ -253,35 +253,35 @@ function Ot(e, t) {
|
|
|
253
253
|
const n = t ? fn(e, t) : e;
|
|
254
254
|
return `data:image/svg+xml;charset=utf-8,${encodeURIComponent(n)}`;
|
|
255
255
|
}
|
|
256
|
-
function
|
|
256
|
+
function Qr(e) {
|
|
257
257
|
const t = Ct("entrance");
|
|
258
258
|
if (t)
|
|
259
259
|
return Ot(t, e);
|
|
260
260
|
}
|
|
261
|
-
function
|
|
261
|
+
function _i() {
|
|
262
262
|
return It.map((e) => ({
|
|
263
263
|
value: e.type,
|
|
264
264
|
label: e.name
|
|
265
265
|
}));
|
|
266
266
|
}
|
|
267
|
-
function
|
|
267
|
+
function $i(e, t) {
|
|
268
268
|
var n;
|
|
269
269
|
return e == null ? "" : ((n = t.find((i) => i.id === e)) == null ? void 0 : n.code) ?? "";
|
|
270
270
|
}
|
|
271
|
-
function
|
|
271
|
+
function ec(e, t) {
|
|
272
272
|
const n = t.find(
|
|
273
273
|
(i) => i.isActive !== !1 && i.code === e
|
|
274
274
|
);
|
|
275
275
|
return (n == null ? void 0 : n.id) ?? null;
|
|
276
276
|
}
|
|
277
|
-
function
|
|
277
|
+
function Jr(e, t, n) {
|
|
278
278
|
const i = Pn(e, t);
|
|
279
279
|
if (!i) return;
|
|
280
280
|
const s = Ct(i);
|
|
281
281
|
if (s)
|
|
282
282
|
return Ot(s, n);
|
|
283
283
|
}
|
|
284
|
-
const
|
|
284
|
+
const _r = en.connector, $r = "#94a3b8";
|
|
285
285
|
function dn(e, t) {
|
|
286
286
|
const n = e.levelIndex ?? e.ordering, i = t.levelIndex ?? t.ordering;
|
|
287
287
|
if (n == null || i == null || i === n) {
|
|
@@ -290,7 +290,7 @@ function dn(e, t) {
|
|
|
290
290
|
}
|
|
291
291
|
return i > n ? "up" : "down";
|
|
292
292
|
}
|
|
293
|
-
function
|
|
293
|
+
function eo(e, t, n) {
|
|
294
294
|
var g, w;
|
|
295
295
|
const i = n.find((p) => p.id === t);
|
|
296
296
|
if (!i) return null;
|
|
@@ -306,35 +306,35 @@ function to(e, t, n) {
|
|
|
306
306
|
});
|
|
307
307
|
return u ? dn(i, u) : null;
|
|
308
308
|
}
|
|
309
|
-
function
|
|
309
|
+
function to(e) {
|
|
310
310
|
return e === "up" ? "escalator-up" : e === "down" ? "escalator-down" : "escalator";
|
|
311
311
|
}
|
|
312
|
-
function
|
|
312
|
+
function no(e) {
|
|
313
313
|
const t = (e.sourceSvgId ?? e.key).trim().toLowerCase().replace(/_/g, "-");
|
|
314
314
|
return t === "escalator" || t.startsWith("escalator-") ? "escalator" : t === "elevator" || t.startsWith("elevator-") ? "elevator" : null;
|
|
315
315
|
}
|
|
316
|
-
function
|
|
316
|
+
function ro(e, t, n) {
|
|
317
317
|
const i = Ct(e);
|
|
318
318
|
if (!i) return;
|
|
319
|
-
const s = n != null && n.trim() ? n.trim() : t ?
|
|
319
|
+
const s = n != null && n.trim() ? n.trim() : t ? _r : $r;
|
|
320
320
|
return Ot(i, s);
|
|
321
321
|
}
|
|
322
322
|
function mn(e, t, n, i) {
|
|
323
|
-
const s = e === "escalator" ?
|
|
324
|
-
return
|
|
323
|
+
const s = e === "escalator" ? to(i) : e;
|
|
324
|
+
return ro(s, t, n);
|
|
325
325
|
}
|
|
326
|
-
function
|
|
326
|
+
function oo(e) {
|
|
327
327
|
const t = /* @__PURE__ */ new Set();
|
|
328
328
|
for (const n of e)
|
|
329
329
|
n.shapeId != null && n.connectorId != null && t.add(n.shapeId);
|
|
330
330
|
return t;
|
|
331
331
|
}
|
|
332
|
-
function
|
|
332
|
+
function io(e, t) {
|
|
333
333
|
if (e.orphanedAt) return null;
|
|
334
|
-
const n =
|
|
334
|
+
const n = no(e);
|
|
335
335
|
return !n || !t.has(e.id) ? null : n;
|
|
336
336
|
}
|
|
337
|
-
const so = "data:font/woff;base64,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", At = so;
|
|
337
|
+
const co = "data:font/woff;base64,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", At = co;
|
|
338
338
|
let Dt = !1;
|
|
339
339
|
function hn() {
|
|
340
340
|
if (Dt || typeof document > "u" || !("fonts" in document))
|
|
@@ -344,13 +344,13 @@ function hn() {
|
|
|
344
344
|
});
|
|
345
345
|
}
|
|
346
346
|
hn();
|
|
347
|
-
const
|
|
348
|
-
function
|
|
347
|
+
const so = 8;
|
|
348
|
+
function ao(e, t) {
|
|
349
349
|
const n = t.trim().toLowerCase();
|
|
350
350
|
return n ? e.filter((i) => `${i.label} ${i.hint ?? ""}`.toLowerCase().includes(n)) : e;
|
|
351
351
|
}
|
|
352
|
-
function
|
|
353
|
-
return t ?? e >=
|
|
352
|
+
function lo(e, t) {
|
|
353
|
+
return t ?? e >= so;
|
|
354
354
|
}
|
|
355
355
|
function Wt() {
|
|
356
356
|
return /* @__PURE__ */ O(
|
|
@@ -375,7 +375,7 @@ function Wt() {
|
|
|
375
375
|
}
|
|
376
376
|
);
|
|
377
377
|
}
|
|
378
|
-
function
|
|
378
|
+
function xt({
|
|
379
379
|
value: e,
|
|
380
380
|
options: t,
|
|
381
381
|
onChange: n,
|
|
@@ -384,11 +384,11 @@ function vt({
|
|
|
384
384
|
searchable: u,
|
|
385
385
|
ariaLabel: g
|
|
386
386
|
}) {
|
|
387
|
-
const w = On(), p = ue(null), y = ue(null), G = ue(null), N = ue(null), V = ue(null), [h, S] = he(!1), [I,
|
|
388
|
-
() =>
|
|
387
|
+
const w = On(), p = ue(null), y = ue(null), G = ue(null), N = ue(null), V = ue(null), [h, S] = he(!1), [I, v] = he(""), [T, _] = he(0), [P, q] = he(null), B = lo(t.length, u), E = t.find((A) => A.value === e), Z = ie(
|
|
388
|
+
() => ao(t, B && h ? I : ""),
|
|
389
389
|
[h, t, I, B]
|
|
390
390
|
), Y = ge(() => {
|
|
391
|
-
S(!1),
|
|
391
|
+
S(!1), v(""), _(0);
|
|
392
392
|
}, []), X = ge(
|
|
393
393
|
(A) => {
|
|
394
394
|
n(A), Y();
|
|
@@ -535,7 +535,7 @@ function vt({
|
|
|
535
535
|
placeholder: s,
|
|
536
536
|
value: h ? I : (E == null ? void 0 : E.label) ?? "",
|
|
537
537
|
onChange: (A) => {
|
|
538
|
-
|
|
538
|
+
v(A.target.value), h || S(!0);
|
|
539
539
|
},
|
|
540
540
|
onFocus: () => {
|
|
541
541
|
i || S(!0);
|
|
@@ -606,7 +606,7 @@ function Lt(e) {
|
|
|
606
606
|
t.lineTo(e[n].x, e[n].y);
|
|
607
607
|
return t.closePath(), t;
|
|
608
608
|
}
|
|
609
|
-
function
|
|
609
|
+
function uo(e) {
|
|
610
610
|
if (e.length < 3) return null;
|
|
611
611
|
const t = new oe.Path();
|
|
612
612
|
t.moveTo(e[0].x, e[0].y);
|
|
@@ -614,18 +614,18 @@ function fo(e) {
|
|
|
614
614
|
t.lineTo(e[n].x, e[n].y);
|
|
615
615
|
return t.closePath(), t;
|
|
616
616
|
}
|
|
617
|
-
function
|
|
617
|
+
function fo(e, t) {
|
|
618
618
|
const n = Lt(e);
|
|
619
619
|
if (!n) return null;
|
|
620
620
|
for (const i of zn(e, t)) {
|
|
621
|
-
const s =
|
|
621
|
+
const s = uo(i);
|
|
622
622
|
s && n.holes.push(s);
|
|
623
623
|
}
|
|
624
624
|
return n;
|
|
625
625
|
}
|
|
626
626
|
function Ft() {
|
|
627
627
|
}
|
|
628
|
-
function
|
|
628
|
+
function mo(e) {
|
|
629
629
|
const n = Math.max(48, Math.round(256 * Math.max(e, 0.2))), i = document.createElement("canvas");
|
|
630
630
|
i.width = n, i.height = 256;
|
|
631
631
|
const s = i.getContext("2d");
|
|
@@ -636,8 +636,8 @@ function ho(e) {
|
|
|
636
636
|
const g = new oe.CanvasTexture(i);
|
|
637
637
|
return g.colorSpace = oe.SRGBColorSpace, g.anisotropy = 4, g.needsUpdate = !0, g;
|
|
638
638
|
}
|
|
639
|
-
function
|
|
640
|
-
const t = ie(() => Lt(e), [e]), n = ie(() => Rn(e), [e]), i = Math.max(8,
|
|
639
|
+
function ho({ polygon: e }) {
|
|
640
|
+
const t = ie(() => Lt(e), [e]), n = ie(() => Rn(e), [e]), i = Math.max(8, po(n)), s = ie(() => {
|
|
641
641
|
if (e.length < 2) return null;
|
|
642
642
|
const g = e[0], w = [
|
|
643
643
|
...e.map((N) => new oe.Vector3(N.x, N.y, 0.05)),
|
|
@@ -660,7 +660,7 @@ function po({ polygon: e }) {
|
|
|
660
660
|
);
|
|
661
661
|
const u = ie(() => {
|
|
662
662
|
const g = Math.max(n.maxX - n.minX, 1), w = Math.max(n.maxY - n.minY, 1);
|
|
663
|
-
return
|
|
663
|
+
return mo(g / w);
|
|
664
664
|
}, [n]);
|
|
665
665
|
return me(() => () => u.dispose(), [u]), !t || !s ? null : /* @__PURE__ */ ne("group", { children: [
|
|
666
666
|
/* @__PURE__ */ ne(
|
|
@@ -699,50 +699,51 @@ function po({ polygon: e }) {
|
|
|
699
699
|
s ? /* @__PURE__ */ O("primitive", { object: s }) : null
|
|
700
700
|
] });
|
|
701
701
|
}
|
|
702
|
-
function
|
|
702
|
+
function po(e) {
|
|
703
703
|
const t = Math.min(e.maxX - e.minX, e.maxY - e.minY);
|
|
704
704
|
return Math.min(18, Math.max(7, t * 0.08));
|
|
705
705
|
}
|
|
706
|
-
function
|
|
706
|
+
function yo({
|
|
707
707
|
polygons: e
|
|
708
708
|
}) {
|
|
709
|
-
return e.length === 0 ? null : /* @__PURE__ */ O("group", { children: e.map((t, n) => /* @__PURE__ */ O(
|
|
709
|
+
return e.length === 0 ? null : /* @__PURE__ */ O("group", { children: e.map((t, n) => /* @__PURE__ */ O(ho, { polygon: t }, `opening-void-${n}`)) });
|
|
710
710
|
}
|
|
711
|
-
const
|
|
711
|
+
const go = [
|
|
712
712
|
"unit",
|
|
713
713
|
"amenity",
|
|
714
714
|
"kiosk_screen",
|
|
715
715
|
"connector",
|
|
716
716
|
"entrance",
|
|
717
|
-
"parking_zone"
|
|
717
|
+
"parking_zone",
|
|
718
|
+
"custom"
|
|
718
719
|
];
|
|
719
720
|
function pn(e) {
|
|
720
|
-
return
|
|
721
|
+
return go.includes(e);
|
|
721
722
|
}
|
|
722
723
|
function yn(e, t = "PORTAL_ASSIGN", n) {
|
|
723
724
|
return pn(e) && Wn({ assignment: n ?? void 0 }, t);
|
|
724
725
|
}
|
|
725
|
-
function
|
|
726
|
+
function Ao(e, t, n) {
|
|
726
727
|
return t === e || n.includes(e);
|
|
727
728
|
}
|
|
728
729
|
function xo(e, t) {
|
|
729
730
|
return t ?? e ?? null;
|
|
730
731
|
}
|
|
731
|
-
function
|
|
732
|
+
function vo(e, t = "PORTAL_ASSIGN", n) {
|
|
732
733
|
return yn(e, t, n) ? "pointer" : "";
|
|
733
734
|
}
|
|
734
735
|
function lt(e, t) {
|
|
735
736
|
e && e.classList.toggle("is-hover-shape", t === "pointer");
|
|
736
737
|
}
|
|
737
|
-
function
|
|
738
|
+
function bo(e, t, n) {
|
|
738
739
|
return !n || !pn(e) ? t : t < 0.08 ? 0.28 : t;
|
|
739
740
|
}
|
|
740
|
-
function
|
|
741
|
+
function Mo(e) {
|
|
741
742
|
const t = e.nativeEvent, n = typeof e.offsetX == "number" ? e.offsetX : t == null ? void 0 : t.offsetX, i = typeof e.offsetY == "number" ? e.offsetY : t == null ? void 0 : t.offsetY;
|
|
742
743
|
return typeof n != "number" || typeof i != "number" || !Number.isFinite(n) || !Number.isFinite(i) ? null : { x: n, y: i };
|
|
743
744
|
}
|
|
744
|
-
const
|
|
745
|
-
function
|
|
745
|
+
const vt = 5;
|
|
746
|
+
function wo() {
|
|
746
747
|
return { pointerId: null, x: 0, y: 0, maxDist: 0, active: !1 };
|
|
747
748
|
}
|
|
748
749
|
function Xe(e) {
|
|
@@ -757,26 +758,26 @@ function gn(e, t, n, i = null) {
|
|
|
757
758
|
const s = Math.hypot(t - e.x, n - e.y);
|
|
758
759
|
s > e.maxDist && (e.maxDist = s);
|
|
759
760
|
}
|
|
760
|
-
function
|
|
761
|
+
function Io(e, t, n, i = null) {
|
|
761
762
|
e.active && (e.pointerId != null && i != null && i !== e.pointerId || (gn(e, t, n, i), e.active = !1, e.pointerId = null));
|
|
762
763
|
}
|
|
763
|
-
function
|
|
764
|
+
function Co(e, t) {
|
|
764
765
|
const n = Number.isFinite(t) ? t : 0;
|
|
765
|
-
return Math.max(e, n) <=
|
|
766
|
+
return Math.max(e, n) <= vt;
|
|
766
767
|
}
|
|
767
|
-
function
|
|
768
|
+
function Oo(e, t) {
|
|
768
769
|
if ((t.button ?? 0) !== 0) return !1;
|
|
769
770
|
if (!e) return !0;
|
|
770
771
|
const n = t.x - e.x, i = t.y - e.y;
|
|
771
|
-
return n * n + i * i <=
|
|
772
|
+
return n * n + i * i <= vt * vt;
|
|
772
773
|
}
|
|
773
|
-
function
|
|
774
|
+
function Lo(e, t, n, i, s) {
|
|
774
775
|
return er(e, t, n, i, s);
|
|
775
776
|
}
|
|
776
|
-
function
|
|
777
|
+
function No(e) {
|
|
777
778
|
return Lt(e);
|
|
778
779
|
}
|
|
779
|
-
function
|
|
780
|
+
function Eo({
|
|
780
781
|
shape: e,
|
|
781
782
|
extrude: t,
|
|
782
783
|
color: n
|
|
@@ -793,7 +794,7 @@ function So({
|
|
|
793
794
|
/* @__PURE__ */ O("lineBasicMaterial", { color: n, depthTest: !1 })
|
|
794
795
|
] });
|
|
795
796
|
}
|
|
796
|
-
function
|
|
797
|
+
function So({
|
|
797
798
|
position: e
|
|
798
799
|
}) {
|
|
799
800
|
return /* @__PURE__ */ O(
|
|
@@ -813,7 +814,7 @@ function To({
|
|
|
813
814
|
}
|
|
814
815
|
);
|
|
815
816
|
}
|
|
816
|
-
function
|
|
817
|
+
function To({
|
|
817
818
|
level: e,
|
|
818
819
|
levels: t,
|
|
819
820
|
theme: n,
|
|
@@ -830,7 +831,7 @@ function ko({
|
|
|
830
831
|
host: h = "PORTAL_ASSIGN",
|
|
831
832
|
kioskOriginShapeId: S = null,
|
|
832
833
|
showHoverTooltip: I = !1,
|
|
833
|
-
onHoverTooltip:
|
|
834
|
+
onHoverTooltip: v
|
|
834
835
|
}) {
|
|
835
836
|
const [T, _] = he(null), P = xo(
|
|
836
837
|
g,
|
|
@@ -838,25 +839,25 @@ function ko({
|
|
|
838
839
|
);
|
|
839
840
|
me(
|
|
840
841
|
() => () => {
|
|
841
|
-
lt(w == null ? void 0 : w.current, ""),
|
|
842
|
+
lt(w == null ? void 0 : w.current, ""), v == null || v(null);
|
|
842
843
|
},
|
|
843
|
-
[w,
|
|
844
|
+
[w, v]
|
|
844
845
|
);
|
|
845
846
|
const q = (d, A) => {
|
|
846
847
|
var b;
|
|
847
|
-
if (!I || !
|
|
848
|
+
if (!I || !v) return;
|
|
848
849
|
if ((A.buttons ?? ((b = A.nativeEvent) == null ? void 0 : b.buttons) ?? 0) > 0) {
|
|
849
|
-
|
|
850
|
+
v(null);
|
|
850
851
|
return;
|
|
851
852
|
}
|
|
852
|
-
const W =
|
|
853
|
+
const W = Mo(A), k = tr(d, V, N);
|
|
853
854
|
if (!W || !k) {
|
|
854
|
-
|
|
855
|
+
v(null, { leavingShapeId: d.id });
|
|
855
856
|
return;
|
|
856
857
|
}
|
|
857
|
-
|
|
858
|
+
v({ shapeId: d.id, text: k, x: W.x, y: W.y });
|
|
858
859
|
}, B = ie(() => Fn(e), [e]), E = ie(
|
|
859
|
-
() =>
|
|
860
|
+
() => oo(e.anchors),
|
|
860
861
|
[e.anchors]
|
|
861
862
|
), Z = ie(
|
|
862
863
|
() => e.shapes.filter(
|
|
@@ -875,10 +876,10 @@ function ko({
|
|
|
875
876
|
const A = d.kind === "unit" ? n.STORE_RADIUS : 0, R = Bn(d.kind) && B.length > 0, k = d.geometry.polygons.map(
|
|
876
877
|
(ee) => A > 0 ? Zn(ee, A) : ee
|
|
877
878
|
).map(
|
|
878
|
-
(ee) => R ?
|
|
879
|
+
(ee) => R ? fo(ee, B) : No(ee)
|
|
879
880
|
).filter((ee) => ee != null);
|
|
880
881
|
if (k.length === 0) return null;
|
|
881
|
-
const b =
|
|
882
|
+
const b = Lo(
|
|
882
883
|
d.kind,
|
|
883
884
|
n,
|
|
884
885
|
h,
|
|
@@ -903,14 +904,14 @@ function ko({
|
|
|
903
904
|
),
|
|
904
905
|
[Z]
|
|
905
906
|
), Q = ie(() => Z.flatMap((d) => {
|
|
906
|
-
const A =
|
|
907
|
+
const A = io(d, E);
|
|
907
908
|
if (!A) return [];
|
|
908
909
|
const R = Yn(d), W = kt(
|
|
909
910
|
d.assignment,
|
|
910
911
|
n,
|
|
911
912
|
R.iconColor,
|
|
912
913
|
d.kind
|
|
913
|
-
), k = A === "escalator" ?
|
|
914
|
+
), k = A === "escalator" ? eo(d.id, e.id, t ?? [e]) : null, b = mn(A, !0, W, k);
|
|
914
915
|
if (!b) return [];
|
|
915
916
|
const $ = Be(d.geometry);
|
|
916
917
|
return [
|
|
@@ -952,7 +953,7 @@ function ko({
|
|
|
952
953
|
);
|
|
953
954
|
}),
|
|
954
955
|
L.map((d) => {
|
|
955
|
-
const A = Be(d.geometry), R = (A.minX + A.maxX) / 2 + (d.label.offsetX ?? 0), W = (A.minY + A.maxY) / 2 + (d.label.offsetY ?? 0), k = (d.label.rotate ?? 0) * Math.PI / 180, b = d.label.size || Kn, $ =
|
|
956
|
+
const A = Be(d.geometry), R = (A.minX + A.maxX) / 2 + (d.label.offsetX ?? 0), W = (A.minY + A.maxY) / 2 + (d.label.offsetY ?? 0), k = (d.label.rotate ?? 0) * Math.PI / 180, b = d.label.size || Kn, $ = Qr(
|
|
956
957
|
d.label.color ?? n.STORE_TEXT_COLOR
|
|
957
958
|
);
|
|
958
959
|
return $ ? /* @__PURE__ */ O(
|
|
@@ -973,11 +974,11 @@ function ko({
|
|
|
973
974
|
n,
|
|
974
975
|
d.label.color,
|
|
975
976
|
d.kind
|
|
976
|
-
), fe = Qn(d.assignment, null, d.label) ??
|
|
977
|
+
), fe = Qn(d.assignment, null, d.label) ?? Jr(
|
|
977
978
|
d.assignment,
|
|
978
979
|
N,
|
|
979
980
|
ae
|
|
980
|
-
),
|
|
981
|
+
), xe = (r = d.label.text) == null ? void 0 : r.trim(), m = Pt(d.label.align), l = [R, W, ee];
|
|
981
982
|
return /* @__PURE__ */ ne(Cn.Fragment, { children: [
|
|
982
983
|
fe ? /* @__PURE__ */ O(
|
|
983
984
|
ut,
|
|
@@ -1002,10 +1003,10 @@ function ko({
|
|
|
1002
1003
|
lineHeight: Gt,
|
|
1003
1004
|
scale: [1, -1, 1],
|
|
1004
1005
|
raycast: An,
|
|
1005
|
-
children:
|
|
1006
|
+
children: xe
|
|
1006
1007
|
}
|
|
1007
1008
|
),
|
|
1008
|
-
d.id === S ? /* @__PURE__ */ O(
|
|
1009
|
+
d.id === S ? /* @__PURE__ */ O(So, { position: [R, W, ee + 0.02] }) : null
|
|
1009
1010
|
] }, `overlay-${d.id}`);
|
|
1010
1011
|
}),
|
|
1011
1012
|
Q.map(({ shape: d, url: A, width: R, rotation: W, x: k, y: b }) => /* @__PURE__ */ O(
|
|
@@ -1018,22 +1019,22 @@ function ko({
|
|
|
1018
1019
|
},
|
|
1019
1020
|
`connector-icon-${d.id}`
|
|
1020
1021
|
)),
|
|
1021
|
-
/* @__PURE__ */ O(
|
|
1022
|
+
/* @__PURE__ */ O(yo, { polygons: B }),
|
|
1022
1023
|
Y.map(({ shape: d, threeShapes: A, color: R, extrude: W }) => {
|
|
1023
1024
|
const k = yn(
|
|
1024
1025
|
d.kind,
|
|
1025
1026
|
h,
|
|
1026
1027
|
d.assignment
|
|
1027
|
-
), b = k &&
|
|
1028
|
+
), b = k && Ao(d.id, P, u), $ = _n(
|
|
1028
1029
|
d.kind,
|
|
1029
1030
|
d.style.opacity
|
|
1030
|
-
), ee = Re(R), ae = ee ? b ? 0.2 : 0 :
|
|
1031
|
+
), ee = Re(R), ae = ee ? b ? 0.2 : 0 : bo(
|
|
1031
1032
|
d.kind,
|
|
1032
1033
|
$,
|
|
1033
1034
|
b
|
|
1034
1035
|
), fe = $n(
|
|
1035
1036
|
ee ? n.STORE_DEFAULT_COLOR : R
|
|
1036
|
-
),
|
|
1037
|
+
), xe = b ? fe : ee ? "#000000" : R;
|
|
1037
1038
|
return /* @__PURE__ */ O("group", { children: A.map((m, l) => /* @__PURE__ */ ne(
|
|
1038
1039
|
"mesh",
|
|
1039
1040
|
{
|
|
@@ -1041,14 +1042,14 @@ function ko({
|
|
|
1041
1042
|
onPointerOver: (o) => {
|
|
1042
1043
|
k && (o.stopPropagation(), _(d.id), lt(
|
|
1043
1044
|
w == null ? void 0 : w.current,
|
|
1044
|
-
|
|
1045
|
+
vo(d.kind, h, d.assignment)
|
|
1045
1046
|
), q(d, o));
|
|
1046
1047
|
},
|
|
1047
1048
|
onPointerMove: (o) => {
|
|
1048
1049
|
k && (o.stopPropagation(), q(d, o));
|
|
1049
1050
|
},
|
|
1050
1051
|
onPointerOut: (o) => {
|
|
1051
|
-
k && (o.stopPropagation(), _((r) => r === d.id ? null : r), lt(w == null ? void 0 : w.current, ""), I && (
|
|
1052
|
+
k && (o.stopPropagation(), _((r) => r === d.id ? null : r), lt(w == null ? void 0 : w.current, ""), I && (v == null || v(null, { leavingShapeId: d.id })));
|
|
1052
1053
|
},
|
|
1053
1054
|
onPointerDown: (o) => {
|
|
1054
1055
|
var C;
|
|
@@ -1058,7 +1059,7 @@ function ko({
|
|
|
1058
1059
|
var C;
|
|
1059
1060
|
o.stopPropagation();
|
|
1060
1061
|
const r = (p == null ? void 0 : p.current.maxDist) ?? 0;
|
|
1061
|
-
if (
|
|
1062
|
+
if (Co(r, o.delta)) {
|
|
1062
1063
|
if (k) {
|
|
1063
1064
|
s == null || s(d.id, {
|
|
1064
1065
|
additive: !!(o.shiftKey || (C = o.nativeEvent) != null && C.shiftKey)
|
|
@@ -1081,14 +1082,14 @@ function ko({
|
|
|
1081
1082
|
/* @__PURE__ */ O(
|
|
1082
1083
|
"meshBasicMaterial",
|
|
1083
1084
|
{
|
|
1084
|
-
color:
|
|
1085
|
+
color: xe,
|
|
1085
1086
|
transparent: d.style.transparent || d.kind === "amenity" || ae < 1,
|
|
1086
1087
|
opacity: ae,
|
|
1087
1088
|
side: oe.DoubleSide
|
|
1088
1089
|
}
|
|
1089
1090
|
),
|
|
1090
1091
|
b ? /* @__PURE__ */ O(
|
|
1091
|
-
|
|
1092
|
+
Eo,
|
|
1092
1093
|
{
|
|
1093
1094
|
shape: m,
|
|
1094
1095
|
extrude: W,
|
|
@@ -1104,7 +1105,7 @@ function ko({
|
|
|
1104
1105
|
}
|
|
1105
1106
|
function An() {
|
|
1106
1107
|
}
|
|
1107
|
-
function
|
|
1108
|
+
function ko(e, t) {
|
|
1108
1109
|
return new Promise((n, i) => {
|
|
1109
1110
|
const s = new Image(), u = () => {
|
|
1110
1111
|
t == null || t.removeEventListener("abort", g), s.onload = null, s.onerror = null;
|
|
@@ -1152,9 +1153,9 @@ function ut({
|
|
|
1152
1153
|
const V = wt(e, s), h = V === e ? [e] : [V, e];
|
|
1153
1154
|
return (async () => {
|
|
1154
1155
|
let I;
|
|
1155
|
-
for (const
|
|
1156
|
+
for (const v of h)
|
|
1156
1157
|
try {
|
|
1157
|
-
const T = await
|
|
1158
|
+
const T = await ko(v, N.signal);
|
|
1158
1159
|
if (y) {
|
|
1159
1160
|
T.texture.dispose();
|
|
1160
1161
|
return;
|
|
@@ -1194,18 +1195,18 @@ function ut({
|
|
|
1194
1195
|
}
|
|
1195
1196
|
);
|
|
1196
1197
|
}
|
|
1197
|
-
const Ut = 44,
|
|
1198
|
-
function
|
|
1198
|
+
const Ut = 44, Po = 8;
|
|
1199
|
+
function zo(e) {
|
|
1199
1200
|
var t;
|
|
1200
1201
|
return ((t = e == null ? void 0 : e.points[0]) == null ? void 0 : t.levelId) ?? null;
|
|
1201
1202
|
}
|
|
1202
|
-
function
|
|
1203
|
+
function Ro(e, t, n, i) {
|
|
1203
1204
|
return n == null || i == null ? !1 : e !== n || t !== i;
|
|
1204
1205
|
}
|
|
1205
|
-
function
|
|
1206
|
+
function Vo(e, t) {
|
|
1206
1207
|
return e === "forward" ? `Continue to ${t}` : `Back to ${t}`;
|
|
1207
1208
|
}
|
|
1208
|
-
function
|
|
1209
|
+
function Go(e, t) {
|
|
1209
1210
|
const n = [];
|
|
1210
1211
|
let i = [];
|
|
1211
1212
|
for (const s of e.points) {
|
|
@@ -1217,10 +1218,10 @@ function Do(e, t) {
|
|
|
1217
1218
|
}
|
|
1218
1219
|
return i.length > 0 && n.push(i), n;
|
|
1219
1220
|
}
|
|
1220
|
-
function
|
|
1221
|
+
function Do(e, t) {
|
|
1221
1222
|
return Math.hypot(e.x - t.x, e.y - t.y);
|
|
1222
1223
|
}
|
|
1223
|
-
function
|
|
1224
|
+
function Wo(e) {
|
|
1224
1225
|
const t = e.map((i) => ({
|
|
1225
1226
|
...i,
|
|
1226
1227
|
displayX: i.x,
|
|
@@ -1230,7 +1231,7 @@ function Fo(e) {
|
|
|
1230
1231
|
if (n.has(i)) continue;
|
|
1231
1232
|
const s = [i];
|
|
1232
1233
|
for (let w = i + 1; w < t.length; w += 1)
|
|
1233
|
-
n.has(w) ||
|
|
1234
|
+
n.has(w) || Do(t[i], t[w]) <= Po && s.push(w);
|
|
1234
1235
|
for (const w of s) n.add(w);
|
|
1235
1236
|
if (s.length === 1) continue;
|
|
1236
1237
|
const u = [...s].sort((w, p) => {
|
|
@@ -1243,7 +1244,7 @@ function Fo(e) {
|
|
|
1243
1244
|
}
|
|
1244
1245
|
return t;
|
|
1245
1246
|
}
|
|
1246
|
-
function
|
|
1247
|
+
function Fo(e, t) {
|
|
1247
1248
|
const n = [];
|
|
1248
1249
|
let i = 0;
|
|
1249
1250
|
for (let s = 1; s < e.points.length; s += 1) {
|
|
@@ -1266,20 +1267,20 @@ function Ho(e, t) {
|
|
|
1266
1267
|
intent: "back"
|
|
1267
1268
|
});
|
|
1268
1269
|
}
|
|
1269
|
-
return
|
|
1270
|
+
return Wo(n);
|
|
1270
1271
|
}
|
|
1271
|
-
const
|
|
1272
|
-
function
|
|
1273
|
-
return !e || Re(e) ?
|
|
1272
|
+
const Ho = "#4ea5ff", Uo = 400, Bo = 8, Bt = 1e3, Zo = 2e3;
|
|
1273
|
+
function Xo(e) {
|
|
1274
|
+
return !e || Re(e) ? Ho : e;
|
|
1274
1275
|
}
|
|
1275
|
-
const
|
|
1276
|
-
function
|
|
1277
|
-
return
|
|
1276
|
+
const Yo = "#444444";
|
|
1277
|
+
function qo() {
|
|
1278
|
+
return Yo;
|
|
1278
1279
|
}
|
|
1279
|
-
function
|
|
1280
|
+
function Ko(e) {
|
|
1280
1281
|
return e == null || !Number.isFinite(e) || e <= 0 ? nr.ROUTE_THICKNESS : e;
|
|
1281
1282
|
}
|
|
1282
|
-
const
|
|
1283
|
+
const jo = new oe.Vector3(), ft = new oe.Vector3();
|
|
1283
1284
|
function dt(e) {
|
|
1284
1285
|
const t = Math.max(e.screenRadius, 0);
|
|
1285
1286
|
let n = t;
|
|
@@ -1293,7 +1294,7 @@ function dt(e) {
|
|
|
1293
1294
|
const s = Math.abs(e.worldScale ?? 1);
|
|
1294
1295
|
return n / Math.max(s, 1e-6);
|
|
1295
1296
|
}
|
|
1296
|
-
function
|
|
1297
|
+
function Qo(e, t, n, i, s) {
|
|
1297
1298
|
if (e instanceof oe.OrthographicCamera)
|
|
1298
1299
|
return dt({
|
|
1299
1300
|
screenRadius: t,
|
|
@@ -1312,7 +1313,7 @@ function Jo(e, t, n, i, s) {
|
|
|
1312
1313
|
}
|
|
1313
1314
|
return dt({ screenRadius: t, worldScale: i });
|
|
1314
1315
|
}
|
|
1315
|
-
function
|
|
1316
|
+
function Jo(e, t, n, i) {
|
|
1316
1317
|
const s = e.getAttribute("position"), u = e.getAttribute("normal");
|
|
1317
1318
|
if (!s || !u) return;
|
|
1318
1319
|
const g = i - n;
|
|
@@ -1327,7 +1328,7 @@ function _o(e, t, n, i) {
|
|
|
1327
1328
|
}
|
|
1328
1329
|
s.needsUpdate = !0;
|
|
1329
1330
|
}
|
|
1330
|
-
function
|
|
1331
|
+
function _o(e, t) {
|
|
1331
1332
|
const n = document.createElement("canvas"), i = Math.max(1, Math.floor(e));
|
|
1332
1333
|
n.width = i, n.height = 80;
|
|
1333
1334
|
const s = n.getContext("2d");
|
|
@@ -1343,7 +1344,7 @@ function Zt(e) {
|
|
|
1343
1344
|
const t = Math.min(1, Math.max(0, e));
|
|
1344
1345
|
return t < 0.5 ? 4 * t ** 3 : 1 - (-2 * t + 2) ** 3 / 2;
|
|
1345
1346
|
}
|
|
1346
|
-
function
|
|
1347
|
+
function $o({
|
|
1347
1348
|
points: e,
|
|
1348
1349
|
color: t,
|
|
1349
1350
|
radius: n
|
|
@@ -1356,30 +1357,30 @@ function ei({
|
|
|
1356
1357
|
N.add(new oe.LineCurve3(e[S - 1], e[S])), V += e[S - 1].distanceTo(e[S]);
|
|
1357
1358
|
const h = new oe.TubeGeometry(
|
|
1358
1359
|
N,
|
|
1359
|
-
|
|
1360
|
+
Uo,
|
|
1360
1361
|
n,
|
|
1361
|
-
|
|
1362
|
+
Bo
|
|
1362
1363
|
);
|
|
1363
1364
|
return h.setDrawRange(0, 0), {
|
|
1364
1365
|
distance: V,
|
|
1365
1366
|
geometry: h,
|
|
1366
|
-
texture:
|
|
1367
|
+
texture: _o(V, t),
|
|
1367
1368
|
basePositions: new Float32Array(h.attributes.position.array),
|
|
1368
1369
|
baseRadius: n
|
|
1369
1370
|
};
|
|
1370
1371
|
}, [t, e, n]), G = () => {
|
|
1371
1372
|
const N = g.current;
|
|
1372
1373
|
if (!y || !N) return;
|
|
1373
|
-
const V = Math.abs(N.getWorldScale(
|
|
1374
|
+
const V = Math.abs(N.getWorldScale(jo).x);
|
|
1374
1375
|
ft.copy(e[0]), N.localToWorld(ft);
|
|
1375
|
-
const h =
|
|
1376
|
+
const h = Qo(
|
|
1376
1377
|
s,
|
|
1377
1378
|
n,
|
|
1378
1379
|
u,
|
|
1379
1380
|
V,
|
|
1380
1381
|
ft
|
|
1381
1382
|
);
|
|
1382
|
-
p.current !== h && (
|
|
1383
|
+
p.current !== h && (Jo(
|
|
1383
1384
|
y.geometry,
|
|
1384
1385
|
y.basePositions,
|
|
1385
1386
|
y.baseRadius,
|
|
@@ -1403,7 +1404,7 @@ function ei({
|
|
|
1403
1404
|
y.geometry.setDrawRange(0, Math.floor(S * V));
|
|
1404
1405
|
} else {
|
|
1405
1406
|
y.geometry.setDrawRange(0, V);
|
|
1406
|
-
const S = N /
|
|
1407
|
+
const S = N / Zo % 1;
|
|
1407
1408
|
y.texture.offset.x = 0.1 - 1.1 * Zt(S);
|
|
1408
1409
|
}
|
|
1409
1410
|
i();
|
|
@@ -1418,7 +1419,7 @@ function ei({
|
|
|
1418
1419
|
}
|
|
1419
1420
|
) }) : null;
|
|
1420
1421
|
}
|
|
1421
|
-
function
|
|
1422
|
+
function ei({
|
|
1422
1423
|
change: e,
|
|
1423
1424
|
levelId: t,
|
|
1424
1425
|
levels: n,
|
|
@@ -1427,7 +1428,7 @@ function ti({
|
|
|
1427
1428
|
onActiveLevelChange: u
|
|
1428
1429
|
}) {
|
|
1429
1430
|
var I;
|
|
1430
|
-
const g = i == null ? void 0 : i.find((
|
|
1431
|
+
const g = i == null ? void 0 : i.find((v) => v.id === e.connectorId), w = rr(g == null ? void 0 : g.kind) ? g.kind : null, p = n == null ? void 0 : n.find((v) => v.id === t), y = n == null ? void 0 : n.find((v) => v.id === e.targetLevelId), G = w === "escalator" && p && y ? dn(p, y) : null, N = w ? mn(w, !0, "#ffffff", G) : void 0, V = ((I = n == null ? void 0 : n.find((v) => v.id === e.targetLevelId)) == null ? void 0 : I.name) ?? String(e.targetLevelId), h = Vo(e.intent, V), S = qo();
|
|
1431
1432
|
return /* @__PURE__ */ O(
|
|
1432
1433
|
sn,
|
|
1433
1434
|
{
|
|
@@ -1446,8 +1447,8 @@ function ti({
|
|
|
1446
1447
|
pointerEvents: "auto"
|
|
1447
1448
|
},
|
|
1448
1449
|
"aria-label": h,
|
|
1449
|
-
onClick: (
|
|
1450
|
-
|
|
1450
|
+
onClick: (v) => {
|
|
1451
|
+
v.stopPropagation(), u == null || u(e.targetLevelId);
|
|
1451
1452
|
},
|
|
1452
1453
|
children: [
|
|
1453
1454
|
/* @__PURE__ */ O("span", { className: "eyeon-map-route-change__icon", children: N ? /* @__PURE__ */ O("img", { src: N, alt: "" }) : /* @__PURE__ */ O("span", { "aria-hidden": !0, children: "↕" }) }),
|
|
@@ -1462,7 +1463,7 @@ function ti({
|
|
|
1462
1463
|
}
|
|
1463
1464
|
);
|
|
1464
1465
|
}
|
|
1465
|
-
function
|
|
1466
|
+
function ti({
|
|
1466
1467
|
route: e,
|
|
1467
1468
|
levelId: t,
|
|
1468
1469
|
levels: n,
|
|
@@ -1471,19 +1472,19 @@ function ni({
|
|
|
1471
1472
|
thickness: u,
|
|
1472
1473
|
onActiveLevelChange: g
|
|
1473
1474
|
}) {
|
|
1474
|
-
const w =
|
|
1475
|
-
() =>
|
|
1475
|
+
const w = Xo(s), p = Ko(u), y = ie(
|
|
1476
|
+
() => Go(e, t).map(
|
|
1476
1477
|
(N) => N.map((V) => new oe.Vector3(V.x, V.y, 0))
|
|
1477
1478
|
),
|
|
1478
1479
|
[t, e]
|
|
1479
1480
|
), G = ie(
|
|
1480
|
-
() =>
|
|
1481
|
+
() => Fo(e, t),
|
|
1481
1482
|
[t, e]
|
|
1482
1483
|
);
|
|
1483
1484
|
return y.every((N) => N.length < 2) && G.length === 0 ? null : /* @__PURE__ */ ne(_t, { children: [
|
|
1484
1485
|
y.map(
|
|
1485
1486
|
(N, V) => N.length >= 2 ? /* @__PURE__ */ O(
|
|
1486
|
-
|
|
1487
|
+
$o,
|
|
1487
1488
|
{
|
|
1488
1489
|
points: N,
|
|
1489
1490
|
color: w,
|
|
@@ -1493,7 +1494,7 @@ function ni({
|
|
|
1493
1494
|
) : null
|
|
1494
1495
|
),
|
|
1495
1496
|
G.map((N, V) => /* @__PURE__ */ O(
|
|
1496
|
-
|
|
1497
|
+
ei,
|
|
1497
1498
|
{
|
|
1498
1499
|
change: N,
|
|
1499
1500
|
levelId: t,
|
|
@@ -1506,8 +1507,8 @@ function ni({
|
|
|
1506
1507
|
))
|
|
1507
1508
|
] });
|
|
1508
1509
|
}
|
|
1509
|
-
const
|
|
1510
|
-
class je extends
|
|
1510
|
+
const ni = Ur;
|
|
1511
|
+
class je extends Vr {
|
|
1511
1512
|
/**
|
|
1512
1513
|
* Constructs a new SVG loader.
|
|
1513
1514
|
*
|
|
@@ -1526,7 +1527,7 @@ class je extends Gr {
|
|
|
1526
1527
|
* @param {onErrorCallback} onError - Executed when errors occur.
|
|
1527
1528
|
*/
|
|
1528
1529
|
load(t, n, i, s) {
|
|
1529
|
-
const u = this, g = new
|
|
1530
|
+
const u = this, g = new Gr(u.manager);
|
|
1530
1531
|
g.setPath(u.path), g.setRequestHeader(u.requestHeader), g.setWithCredentials(u.withCredentials), g.load(t, function(w) {
|
|
1531
1532
|
try {
|
|
1532
1533
|
n(u.parse(w));
|
|
@@ -1588,47 +1589,47 @@ class je extends Gr {
|
|
|
1588
1589
|
H ? i(H, l) : console.warn("SVGLoader: 'use node' references non-existent node id: " + F);
|
|
1589
1590
|
break;
|
|
1590
1591
|
}
|
|
1591
|
-
C && (l.fill !== void 0 && l.fill !== "none" && C.color.setStyle(l.fill,
|
|
1592
|
+
C && (l.fill !== void 0 && l.fill !== "none" && C.color.setStyle(l.fill, ni), E(C, ae), Q.push(C), C.userData = { node: m, style: l });
|
|
1592
1593
|
const U = m.childNodes;
|
|
1593
|
-
for (let
|
|
1594
|
-
const F = U[
|
|
1594
|
+
for (let x = 0; x < U.length; x++) {
|
|
1595
|
+
const F = U[x];
|
|
1595
1596
|
r && F.nodeName !== "style" && F.nodeName !== "defs" || i(F, l);
|
|
1596
1597
|
}
|
|
1597
1598
|
o && (A.pop(), A.length > 0 ? ae.copy(A[A.length - 1]) : ae.identity());
|
|
1598
1599
|
}
|
|
1599
1600
|
function s(m) {
|
|
1600
1601
|
const l = new Se(), o = new de(), r = new de(), C = new de();
|
|
1601
|
-
let U = !0,
|
|
1602
|
+
let U = !0, x = !1;
|
|
1602
1603
|
const F = m.getAttribute("d");
|
|
1603
1604
|
if (F === "" || F === "none") return null;
|
|
1604
1605
|
const H = F.match(/[a-df-z][^a-df-z]*/ig);
|
|
1605
1606
|
for (let K = 0, a = H.length; K < a; K++) {
|
|
1606
1607
|
const M = H[K], z = M.charAt(0), D = M.slice(1).trim();
|
|
1607
|
-
U === !0 && (
|
|
1608
|
+
U === !0 && (x = !0, U = !1);
|
|
1608
1609
|
let f;
|
|
1609
1610
|
switch (z) {
|
|
1610
1611
|
case "M":
|
|
1611
|
-
f =
|
|
1612
|
+
f = v(D);
|
|
1612
1613
|
for (let c = 0, J = f.length; c < J; c += 2)
|
|
1613
1614
|
o.x = f[c + 0], o.y = f[c + 1], r.x = o.x, r.y = o.y, c === 0 ? l.moveTo(o.x, o.y) : l.lineTo(o.x, o.y), c === 0 && C.copy(o);
|
|
1614
1615
|
break;
|
|
1615
1616
|
case "H":
|
|
1616
|
-
f =
|
|
1617
|
+
f = v(D);
|
|
1617
1618
|
for (let c = 0, J = f.length; c < J; c++)
|
|
1618
|
-
o.x = f[c], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 &&
|
|
1619
|
+
o.x = f[c], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 && x === !0 && C.copy(o);
|
|
1619
1620
|
break;
|
|
1620
1621
|
case "V":
|
|
1621
|
-
f =
|
|
1622
|
+
f = v(D);
|
|
1622
1623
|
for (let c = 0, J = f.length; c < J; c++)
|
|
1623
|
-
o.y = f[c], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 &&
|
|
1624
|
+
o.y = f[c], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 && x === !0 && C.copy(o);
|
|
1624
1625
|
break;
|
|
1625
1626
|
case "L":
|
|
1626
|
-
f =
|
|
1627
|
+
f = v(D);
|
|
1627
1628
|
for (let c = 0, J = f.length; c < J; c += 2)
|
|
1628
|
-
o.x = f[c + 0], o.y = f[c + 1], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 &&
|
|
1629
|
+
o.x = f[c + 0], o.y = f[c + 1], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 && x === !0 && C.copy(o);
|
|
1629
1630
|
break;
|
|
1630
1631
|
case "C":
|
|
1631
|
-
f =
|
|
1632
|
+
f = v(D);
|
|
1632
1633
|
for (let c = 0, J = f.length; c < J; c += 6)
|
|
1633
1634
|
l.bezierCurveTo(
|
|
1634
1635
|
f[c + 0],
|
|
@@ -1637,10 +1638,10 @@ class je extends Gr {
|
|
|
1637
1638
|
f[c + 3],
|
|
1638
1639
|
f[c + 4],
|
|
1639
1640
|
f[c + 5]
|
|
1640
|
-
), r.x = f[c + 2], r.y = f[c + 3], o.x = f[c + 4], o.y = f[c + 5], c === 0 &&
|
|
1641
|
+
), r.x = f[c + 2], r.y = f[c + 3], o.x = f[c + 4], o.y = f[c + 5], c === 0 && x === !0 && C.copy(o);
|
|
1641
1642
|
break;
|
|
1642
1643
|
case "S":
|
|
1643
|
-
f =
|
|
1644
|
+
f = v(D);
|
|
1644
1645
|
for (let c = 0, J = f.length; c < J; c += 4)
|
|
1645
1646
|
l.bezierCurveTo(
|
|
1646
1647
|
I(o.x, r.x),
|
|
@@ -1649,20 +1650,20 @@ class je extends Gr {
|
|
|
1649
1650
|
f[c + 1],
|
|
1650
1651
|
f[c + 2],
|
|
1651
1652
|
f[c + 3]
|
|
1652
|
-
), r.x = f[c + 0], r.y = f[c + 1], o.x = f[c + 2], o.y = f[c + 3], c === 0 &&
|
|
1653
|
+
), r.x = f[c + 0], r.y = f[c + 1], o.x = f[c + 2], o.y = f[c + 3], c === 0 && x === !0 && C.copy(o);
|
|
1653
1654
|
break;
|
|
1654
1655
|
case "Q":
|
|
1655
|
-
f =
|
|
1656
|
+
f = v(D);
|
|
1656
1657
|
for (let c = 0, J = f.length; c < J; c += 4)
|
|
1657
1658
|
l.quadraticCurveTo(
|
|
1658
1659
|
f[c + 0],
|
|
1659
1660
|
f[c + 1],
|
|
1660
1661
|
f[c + 2],
|
|
1661
1662
|
f[c + 3]
|
|
1662
|
-
), r.x = f[c + 0], r.y = f[c + 1], o.x = f[c + 2], o.y = f[c + 3], c === 0 &&
|
|
1663
|
+
), r.x = f[c + 0], r.y = f[c + 1], o.x = f[c + 2], o.y = f[c + 3], c === 0 && x === !0 && C.copy(o);
|
|
1663
1664
|
break;
|
|
1664
1665
|
case "T":
|
|
1665
|
-
f =
|
|
1666
|
+
f = v(D);
|
|
1666
1667
|
for (let c = 0, J = f.length; c < J; c += 2) {
|
|
1667
1668
|
const le = I(o.x, r.x), pe = I(o.y, r.y);
|
|
1668
1669
|
l.quadraticCurveTo(
|
|
@@ -1670,11 +1671,11 @@ class je extends Gr {
|
|
|
1670
1671
|
pe,
|
|
1671
1672
|
f[c + 0],
|
|
1672
1673
|
f[c + 1]
|
|
1673
|
-
), r.x = le, r.y = pe, o.x = f[c + 0], o.y = f[c + 1], c === 0 &&
|
|
1674
|
+
), r.x = le, r.y = pe, o.x = f[c + 0], o.y = f[c + 1], c === 0 && x === !0 && C.copy(o);
|
|
1674
1675
|
}
|
|
1675
1676
|
break;
|
|
1676
1677
|
case "A":
|
|
1677
|
-
f =
|
|
1678
|
+
f = v(D, [3, 4], 7);
|
|
1678
1679
|
for (let c = 0, J = f.length; c < J; c += 7) {
|
|
1679
1680
|
if (f[c + 5] == o.x && f[c + 6] == o.y) continue;
|
|
1680
1681
|
const le = o.clone();
|
|
@@ -1687,31 +1688,31 @@ class je extends Gr {
|
|
|
1687
1688
|
f[c + 4],
|
|
1688
1689
|
le,
|
|
1689
1690
|
o
|
|
1690
|
-
), c === 0 &&
|
|
1691
|
+
), c === 0 && x === !0 && C.copy(o);
|
|
1691
1692
|
}
|
|
1692
1693
|
break;
|
|
1693
1694
|
case "m":
|
|
1694
|
-
f =
|
|
1695
|
+
f = v(D);
|
|
1695
1696
|
for (let c = 0, J = f.length; c < J; c += 2)
|
|
1696
1697
|
o.x += f[c + 0], o.y += f[c + 1], r.x = o.x, r.y = o.y, c === 0 ? l.moveTo(o.x, o.y) : l.lineTo(o.x, o.y), c === 0 && C.copy(o);
|
|
1697
1698
|
break;
|
|
1698
1699
|
case "h":
|
|
1699
|
-
f =
|
|
1700
|
+
f = v(D);
|
|
1700
1701
|
for (let c = 0, J = f.length; c < J; c++)
|
|
1701
|
-
o.x += f[c], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 &&
|
|
1702
|
+
o.x += f[c], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 && x === !0 && C.copy(o);
|
|
1702
1703
|
break;
|
|
1703
1704
|
case "v":
|
|
1704
|
-
f =
|
|
1705
|
+
f = v(D);
|
|
1705
1706
|
for (let c = 0, J = f.length; c < J; c++)
|
|
1706
|
-
o.y += f[c], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 &&
|
|
1707
|
+
o.y += f[c], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 && x === !0 && C.copy(o);
|
|
1707
1708
|
break;
|
|
1708
1709
|
case "l":
|
|
1709
|
-
f =
|
|
1710
|
+
f = v(D);
|
|
1710
1711
|
for (let c = 0, J = f.length; c < J; c += 2)
|
|
1711
|
-
o.x += f[c + 0], o.y += f[c + 1], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 &&
|
|
1712
|
+
o.x += f[c + 0], o.y += f[c + 1], r.x = o.x, r.y = o.y, l.lineTo(o.x, o.y), c === 0 && x === !0 && C.copy(o);
|
|
1712
1713
|
break;
|
|
1713
1714
|
case "c":
|
|
1714
|
-
f =
|
|
1715
|
+
f = v(D);
|
|
1715
1716
|
for (let c = 0, J = f.length; c < J; c += 6)
|
|
1716
1717
|
l.bezierCurveTo(
|
|
1717
1718
|
o.x + f[c + 0],
|
|
@@ -1720,10 +1721,10 @@ class je extends Gr {
|
|
|
1720
1721
|
o.y + f[c + 3],
|
|
1721
1722
|
o.x + f[c + 4],
|
|
1722
1723
|
o.y + f[c + 5]
|
|
1723
|
-
), r.x = o.x + f[c + 2], r.y = o.y + f[c + 3], o.x += f[c + 4], o.y += f[c + 5], c === 0 &&
|
|
1724
|
+
), r.x = o.x + f[c + 2], r.y = o.y + f[c + 3], o.x += f[c + 4], o.y += f[c + 5], c === 0 && x === !0 && C.copy(o);
|
|
1724
1725
|
break;
|
|
1725
1726
|
case "s":
|
|
1726
|
-
f =
|
|
1727
|
+
f = v(D);
|
|
1727
1728
|
for (let c = 0, J = f.length; c < J; c += 4)
|
|
1728
1729
|
l.bezierCurveTo(
|
|
1729
1730
|
I(o.x, r.x),
|
|
@@ -1732,20 +1733,20 @@ class je extends Gr {
|
|
|
1732
1733
|
o.y + f[c + 1],
|
|
1733
1734
|
o.x + f[c + 2],
|
|
1734
1735
|
o.y + f[c + 3]
|
|
1735
|
-
), r.x = o.x + f[c + 0], r.y = o.y + f[c + 1], o.x += f[c + 2], o.y += f[c + 3], c === 0 &&
|
|
1736
|
+
), r.x = o.x + f[c + 0], r.y = o.y + f[c + 1], o.x += f[c + 2], o.y += f[c + 3], c === 0 && x === !0 && C.copy(o);
|
|
1736
1737
|
break;
|
|
1737
1738
|
case "q":
|
|
1738
|
-
f =
|
|
1739
|
+
f = v(D);
|
|
1739
1740
|
for (let c = 0, J = f.length; c < J; c += 4)
|
|
1740
1741
|
l.quadraticCurveTo(
|
|
1741
1742
|
o.x + f[c + 0],
|
|
1742
1743
|
o.y + f[c + 1],
|
|
1743
1744
|
o.x + f[c + 2],
|
|
1744
1745
|
o.y + f[c + 3]
|
|
1745
|
-
), r.x = o.x + f[c + 0], r.y = o.y + f[c + 1], o.x += f[c + 2], o.y += f[c + 3], c === 0 &&
|
|
1746
|
+
), r.x = o.x + f[c + 0], r.y = o.y + f[c + 1], o.x += f[c + 2], o.y += f[c + 3], c === 0 && x === !0 && C.copy(o);
|
|
1746
1747
|
break;
|
|
1747
1748
|
case "t":
|
|
1748
|
-
f =
|
|
1749
|
+
f = v(D);
|
|
1749
1750
|
for (let c = 0, J = f.length; c < J; c += 2) {
|
|
1750
1751
|
const le = I(o.x, r.x), pe = I(o.y, r.y);
|
|
1751
1752
|
l.quadraticCurveTo(
|
|
@@ -1753,11 +1754,11 @@ class je extends Gr {
|
|
|
1753
1754
|
pe,
|
|
1754
1755
|
o.x + f[c + 0],
|
|
1755
1756
|
o.y + f[c + 1]
|
|
1756
|
-
), r.x = le, r.y = pe, o.x = o.x + f[c + 0], o.y = o.y + f[c + 1], c === 0 &&
|
|
1757
|
+
), r.x = le, r.y = pe, o.x = o.x + f[c + 0], o.y = o.y + f[c + 1], c === 0 && x === !0 && C.copy(o);
|
|
1757
1758
|
}
|
|
1758
1759
|
break;
|
|
1759
1760
|
case "a":
|
|
1760
|
-
f =
|
|
1761
|
+
f = v(D, [3, 4], 7);
|
|
1761
1762
|
for (let c = 0, J = f.length; c < J; c += 7) {
|
|
1762
1763
|
if (f[c + 5] == 0 && f[c + 6] == 0) continue;
|
|
1763
1764
|
const le = o.clone();
|
|
@@ -1770,7 +1771,7 @@ class je extends Gr {
|
|
|
1770
1771
|
f[c + 4],
|
|
1771
1772
|
le,
|
|
1772
1773
|
o
|
|
1773
|
-
), c === 0 &&
|
|
1774
|
+
), c === 0 && x === !0 && C.copy(o);
|
|
1774
1775
|
}
|
|
1775
1776
|
break;
|
|
1776
1777
|
case "Z":
|
|
@@ -1780,7 +1781,7 @@ class je extends Gr {
|
|
|
1780
1781
|
default:
|
|
1781
1782
|
console.warn(M);
|
|
1782
1783
|
}
|
|
1783
|
-
|
|
1784
|
+
x = !1;
|
|
1784
1785
|
}
|
|
1785
1786
|
return l;
|
|
1786
1787
|
}
|
|
@@ -1792,7 +1793,7 @@ class je extends Gr {
|
|
|
1792
1793
|
const r = o.selectorText.split(/,/gm).filter(Boolean).map((C) => C.trim());
|
|
1793
1794
|
for (let C = 0; C < r.length; C++) {
|
|
1794
1795
|
const U = Object.fromEntries(
|
|
1795
|
-
Object.entries(o.style).filter(([,
|
|
1796
|
+
Object.entries(o.style).filter(([, x]) => x !== "")
|
|
1796
1797
|
);
|
|
1797
1798
|
d[r[C]] = Object.assign(
|
|
1798
1799
|
d[r[C]] || {},
|
|
@@ -1801,13 +1802,13 @@ class je extends Gr {
|
|
|
1801
1802
|
}
|
|
1802
1803
|
}
|
|
1803
1804
|
}
|
|
1804
|
-
function g(m, l, o, r, C, U,
|
|
1805
|
+
function g(m, l, o, r, C, U, x, F) {
|
|
1805
1806
|
if (l == 0 || o == 0) {
|
|
1806
1807
|
m.lineTo(F.x, F.y);
|
|
1807
1808
|
return;
|
|
1808
1809
|
}
|
|
1809
1810
|
r = r * Math.PI / 180, l = Math.abs(l), o = Math.abs(o);
|
|
1810
|
-
const H = (
|
|
1811
|
+
const H = (x.x - F.x) / 2, K = (x.y - F.y) / 2, a = Math.cos(r) * H + Math.sin(r) * K, M = -Math.sin(r) * H + Math.cos(r) * K;
|
|
1811
1812
|
let z = l * l, D = o * o;
|
|
1812
1813
|
const f = a * a, c = M * M, J = f / z + c / D;
|
|
1813
1814
|
if (J > 1) {
|
|
@@ -1817,16 +1818,16 @@ class je extends Gr {
|
|
|
1817
1818
|
const le = z * c + D * f, pe = (z * D - le) / le;
|
|
1818
1819
|
let Me = Math.sqrt(Math.max(0, pe));
|
|
1819
1820
|
C === U && (Me = -Me);
|
|
1820
|
-
const Ae = Me * l * M / o, Ie = -Me * o * a / l, Te = Math.cos(r) * Ae - Math.sin(r) * Ie + (
|
|
1821
|
+
const Ae = Me * l * M / o, Ie = -Me * o * a / l, Te = Math.cos(r) * Ae - Math.sin(r) * Ie + (x.x + F.x) / 2, Ve = Math.sin(r) * Ae + Math.cos(r) * Ie + (x.y + F.y) / 2, Ee = w(1, 0, (a - Ae) / l, (M - Ie) / o), Ge = w((a - Ae) / l, (M - Ie) / o, (-a - Ae) / l, (-M - Ie) / o) % (Math.PI * 2);
|
|
1821
1822
|
m.currentPath.absellipse(Te, Ve, l, o, Ee, Ee + Ge, U === 0, r);
|
|
1822
1823
|
}
|
|
1823
1824
|
function w(m, l, o, r) {
|
|
1824
1825
|
const C = m * o + l * r, U = Math.sqrt(m * m + l * l) * Math.sqrt(o * o + r * r);
|
|
1825
|
-
let
|
|
1826
|
-
return m * r - l * o < 0 && (
|
|
1826
|
+
let x = Math.acos(Math.max(-1, Math.min(1, C / U)));
|
|
1827
|
+
return m * r - l * o < 0 && (x = -x), x;
|
|
1827
1828
|
}
|
|
1828
1829
|
function p(m) {
|
|
1829
|
-
const l = P(m.getAttribute("x") || 0), o = P(m.getAttribute("y") || 0), r = P(m.getAttribute("rx") || m.getAttribute("ry") || 0), C = P(m.getAttribute("ry") || m.getAttribute("rx") || 0), U = P(m.getAttribute("width")),
|
|
1830
|
+
const l = P(m.getAttribute("x") || 0), o = P(m.getAttribute("y") || 0), r = P(m.getAttribute("rx") || m.getAttribute("ry") || 0), C = P(m.getAttribute("ry") || m.getAttribute("rx") || 0), U = P(m.getAttribute("width")), x = P(m.getAttribute("height")), F = 1 - 0.551915024494, H = new Se();
|
|
1830
1831
|
return H.moveTo(l + r, o), H.lineTo(l + U - r, o), (r !== 0 || C !== 0) && H.bezierCurveTo(
|
|
1831
1832
|
l + U - r * F,
|
|
1832
1833
|
o,
|
|
@@ -1834,25 +1835,25 @@ class je extends Gr {
|
|
|
1834
1835
|
o + C * F,
|
|
1835
1836
|
l + U,
|
|
1836
1837
|
o + C
|
|
1837
|
-
), H.lineTo(l + U, o +
|
|
1838
|
+
), H.lineTo(l + U, o + x - C), (r !== 0 || C !== 0) && H.bezierCurveTo(
|
|
1838
1839
|
l + U,
|
|
1839
|
-
o +
|
|
1840
|
+
o + x - C * F,
|
|
1840
1841
|
l + U - r * F,
|
|
1841
|
-
o +
|
|
1842
|
+
o + x,
|
|
1842
1843
|
l + U - r,
|
|
1843
|
-
o +
|
|
1844
|
-
), H.lineTo(l + r, o +
|
|
1844
|
+
o + x
|
|
1845
|
+
), H.lineTo(l + r, o + x), (r !== 0 || C !== 0) && H.bezierCurveTo(
|
|
1845
1846
|
l + r * F,
|
|
1846
|
-
o +
|
|
1847
|
+
o + x,
|
|
1847
1848
|
l,
|
|
1848
|
-
o +
|
|
1849
|
+
o + x - C * F,
|
|
1849
1850
|
l,
|
|
1850
|
-
o +
|
|
1851
|
+
o + x - C
|
|
1851
1852
|
), H.lineTo(l, o + C), (r !== 0 || C !== 0) && H.bezierCurveTo(l, o + C * F, l + r * F, o, l + r, o), H;
|
|
1852
1853
|
}
|
|
1853
1854
|
function y(m) {
|
|
1854
|
-
function l(U,
|
|
1855
|
-
const H = P(
|
|
1855
|
+
function l(U, x, F) {
|
|
1856
|
+
const H = P(x), K = P(F);
|
|
1856
1857
|
C === 0 ? r.moveTo(H, K) : r.lineTo(H, K), C++;
|
|
1857
1858
|
}
|
|
1858
1859
|
const o = /([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g, r = new Se();
|
|
@@ -1860,8 +1861,8 @@ class je extends Gr {
|
|
|
1860
1861
|
return m.getAttribute("points").replace(o, l), r.currentPath.autoClose = !0, r;
|
|
1861
1862
|
}
|
|
1862
1863
|
function G(m) {
|
|
1863
|
-
function l(U,
|
|
1864
|
-
const H = P(
|
|
1864
|
+
function l(U, x, F) {
|
|
1865
|
+
const H = P(x), K = P(F);
|
|
1865
1866
|
C === 0 ? r.moveTo(H, K) : r.lineTo(H, K), C++;
|
|
1866
1867
|
}
|
|
1867
1868
|
const o = /([+-]?\d*\.?\d+(?:e[+-]?\d+)?)(?:,|\s)([+-]?\d*\.?\d+(?:e[+-]?\d+)?)/g, r = new Se();
|
|
@@ -1877,8 +1878,8 @@ class je extends Gr {
|
|
|
1877
1878
|
function V(m) {
|
|
1878
1879
|
const l = P(m.getAttribute("cx") || 0), o = P(m.getAttribute("cy") || 0), r = P(m.getAttribute("rx") || 0), C = P(m.getAttribute("ry") || 0), U = new st();
|
|
1879
1880
|
U.absellipse(l, o, r, C, 0, Math.PI * 2);
|
|
1880
|
-
const
|
|
1881
|
-
return
|
|
1881
|
+
const x = new Se();
|
|
1882
|
+
return x.subPaths.push(U), x;
|
|
1882
1883
|
}
|
|
1883
1884
|
function h(m) {
|
|
1884
1885
|
const l = P(m.getAttribute("x1") || 0), o = P(m.getAttribute("y1") || 0), r = P(m.getAttribute("x2") || 0), C = P(m.getAttribute("y2") || 0), U = new Se();
|
|
@@ -1888,28 +1889,28 @@ class je extends Gr {
|
|
|
1888
1889
|
l = Object.assign({}, l);
|
|
1889
1890
|
let o = {};
|
|
1890
1891
|
if (m.hasAttribute("class")) {
|
|
1891
|
-
const
|
|
1892
|
-
for (let F = 0; F <
|
|
1893
|
-
o = Object.assign(o, d["." +
|
|
1892
|
+
const x = m.getAttribute("class").split(/\s/).filter(Boolean).map((F) => F.trim());
|
|
1893
|
+
for (let F = 0; F < x.length; F++)
|
|
1894
|
+
o = Object.assign(o, d["." + x[F]]);
|
|
1894
1895
|
}
|
|
1895
1896
|
m.hasAttribute("id") && (o = Object.assign(o, d["#" + m.getAttribute("id")]));
|
|
1896
|
-
function r(
|
|
1897
|
+
function r(x, F, H) {
|
|
1897
1898
|
H === void 0 && (H = function(a) {
|
|
1898
1899
|
return a.startsWith("url") && console.warn("SVGLoader: url access in attributes is not implemented."), a;
|
|
1899
|
-
}), m.hasAttribute(
|
|
1900
|
+
}), m.hasAttribute(x) && (l[F] = H(m.getAttribute(x))), o[x] && (l[F] = H(o[x])), m.style && m.style[x] !== "" && (l[F] = H(m.style[x]));
|
|
1900
1901
|
}
|
|
1901
|
-
function C(
|
|
1902
|
-
return Math.max(0, Math.min(1, P(
|
|
1902
|
+
function C(x) {
|
|
1903
|
+
return Math.max(0, Math.min(1, P(x)));
|
|
1903
1904
|
}
|
|
1904
|
-
function U(
|
|
1905
|
-
return Math.max(0, P(
|
|
1905
|
+
function U(x) {
|
|
1906
|
+
return Math.max(0, P(x));
|
|
1906
1907
|
}
|
|
1907
1908
|
return r("fill", "fill"), r("fill-opacity", "fillOpacity", C), r("fill-rule", "fillRule"), r("opacity", "opacity", C), r("stroke", "stroke"), r("stroke-opacity", "strokeOpacity", C), r("stroke-width", "strokeWidth", U), r("stroke-linejoin", "strokeLineJoin"), r("stroke-linecap", "strokeLineCap"), r("stroke-miterlimit", "strokeMiterLimit", U), r("visibility", "visibility"), l;
|
|
1908
1909
|
}
|
|
1909
1910
|
function I(m, l) {
|
|
1910
1911
|
return m - (l - m);
|
|
1911
1912
|
}
|
|
1912
|
-
function
|
|
1913
|
+
function v(m, l, o) {
|
|
1913
1914
|
if (typeof m != "string")
|
|
1914
1915
|
throw new TypeError("Invalid input: " + typeof m);
|
|
1915
1916
|
const r = {
|
|
@@ -1920,7 +1921,7 @@ class je extends Gr {
|
|
|
1920
1921
|
COMMA: /,/,
|
|
1921
1922
|
EXP: /e/i,
|
|
1922
1923
|
FLAGS: /[01]/
|
|
1923
|
-
}, C = 0, U = 1,
|
|
1924
|
+
}, C = 0, U = 1, x = 2, F = 3;
|
|
1924
1925
|
let H = C, K = !0, a = "", M = "";
|
|
1925
1926
|
const z = [];
|
|
1926
1927
|
function D(le, pe, Me) {
|
|
@@ -1945,7 +1946,7 @@ class je extends Gr {
|
|
|
1945
1946
|
continue;
|
|
1946
1947
|
}
|
|
1947
1948
|
if (r.POINT.test(c)) {
|
|
1948
|
-
H =
|
|
1949
|
+
H = x, a = c;
|
|
1949
1950
|
continue;
|
|
1950
1951
|
}
|
|
1951
1952
|
r.COMMA.test(c) && (K && D(c, le, z), K = !0);
|
|
@@ -1956,7 +1957,7 @@ class je extends Gr {
|
|
|
1956
1957
|
continue;
|
|
1957
1958
|
}
|
|
1958
1959
|
if (r.POINT.test(c)) {
|
|
1959
|
-
a += c, H =
|
|
1960
|
+
a += c, H = x;
|
|
1960
1961
|
continue;
|
|
1961
1962
|
}
|
|
1962
1963
|
if (r.EXP.test(c)) {
|
|
@@ -1965,7 +1966,7 @@ class je extends Gr {
|
|
|
1965
1966
|
}
|
|
1966
1967
|
r.SIGN.test(c) && a.length === 1 && r.SIGN.test(a[0]) && D(c, le, z);
|
|
1967
1968
|
}
|
|
1968
|
-
if (H ===
|
|
1969
|
+
if (H === x) {
|
|
1969
1970
|
if (r.DIGIT.test(c)) {
|
|
1970
1971
|
a += c;
|
|
1971
1972
|
continue;
|
|
@@ -1989,7 +1990,7 @@ class je extends Gr {
|
|
|
1989
1990
|
M.length === 1 && r.SIGN.test(M) && D(c, le, z);
|
|
1990
1991
|
}
|
|
1991
1992
|
}
|
|
1992
|
-
r.WHITESPACE.test(c) ? (f(), H = C, K = !1) : r.COMMA.test(c) ? (f(), H = C, K = !0) : r.SIGN.test(c) ? (f(), H = U, a = c) : r.POINT.test(c) ? (f(), H =
|
|
1993
|
+
r.WHITESPACE.test(c) ? (f(), H = C, K = !1) : r.COMMA.test(c) ? (f(), H = C, K = !0) : r.SIGN.test(c) ? (f(), H = U, a = c) : r.POINT.test(c) ? (f(), H = x, a = c) : D(c, le, z);
|
|
1993
1994
|
}
|
|
1994
1995
|
return f(), z;
|
|
1995
1996
|
}
|
|
@@ -2068,9 +2069,9 @@ class je extends Gr {
|
|
|
2068
2069
|
for (let C = r.length - 1; C >= 0; C--) {
|
|
2069
2070
|
const U = r[C].trim();
|
|
2070
2071
|
if (U === "") continue;
|
|
2071
|
-
const
|
|
2072
|
-
if (
|
|
2073
|
-
const H = U.slice(0,
|
|
2072
|
+
const x = U.indexOf("("), F = U.length;
|
|
2073
|
+
if (x > 0 && x < F) {
|
|
2074
|
+
const H = U.slice(0, x), K = v(U.slice(x + 1));
|
|
2074
2075
|
switch (o.identity(), H) {
|
|
2075
2076
|
case "translate":
|
|
2076
2077
|
if (K.length >= 1) {
|
|
@@ -2139,11 +2140,11 @@ class je extends Gr {
|
|
|
2139
2140
|
return l;
|
|
2140
2141
|
}
|
|
2141
2142
|
function E(m, l) {
|
|
2142
|
-
function o(
|
|
2143
|
-
ee.set(
|
|
2143
|
+
function o(x) {
|
|
2144
|
+
ee.set(x.x, x.y, 1).applyMatrix3(l), x.set(ee.x, ee.y);
|
|
2144
2145
|
}
|
|
2145
|
-
function r(
|
|
2146
|
-
const F =
|
|
2146
|
+
function r(x) {
|
|
2147
|
+
const F = x.xRadius, H = x.yRadius, K = Math.cos(x.aRotation), a = Math.sin(x.aRotation), M = new Ze(F * K, F * a, 0), z = new Ze(-H * a, H * K, 0), D = M.applyMatrix3(l), f = z.applyMatrix3(l), c = R.set(
|
|
2147
2148
|
D.x,
|
|
2148
2149
|
f.x,
|
|
2149
2150
|
0,
|
|
@@ -2154,7 +2155,7 @@ class je extends Gr {
|
|
|
2154
2155
|
0,
|
|
2155
2156
|
1
|
|
2156
2157
|
), J = W.copy(c).invert(), Me = k.copy(J).transpose().multiply(J).elements, Ae = se(Me[0], Me[1], Me[4]), Ie = Math.sqrt(Ae.rt1), Te = Math.sqrt(Ae.rt2);
|
|
2157
|
-
if (
|
|
2158
|
+
if (x.xRadius = 1 / Ie, x.yRadius = 1 / Te, x.aRotation = Math.atan2(Ae.sn, Ae.cs), !((x.aEndAngle - x.aStartAngle) % (2 * Math.PI) < Number.EPSILON)) {
|
|
2158
2159
|
const Ee = W.set(
|
|
2159
2160
|
Ie,
|
|
2160
2161
|
0,
|
|
@@ -2179,18 +2180,18 @@ class je extends Gr {
|
|
|
2179
2180
|
const { x: Je, y: _e } = new Ze(Math.cos(De), Math.sin(De), 0).applyMatrix3(ke);
|
|
2180
2181
|
return Math.atan2(_e, Je);
|
|
2181
2182
|
};
|
|
2182
|
-
|
|
2183
|
+
x.aStartAngle = be(x.aStartAngle), x.aEndAngle = be(x.aEndAngle), Z(l) && (x.aClockwise = !x.aClockwise);
|
|
2183
2184
|
}
|
|
2184
2185
|
}
|
|
2185
|
-
function C(
|
|
2186
|
+
function C(x) {
|
|
2186
2187
|
const F = X(l), H = L(l);
|
|
2187
|
-
|
|
2188
|
+
x.xRadius *= F, x.yRadius *= H;
|
|
2188
2189
|
const K = F > Number.EPSILON ? Math.atan2(l.elements[1], l.elements[0]) : Math.atan2(-l.elements[3], l.elements[4]);
|
|
2189
|
-
|
|
2190
|
+
x.aRotation += K, Z(l) && (x.aStartAngle *= -1, x.aEndAngle *= -1, x.aClockwise = !x.aClockwise);
|
|
2190
2191
|
}
|
|
2191
2192
|
const U = m.subPaths;
|
|
2192
|
-
for (let
|
|
2193
|
-
const K = U[
|
|
2193
|
+
for (let x = 0, F = U.length; x < F; x++) {
|
|
2194
|
+
const K = U[x].curves;
|
|
2194
2195
|
for (let a = 0; a < K.length; a++) {
|
|
2195
2196
|
const M = K[a];
|
|
2196
2197
|
M.isLineCurve ? (o(M.v1), o(M.v2)) : M.isCubicBezierCurve ? (o(M.v0), o(M.v1), o(M.v2), o(M.v3)) : M.isQuadraticBezierCurve ? (o(M.v0), o(M.v1), o(M.v2)) : M.isEllipseCurve && ($.set(M.aX, M.aY), o($), M.aX = $.x, M.aY = $.y, Y(l) ? r(M) : C(M));
|
|
@@ -2216,9 +2217,9 @@ class je extends Gr {
|
|
|
2216
2217
|
return Math.sqrt(l[3] * l[3] + l[4] * l[4]);
|
|
2217
2218
|
}
|
|
2218
2219
|
function se(m, l, o) {
|
|
2219
|
-
let r, C, U,
|
|
2220
|
+
let r, C, U, x, F;
|
|
2220
2221
|
const H = m + o, K = m - o, a = Math.sqrt(K * K + 4 * l * l);
|
|
2221
|
-
return H > 0 ? (r = 0.5 * (H + a), F = 1 / r, C = m * F * o - l * F * l) : H < 0 ? C = 0.5 * (H - a) : (r = 0.5 * a, C = -0.5 * a), K > 0 ? U = K + a : U = K - a, Math.abs(U) > 2 * Math.abs(l) ? (F = -2 * l / U,
|
|
2222
|
+
return H > 0 ? (r = 0.5 * (H + a), F = 1 / r, C = m * F * o - l * F * l) : H < 0 ? C = 0.5 * (H - a) : (r = 0.5 * a, C = -0.5 * a), K > 0 ? U = K + a : U = K - a, Math.abs(U) > 2 * Math.abs(l) ? (F = -2 * l / U, x = 1 / Math.sqrt(1 + F * F), U = F * x) : Math.abs(l) === 0 ? (U = 1, x = 0) : (F = -0.5 * U / l, U = 1 / Math.sqrt(1 + F * F), x = F * U), K > 0 && (F = U, U = -x, x = F), { rt1: r, rt2: C, cs: U, sn: x };
|
|
2222
2223
|
}
|
|
2223
2224
|
const Q = [], d = {}, A = [], R = new Pe(), W = new Pe(), k = new Pe(), b = new Pe(), $ = new de(), ee = new Ze(), ae = new Pe(), fe = new DOMParser().parseFromString(t, "image/svg+xml");
|
|
2224
2225
|
return i(fe.documentElement, {
|
|
@@ -2250,13 +2251,13 @@ class je extends Gr {
|
|
|
2250
2251
|
loc: i.ORIGIN,
|
|
2251
2252
|
t: 0
|
|
2252
2253
|
};
|
|
2253
|
-
function u(I,
|
|
2254
|
-
const P = I.x, q =
|
|
2254
|
+
function u(I, v, T, _) {
|
|
2255
|
+
const P = I.x, q = v.x, B = T.x, E = _.x, Z = I.y, Y = v.y, X = T.y, L = _.y, se = (E - B) * (Z - X) - (L - X) * (P - B), Q = (q - P) * (Z - X) - (Y - Z) * (P - B), d = (L - X) * (q - P) - (E - B) * (Y - Z), A = se / d, R = Q / d;
|
|
2255
2256
|
if (d === 0 && se !== 0 || A <= 0 || A >= 1 || R < 0 || R > 1)
|
|
2256
2257
|
return null;
|
|
2257
2258
|
if (se === 0 && d === 0) {
|
|
2258
2259
|
for (let W = 0; W < 2; W++)
|
|
2259
|
-
if (g(W === 0 ? T : _, I,
|
|
2260
|
+
if (g(W === 0 ? T : _, I, v), s.loc == i.ORIGIN) {
|
|
2260
2261
|
const k = W === 0 ? T : _;
|
|
2261
2262
|
return { x: k.x, y: k.y, t: s.t };
|
|
2262
2263
|
} else if (s.loc == i.BETWEEN) {
|
|
@@ -2266,7 +2267,7 @@ class je extends Gr {
|
|
|
2266
2267
|
return null;
|
|
2267
2268
|
} else {
|
|
2268
2269
|
for (let b = 0; b < 2; b++)
|
|
2269
|
-
if (g(b === 0 ? T : _, I,
|
|
2270
|
+
if (g(b === 0 ? T : _, I, v), s.loc == i.ORIGIN) {
|
|
2270
2271
|
const $ = b === 0 ? T : _;
|
|
2271
2272
|
return { x: $.x, y: $.y, t: s.t };
|
|
2272
2273
|
}
|
|
@@ -2274,9 +2275,9 @@ class je extends Gr {
|
|
|
2274
2275
|
return { x: W, y: k, t: A };
|
|
2275
2276
|
}
|
|
2276
2277
|
}
|
|
2277
|
-
function g(I,
|
|
2278
|
-
const _ = T.x -
|
|
2279
|
-
if (I.x ===
|
|
2278
|
+
function g(I, v, T) {
|
|
2279
|
+
const _ = T.x - v.x, P = T.y - v.y, q = I.x - v.x, B = I.y - v.y, E = _ * B - q * P;
|
|
2280
|
+
if (I.x === v.x && I.y === v.y) {
|
|
2280
2281
|
s.loc = i.ORIGIN, s.t = 0;
|
|
2281
2282
|
return;
|
|
2282
2283
|
}
|
|
@@ -2303,20 +2304,20 @@ class je extends Gr {
|
|
|
2303
2304
|
let Z;
|
|
2304
2305
|
_ !== 0 ? Z = q / _ : Z = B / P, s.loc = i.BETWEEN, s.t = Z;
|
|
2305
2306
|
}
|
|
2306
|
-
function w(I,
|
|
2307
|
+
function w(I, v) {
|
|
2307
2308
|
const T = [], _ = [];
|
|
2308
2309
|
for (let P = 1; P < I.length; P++) {
|
|
2309
2310
|
const q = I[P - 1], B = I[P];
|
|
2310
|
-
for (let E = 1; E <
|
|
2311
|
-
const Z =
|
|
2311
|
+
for (let E = 1; E < v.length; E++) {
|
|
2312
|
+
const Z = v[E - 1], Y = v[E], X = u(q, B, Z, Y);
|
|
2312
2313
|
X !== null && T.find((L) => L.t <= X.t + Number.EPSILON && L.t >= X.t - Number.EPSILON) === void 0 && (T.push(X), _.push(new de(X.x, X.y)));
|
|
2313
2314
|
}
|
|
2314
2315
|
}
|
|
2315
2316
|
return _;
|
|
2316
2317
|
}
|
|
2317
|
-
function p(I,
|
|
2318
|
+
function p(I, v, T) {
|
|
2318
2319
|
const _ = new de();
|
|
2319
|
-
|
|
2320
|
+
v.getCenter(_);
|
|
2320
2321
|
const P = [];
|
|
2321
2322
|
return T.forEach((q) => {
|
|
2322
2323
|
q.boundingBox.containsPoint(_) && w(I, q.points).forEach((E) => {
|
|
@@ -2324,11 +2325,11 @@ class je extends Gr {
|
|
|
2324
2325
|
});
|
|
2325
2326
|
}), P.sort((q, B) => q.point.x - B.point.x), P;
|
|
2326
2327
|
}
|
|
2327
|
-
function y(I,
|
|
2328
|
+
function y(I, v, T, _, P) {
|
|
2328
2329
|
(P == null || P === "") && (P = "nonzero");
|
|
2329
2330
|
const q = new de();
|
|
2330
2331
|
I.boundingBox.getCenter(q);
|
|
2331
|
-
const B = [new de(T, q.y), new de(_, q.y)], E = p(B, I.boundingBox,
|
|
2332
|
+
const B = [new de(T, q.y), new de(_, q.y)], E = p(B, I.boundingBox, v);
|
|
2332
2333
|
E.sort((Q, d) => Q.point.x - d.point.x);
|
|
2333
2334
|
const Z = [], Y = [];
|
|
2334
2335
|
E.forEach((Q) => {
|
|
@@ -2345,20 +2346,20 @@ class je extends Gr {
|
|
|
2345
2346
|
let Q = !0, d = null, A = null;
|
|
2346
2347
|
for (let R = 0; R < L.length; R++) {
|
|
2347
2348
|
const W = L[R];
|
|
2348
|
-
Q ? (A =
|
|
2349
|
+
Q ? (A = v[W].isCW, Q = !1, d = W) : A !== v[W].isCW && (A = v[W].isCW, Q = !0);
|
|
2349
2350
|
}
|
|
2350
2351
|
return { identifier: I.identifier, isHole: Q, for: d };
|
|
2351
2352
|
} else
|
|
2352
2353
|
console.warn('fill-rule: "' + P + '" is currently not implemented.');
|
|
2353
2354
|
}
|
|
2354
2355
|
let G = 999999999, N = -999999999, V = t.subPaths.map((I) => {
|
|
2355
|
-
const
|
|
2356
|
+
const v = I.getPoints();
|
|
2356
2357
|
let T = -999999999, _ = 999999999, P = -999999999, q = 999999999;
|
|
2357
|
-
for (let B = 0; B <
|
|
2358
|
-
const E =
|
|
2358
|
+
for (let B = 0; B < v.length; B++) {
|
|
2359
|
+
const E = v[B];
|
|
2359
2360
|
E.y > T && (T = E.y), E.y < _ && (_ = E.y), E.x > P && (P = E.x), E.x < q && (q = E.x);
|
|
2360
2361
|
}
|
|
2361
|
-
return N <= P && (N = P + 1), G >= q && (G = q - 1), { curves: I.curves, points:
|
|
2362
|
+
return N <= P && (N = P + 1), G >= q && (G = q - 1), { curves: I.curves, points: v, isCW: Wr.isClockWise(v), identifier: -1, boundingBox: new Dr(new de(q, _), new de(P, T)) };
|
|
2362
2363
|
});
|
|
2363
2364
|
V = V.filter((I) => I.points.length > 1);
|
|
2364
2365
|
for (let I = 0; I < V.length; I++)
|
|
@@ -2366,7 +2367,7 @@ class je extends Gr {
|
|
|
2366
2367
|
const h = V.map((I) => y(I, V, G, N, t.userData ? t.userData.style.fillRule : void 0)), S = [];
|
|
2367
2368
|
return V.forEach((I) => {
|
|
2368
2369
|
if (!h[I.identifier].isHole) {
|
|
2369
|
-
const T = new
|
|
2370
|
+
const T = new Fr();
|
|
2370
2371
|
T.curves = I.curves, h.filter((P) => P.isHole && P.for === I.identifier).forEach((P) => {
|
|
2371
2372
|
const q = V[P.identifier], B = new st();
|
|
2372
2373
|
B.curves = q.curves, T.holes.push(B);
|
|
@@ -2407,7 +2408,7 @@ class je extends Gr {
|
|
|
2407
2408
|
const u = [], g = [], w = [];
|
|
2408
2409
|
if (je.pointsToStrokeWithBuffers(t, n, i, s, u, g, w) === 0)
|
|
2409
2410
|
return null;
|
|
2410
|
-
const p = new
|
|
2411
|
+
const p = new Hr();
|
|
2411
2412
|
return p.setAttribute("position", new at(u, 3)), p.setAttribute("normal", new at(g, 3)), p.setAttribute("uv", new at(w, 2)), p;
|
|
2412
2413
|
}
|
|
2413
2414
|
/**
|
|
@@ -2424,15 +2425,15 @@ class je extends Gr {
|
|
|
2424
2425
|
* @return {number} The number of vertices.
|
|
2425
2426
|
*/
|
|
2426
2427
|
static pointsToStrokeWithBuffers(t, n, i, s, u, g, w, p) {
|
|
2427
|
-
const y = new de(), G = new de(), N = new de(), V = new de(), h = new de(), S = new de(), I = new de(),
|
|
2428
|
+
const y = new de(), G = new de(), N = new de(), V = new de(), h = new de(), S = new de(), I = new de(), v = new de(), T = new de(), _ = new de(), P = new de(), q = new de(), B = new de(), E = new de(), Z = new de(), Y = new de(), X = new de();
|
|
2428
2429
|
i = i !== void 0 ? i : 12, s = s !== void 0 ? s : 1e-3, p = p !== void 0 ? p : 0, t = K(t);
|
|
2429
2430
|
const L = t.length;
|
|
2430
2431
|
if (L < 2) return 0;
|
|
2431
2432
|
const se = t[0].equals(t[L - 1]);
|
|
2432
2433
|
let Q, d = t[0], A;
|
|
2433
2434
|
const R = n.strokeWidth / 2, W = 1 / (L - 1);
|
|
2434
|
-
let k = 0, b, $, ee, ae, fe = !1,
|
|
2435
|
-
o(t[0], t[1], y).multiplyScalar(R),
|
|
2435
|
+
let k = 0, b, $, ee, ae, fe = !1, xe = 0, m = p * 3, l = p * 2;
|
|
2436
|
+
o(t[0], t[1], y).multiplyScalar(R), v.copy(t[0]).sub(y), T.copy(t[0]).add(y), _.copy(v), P.copy(T);
|
|
2436
2437
|
for (let a = 1; a < L; a++) {
|
|
2437
2438
|
Q = t[a], a === L - 1 ? se ? A = t[1] : A = void 0 : A = t[a + 1];
|
|
2438
2439
|
const M = y;
|
|
@@ -2447,7 +2448,7 @@ class je extends Gr {
|
|
|
2447
2448
|
const J = S.length();
|
|
2448
2449
|
switch (S.divideScalar(J), V.dot(Y) < c && S.dot(Y) < J && ($ = !0), X.copy(h).add(Q), Y.add(Q), ae = !1, $ ? ee ? (Z.copy(Y), B.copy(Y)) : (E.copy(Y), q.copy(Y)) : U(), n.strokeLineJoin) {
|
|
2449
2450
|
case "bevel":
|
|
2450
|
-
|
|
2451
|
+
x(ee, $, b);
|
|
2451
2452
|
break;
|
|
2452
2453
|
case "round":
|
|
2453
2454
|
F(ee, $), ee ? C(Q, q, E, b, 0) : C(Q, Z, B, b, 1);
|
|
@@ -2458,32 +2459,32 @@ class je extends Gr {
|
|
|
2458
2459
|
const le = R * n.strokeMiterLimit / f;
|
|
2459
2460
|
if (le < 1)
|
|
2460
2461
|
if (n.strokeLineJoin !== "miter-clip") {
|
|
2461
|
-
|
|
2462
|
+
x(ee, $, b);
|
|
2462
2463
|
break;
|
|
2463
2464
|
} else
|
|
2464
2465
|
F(ee, $), ee ? (S.subVectors(X, q).multiplyScalar(le).add(q), I.subVectors(X, E).multiplyScalar(le).add(E), r(q, b, 0), r(S, b, 0), r(Q, b, 0.5), r(Q, b, 0.5), r(S, b, 0), r(I, b, 0), r(Q, b, 0.5), r(I, b, 0), r(E, b, 0)) : (S.subVectors(X, B).multiplyScalar(le).add(B), I.subVectors(X, Z).multiplyScalar(le).add(Z), r(B, b, 1), r(S, b, 1), r(Q, b, 0.5), r(Q, b, 0.5), r(S, b, 1), r(I, b, 1), r(Q, b, 0.5), r(I, b, 1), r(Z, b, 1));
|
|
2465
2466
|
else
|
|
2466
|
-
$ ? (ee ? (r(T, k, 1), r(
|
|
2467
|
+
$ ? (ee ? (r(T, k, 1), r(v, k, 0), r(X, b, 0), r(T, k, 1), r(X, b, 0), r(Y, b, 1)) : (r(T, k, 1), r(v, k, 0), r(X, b, 1), r(v, k, 0), r(Y, b, 0), r(X, b, 1)), ee ? E.copy(X) : Z.copy(X)) : ee ? (r(q, b, 0), r(X, b, 0), r(Q, b, 0.5), r(Q, b, 0.5), r(X, b, 0), r(E, b, 0)) : (r(B, b, 1), r(X, b, 1), r(Q, b, 0.5), r(Q, b, 0.5), r(X, b, 1), r(Z, b, 1)), ae = !0;
|
|
2467
2468
|
break;
|
|
2468
2469
|
}
|
|
2469
2470
|
} else
|
|
2470
2471
|
U();
|
|
2471
2472
|
} else
|
|
2472
2473
|
U();
|
|
2473
|
-
!se && a === L - 1 && H(t[0], _, P, ee, !0, k), k = b, d = Q,
|
|
2474
|
+
!se && a === L - 1 && H(t[0], _, P, ee, !0, k), k = b, d = Q, v.copy(E), T.copy(Z);
|
|
2474
2475
|
}
|
|
2475
2476
|
if (!se)
|
|
2476
2477
|
H(Q, q, B, ee, !1, b);
|
|
2477
2478
|
else if ($ && u) {
|
|
2478
2479
|
let a = X, M = Y;
|
|
2479
|
-
fe !== ee && (a = Y, M = X), ee ? (ae || fe) && (M.toArray(u, 0
|
|
2480
|
+
fe !== ee && (a = Y, M = X), ee ? (ae || fe) && (M.toArray(u, 0), M.toArray(u, 9), ae && a.toArray(u, 3)) : (ae || !fe) && (M.toArray(u, 3), M.toArray(u, 9), ae && a.toArray(u, 0));
|
|
2480
2481
|
}
|
|
2481
|
-
return
|
|
2482
|
+
return xe;
|
|
2482
2483
|
function o(a, M, z) {
|
|
2483
2484
|
return z.subVectors(M, a), z.set(-z.y, z.x).normalize();
|
|
2484
2485
|
}
|
|
2485
2486
|
function r(a, M, z) {
|
|
2486
|
-
u && (u[m] = a.x, u[m + 1] = a.y, u[m + 2] = 0, g && (g[m] = 0, g[m + 1] = 0, g[m + 2] = 1), m += 3, w && (w[l] = M, w[l + 1] = z, l += 2)),
|
|
2487
|
+
u && (u[m] = a.x, u[m + 1] = a.y, u[m + 2] = 0, g && (g[m] = 0, g[m + 1] = 0, g[m + 2] = 1), m += 3, w && (w[l] = M, w[l + 1] = z, l += 2)), xe += 3;
|
|
2487
2488
|
}
|
|
2488
2489
|
function C(a, M, z, D, f) {
|
|
2489
2490
|
y.copy(M).sub(a).normalize(), G.copy(z).sub(a).normalize();
|
|
@@ -2495,13 +2496,13 @@ class je extends Gr {
|
|
|
2495
2496
|
r(V, D, f), r(z, D, f), r(a, D, 0.5);
|
|
2496
2497
|
}
|
|
2497
2498
|
function U() {
|
|
2498
|
-
r(T, k, 1), r(
|
|
2499
|
+
r(T, k, 1), r(v, k, 0), r(q, b, 0), r(T, k, 1), r(q, b, 0), r(B, b, 1);
|
|
2499
2500
|
}
|
|
2500
|
-
function
|
|
2501
|
-
M ? a ? (r(T, k, 1), r(
|
|
2501
|
+
function x(a, M, z) {
|
|
2502
|
+
M ? a ? (r(T, k, 1), r(v, k, 0), r(q, b, 0), r(T, k, 1), r(q, b, 0), r(Y, b, 1), r(q, z, 0), r(E, z, 0), r(Y, z, 0.5)) : (r(T, k, 1), r(v, k, 0), r(B, b, 1), r(v, k, 0), r(Y, b, 0), r(B, b, 1), r(B, z, 1), r(Y, z, 0), r(Z, z, 1)) : a ? (r(q, z, 0), r(E, z, 0), r(Q, z, 0.5)) : (r(B, z, 1), r(Z, z, 0), r(Q, z, 0.5));
|
|
2502
2503
|
}
|
|
2503
2504
|
function F(a, M) {
|
|
2504
|
-
M && (a ? (r(T, k, 1), r(
|
|
2505
|
+
M && (a ? (r(T, k, 1), r(v, k, 0), r(q, b, 0), r(T, k, 1), r(q, b, 0), r(Y, b, 1), r(q, k, 0), r(Q, b, 0.5), r(Y, b, 1), r(Q, b, 0.5), r(E, k, 0), r(Y, b, 1)) : (r(T, k, 1), r(v, k, 0), r(B, b, 1), r(v, k, 0), r(Y, b, 0), r(B, b, 1), r(B, k, 1), r(Y, b, 0), r(Q, b, 0.5), r(Q, b, 0.5), r(Y, b, 0), r(Z, k, 1)));
|
|
2505
2506
|
}
|
|
2506
2507
|
function H(a, M, z, D, f, c) {
|
|
2507
2508
|
switch (n.strokeLineCap) {
|
|
@@ -2510,11 +2511,11 @@ class je extends Gr {
|
|
|
2510
2511
|
break;
|
|
2511
2512
|
case "square":
|
|
2512
2513
|
if (f)
|
|
2513
|
-
y.subVectors(M, a), G.set(y.y, -y.x), N.addVectors(y, G).add(a), V.subVectors(G, y).add(a), D ? (N.toArray(u,
|
|
2514
|
+
y.subVectors(M, a), G.set(y.y, -y.x), N.addVectors(y, G).add(a), V.subVectors(G, y).add(a), D ? (N.toArray(u, 3), V.toArray(u, 0), V.toArray(u, 9)) : (N.toArray(u, 3), w[7] === 1 ? V.toArray(u, 9) : N.toArray(u, 9), V.toArray(u, 0));
|
|
2514
2515
|
else {
|
|
2515
2516
|
y.subVectors(z, a), G.set(y.y, -y.x), N.addVectors(y, G).add(a), V.subVectors(G, y).add(a);
|
|
2516
2517
|
const J = u.length;
|
|
2517
|
-
D ? (N.toArray(u, J -
|
|
2518
|
+
D ? (N.toArray(u, J - 3), V.toArray(u, J - 6), V.toArray(u, J - 12)) : (V.toArray(u, J - 6), N.toArray(u, J - 3), V.toArray(u, J - 12));
|
|
2518
2519
|
}
|
|
2519
2520
|
break;
|
|
2520
2521
|
}
|
|
@@ -2535,8 +2536,8 @@ class je extends Gr {
|
|
|
2535
2536
|
}
|
|
2536
2537
|
}
|
|
2537
2538
|
}
|
|
2538
|
-
const
|
|
2539
|
-
function
|
|
2539
|
+
const ri = -2;
|
|
2540
|
+
function oi(e) {
|
|
2540
2541
|
if (!e || e.nodeType !== 1) return;
|
|
2541
2542
|
let t = e;
|
|
2542
2543
|
for (; t; ) {
|
|
@@ -2555,7 +2556,7 @@ function mt(e) {
|
|
|
2555
2556
|
}
|
|
2556
2557
|
return !1;
|
|
2557
2558
|
}
|
|
2558
|
-
function
|
|
2559
|
+
function ii(e) {
|
|
2559
2560
|
if (!e) return !1;
|
|
2560
2561
|
let t = e;
|
|
2561
2562
|
for (; t; ) {
|
|
@@ -2565,7 +2566,7 @@ function ci(e) {
|
|
|
2565
2566
|
}
|
|
2566
2567
|
return !1;
|
|
2567
2568
|
}
|
|
2568
|
-
function
|
|
2569
|
+
function ci({
|
|
2569
2570
|
url: e,
|
|
2570
2571
|
suppressIds: t,
|
|
2571
2572
|
imageProxyUrl: n,
|
|
@@ -2598,26 +2599,28 @@ function si({
|
|
|
2598
2599
|
const p = [];
|
|
2599
2600
|
let y = 0;
|
|
2600
2601
|
for (const h of u.paths) {
|
|
2601
|
-
const S = (G = h.userData) == null ? void 0 : G.node, I =
|
|
2602
|
-
if (I != null && I.toLowerCase().startsWith("route-path") || I && (ir(I) || pt(I)) || S &&
|
|
2603
|
-
const
|
|
2604
|
-
if (
|
|
2602
|
+
const S = (G = h.userData) == null ? void 0 : G.node, I = oi(S);
|
|
2603
|
+
if (I != null && I.toLowerCase().startsWith("route-path") || I && (ir(I) || pt(I)) || S && ii(S) || I && (t != null && t.has(I)) || mt(S) && !I || I && (yt(I) || gt(I)) || S && mt(S) && I && (t != null && t.has(I)) || S && mt(S)) continue;
|
|
2604
|
+
const v = je.createShapes(h);
|
|
2605
|
+
if (v.length === 0) continue;
|
|
2605
2606
|
const T = tn(I, s), _ = cr(I) ? sr(s) : null, P = Re(T == null ? void 0 : T.fill), q = Re(T == null ? void 0 : T.stroke), B = new oe.Color();
|
|
2606
2607
|
T != null && T.fill && !P ? B.set(T.fill) : _ ? B.set(_) : h.color && !P ? B.copy(h.color) : B.set("#cccccc"), T != null && T.stroke && !T.fill && !q && B.set(T.stroke);
|
|
2607
2608
|
const E = P || q && !(T != null && T.fill) ? 0 : typeof ((V = (N = h.userData) == null ? void 0 : N.style) == null ? void 0 : V.opacity) == "number" ? h.userData.style.opacity : 1, Z = i && (T == null ? void 0 : T.extrudeHeight) != null ? T.extrudeHeight : 0;
|
|
2608
2609
|
p.push({
|
|
2609
2610
|
key: `${I ?? "path"}-${y++}`,
|
|
2610
2611
|
layerName: I,
|
|
2611
|
-
shapes:
|
|
2612
|
+
shapes: v,
|
|
2612
2613
|
color: B,
|
|
2613
2614
|
opacity: E,
|
|
2614
2615
|
extrude: Z,
|
|
2615
|
-
renderOrder:
|
|
2616
|
+
renderOrder: 0
|
|
2616
2617
|
});
|
|
2617
2618
|
}
|
|
2618
|
-
return
|
|
2619
|
+
return ar(p, (h) => h.layerName).map(
|
|
2620
|
+
(h, S) => ({ ...h, renderOrder: S })
|
|
2621
|
+
);
|
|
2619
2622
|
}, [u, t, i, s]);
|
|
2620
|
-
return !u || w.length === 0 ? null : /* @__PURE__ */ O("group", { position: [0, 0,
|
|
2623
|
+
return !u || w.length === 0 ? null : /* @__PURE__ */ O("group", { position: [0, 0, ri], renderOrder: -20, children: w.map(
|
|
2621
2624
|
(p) => p.shapes.map((y, G) => /* @__PURE__ */ ne(
|
|
2622
2625
|
"mesh",
|
|
2623
2626
|
{
|
|
@@ -2648,7 +2651,7 @@ function si({
|
|
|
2648
2651
|
))
|
|
2649
2652
|
) });
|
|
2650
2653
|
}
|
|
2651
|
-
const
|
|
2654
|
+
const si = [1, -1, 1];
|
|
2652
2655
|
function Nt(e) {
|
|
2653
2656
|
return {
|
|
2654
2657
|
...e,
|
|
@@ -2667,15 +2670,15 @@ function qe(e) {
|
|
|
2667
2670
|
height: Math.max(e.maxY - e.minY, 1)
|
|
2668
2671
|
};
|
|
2669
2672
|
}
|
|
2670
|
-
const Xt = 240,
|
|
2671
|
-
function
|
|
2673
|
+
const Xt = 240, ai = 400, Qe = 1, li = 2, ui = 400, xn = 80, vn = 52, bn = 8, fi = 14, di = 16;
|
|
2674
|
+
function mi(e, t, n = Qe, i = xn, s = li, u = ui) {
|
|
2672
2675
|
const g = Math.max(e, t);
|
|
2673
2676
|
if (g <= i) return n;
|
|
2674
2677
|
const w = Math.max(u - i, 1), p = Math.min(1, (g - i) / w);
|
|
2675
2678
|
return n + (s - n) * p;
|
|
2676
2679
|
}
|
|
2677
|
-
function Mn(e, t = Qe, n =
|
|
2678
|
-
const i = e.maxX - e.minX, s = e.maxY - e.minY, u = Math.max(i, n), g = Math.max(s, n), w =
|
|
2680
|
+
function Mn(e, t = Qe, n = vn) {
|
|
2681
|
+
const i = e.maxX - e.minX, s = e.maxY - e.minY, u = Math.max(i, n), g = Math.max(s, n), w = mi(i, s, t), p = (u + u * w) / 2, y = (g + g * w) / 2;
|
|
2679
2682
|
return {
|
|
2680
2683
|
minX: e.cx - p,
|
|
2681
2684
|
minY: e.cy - y,
|
|
@@ -2686,19 +2689,19 @@ function Mn(e, t = Qe, n = xn) {
|
|
|
2686
2689
|
size: Math.max(p, y) * 2
|
|
2687
2690
|
};
|
|
2688
2691
|
}
|
|
2689
|
-
function
|
|
2690
|
-
const s = Math.max(e, t), u =
|
|
2692
|
+
function hi(e, t, n = bn, i = fi) {
|
|
2693
|
+
const s = Math.max(e, t), u = xn * (1 + Qe);
|
|
2691
2694
|
if (s >= u) return n;
|
|
2692
|
-
const g =
|
|
2695
|
+
const g = vn * (1 + Qe);
|
|
2693
2696
|
if (s <= g) return i;
|
|
2694
2697
|
const w = Math.max(u - g, 1), p = (s - g) / w;
|
|
2695
2698
|
return i + (n - i) * p;
|
|
2696
2699
|
}
|
|
2697
|
-
function
|
|
2700
|
+
function pi(e, t, n = bn) {
|
|
2698
2701
|
const i = Math.max(t, 1e-3) * n;
|
|
2699
2702
|
return Math.min(e, i);
|
|
2700
2703
|
}
|
|
2701
|
-
function
|
|
2704
|
+
function yi(e) {
|
|
2702
2705
|
const t = [...new Set(e.filter((n) => Number.isFinite(n)))].sort(
|
|
2703
2706
|
(n, i) => n - i
|
|
2704
2707
|
);
|
|
@@ -2716,14 +2719,14 @@ function bt(e, t) {
|
|
|
2716
2719
|
}
|
|
2717
2720
|
return i ? Nt(Mn(i)) : null;
|
|
2718
2721
|
}
|
|
2719
|
-
function
|
|
2722
|
+
function gi(e, t) {
|
|
2720
2723
|
return bt(e, [t]);
|
|
2721
2724
|
}
|
|
2722
|
-
function
|
|
2725
|
+
function Ai(e, t, n) {
|
|
2723
2726
|
if (n == null) return null;
|
|
2724
2727
|
const i = e.find((y) => y.id === n);
|
|
2725
2728
|
if (!i) return null;
|
|
2726
|
-
const s = t.points.filter((y) => y.levelId === n).map((y) =>
|
|
2729
|
+
const s = t.points.filter((y) => y.levelId === n).map((y) => lr(y, i.transform));
|
|
2727
2730
|
let u = null;
|
|
2728
2731
|
if (s.length >= 2) {
|
|
2729
2732
|
const y = Math.min(...s.map((h) => h.x)), G = Math.min(...s.map((h) => h.y)), N = Math.max(...s.map((h) => h.x)), V = Math.max(...s.map((h) => h.y));
|
|
@@ -2790,24 +2793,24 @@ function qt(e, t, n = 1e-3) {
|
|
|
2790
2793
|
function xi(e, t) {
|
|
2791
2794
|
return e ? e.zoom > 0 ? e : { ...e, zoom: t } : null;
|
|
2792
2795
|
}
|
|
2793
|
-
function
|
|
2796
|
+
function vi(e, t, n) {
|
|
2794
2797
|
return e ? n : xi(t, n.zoom) ?? n;
|
|
2795
2798
|
}
|
|
2796
|
-
function
|
|
2799
|
+
function bi(e) {
|
|
2797
2800
|
return e.resetInFlight && e.focusKey == null;
|
|
2798
2801
|
}
|
|
2799
|
-
function
|
|
2802
|
+
function Mi(e, t, n, i, s) {
|
|
2800
2803
|
const u = 1 + Math.min(Math.max(n, 0.15), 1) * 0.5, g = t > 0 ? e * u : e / u;
|
|
2801
2804
|
return Math.min(s, Math.max(i, g));
|
|
2802
2805
|
}
|
|
2803
|
-
const
|
|
2804
|
-
function
|
|
2805
|
-
return e ? { LEFT:
|
|
2806
|
+
const wi = 0, Kt = 1, ht = 2, Ii = 0, Ci = 1, jt = 2, Oi = !0;
|
|
2807
|
+
function Li(e) {
|
|
2808
|
+
return e ? { LEFT: wi, MIDDLE: Kt, RIGHT: ht } : { LEFT: ht, MIDDLE: Kt, RIGHT: ht };
|
|
2806
2809
|
}
|
|
2807
|
-
function
|
|
2808
|
-
return e ? { ONE:
|
|
2810
|
+
function Ni(e) {
|
|
2811
|
+
return e ? { ONE: Ii, TWO: jt } : { ONE: Ci, TWO: jt };
|
|
2809
2812
|
}
|
|
2810
|
-
function
|
|
2813
|
+
function Ei(e, t) {
|
|
2811
2814
|
return [
|
|
2812
2815
|
e.cx,
|
|
2813
2816
|
e.cy,
|
|
@@ -2819,7 +2822,7 @@ function Si(e, t) {
|
|
|
2819
2822
|
t ? "3d" : "2d"
|
|
2820
2823
|
].join("|");
|
|
2821
2824
|
}
|
|
2822
|
-
function
|
|
2825
|
+
function Si({
|
|
2823
2826
|
bounds: e,
|
|
2824
2827
|
theme: t,
|
|
2825
2828
|
is3d: n,
|
|
@@ -2834,7 +2837,7 @@ function Ti({
|
|
|
2834
2837
|
onCameraChange: N,
|
|
2835
2838
|
onCameraReset: V
|
|
2836
2839
|
}) {
|
|
2837
|
-
const { camera: h, size: S, invalidate: I } = ze(),
|
|
2840
|
+
const { camera: h, size: S, invalidate: I } = ze(), v = ue(!1), T = ue(!1), _ = ue(null), P = ue(null), q = ue(g);
|
|
2838
2841
|
q.current = g;
|
|
2839
2842
|
const B = ue(w);
|
|
2840
2843
|
B.current = w;
|
|
@@ -2848,10 +2851,10 @@ function Ti({
|
|
|
2848
2851
|
X.current = N;
|
|
2849
2852
|
const L = ue(V);
|
|
2850
2853
|
L.current = V;
|
|
2851
|
-
const se = ue(null), Q = ue(0), d = ue(!1), A = ue(null), R =
|
|
2854
|
+
const se = ue(null), Q = ue(0), d = ue(!1), A = ue(null), R = Ei(e, n), W = ge(() => {
|
|
2852
2855
|
_.current != null && (cancelAnimationFrame(_.current), _.current = null);
|
|
2853
2856
|
}, []), k = ge(
|
|
2854
|
-
(a =
|
|
2857
|
+
(a = v.current) => {
|
|
2855
2858
|
const M = i.current;
|
|
2856
2859
|
return {
|
|
2857
2860
|
is3d: n,
|
|
@@ -2868,7 +2871,7 @@ function Ti({
|
|
|
2868
2871
|
(a) => {
|
|
2869
2872
|
T.current = !0, W(), h.up.set(0, 1, 0), h.position.set(a.position[0], a.position[1], a.position[2]), h instanceof oe.OrthographicCamera ? (h.zoom = a.zoom, h.updateProjectionMatrix()) : h.lookAt(a.target[0], a.target[1], a.target[2]);
|
|
2870
2873
|
const M = i.current;
|
|
2871
|
-
M && (M.target.set(a.target[0], a.target[1], a.target[2]), M.update()), u.current = { ...a, boundsKey: R, is3d: n },
|
|
2874
|
+
M && (M.target.set(a.target[0], a.target[1], a.target[2]), M.update()), u.current = { ...a, boundsKey: R, is3d: n }, v.current = a.userAdjusted, I(), T.current = !1;
|
|
2872
2875
|
},
|
|
2873
2876
|
[R, h, W, i, I, n, u]
|
|
2874
2877
|
), $ = ge(
|
|
@@ -2915,7 +2918,7 @@ function Ti({
|
|
|
2915
2918
|
z && (z.target.set(a.target[0], a.target[1], a.target[2]), z.update()), I(), T.current = !1;
|
|
2916
2919
|
},
|
|
2917
2920
|
[h, i, I]
|
|
2918
|
-
),
|
|
2921
|
+
), xe = ge(
|
|
2919
2922
|
(a) => {
|
|
2920
2923
|
const { width: M, height: z } = qe(a);
|
|
2921
2924
|
if (h instanceof oe.OrthographicCamera && !n) {
|
|
@@ -2926,10 +2929,10 @@ function Ti({
|
|
|
2926
2929
|
f.height
|
|
2927
2930
|
);
|
|
2928
2931
|
return {
|
|
2929
|
-
zoom:
|
|
2932
|
+
zoom: pi(
|
|
2930
2933
|
Ye(S.width, S.height, M, z),
|
|
2931
2934
|
c,
|
|
2932
|
-
|
|
2935
|
+
hi(M, z)
|
|
2933
2936
|
),
|
|
2934
2937
|
position: [a.cx, a.cy, 500],
|
|
2935
2938
|
target: [a.cx, a.cy, 0]
|
|
@@ -2948,11 +2951,11 @@ function Ti({
|
|
|
2948
2951
|
return a ? a.zoom > 0 ? a : { ...a, zoom: ae().zoom } : null;
|
|
2949
2952
|
}, [ae]), l = ge(() => {
|
|
2950
2953
|
const a = ae();
|
|
2951
|
-
return
|
|
2954
|
+
return vi(Y.current, E.current, a);
|
|
2952
2955
|
}, [ae]), o = ge(() => {
|
|
2953
2956
|
W(), A.current = null;
|
|
2954
2957
|
const a = m() ?? ae();
|
|
2955
|
-
fe(a, n), u.current = k(!1),
|
|
2958
|
+
fe(a, n), u.current = k(!1), v.current = !1, Q.current = performance.now() + 160;
|
|
2956
2959
|
}, [
|
|
2957
2960
|
fe,
|
|
2958
2961
|
W,
|
|
@@ -2965,8 +2968,8 @@ function Ti({
|
|
|
2965
2968
|
o();
|
|
2966
2969
|
}, [o]), C = ge(
|
|
2967
2970
|
(a) => {
|
|
2968
|
-
const M =
|
|
2969
|
-
if (
|
|
2971
|
+
const M = xe(a), z = ee();
|
|
2972
|
+
if (v.current = !0, P.current = q.current, W(), qt(z, M)) {
|
|
2970
2973
|
A.current = null, u.current = k(!0);
|
|
2971
2974
|
return;
|
|
2972
2975
|
}
|
|
@@ -2984,12 +2987,12 @@ function Ti({
|
|
|
2984
2987
|
I,
|
|
2985
2988
|
n,
|
|
2986
2989
|
u,
|
|
2987
|
-
|
|
2990
|
+
xe
|
|
2988
2991
|
]
|
|
2989
2992
|
), U = ge(() => {
|
|
2990
2993
|
const a = l(), M = ee();
|
|
2991
2994
|
if (A.current = null, qt(M, a)) {
|
|
2992
|
-
|
|
2995
|
+
v.current = !1, u.current = k(!1), d.current = !1;
|
|
2993
2996
|
return;
|
|
2994
2997
|
}
|
|
2995
2998
|
W();
|
|
@@ -2999,7 +3002,7 @@ function Ti({
|
|
|
2999
3002
|
T.current = !0, _.current = requestAnimationFrame(f);
|
|
3000
3003
|
return;
|
|
3001
3004
|
}
|
|
3002
|
-
_.current = null,
|
|
3005
|
+
_.current = null, v.current = !1, T.current = !1, d.current = !1;
|
|
3003
3006
|
};
|
|
3004
3007
|
T.current = !0, Q.current = performance.now() + 400, _.current = requestAnimationFrame(f);
|
|
3005
3008
|
}, [
|
|
@@ -3010,8 +3013,8 @@ function Ti({
|
|
|
3010
3013
|
n,
|
|
3011
3014
|
u,
|
|
3012
3015
|
l
|
|
3013
|
-
]),
|
|
3014
|
-
|
|
3016
|
+
]), x = ue(r);
|
|
3017
|
+
x.current = r;
|
|
3015
3018
|
const F = ue(b);
|
|
3016
3019
|
F.current = b;
|
|
3017
3020
|
const H = ue(C);
|
|
@@ -3019,17 +3022,17 @@ function Ti({
|
|
|
3019
3022
|
const K = ge(
|
|
3020
3023
|
(a) => {
|
|
3021
3024
|
var z;
|
|
3022
|
-
|
|
3025
|
+
v.current = !0, A.current = null;
|
|
3023
3026
|
const M = i.current;
|
|
3024
3027
|
if (h instanceof oe.OrthographicCamera && !n) {
|
|
3025
3028
|
const { width: D, height: f } = qe(e), c = Ye(S.width, S.height, D, f);
|
|
3026
3029
|
$(
|
|
3027
|
-
|
|
3030
|
+
Mi(
|
|
3028
3031
|
h.zoom,
|
|
3029
3032
|
a,
|
|
3030
3033
|
t.ZOOM_STEP,
|
|
3031
3034
|
c * 0.2,
|
|
3032
|
-
c *
|
|
3035
|
+
c * di
|
|
3033
3036
|
)
|
|
3034
3037
|
);
|
|
3035
3038
|
} else if (M) {
|
|
@@ -3059,10 +3062,10 @@ function Ti({
|
|
|
3059
3062
|
if (!a) return;
|
|
3060
3063
|
const M = () => {
|
|
3061
3064
|
var D;
|
|
3062
|
-
T.current || performance.now() < Q.current || (
|
|
3065
|
+
T.current || performance.now() < Q.current || (v.current = !0, u.current = k(!0), (D = X.current) == null || D.call(X, u.current));
|
|
3063
3066
|
}, z = () => {
|
|
3064
3067
|
var D;
|
|
3065
|
-
T.current || performance.now() < Q.current || (
|
|
3068
|
+
T.current || performance.now() < Q.current || (v.current = !0, A.current = null, u.current = k(!0), (D = X.current) == null || D.call(X, u.current));
|
|
3066
3069
|
};
|
|
3067
3070
|
return a.addEventListener("change", M), a.addEventListener("start", z), () => {
|
|
3068
3071
|
a.removeEventListener("change", M), a.removeEventListener("start", z);
|
|
@@ -3078,7 +3081,7 @@ function Ti({
|
|
|
3078
3081
|
},
|
|
3079
3082
|
reset: () => {
|
|
3080
3083
|
var a;
|
|
3081
|
-
|
|
3084
|
+
v.current = !1, A.current = null, P.current = null, q.current = null, d.current = !0, (a = L.current) == null || a.call(L), U();
|
|
3082
3085
|
},
|
|
3083
3086
|
focusBounds: (a) => {
|
|
3084
3087
|
C(a);
|
|
@@ -3088,7 +3091,7 @@ function Ti({
|
|
|
3088
3091
|
}),
|
|
3089
3092
|
[C, U, k, b, K]
|
|
3090
3093
|
), $t(() => {
|
|
3091
|
-
if (S.width < 2 || S.height < 2 || (g == null && (P.current = null, A.current = null),
|
|
3094
|
+
if (S.width < 2 || S.height < 2 || (g == null && (P.current = null, A.current = null), bi({ resetInFlight: d.current, focusKey: g })))
|
|
3092
3095
|
return;
|
|
3093
3096
|
d.current && (d.current = !1);
|
|
3094
3097
|
const a = u.current, M = B.current, z = g != null && M != null && P.current !== g, D = a != null && a.is3d === n && a.boundsKey === R && a.focusKey === g;
|
|
@@ -3099,7 +3102,7 @@ function Ti({
|
|
|
3099
3102
|
}
|
|
3100
3103
|
if (z) {
|
|
3101
3104
|
if (u.current == null) {
|
|
3102
|
-
P.current = g,
|
|
3105
|
+
P.current = g, v.current = !0, W(), fe(xe(M), n), u.current = k(!0);
|
|
3103
3106
|
return;
|
|
3104
3107
|
}
|
|
3105
3108
|
a && !D && F.current(a), H.current(M);
|
|
@@ -3108,14 +3111,14 @@ function Ti({
|
|
|
3108
3111
|
return;
|
|
3109
3112
|
}
|
|
3110
3113
|
if (y && se.current !== y) {
|
|
3111
|
-
se.current = y,
|
|
3114
|
+
se.current = y, v.current = !1, x.current();
|
|
3112
3115
|
return;
|
|
3113
3116
|
}
|
|
3114
3117
|
if (a && a.is3d === n && a.boundsKey === R) {
|
|
3115
3118
|
F.current(a);
|
|
3116
3119
|
return;
|
|
3117
3120
|
}
|
|
3118
|
-
|
|
3121
|
+
v.current = !1, x.current();
|
|
3119
3122
|
}, [
|
|
3120
3123
|
fe,
|
|
3121
3124
|
R,
|
|
@@ -3126,13 +3129,13 @@ function Ti({
|
|
|
3126
3129
|
y,
|
|
3127
3130
|
n,
|
|
3128
3131
|
u,
|
|
3129
|
-
|
|
3132
|
+
xe
|
|
3130
3133
|
]), me(() => {
|
|
3131
|
-
S.width < 2 || S.height < 2 ||
|
|
3134
|
+
S.width < 2 || S.height < 2 || v.current || x.current();
|
|
3132
3135
|
}, [S.height, S.width]), cn(() => {
|
|
3133
3136
|
const a = A.current;
|
|
3134
3137
|
if (!a) return;
|
|
3135
|
-
const M = Math.min(1, (performance.now() - a.started) /
|
|
3138
|
+
const M = Math.min(1, (performance.now() - a.started) / ai);
|
|
3136
3139
|
if (fe(
|
|
3137
3140
|
Yt(a.from, a.dest, M, Mt),
|
|
3138
3141
|
a.lookAt
|
|
@@ -3146,19 +3149,19 @@ function Ti({
|
|
|
3146
3149
|
function Ke(e) {
|
|
3147
3150
|
return typeof e == "object" && e !== null;
|
|
3148
3151
|
}
|
|
3149
|
-
function
|
|
3152
|
+
function Ti(e, t, n) {
|
|
3150
3153
|
return Ke(e) ? e : Ke(t) ? t : Ke(n) ? n : null;
|
|
3151
3154
|
}
|
|
3152
|
-
function
|
|
3155
|
+
function ki(e, t) {
|
|
3153
3156
|
if (!Ke(e) || t == null) return !1;
|
|
3154
3157
|
const n = e.contains;
|
|
3155
3158
|
return typeof n == "function" && n.call(e, t);
|
|
3156
3159
|
}
|
|
3157
|
-
function
|
|
3160
|
+
function Pi(e) {
|
|
3158
3161
|
e.stopImmediatePropagation();
|
|
3159
3162
|
}
|
|
3160
|
-
const
|
|
3161
|
-
function
|
|
3163
|
+
const zi = -1, Qt = [0, 1, 0], Ri = [1, 2], Vi = { antialias: !0 };
|
|
3164
|
+
function Gi({
|
|
3162
3165
|
blockWheel: e,
|
|
3163
3166
|
eventSource: t
|
|
3164
3167
|
}) {
|
|
@@ -3166,17 +3169,17 @@ function Di({
|
|
|
3166
3169
|
return me(() => {
|
|
3167
3170
|
if (!e) return;
|
|
3168
3171
|
const s = (u) => {
|
|
3169
|
-
const g =
|
|
3172
|
+
const g = Ti(
|
|
3170
3173
|
t == null ? void 0 : t.current,
|
|
3171
3174
|
i,
|
|
3172
3175
|
n.domElement
|
|
3173
3176
|
);
|
|
3174
|
-
|
|
3177
|
+
ki(g, u.target) && Pi(u);
|
|
3175
3178
|
};
|
|
3176
3179
|
return document.addEventListener("wheel", s, { capture: !0 }), () => document.removeEventListener("wheel", s, { capture: !0 });
|
|
3177
3180
|
}, [e, i, t, n.domElement]), null;
|
|
3178
3181
|
}
|
|
3179
|
-
function
|
|
3182
|
+
function Di({
|
|
3180
3183
|
doc: e,
|
|
3181
3184
|
theme: t,
|
|
3182
3185
|
activeLevelId: n,
|
|
@@ -3193,7 +3196,7 @@ function Wi({
|
|
|
3193
3196
|
eventSource: h,
|
|
3194
3197
|
host: S = "PORTAL_ASSIGN",
|
|
3195
3198
|
homePose: I = null,
|
|
3196
|
-
homePoseKey:
|
|
3199
|
+
homePoseKey: v = null,
|
|
3197
3200
|
resetFitsMap: T = !1,
|
|
3198
3201
|
onCameraChange: _,
|
|
3199
3202
|
onCameraReset: P,
|
|
@@ -3203,7 +3206,7 @@ function Wi({
|
|
|
3203
3206
|
showHoverTooltip: Z = !1,
|
|
3204
3207
|
onHoverTooltip: Y
|
|
3205
3208
|
}) {
|
|
3206
|
-
const X = t.MAP_STYLE === "3D", L = ue(null), se = ue(null), Q = ue(null), d = ue(
|
|
3209
|
+
const X = t.MAP_STYLE === "3D", L = ue(null), se = ue(null), Q = ue(null), d = ue(wo());
|
|
3207
3210
|
me(() => {
|
|
3208
3211
|
const o = h == null ? void 0 : h.current;
|
|
3209
3212
|
if (!o) return;
|
|
@@ -3213,19 +3216,19 @@ function Wi({
|
|
|
3213
3216
|
}, U = (F) => {
|
|
3214
3217
|
const H = Xe(F);
|
|
3215
3218
|
H && gn(r, H.x, H.y, H.pointerId);
|
|
3216
|
-
},
|
|
3219
|
+
}, x = (F) => {
|
|
3217
3220
|
const H = Xe(F);
|
|
3218
|
-
H &&
|
|
3221
|
+
H && Io(r, H.x, H.y, H.pointerId);
|
|
3219
3222
|
};
|
|
3220
|
-
return o.addEventListener("pointerdown", C, !0), window.addEventListener("pointermove", U, { passive: !0 }), window.addEventListener("pointerup",
|
|
3221
|
-
o.removeEventListener("pointerdown", C, !0), window.removeEventListener("pointermove", U), window.removeEventListener("pointerup",
|
|
3223
|
+
return o.addEventListener("pointerdown", C, !0), window.addEventListener("pointermove", U, { passive: !0 }), window.addEventListener("pointerup", x), window.addEventListener("pointercancel", x), () => {
|
|
3224
|
+
o.removeEventListener("pointerdown", C, !0), window.removeEventListener("pointermove", U), window.removeEventListener("pointerup", x), window.removeEventListener("pointercancel", x);
|
|
3222
3225
|
};
|
|
3223
3226
|
}, [h]);
|
|
3224
3227
|
const A = ie(
|
|
3225
|
-
() =>
|
|
3228
|
+
() => ur(e.levels, n),
|
|
3226
3229
|
[e.levels, n]
|
|
3227
3230
|
), R = ie(
|
|
3228
|
-
() =>
|
|
3231
|
+
() => fr(e.levels, n, e.baseViewbox),
|
|
3229
3232
|
[e.levels, e.baseViewbox, n]
|
|
3230
3233
|
), W = ie(
|
|
3231
3234
|
() => Nt(R),
|
|
@@ -3244,11 +3247,11 @@ function Wi({
|
|
|
3244
3247
|
), b = ie(
|
|
3245
3248
|
() => [W.cx, W.cy - W.size * 0.35, W.size * 0.85],
|
|
3246
3249
|
[W.cx, W.cy, W.size]
|
|
3247
|
-
), $ = ie(() =>
|
|
3250
|
+
), $ = ie(() => Li(X), [X]), ee = ie(() => Ni(X), [X]), ae = ie(
|
|
3248
3251
|
() => e.levels.find((o) => rt(o)) ?? null,
|
|
3249
3252
|
[e.levels]
|
|
3250
|
-
), fe = (ae == null ? void 0 : ae.sourceSvgUrl) ?? e.baseSvgUrl ?? null,
|
|
3251
|
-
() =>
|
|
3253
|
+
), fe = (ae == null ? void 0 : ae.sourceSvgUrl) ?? e.baseSvgUrl ?? null, xe = ie(
|
|
3254
|
+
() => dr(e.levels),
|
|
3252
3255
|
[e.levels]
|
|
3253
3256
|
), m = A.some((o) => rt(o)), l = ie(
|
|
3254
3257
|
() => ({
|
|
@@ -3267,7 +3270,7 @@ function Wi({
|
|
|
3267
3270
|
]
|
|
3268
3271
|
);
|
|
3269
3272
|
return /* @__PURE__ */ ne(
|
|
3270
|
-
|
|
3273
|
+
Pr,
|
|
3271
3274
|
{
|
|
3272
3275
|
style: {
|
|
3273
3276
|
width: "100%",
|
|
@@ -3278,15 +3281,15 @@ function Wi({
|
|
|
3278
3281
|
eventPrefix: "offset",
|
|
3279
3282
|
orthographic: !X,
|
|
3280
3283
|
frameloop: "demand",
|
|
3281
|
-
dpr:
|
|
3284
|
+
dpr: Ri,
|
|
3282
3285
|
flat: !0,
|
|
3283
|
-
gl:
|
|
3286
|
+
gl: Vi,
|
|
3284
3287
|
onPointerDown: (o) => {
|
|
3285
3288
|
const r = Xe(o);
|
|
3286
3289
|
r && (Q.current = { x: r.x, y: r.y }, Ht(d.current, r.x, r.y, r.pointerId));
|
|
3287
3290
|
},
|
|
3288
3291
|
onPointerMissed: (o) => {
|
|
3289
|
-
|
|
3292
|
+
Oo(Q.current, {
|
|
3290
3293
|
x: o.clientX,
|
|
3291
3294
|
y: o.clientY,
|
|
3292
3295
|
button: o.button
|
|
@@ -3301,7 +3304,7 @@ function Wi({
|
|
|
3301
3304
|
} : void 0,
|
|
3302
3305
|
children: [
|
|
3303
3306
|
!X && /* @__PURE__ */ O(
|
|
3304
|
-
|
|
3307
|
+
zr,
|
|
3305
3308
|
{
|
|
3306
3309
|
makeDefault: !0,
|
|
3307
3310
|
position: k,
|
|
@@ -3315,12 +3318,12 @@ function Wi({
|
|
|
3315
3318
|
/* @__PURE__ */ O("directionalLight", { position: [0, 400, 0], color: "#ffffff", intensity: 0.3 }),
|
|
3316
3319
|
/* @__PURE__ */ O("directionalLight", { position: [0, 0, 400], color: "#c4c4c4", intensity: 0.2 }),
|
|
3317
3320
|
/* @__PURE__ */ O("directionalLight", { position: [0, 0, -400], color: "#c4c4c4", intensity: 0.2 }),
|
|
3318
|
-
/* @__PURE__ */ ne("group", { scale:
|
|
3321
|
+
/* @__PURE__ */ ne("group", { scale: si, children: [
|
|
3319
3322
|
m && fe ? /* @__PURE__ */ O(
|
|
3320
|
-
|
|
3323
|
+
ci,
|
|
3321
3324
|
{
|
|
3322
3325
|
url: fe,
|
|
3323
|
-
suppressIds:
|
|
3326
|
+
suppressIds: xe,
|
|
3324
3327
|
imageProxyUrl: V,
|
|
3325
3328
|
is3d: X,
|
|
3326
3329
|
theme: l
|
|
@@ -3334,13 +3337,13 @@ function Wi({
|
|
|
3334
3337
|
position: [
|
|
3335
3338
|
C.translateX,
|
|
3336
3339
|
C.translateY,
|
|
3337
|
-
r ?
|
|
3340
|
+
r ? zi : 0
|
|
3338
3341
|
],
|
|
3339
3342
|
rotation: [0, 0, C.rotate * Math.PI / 180],
|
|
3340
3343
|
scale: C.scale || 1,
|
|
3341
3344
|
children: [
|
|
3342
3345
|
/* @__PURE__ */ O(
|
|
3343
|
-
|
|
3346
|
+
To,
|
|
3344
3347
|
{
|
|
3345
3348
|
level: o,
|
|
3346
3349
|
levels: e.levels,
|
|
@@ -3358,11 +3361,11 @@ function Wi({
|
|
|
3358
3361
|
kioskOriginShapeId: B,
|
|
3359
3362
|
showHoverTooltip: Z,
|
|
3360
3363
|
onHoverTooltip: Y,
|
|
3361
|
-
onSelectShape: (U,
|
|
3364
|
+
onSelectShape: (U, x) => G == null ? void 0 : G(U, o.id, x)
|
|
3362
3365
|
}
|
|
3363
3366
|
),
|
|
3364
3367
|
i && o.id === n ? /* @__PURE__ */ O(
|
|
3365
|
-
|
|
3368
|
+
ti,
|
|
3366
3369
|
{
|
|
3367
3370
|
route: i,
|
|
3368
3371
|
levelId: o.id,
|
|
@@ -3380,14 +3383,14 @@ function Wi({
|
|
|
3380
3383
|
})
|
|
3381
3384
|
] }),
|
|
3382
3385
|
/* @__PURE__ */ O(
|
|
3383
|
-
|
|
3386
|
+
Gi,
|
|
3384
3387
|
{
|
|
3385
3388
|
eventSource: h,
|
|
3386
3389
|
blockWheel: !(q ?? on(S))
|
|
3387
3390
|
}
|
|
3388
3391
|
),
|
|
3389
3392
|
/* @__PURE__ */ O(
|
|
3390
|
-
|
|
3393
|
+
Rr,
|
|
3391
3394
|
{
|
|
3392
3395
|
ref: L,
|
|
3393
3396
|
makeDefault: !0,
|
|
@@ -3397,7 +3400,7 @@ function Wi({
|
|
|
3397
3400
|
enableZoom: !0,
|
|
3398
3401
|
screenSpacePanning: !0,
|
|
3399
3402
|
zoomSpeed: 1,
|
|
3400
|
-
zoomToCursor:
|
|
3403
|
+
zoomToCursor: Oi,
|
|
3401
3404
|
mouseButtons: $,
|
|
3402
3405
|
touches: ee,
|
|
3403
3406
|
maxDistance: t.CAMERA_MAX_DISTANCE,
|
|
@@ -3405,7 +3408,7 @@ function Wi({
|
|
|
3405
3408
|
}
|
|
3406
3409
|
),
|
|
3407
3410
|
/* @__PURE__ */ O(
|
|
3408
|
-
|
|
3411
|
+
Si,
|
|
3409
3412
|
{
|
|
3410
3413
|
bounds: W,
|
|
3411
3414
|
theme: t,
|
|
@@ -3416,7 +3419,7 @@ function Wi({
|
|
|
3416
3419
|
focusKey: w ?? s ?? null,
|
|
3417
3420
|
focusViewBounds: p ?? null,
|
|
3418
3421
|
homePose: I,
|
|
3419
|
-
homePoseKey:
|
|
3422
|
+
homePoseKey: v,
|
|
3420
3423
|
resetFitsMap: T,
|
|
3421
3424
|
onCameraChange: _,
|
|
3422
3425
|
onCameraReset: P
|
|
@@ -3430,7 +3433,7 @@ function Jt(e, t) {
|
|
|
3430
3433
|
var n, i;
|
|
3431
3434
|
return ((n = e.assignment) == null ? void 0 : n.customLabel) || t || e.label.text || ((i = e.assignment) == null ? void 0 : i.unitNumber) || e.key;
|
|
3432
3435
|
}
|
|
3433
|
-
function
|
|
3436
|
+
function Wi({
|
|
3434
3437
|
doc: e,
|
|
3435
3438
|
amenities: t,
|
|
3436
3439
|
fromAnchorId: n,
|
|
@@ -3444,7 +3447,7 @@ function Fi({
|
|
|
3444
3447
|
showAmenities: G = !0,
|
|
3445
3448
|
amenityIconColor: N = en.amenity
|
|
3446
3449
|
}) {
|
|
3447
|
-
const [V, h] = he(""), [S, I] = he(null),
|
|
3450
|
+
const [V, h] = he(""), [S, I] = he(null), v = ie(() => {
|
|
3448
3451
|
var Z;
|
|
3449
3452
|
const E = [];
|
|
3450
3453
|
for (const Y of e.levels)
|
|
@@ -3474,15 +3477,15 @@ function Fi({
|
|
|
3474
3477
|
return E;
|
|
3475
3478
|
}, [e, t]), T = ie(() => {
|
|
3476
3479
|
const E = V.trim().toLowerCase();
|
|
3477
|
-
return E ?
|
|
3478
|
-
}, [
|
|
3480
|
+
return E ? v.filter((Z) => Z.label.toLowerCase().includes(E)) : v;
|
|
3481
|
+
}, [v, V]), _ = ie(() => {
|
|
3479
3482
|
const E = /* @__PURE__ */ new Map();
|
|
3480
3483
|
for (const Z of T) {
|
|
3481
3484
|
const Y = E.get(Z.group) ?? [];
|
|
3482
3485
|
Y.push(Z), E.set(Z.group, Y);
|
|
3483
3486
|
}
|
|
3484
3487
|
return Array.from(E.entries());
|
|
3485
|
-
}, [T]), P =
|
|
3488
|
+
}, [T]), P = v.filter((E) => E.anchorId != null), q = V.trim().length > 0, B = (E) => {
|
|
3486
3489
|
I(E), E.anchorId != null && u(E.anchorId);
|
|
3487
3490
|
};
|
|
3488
3491
|
return !y && !(G && t.length > 0) ? null : /* @__PURE__ */ ne("div", { className: "eyeon-map-chrome", children: [
|
|
@@ -3505,7 +3508,7 @@ function Fi({
|
|
|
3505
3508
|
className: "eyeon-map-chrome__amenity",
|
|
3506
3509
|
"aria-label": E.name,
|
|
3507
3510
|
onClick: () => {
|
|
3508
|
-
const Z =
|
|
3511
|
+
const Z = v.find(
|
|
3509
3512
|
(Y) => Y.kind === "amenity" && Y.amenityId === E.id && Y.anchorId != null
|
|
3510
3513
|
);
|
|
3511
3514
|
Z && B(Z);
|
|
@@ -3548,7 +3551,7 @@ function Fi({
|
|
|
3548
3551
|
/* @__PURE__ */ ne("label", { children: [
|
|
3549
3552
|
"From",
|
|
3550
3553
|
/* @__PURE__ */ O(
|
|
3551
|
-
|
|
3554
|
+
xt,
|
|
3552
3555
|
{
|
|
3553
3556
|
ariaLabel: "From",
|
|
3554
3557
|
value: n != null ? String(n) : "",
|
|
@@ -3565,7 +3568,7 @@ function Fi({
|
|
|
3565
3568
|
/* @__PURE__ */ ne("label", { children: [
|
|
3566
3569
|
"To",
|
|
3567
3570
|
/* @__PURE__ */ O(
|
|
3568
|
-
|
|
3571
|
+
xt,
|
|
3569
3572
|
{
|
|
3570
3573
|
ariaLabel: "To",
|
|
3571
3574
|
value: i != null ? String(i) : "",
|
|
@@ -3595,7 +3598,7 @@ function Fi({
|
|
|
3595
3598
|
] })
|
|
3596
3599
|
] });
|
|
3597
3600
|
}
|
|
3598
|
-
function
|
|
3601
|
+
function Fi({
|
|
3599
3602
|
destination: e,
|
|
3600
3603
|
retailers: t,
|
|
3601
3604
|
imageProxyUrl: n,
|
|
@@ -3604,18 +3607,18 @@ function Hi({
|
|
|
3604
3607
|
onMapIt: u
|
|
3605
3608
|
}) {
|
|
3606
3609
|
const [g, w] = he(""), p = e.kind === "store" && e.retailerId != null ? t.find((I) => I.id === e.retailerId) ?? null : null, y = ie(
|
|
3607
|
-
() =>
|
|
3610
|
+
() => mr(t, e.retailerId),
|
|
3608
3611
|
[e.retailerId, t]
|
|
3609
3612
|
);
|
|
3610
3613
|
if (me(() => {
|
|
3611
3614
|
w("");
|
|
3612
3615
|
}, [e.shapeId]), me(() => {
|
|
3613
|
-
const I = (
|
|
3614
|
-
|
|
3616
|
+
const I = (v) => {
|
|
3617
|
+
v.key === "Escape" && s();
|
|
3615
3618
|
};
|
|
3616
3619
|
return document.addEventListener("keydown", I), () => document.removeEventListener("keydown", I);
|
|
3617
3620
|
}, [s]), typeof document > "u") return null;
|
|
3618
|
-
const G = p != null && p.logoUrl ? wt(p.logoUrl, n) : null, N = !!(p && (G || p.name || p.location || p.phone || p.description)), V =
|
|
3621
|
+
const G = p != null && p.logoUrl ? wt(p.logoUrl, n) : null, N = !!(p && (G || p.name || p.location || p.phone || p.description)), V = hr(i, e), h = V.mapItDisabled || !g, S = V.showFromRetailers || V.showMapIt;
|
|
3619
3622
|
return an(
|
|
3620
3623
|
/* @__PURE__ */ O(
|
|
3621
3624
|
"div",
|
|
@@ -3671,7 +3674,7 @@ function Hi({
|
|
|
3671
3674
|
p != null && p.phone ? /* @__PURE__ */ ne("div", { children: [
|
|
3672
3675
|
/* @__PURE__ */ O("b", { children: "Phone:" }),
|
|
3673
3676
|
" ",
|
|
3674
|
-
/* @__PURE__ */ O("a", { href: `tel:${p.phone}`, children:
|
|
3677
|
+
/* @__PURE__ */ O("a", { href: `tel:${p.phone}`, children: pr(p.phone) })
|
|
3675
3678
|
] }) : null,
|
|
3676
3679
|
p != null && p.description ? /* @__PURE__ */ O(
|
|
3677
3680
|
"div",
|
|
@@ -3694,12 +3697,12 @@ function Hi({
|
|
|
3694
3697
|
className: "eyeon-map-info-modal__form",
|
|
3695
3698
|
onSubmit: (I) => {
|
|
3696
3699
|
if (I.preventDefault(), h) return;
|
|
3697
|
-
const
|
|
3698
|
-
Number.isFinite(
|
|
3700
|
+
const v = Number(g);
|
|
3701
|
+
Number.isFinite(v) && v > 0 && u(v);
|
|
3699
3702
|
},
|
|
3700
3703
|
children: [
|
|
3701
3704
|
V.showFromRetailers ? /* @__PURE__ */ O(
|
|
3702
|
-
|
|
3705
|
+
xt,
|
|
3703
3706
|
{
|
|
3704
3707
|
ariaLabel: "Choose a Retailer",
|
|
3705
3708
|
value: g,
|
|
@@ -3749,7 +3752,7 @@ function Hi({
|
|
|
3749
3752
|
document.body
|
|
3750
3753
|
);
|
|
3751
3754
|
}
|
|
3752
|
-
function
|
|
3755
|
+
function Hi({
|
|
3753
3756
|
tooltip: e
|
|
3754
3757
|
}) {
|
|
3755
3758
|
return e ? /* @__PURE__ */ O(
|
|
@@ -3765,7 +3768,7 @@ function Ui({
|
|
|
3765
3768
|
}
|
|
3766
3769
|
) : null;
|
|
3767
3770
|
}
|
|
3768
|
-
async function
|
|
3771
|
+
async function Ui(e, t, n) {
|
|
3769
3772
|
const i = e.replace(/\/$/, ""), s = [];
|
|
3770
3773
|
let u = 1;
|
|
3771
3774
|
for (; !(n != null && n.aborted); ) {
|
|
@@ -3785,9 +3788,9 @@ async function Bi(e, t, n) {
|
|
|
3785
3788
|
if (s.length >= G || y.length < 100) break;
|
|
3786
3789
|
u += 1;
|
|
3787
3790
|
}
|
|
3788
|
-
return s.map(
|
|
3791
|
+
return s.map(yr).filter((g) => g != null);
|
|
3789
3792
|
}
|
|
3790
|
-
async function
|
|
3793
|
+
async function Bi(e, t, n, i) {
|
|
3791
3794
|
const s = e.replace(/\/$/, ""), u = new URLSearchParams();
|
|
3792
3795
|
t != null && t > 0 && u.set("center_id", String(t)), n && u.set("draft", "1");
|
|
3793
3796
|
const g = u.toString(), w = await fetch(`${s}/v1/map/document${g ? `?${g}` : ""}`, {
|
|
@@ -3798,7 +3801,7 @@ async function Zi(e, t, n, i) {
|
|
|
3798
3801
|
throw new Error(`Failed to load map document (${w.status})`);
|
|
3799
3802
|
return w.json();
|
|
3800
3803
|
}
|
|
3801
|
-
function
|
|
3804
|
+
function tc(e) {
|
|
3802
3805
|
hn();
|
|
3803
3806
|
const {
|
|
3804
3807
|
document: t,
|
|
@@ -3816,7 +3819,7 @@ function nc(e) {
|
|
|
3816
3819
|
onActiveLevelChange: h,
|
|
3817
3820
|
routeOnSelect: S = !0,
|
|
3818
3821
|
imageProxyUrl: I,
|
|
3819
|
-
selectedShapeId:
|
|
3822
|
+
selectedShapeId: v = null,
|
|
3820
3823
|
selectedShapeIds: T,
|
|
3821
3824
|
hoveredShapeId: _ = null,
|
|
3822
3825
|
focusNonce: P,
|
|
@@ -3827,13 +3830,13 @@ function nc(e) {
|
|
|
3827
3830
|
} = e, [Y, X] = he(t ?? null), L = ie(
|
|
3828
3831
|
() => Y ? zt(Y) : null,
|
|
3829
3832
|
[Y]
|
|
3830
|
-
), [se, Q] = he(null), [d, A] = he(null), [R, W] = he(null), [k, b] = he(null), [$, ee] = he(!1), [ae, fe] = he(null), [
|
|
3833
|
+
), [se, Q] = he(null), [d, A] = he(null), [R, W] = he(null), [k, b] = he(null), [$, ee] = he(!1), [ae, fe] = he(null), [xe, m] = he(!1), [l, o] = he(
|
|
3831
3834
|
null
|
|
3832
|
-
), [r, C] = he(null), [U,
|
|
3835
|
+
), [r, C] = he(null), [U, x] = he(() => t ? ot(zt(t).levels) : null), F = ue(null), H = ue(null), K = ue({
|
|
3833
3836
|
from: null,
|
|
3834
3837
|
to: null
|
|
3835
3838
|
}), [a, M] = he(1280), z = V ?? U, D = (j) => {
|
|
3836
|
-
|
|
3839
|
+
x(j), j != null && (h == null || h(j));
|
|
3837
3840
|
};
|
|
3838
3841
|
me(() => {
|
|
3839
3842
|
if (t) {
|
|
@@ -3843,7 +3846,7 @@ function nc(e) {
|
|
|
3843
3846
|
if (!n) return;
|
|
3844
3847
|
let j = !1;
|
|
3845
3848
|
const re = new AbortController(), te = He(s).fetchDraft;
|
|
3846
|
-
return
|
|
3849
|
+
return Bi(n, i, te, re.signal).then((ce) => {
|
|
3847
3850
|
j || X(ce);
|
|
3848
3851
|
}).catch((ce) => {
|
|
3849
3852
|
!j && !(ce instanceof DOMException && ce.name === "AbortError") && Q(ce instanceof Error ? ce.message : String(ce));
|
|
@@ -3864,7 +3867,7 @@ function nc(e) {
|
|
|
3864
3867
|
if (!j.storeModal && !j.hoverTooltip || !n) return;
|
|
3865
3868
|
let re = !1;
|
|
3866
3869
|
const te = new AbortController();
|
|
3867
|
-
return
|
|
3870
|
+
return Ui(n, i, te.signal).then((ce) => {
|
|
3868
3871
|
re || C(ce);
|
|
3869
3872
|
}).catch(() => {
|
|
3870
3873
|
re || C([]);
|
|
@@ -3897,10 +3900,10 @@ function nc(e) {
|
|
|
3897
3900
|
}
|
|
3898
3901
|
}
|
|
3899
3902
|
}, [L, g]);
|
|
3900
|
-
const f = ie(() => ae != null ? [ae] : T && T.length > 0 ? T :
|
|
3901
|
-
() => L ?
|
|
3903
|
+
const f = ie(() => ae != null ? [ae] : T && T.length > 0 ? T : v != null ? [v] : [], [v, T, ae]), c = yi(f), J = c == null ? null : P != null ? `${c}#${P}` : c, le = ie(() => !L || f.length === 0 ? null : bt(L.levels, f), [L, f]), pe = ie(
|
|
3904
|
+
() => L ? gr(L, s, u) : null,
|
|
3902
3905
|
[L, s, u]
|
|
3903
|
-
), Me = ie(() => !L || !d ? null :
|
|
3906
|
+
), Me = ie(() => !L || !d ? null : Ai(L.levels, d, z), [z, L, d]), Ae = d ? `route:${z ?? "none"}:${d.anchorIds.join(",")}` : null, Ie = B ? null : Ae ?? J, Te = B ? null : Me ?? le, Ve = q ?? Sr(s, a), Ee = L ? Ar(L.responsiveOverrides, z, Ve) : null, Ge = Ee ? xr(Ee) : null, ke = kr(
|
|
3904
3907
|
z,
|
|
3905
3908
|
Ve,
|
|
3906
3909
|
B
|
|
@@ -3908,7 +3911,7 @@ function nc(e) {
|
|
|
3908
3911
|
me(() => {
|
|
3909
3912
|
!He(s).kioskOrigin || !pe || (W(pe.anchorId), D(pe.levelId));
|
|
3910
3913
|
}, [s, pe]);
|
|
3911
|
-
const be = ie(() => L ?
|
|
3914
|
+
const be = ie(() => L ? vr(
|
|
3912
3915
|
L.graph.nodes.map((j) => ({
|
|
3913
3916
|
id: j.id,
|
|
3914
3917
|
levelId: j.levelId,
|
|
@@ -3929,7 +3932,7 @@ function nc(e) {
|
|
|
3929
3932
|
kind: j.kind
|
|
3930
3933
|
})),
|
|
3931
3934
|
L.connectors
|
|
3932
|
-
) : null, [L]), De = ie(() => L ?
|
|
3935
|
+
) : null, [L]), De = ie(() => L ? br(
|
|
3933
3936
|
L,
|
|
3934
3937
|
r && r.length > 0 ? r : L.retailers
|
|
3935
3938
|
) : [], [L, r]), Je = ie(() => r && r.length > 0 ? r : (L == null ? void 0 : L.retailers) ?? [], [L == null ? void 0 : L.retailers, r]), _e = ge(
|
|
@@ -3940,9 +3943,9 @@ function nc(e) {
|
|
|
3940
3943
|
);
|
|
3941
3944
|
me(() => {
|
|
3942
3945
|
o(null);
|
|
3943
|
-
}, [s, z,
|
|
3944
|
-
const $e = ie(() => !L || ae == null ? null :
|
|
3945
|
-
const te =
|
|
3946
|
+
}, [s, z, xe]);
|
|
3947
|
+
const $e = ie(() => !L || ae == null ? null : Mr(L, ae), [L, ae]), wn = (j, re) => {
|
|
3948
|
+
const te = Ro(
|
|
3946
3949
|
K.current.from,
|
|
3947
3950
|
K.current.to,
|
|
3948
3951
|
j,
|
|
@@ -3956,7 +3959,7 @@ function nc(e) {
|
|
|
3956
3959
|
accessibleOnly: $
|
|
3957
3960
|
});
|
|
3958
3961
|
if (A(ce), te) {
|
|
3959
|
-
const ye =
|
|
3962
|
+
const ye = zo(ce);
|
|
3960
3963
|
ye != null && D(ye);
|
|
3961
3964
|
}
|
|
3962
3965
|
};
|
|
@@ -3966,7 +3969,7 @@ function nc(e) {
|
|
|
3966
3969
|
const et = ge(
|
|
3967
3970
|
(j) => {
|
|
3968
3971
|
var te;
|
|
3969
|
-
const re =
|
|
3972
|
+
const re = wr({
|
|
3970
3973
|
kind: j,
|
|
3971
3974
|
kioskOrigin: pe,
|
|
3972
3975
|
activeLevelId: z,
|
|
@@ -4012,7 +4015,7 @@ function nc(e) {
|
|
|
4012
4015
|
var Fe;
|
|
4013
4016
|
return ((Fe = Le.assignment) == null ? void 0 : Fe.amenityId) === te.id;
|
|
4014
4017
|
}
|
|
4015
|
-
), ye =
|
|
4018
|
+
), ye = Tr(be, R, ce, {
|
|
4016
4019
|
accessibleOnly: $
|
|
4017
4020
|
}), Oe = ye == null ? void 0 : ye.anchorIds.at(-1);
|
|
4018
4021
|
Oe != null && b(Oe);
|
|
@@ -4036,19 +4039,19 @@ function nc(e) {
|
|
|
4036
4039
|
L,
|
|
4037
4040
|
R
|
|
4038
4041
|
]);
|
|
4039
|
-
const tt =
|
|
4042
|
+
const tt = Ir(L == null ? void 0 : L.theme, w);
|
|
4040
4043
|
if (se)
|
|
4041
4044
|
return /* @__PURE__ */ O("div", { className: `eyeon-map-viewer eyeon-map-viewer--error ${G ?? ""}`, style: N, children: /* @__PURE__ */ O("div", { className: "eyeon-map-viewer__error", children: se }) });
|
|
4042
4045
|
if (!L)
|
|
4043
4046
|
return /* @__PURE__ */ O("div", { className: `eyeon-map-viewer eyeon-map-viewer--loading ${G ?? ""}`, style: N, children: /* @__PURE__ */ O("div", { className: "eyeon-map-viewer__loading", children: "Loading map…" }) });
|
|
4044
4047
|
const In = L.amenities.filter(
|
|
4045
|
-
(j) =>
|
|
4048
|
+
(j) => jr(j.code) && L.levels.some(
|
|
4046
4049
|
(re) => re.shapes.some((te) => {
|
|
4047
4050
|
var ce;
|
|
4048
4051
|
return ((ce = te.assignment) == null ? void 0 : ce.amenityId) === j.id;
|
|
4049
4052
|
})
|
|
4050
4053
|
)
|
|
4051
|
-
), we = B ? { ...He(s), storeModal: !1, hoverTooltip: !1 } : He(s), We =
|
|
4054
|
+
), we = B ? { ...He(s), storeModal: !1, hoverTooltip: !1 } : He(s), We = Cr(
|
|
4052
4055
|
B ? "PORTAL_ASSIGN" : s,
|
|
4053
4056
|
L.levels
|
|
4054
4057
|
);
|
|
@@ -4061,9 +4064,9 @@ function nc(e) {
|
|
|
4061
4064
|
"--map-bg": tt.MAP_BACKGROUND_COLOR
|
|
4062
4065
|
},
|
|
4063
4066
|
children: [
|
|
4064
|
-
We ? null : /* @__PURE__ */ O("div", { className: "eyeon-map-viewer__empty", children:
|
|
4067
|
+
We ? null : /* @__PURE__ */ O("div", { className: "eyeon-map-viewer__empty", children: Or }),
|
|
4065
4068
|
We && (we.search || we.amenities) && /* @__PURE__ */ O(
|
|
4066
|
-
|
|
4069
|
+
Wi,
|
|
4067
4070
|
{
|
|
4068
4071
|
doc: L,
|
|
4069
4072
|
amenities: In,
|
|
@@ -4082,7 +4085,7 @@ function nc(e) {
|
|
|
4082
4085
|
}
|
|
4083
4086
|
),
|
|
4084
4087
|
We ? /* @__PURE__ */ O(
|
|
4085
|
-
|
|
4088
|
+
Br,
|
|
4086
4089
|
{
|
|
4087
4090
|
levels: L.levels,
|
|
4088
4091
|
activeLevelId: z,
|
|
@@ -4101,7 +4104,7 @@ function nc(e) {
|
|
|
4101
4104
|
}
|
|
4102
4105
|
) : null,
|
|
4103
4106
|
We ? /* @__PURE__ */ O("div", { ref: H, className: "eyeon-map-viewer__canvas", children: /* @__PURE__ */ O(Nn, { fallback: null, children: /* @__PURE__ */ O(
|
|
4104
|
-
|
|
4107
|
+
Di,
|
|
4105
4108
|
{
|
|
4106
4109
|
doc: L,
|
|
4107
4110
|
theme: tt,
|
|
@@ -4109,7 +4112,7 @@ function nc(e) {
|
|
|
4109
4112
|
kioskOriginShapeId: (pe == null ? void 0 : pe.shapeId) ?? null,
|
|
4110
4113
|
activeLevelId: z,
|
|
4111
4114
|
route: d,
|
|
4112
|
-
selectedShapeId: B ? null : ae ??
|
|
4115
|
+
selectedShapeId: B ? null : ae ?? v,
|
|
4113
4116
|
selectedShapeIds: B ? [] : f,
|
|
4114
4117
|
hoveredShapeId: B ? null : _,
|
|
4115
4118
|
focusKey: Ie,
|
|
@@ -4134,7 +4137,7 @@ function nc(e) {
|
|
|
4134
4137
|
return;
|
|
4135
4138
|
}
|
|
4136
4139
|
const ce = L.levels.find((Ce) => Ce.id === re), ye = ce == null ? void 0 : ce.shapes.find((Ce) => Ce.id === j);
|
|
4137
|
-
if (we.storeModal &&
|
|
4140
|
+
if (we.storeModal && Lr(s, ye)) {
|
|
4138
4141
|
fe(j), m(!0), te != null && te.additive || D(
|
|
4139
4142
|
it(
|
|
4140
4143
|
L.levels,
|
|
@@ -4149,7 +4152,7 @@ function nc(e) {
|
|
|
4149
4152
|
return;
|
|
4150
4153
|
}
|
|
4151
4154
|
if (S) {
|
|
4152
|
-
const Ce =
|
|
4155
|
+
const Ce = Nr((ce == null ? void 0 : ce.anchors) ?? [], j);
|
|
4153
4156
|
let Ue = Ce[0];
|
|
4154
4157
|
be && R != null && Ce.length > 1 && (Ue = ((Et = ct(be, [R], Ce, {
|
|
4155
4158
|
accessibleOnly: $
|
|
@@ -4157,16 +4160,16 @@ function nc(e) {
|
|
|
4157
4160
|
} else te != null && te.additive || D(
|
|
4158
4161
|
it(L.levels, z, re)
|
|
4159
4162
|
);
|
|
4160
|
-
if ((St = e.onSelectShape) == null || St.call(e, j, te), !(te != null && te.additive) && j ===
|
|
4161
|
-
const Ce = bt(L.levels, f) ??
|
|
4163
|
+
if ((St = e.onSelectShape) == null || St.call(e, j, te), !(te != null && te.additive) && j === v) {
|
|
4164
|
+
const Ce = bt(L.levels, f) ?? gi(L.levels, j);
|
|
4162
4165
|
Ce && ((Tt = F.current) == null || Tt.focusBounds(Ce));
|
|
4163
4166
|
}
|
|
4164
4167
|
}
|
|
4165
4168
|
}
|
|
4166
4169
|
) }) }) : null,
|
|
4167
|
-
we.hoverTooltip && !
|
|
4168
|
-
we.storeModal &&
|
|
4169
|
-
|
|
4170
|
+
we.hoverTooltip && !xe ? /* @__PURE__ */ O(Hi, { tooltip: l }) : null,
|
|
4171
|
+
we.storeModal && xe && $e ? /* @__PURE__ */ O(
|
|
4172
|
+
Fi,
|
|
4170
4173
|
{
|
|
4171
4174
|
destination: $e,
|
|
4172
4175
|
retailers: De,
|
|
@@ -4174,7 +4177,7 @@ function nc(e) {
|
|
|
4174
4177
|
host: s,
|
|
4175
4178
|
onClose: () => m(!1),
|
|
4176
4179
|
onMapIt: (j) => {
|
|
4177
|
-
const re = De.find((ce) => ce.id === j), te =
|
|
4180
|
+
const re = De.find((ce) => ce.id === j), te = Er(re, $e);
|
|
4178
4181
|
te && (W(te.fromAnchorId), b(te.toAnchorId), m(!1));
|
|
4179
4182
|
}
|
|
4180
4183
|
}
|
|
@@ -4184,21 +4187,21 @@ function nc(e) {
|
|
|
4184
4187
|
);
|
|
4185
4188
|
}
|
|
4186
4189
|
export {
|
|
4187
|
-
|
|
4188
|
-
|
|
4189
|
-
|
|
4190
|
-
|
|
4191
|
-
|
|
4190
|
+
Br as M,
|
|
4191
|
+
Wi as R,
|
|
4192
|
+
Di as a,
|
|
4193
|
+
tc as b,
|
|
4194
|
+
Ji as c,
|
|
4192
4195
|
Gt as d,
|
|
4193
4196
|
hn as e,
|
|
4194
|
-
|
|
4197
|
+
Qr as f,
|
|
4195
4198
|
Ct as g,
|
|
4196
|
-
|
|
4197
|
-
|
|
4199
|
+
xt as h,
|
|
4200
|
+
ro as i,
|
|
4198
4201
|
un as j,
|
|
4199
|
-
|
|
4200
|
-
|
|
4202
|
+
_i as k,
|
|
4203
|
+
$i as l,
|
|
4201
4204
|
Ot as m,
|
|
4202
|
-
|
|
4205
|
+
ec as n
|
|
4203
4206
|
};
|
|
4204
4207
|
//# sourceMappingURL=MapViewer.js.map
|