@expofp/floorplan 0.0.0-experimental.2d6c681 → 0.0.0-experimental.6f27bb7

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.
Files changed (40) hide show
  1. package/dist/browser/{CookieConsent-BIsWzAiP.js → CookieConsent-DYjf8elV.js} +1 -1
  2. package/dist/browser/{Debug-B5mmo0ZX.js → Debug-CK-BLY-v.js} +1 -1
  3. package/dist/browser/{Demo-B2klxORi.js → Demo-B677YULI.js} +1 -1
  4. package/dist/browser/{Free-suULW-LU.js → Free-B_nU7Krr.js} +1 -1
  5. package/dist/browser/{GalleryContainer-BGBNGRKU.js → GalleryContainer-DcZrZnJz.js} +2 -2
  6. package/dist/browser/{GpsLoader-Idv0kq5D.js → GpsLoader-BrvSPc8H.js} +5 -5
  7. package/dist/browser/{KioskStore-Dg9jaX5d.js → KioskStore-BJ4bqapB.js} +4 -4
  8. package/dist/browser/{LayerStore-CK6wLW56.js → LayerStore-C4GTDPHD.js} +4 -4
  9. package/dist/browser/{MaplibreAdapter-uZUhZfFW.js → MaplibreAdapter-LT3aYdKq.js} +58 -59
  10. package/dist/browser/{ModalContainer-DWm8vEaI.js → ModalContainer-DnZxo0qA.js} +1 -1
  11. package/dist/browser/{RouteStore-NE2I9tiF.js → RouteStore-BdR5neK3.js} +1552 -740
  12. package/dist/browser/{SetKioskMode-Dwlf5w7q.js → SetKioskMode-DAr5HygV.js} +2 -2
  13. package/dist/browser/{ShowKiosk-Cr-QmIUT.js → ShowKiosk-D69MzGn1.js} +3 -3
  14. package/dist/browser/{ViewerMenuPanel-CTAjGsq2.js → ViewerMenuPanel-YKHGRQD6.js} +3 -3
  15. package/dist/browser/bundle.json +31 -34
  16. package/dist/browser/{components-BjEhhgf2.js → components-CKKQ_xN7.js} +727 -727
  17. package/dist/browser/{create-live-plan-BaEGBhGA.js → create-live-plan-RDVxhQNb.js} +386 -725
  18. package/dist/browser/{floorplan.loader-CGzIMplb.js → floorplan.loader-BpPAaf2G.js} +6 -6
  19. package/dist/browser/{floorplan.ready-r96zV9bP.js → floorplan.ready-ewj3L_Nf.js} +470 -378
  20. package/dist/browser/{i18n-BgFBhYOU.js → i18n-DRDvImjG.js} +7 -2
  21. package/dist/browser/index.js +8 -8
  22. package/dist/browser/{venue-public-BA3x-n4N.js → init-ui-J0bwWoYp.js} +8 -18
  23. package/dist/browser/{integrateKiosk-D45vYRsm.js → integrateKiosk-C3Y0PTW1.js} +1 -1
  24. package/dist/browser/{is-debug-BRHdrnKr.js → is-debug-6YYr83sg.js} +2 -2
  25. package/dist/browser/{journey-plan-DtL28HMP.js → journey-plan-CXmXiYcU.js} +16 -16
  26. package/dist/browser/{kiosk-mode-DfkGlDkT.js → kiosk-mode-DaPbSm7O.js} +2 -2
  27. package/dist/browser/{kioskUrlParam-CnYhnC_7.js → kioskUrlParam-BvyzbPxz.js} +1 -1
  28. package/dist/browser/{loadImage-DzSnRAxX.js → loadImage-CenmkrfL.js} +1 -1
  29. package/dist/browser/{logDeviceInfo-BTqyv9Xe.js → logDeviceInfo-BVFtT7aX.js} +4 -4
  30. package/dist/browser/{debounce-raMZ2DqK.js → venue-selection-BaGA9szA.js} +8 -18
  31. package/dist/browser/{viewport-B7plho3P.js → viewport-DVZ47XEo.js} +1 -1
  32. package/dist/esm/floorplan.ready.js +10 -0
  33. package/dist/esm/store/RouteStore.d.ts +10 -0
  34. package/dist/esm/store/RouteStore.js +45 -16
  35. package/dist/esm/store/VenueStore.d.ts +7 -0
  36. package/dist/esm/store/VenueStore.js +9 -0
  37. package/dist/esm/tools/sdk-telemetry.d.ts +10 -0
  38. package/dist/esm/tools/sdk-telemetry.js +122 -0
  39. package/package.json +10 -10
  40. package/dist/browser/venues-DKpIy-87.js +0 -447
@@ -3,7 +3,7 @@
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
4
  e.SENTRY_RELEASE = { id: "3.45.6" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "15bf365e-fb97-43e6-93fd-c67120e028f6", e._sentryDebugIdIdentifier = "sentry-dbid-15bf365e-fb97-43e6-93fd-c67120e028f6");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "18c66287-8236-45af-a61d-489d7438c23a", e._sentryDebugIdIdentifier = "sentry-dbid-18c66287-8236-45af-a61d-489d7438c23a");
7
7
  } catch {}
8
8
  })();
9
9
  import { r as e, t } from "./rolldown-runtime-DUb2xvRc.js";
@@ -3826,7 +3826,9 @@ var rs = U({
3826
3826
  customSetKiosk: L().optional(),
3827
3827
  hideBoothBadges: B().optional(),
3828
3828
  crossVenueJourneys: B().optional(),
3829
- busRoutes: B().optional()
3829
+ busRoutes: B().optional(),
3830
+ ignoreUnknownFloorIndex: B().optional(),
3831
+ sdkTelemetry: B().optional()
3830
3832
  }), _s = U({
3831
3833
  styleUrl: L(),
3832
3834
  style: $a(),
@@ -4317,6 +4319,7 @@ var ic = U({
4317
4319
  enableExperimentalOutdoorMarkers: !0,
4318
4320
  enableExperimentalVenueFraming: !0,
4319
4321
  enableExperimentalNorthUp: !0,
4322
+ sdkTelemetry: !0,
4320
4323
  debugMode: !0,
4321
4324
  debugPattern: !0,
4322
4325
  showDebugButton: !0,
@@ -4407,6 +4410,8 @@ var ic = U({
4407
4410
  hideBoothBadges: !1,
4408
4411
  crossVenueJourneys: !0,
4409
4412
  busRoutes: !1,
4413
+ ignoreUnknownFloorIndex: !1,
4414
+ sdkTelemetry: !1,
4410
4415
  debugMode: !1,
4411
4416
  debugPattern: "",
4412
4417
  showDebugButton: !1,
@@ -3,16 +3,16 @@
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
4
  e.SENTRY_RELEASE = { id: "3.45.6" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "705d8ec8-9daf-4d1e-a7c9-88b77c15ea69", e._sentryDebugIdIdentifier = "sentry-dbid-705d8ec8-9daf-4d1e-a7c9-88b77c15ea69");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "133a40db-323a-470e-b485-67c877b2b690", e._sentryDebugIdIdentifier = "sentry-dbid-133a40db-323a-470e-b485-67c877b2b690");
7
7
  } catch {}
8
8
  })();
9
9
  import { r as e } from "./rolldown-runtime-DUb2xvRc.js";
10
- import { c as t, o as n, s as r, t as i } from "./floorplan.loader-CGzIMplb.js";
11
- import { A as a, B as o, G as s, H as c, Mt as l, U as u, it as d, l as f, lt as p, z as m } from "./i18n-BgFBhYOU.js";
10
+ import { c as t, o as n, s as r, t as i } from "./floorplan.loader-BpPAaf2G.js";
11
+ import { A as a, B as o, G as s, H as c, Mt as l, U as u, it as d, l as f, lt as p, z as m } from "./i18n-DRDvImjG.js";
12
12
  import { o as h, s as g } from "./efp-debug-init-CozbueIl.js";
13
13
  import { r as _ } from "./adopt-global-settings-U-KbyxMd.js";
14
14
  import "./settings-D74eG9h8.js";
15
- import { a as v, m as y, n as b, r as x } from "./is-debug-BRHdrnKr.js";
15
+ import { a as v, m as y, n as b, r as x } from "./is-debug-6YYr83sg.js";
16
16
  import { n as S, t as C } from "./is-own-domain-DNvxb9Ph.js";
17
17
  import { n as w, t as T } from "./event-head-C_inMpbD.js";
18
18
  //#region src/tools/report-error.ts
@@ -113,9 +113,9 @@ function M() {
113
113
  function N() {
114
114
  let e = {
115
115
  version: "3.45.6",
116
- commit: "2d6c681",
117
- branch: "feat/multi-venue-production",
118
- built: "2026-10-27T13:39:59.635Z"
116
+ commit: "6f27bb7",
117
+ branch: "feat/ignore-current-position-z",
118
+ built: "2026-11-10T09:37:02.259Z"
119
119
  };
120
120
  if (e) {
121
121
  let t = new Date(e.built);
@@ -152,7 +152,7 @@ async function L(e, t = {}) {
152
152
  }
153
153
  async function R(e, r = {}) {
154
154
  var a, o;
155
- window.addEventListener("error", D), v(() => window.removeEventListener("error", D)), M(), N(), (0, j.default)("efp:device").enabled && import("./logDeviceInfo-BTqyv9Xe.js").then((e) => e.logDeviceInfo()).catch(() => {});
155
+ window.addEventListener("error", D), v(() => window.removeEventListener("error", D)), M(), N(), (0, j.default)("efp:device").enabled && import("./logDeviceInfo-BVFtT7aX.js").then((e) => e.logDeviceInfo()).catch(() => {});
156
156
  let c = r.element, u;
157
157
  if (typeof c == "string") {
158
158
  let e = document.querySelector(c);
@@ -3,17 +3,17 @@
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
4
  e.SENTRY_RELEASE = { id: "3.45.6" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "dfa03766-3385-49c2-a21b-cf9ff866abc0", e._sentryDebugIdIdentifier = "sentry-dbid-dfa03766-3385-49c2-a21b-cf9ff866abc0");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "8d425b7b-a152-4f87-90a3-88eedd0124d2", e._sentryDebugIdIdentifier = "sentry-dbid-8d425b7b-a152-4f87-90a3-88eedd0124d2");
7
7
  } catch {}
8
8
  })();
9
9
  import { r as e, t } from "./rolldown-runtime-DUb2xvRc.js";
10
- import { g as n, l as r } from "./i18n-BgFBhYOU.js";
11
- import { a as i, m as a } from "./is-debug-BRHdrnKr.js";
12
- import { t as o } from "./loadImage-DzSnRAxX.js";
10
+ import { g as n, l as r } from "./i18n-DRDvImjG.js";
11
+ import { a as i, m as a } from "./is-debug-6YYr83sg.js";
12
+ import { t as o } from "./loadImage-CenmkrfL.js";
13
13
  import { i as s, u as c } from "./mobx.module-BOCLFB5I.js";
14
- import { y as l } from "./debounce-raMZ2DqK.js";
15
- import { A as u, F as d, Xt as f, j as p, vn as m } from "./LayerStore-CK6wLW56.js";
16
- import { t as h } from "./kiosk-mode-DfkGlDkT.js";
14
+ import { v as l } from "./venue-selection-BaGA9szA.js";
15
+ import { A as u, F as d, Xt as f, j as p, vn as m } from "./LayerStore-C4GTDPHD.js";
16
+ import { t as h } from "./kiosk-mode-DaPbSm7O.js";
17
17
  //#region src/utils/detectLimitedModeViaImage.ts
18
18
  var g = l(), _ = `${n}expofp-overlay.png`;
19
19
  async function v(e = _) {
@@ -283,14 +283,4 @@ async function O(e) {
283
283
  }
284
284
  }
285
285
  //#endregion
286
- //#region src/store/venue-public.ts
287
- function k(e, t) {
288
- return {
289
- id: e.id,
290
- name: e.name,
291
- order: e.order,
292
- active: t
293
- };
294
- }
295
- //#endregion
296
- export { C as i, T as n, E as r, k as t };
286
+ export { E as n, C as r, T as t };
@@ -7,7 +7,7 @@
7
7
  } catch {}
8
8
  })();
9
9
  import { u as e } from "./mobx.module-BOCLFB5I.js";
10
- import { M as t } from "./LayerStore-CK6wLW56.js";
10
+ import { M as t } from "./LayerStore-C4GTDPHD.js";
11
11
  import { l as n } from "./store-q_CTsixH.js";
12
12
  import { t as r } from "./kiosk-record-JAEq8SV6.js";
13
13
  //#region src/components/Kiosk/integrateKiosk.ts
@@ -7,9 +7,9 @@
7
7
  } catch {}
8
8
  })();
9
9
  import { r as e } from "./rolldown-runtime-DUb2xvRc.js";
10
- import { At as t, J as n, K as r, l as i, q as a } from "./i18n-BgFBhYOU.js";
10
+ import { At as t, J as n, K as r, l as i, q as a } from "./i18n-DRDvImjG.js";
11
11
  import { s as o } from "./efp-debug-init-CozbueIl.js";
12
- import { n as s } from "./loadImage-DzSnRAxX.js";
12
+ import { n as s } from "./loadImage-CenmkrfL.js";
13
13
  //#region src/tools/logger.ts
14
14
  var c = /* @__PURE__ */ e(o(), 1), l = class {
15
15
  constructor() {
@@ -3,20 +3,20 @@
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
4
  e.SENTRY_RELEASE = { id: "3.45.6" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "c0335def-b4ec-48b0-8a81-3882eeba8a19", e._sentryDebugIdIdentifier = "sentry-dbid-c0335def-b4ec-48b0-8a81-3882eeba8a19");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "9b486379-48a0-491f-8a9c-c0041f15a9d4", e._sentryDebugIdIdentifier = "sentry-dbid-9b486379-48a0-491f-8a9c-c0041f15a9d4");
7
7
  } catch {}
8
8
  })();
9
9
  import { r as e } from "./rolldown-runtime-DUb2xvRc.js";
10
- import { at as t, g as n, nt as r, ot as i, rt as a } from "./i18n-BgFBhYOU.js";
10
+ import { at as t, g as n, nt as r, ot as i, rt as a } from "./i18n-DRDvImjG.js";
11
11
  import { t as o } from "./react-DqPP-mkq.js";
12
- import { t as s } from "./loadImage-DzSnRAxX.js";
12
+ import { t as s } from "./loadImage-CenmkrfL.js";
13
13
  import { c, i as l, l as u } from "./mobx.module-BOCLFB5I.js";
14
14
  import { r as d } from "./debug-context-CNBgUWR8.js";
15
- import { $ as f, At as p, Bt as m, Ct as h, Et as g, Ft as _, G as v, It as y, J as b, Jt as x, K as S, Lt as C, Mt as w, Nt as T, O as E, Pt as D, Q as ee, Qt as O, St as k, Tt as te, Ut as A, X as ne, Xt as j, Y as re, Z as ie, a as ae, at as oe, b as se, d as ce, f as le, fn as ue, hn as de, it as fe, jt as pe, ot as me, pn as M, pt as N, t as he, tt as ge, un as P, vt as _e, x as ve, xn as F, xt as ye, yn as I, yt as be, zt as xe } from "./LayerStore-CK6wLW56.js";
15
+ import { $ as f, At as p, Bt as m, Ct as h, Et as g, Ft as _, G as v, It as y, J as b, Jt as x, K as S, Lt as C, Mt as w, Nt as T, O as E, Pt as D, Q as ee, Qt as O, St as k, Tt as te, Ut as A, X as ne, Xt as j, Y as re, Z as ie, a as ae, at as oe, b as se, d as ce, f as le, fn as ue, hn as de, it as fe, jt as pe, ot as me, pn as M, pt as N, t as he, tt as ge, un as P, vt as _e, x as ve, xn as F, xt as ye, yn as I, yt as be, zt as xe } from "./LayerStore-C4GTDPHD.js";
16
16
  import { a as Se, l as L, t as Ce, u as R } from "./store-q_CTsixH.js";
17
- import { B as we, U as Te, V as Ee, W as De, f as Oe, m as ke, n as Ae, u as je, x as Me } from "./RouteStore-NE2I9tiF.js";
18
- import { a as Ne, n as Pe, o as Fe } from "./kioskUrlParam-CnYhnC_7.js";
19
- import { i as Ie, n as Le } from "./viewport-B7plho3P.js";
17
+ import { E as we, G as Te, J as Ee, K as De, Y as Oe, _ as ke, h as Ae, n as je, y as Me } from "./RouteStore-BdR5neK3.js";
18
+ import { a as Ne, n as Pe, o as Fe } from "./kioskUrlParam-BvyzbPxz.js";
19
+ import { i as Ie, n as Le } from "./viewport-DVZ47XEo.js";
20
20
  //#region src/components/Map/traffic/trafficLayers.ts
21
21
  var Re = "traffic_route", ze = "traffic_route_stop", z = "traffic_vehicles", Be = "build_route_lines", Ve = "build_route_dots", He = 5;
22
22
  function Ue() {
@@ -790,7 +790,7 @@ function an() {
790
790
  var t;
791
791
  let n = S(St, []);
792
792
  n.overlay = R.is3DView;
793
- let r = R.is3DView ? on() : void 0, i = ke({ overlay: R.is3DView }), a = [], o = [];
793
+ let r = R.is3DView ? on() : void 0, i = Me({ overlay: R.is3DView }), a = [], o = [];
794
794
  for (let t of e.flat()) E(t.name) ? (t.dim = 0, o.push(t)) : a.push(t);
795
795
  let { layer: s, cleanup: c } = bt("root", Ce.booths);
796
796
  return {
@@ -1371,7 +1371,7 @@ function Rn(e) {
1371
1371
  return Math.min(e || 1, Tn);
1372
1372
  }
1373
1373
  function zn(e, t) {
1374
- return Ee(e, t);
1374
+ return De(e, t);
1375
1375
  }
1376
1376
  function Bn({ radius: e, scale: t, color: n }) {
1377
1377
  let r = Math.ceil(e * 2 * t), i = ye(r, r, t);
@@ -1462,7 +1462,7 @@ function Yn(e, t, n, r) {
1462
1462
  n({
1463
1463
  x: h.x + (g.x - h.x) * v,
1464
1464
  y: h.y + (g.y - h.y) * v,
1465
- angle: Ee(h, g)
1465
+ angle: De(h, g)
1466
1466
  }), d < 1 ? a = requestAnimationFrame(c) : r && r();
1467
1467
  };
1468
1468
  return a = requestAnimationFrame(c), () => {
@@ -1560,7 +1560,7 @@ function hr(e, t, n) {
1560
1560
  if (!Z(t.geo)) continue;
1561
1561
  let e = i ? I(t.local, i) : 0;
1562
1562
  if (e > o) continue;
1563
- let r = Te(n, t.geo);
1563
+ let r = Ee(n, t.geo);
1564
1564
  e === o && r >= s || (a = t, o = e, s = r);
1565
1565
  }
1566
1566
  return a;
@@ -1612,7 +1612,7 @@ function _r(e) {
1612
1612
  connector: {
1613
1613
  from: m,
1614
1614
  to: g.geo,
1615
- distanceMeters: Te(m, g.geo)
1615
+ distanceMeters: Ee(m, g.geo)
1616
1616
  },
1617
1617
  provider: f,
1618
1618
  url: dr(f, g.geo, a.kind === "live-position" ? void 0 : m)
@@ -1636,7 +1636,7 @@ function _r(e) {
1636
1636
  var vr = (e) => Number.isFinite(e == null ? void 0 : e.x) && Number.isFinite(e == null ? void 0 : e.y) && Number.isFinite(e == null ? void 0 : e.lat) && Number.isFinite(e == null ? void 0 : e.lng);
1637
1637
  function Q(e, t) {
1638
1638
  if (!t || !vr(t.p0) || !vr(t.p2)) return;
1639
- let n = De(e, ...Me(t));
1639
+ let n = Oe(e, ...we(t));
1640
1640
  return Z(n) ? n : void 0;
1641
1641
  }
1642
1642
  function yr(e, t) {
@@ -1778,7 +1778,7 @@ function zr() {
1778
1778
  });
1779
1779
  return i ? wr({
1780
1780
  venues: L.venueStore,
1781
- gpsConfig: (t = we()) == null || (t = t.properties) == null ? void 0 : t.config,
1781
+ gpsConfig: (t = Te()) == null || (t = t.properties) == null ? void 0 : t.config,
1782
1782
  enabled: j.crossVenueJourneys === !0,
1783
1783
  platform: Sr(),
1784
1784
  providerOverride: j.mapsProvider
@@ -1815,11 +1815,11 @@ function Ur(e) {
1815
1815
  function Wr(e, t) {
1816
1816
  let n = $.get(), r = Ar(e, t), i = r == null ? void 0 : r.door;
1817
1817
  if (!n || !r || !(i != null && i.layerName)) return;
1818
- let a = Oe({
1818
+ let a = ke({
1819
1819
  x: i.local.x,
1820
1820
  y: i.local.y,
1821
1821
  z: i.layerName
1822
- }, r.label, je), o = r.kind === "exit" ? new Ae(n.request.from, a) : new Ae(a, n.request.to);
1822
+ }, r.label, Ae), o = r.kind === "exit" ? new je(n.request.from, a) : new je(a, n.request.to);
1823
1823
  $.set({
1824
1824
  ...n,
1825
1825
  legRoute: o
@@ -6,8 +6,8 @@
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "78c98ca4-4255-4ad6-8fd7-fbc8ca4f0e98", e._sentryDebugIdIdentifier = "sentry-dbid-78c98ca4-4255-4ad6-8fd7-fbc8ca4f0e98");
7
7
  } catch {}
8
8
  })();
9
- import { D as e, l as t } from "./i18n-BgFBhYOU.js";
10
- import { en as n } from "./LayerStore-CK6wLW56.js";
9
+ import { D as e, l as t } from "./i18n-DRDvImjG.js";
10
+ import { en as n } from "./LayerStore-C4GTDPHD.js";
11
11
  //#region src/components/Kiosk/kiosk-mode.ts
12
12
  function r(n, r) {
13
13
  n.kiosk = r, r || n.resetUIScale(), t && window.localStorage.setItem(e, r ? "1" : "0");
@@ -7,7 +7,7 @@
7
7
  } catch {}
8
8
  })();
9
9
  import { t as e } from "./is-webview-cTH4yz8f.js";
10
- import { E as t, _t as n, gt as r, ln as i, mt as a, sn as o, un as s } from "./LayerStore-CK6wLW56.js";
10
+ import { E as t, _t as n, gt as r, ln as i, mt as a, sn as o, un as s } from "./LayerStore-C4GTDPHD.js";
11
11
  //#region src/components/Kiosk/SetKiosk/getKioskUrlParamKey.ts
12
12
  function c(e) {
13
13
  return `${o}${e}`;
@@ -6,7 +6,7 @@
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "27a90edf-89fd-4877-acdf-30d87d983c21", e._sentryDebugIdIdentifier = "sentry-dbid-27a90edf-89fd-4877-acdf-30d87d983c21");
7
7
  } catch {}
8
8
  })();
9
- import { jt as e } from "./i18n-BgFBhYOU.js";
9
+ import { jt as e } from "./i18n-DRDvImjG.js";
10
10
  //#region src/tools/event-scoped-cache.ts
11
11
  function t(t) {
12
12
  let n, r = !1, i;
@@ -3,7 +3,7 @@
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
4
  e.SENTRY_RELEASE = { id: "3.45.6" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "90cb90e3-6764-4172-8426-2c2ba87e20f2", e._sentryDebugIdIdentifier = "sentry-dbid-90cb90e3-6764-4172-8426-2c2ba87e20f2");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "abc7aa20-f90d-4345-a272-df8d17e73002", e._sentryDebugIdIdentifier = "sentry-dbid-abc7aa20-f90d-4345-a272-df8d17e73002");
7
7
  } catch {}
8
8
  })();
9
9
  import { r as e } from "./rolldown-runtime-DUb2xvRc.js";
@@ -43,9 +43,9 @@ function c(e) {
43
43
  t && u.push(`${e}: ${t}`);
44
44
  }, f = {
45
45
  version: "3.45.6",
46
- commit: "2d6c681",
47
- branch: "feat/multi-venue-production",
48
- built: "2026-10-27T13:39:59.635Z"
46
+ commit: "6f27bb7",
47
+ branch: "feat/ignore-current-position-z",
48
+ built: "2026-11-10T09:37:02.259Z"
49
49
  };
50
50
  f && d("SDK", `${f.version} (${f.commit} on ${f.branch}, built ${f.built})`);
51
51
  let p = window.devicePixelRatio || 1;
@@ -3,19 +3,19 @@
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
4
  e.SENTRY_RELEASE = { id: "3.45.6" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "348a6e17-d7aa-42d5-b4d4-f52a02bb1a61", e._sentryDebugIdIdentifier = "sentry-dbid-348a6e17-d7aa-42d5-b4d4-f52a02bb1a61");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "70ec8518-4ab9-4738-bd4e-0d13d77631b2", e._sentryDebugIdIdentifier = "sentry-dbid-70ec8518-4ab9-4738-bd4e-0d13d77631b2");
7
7
  } catch {}
8
8
  })();
9
9
  import { r as e, t } from "./rolldown-runtime-DUb2xvRc.js";
10
- import { A as n, H as r, O as i, W as a, h as o, j as s, k as c, l, n as u, s as d, t as f } from "./i18n-BgFBhYOU.js";
11
- import { m as p } from "./is-debug-BRHdrnKr.js";
10
+ import { A as n, H as r, O as i, W as a, h as o, j as s, k as c, l, n as u, s as d, t as f } from "./i18n-DRDvImjG.js";
11
+ import { m as p } from "./is-debug-6YYr83sg.js";
12
12
  import { a as m, c as h, n as g } from "./mobx.module-BOCLFB5I.js";
13
- import { $ as _, I as v, Ut as y, W as b, Xt as x, Yt as S, in as C, m as w, nt as T, qt as E, tt as D, un as ee, vn as te, vt as ne } from "./LayerStore-CK6wLW56.js";
13
+ import { $ as _, I as v, Ut as y, W as b, Xt as x, Yt as S, in as C, m as w, nt as T, qt as E, tt as D, un as ee, vn as te, vt as ne } from "./LayerStore-C4GTDPHD.js";
14
14
  import { u as O } from "./store-q_CTsixH.js";
15
15
  import { n as re } from "./freeBanner-CnrBc9Tl.js";
16
- import { E as ie, n as k, o as ae } from "./RouteStore-NE2I9tiF.js";
17
- import { a as A, c as oe, l as se, n as ce, r as le, u as ue } from "./kioskUrlParam-CnYhnC_7.js";
18
- import { n as de } from "./kiosk-mode-DfkGlDkT.js";
16
+ import { j as ie, n as k, o as ae } from "./RouteStore-BdR5neK3.js";
17
+ import { a as A, c as oe, l as se, n as ce, r as le, u as ue } from "./kioskUrlParam-BvyzbPxz.js";
18
+ import { n as de } from "./kiosk-mode-DaPbSm7O.js";
19
19
  //#region ../../node_modules/.pnpm/resize-observer@1.0.4/node_modules/resize-observer/lib/ContentRect.js
20
20
  var fe = /* @__PURE__ */ t(((e) => {
21
21
  Object.defineProperty(e, "__esModule", { value: !0 }), e.ContentRect = function(e) {
@@ -2089,14 +2089,4 @@ function jn(e, t) {
2089
2089
  });
2090
2090
  }
2091
2091
  //#endregion
2092
- //#region src/tools/debounce.ts
2093
- function Mn(e, t) {
2094
- let n;
2095
- return (...r) => {
2096
- clearTimeout(n), n = setTimeout(() => {
2097
- e(...r);
2098
- }, t);
2099
- };
2100
- }
2101
- //#endregion
2102
- export { F as _, jn as a, Fe as c, Ee as d, Se as f, ve as g, H as h, An as i, Ne as l, ye as m, On as n, wn as o, W as p, kn as r, xn as s, Mn as t, J as u, _e as v, he as y };
2092
+ export { _e as _, wn as a, Ne as c, Se as d, W as f, F as g, ve as h, jn as i, J as l, H as m, kn as n, xn as o, ye as p, An as r, Fe as s, On as t, Ee as u, he as v };
@@ -6,7 +6,7 @@
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "8061fd30-b7d3-48a5-b02d-285dfa346e6c", e._sentryDebugIdIdentifier = "sentry-dbid-8061fd30-b7d3-48a5-b02d-285dfa346e6c");
7
7
  } catch {}
8
8
  })();
9
- import { t as e } from "./LayerStore-CK6wLW56.js";
9
+ import { t as e } from "./LayerStore-C4GTDPHD.js";
10
10
  import { l as t } from "./store-q_CTsixH.js";
11
11
  //#region src/components/Map/viewport.ts
12
12
  function n(e) {
@@ -24,6 +24,7 @@ import { bindJourneyProgress } from './store/journey-plan';
24
24
  import { findBooth, Route, separateExternalIds, } from './store/RouteStore';
25
25
  import { toPublicVenue } from './store/venue-public';
26
26
  import { GaEventActions, initGtag, sendEventToGa, setConsentSettings } from './tools/gtag.js';
27
+ import { queuePositionTelemetry, sendSdkTelemetry } from './tools/sdk-telemetry.js';
27
28
  import settings from './tools/settings';
28
29
  import trackEvent from './tools/track-event.js';
29
30
  import { cameraToMapSettings, mapSettingsToCamera } from './utils/camera-map-settings';
@@ -46,6 +47,7 @@ export default class FloorPlanReady extends FloorPlanLoader {
46
47
  initUrlRouting(this.offHistory);
47
48
  }
48
49
  trackEvent('load');
50
+ sendSdkTelemetry('load');
49
51
  // `initUi` already bound the container the loader created; re-point before
50
52
  // the UI mounts so the measurement is taken against the render target this
51
53
  // instance actually uses.
@@ -238,7 +240,15 @@ export default class FloorPlanReady extends FloorPlanLoader {
238
240
  if (!hasXY && !hasLatLng) {
239
241
  showSdkError('selectCurrentPosition', 'A point must be passed. Either (x,y) or (lat,lng) are required.', 'EFP000600');
240
242
  }
243
+ // the arguments as the host passed them: the store normalizes the point in place
244
+ const params = { point: { ...point }, focus, icon };
241
245
  store.routeStore.selectCurrentPosition(point, focus, icon);
246
+ queuePositionTelemetry({
247
+ ...params,
248
+ floor: store.routeStore.currentPosition?.z ?? null,
249
+ routeFloor: store.routeStore.currentRouteLayer?.name ?? null,
250
+ placed: !!store.routeStore.currentPosition,
251
+ });
242
252
  this.onCurrentPositionChanged?.(point);
243
253
  }
244
254
  setBookmarks(bookmarks) {
@@ -38,6 +38,16 @@ export default class RouteStore {
38
38
  id: number;
39
39
  layer: Layer | null;
40
40
  }[];
41
+ /**
42
+ * The floor a plan point stands on — a position fix, or a coordinate route endpoint. Floors
43
+ * belong to venues, so on a venue-model plan the outline the point lies in decides: outdoors it
44
+ * stands on none, whatever floor it reports; inside a venue it keeps the reported floor only when
45
+ * that floor is one of the venue's own levels, and otherwise takes the venue's
46
+ * (`venueLevelForFix`). Another hall's floor would scope the point to that hall — read as off a
47
+ * route right under it, and start a route "from here" at that hall's nearest walkway. Off a
48
+ * venue model the reported floor stands as is.
49
+ */
50
+ private pointLayer;
41
51
  /**
42
52
  * Used only by the SDK `getBooth(RouteWaypoint)` path for coord-form
43
53
  * waypoints (`floorplan.ready.tsx`). Internal callers prefer
@@ -18,6 +18,7 @@ import store, { layersStore, uiState } from '.';
18
18
  import { BoothBase } from './BoothStore';
19
19
  import { LayersMode } from './LayerStore';
20
20
  import { revealLayer } from './reveal-layer.js';
21
+ import { venueLevelForFix } from './VenueStore.js';
21
22
  /** A coordinate as the SDK may deliver it — `1.5`, or `"1,5"` from a comma locale. */
22
23
  function replaceCommasWithDot(value) {
23
24
  if (typeof value === 'string') {
@@ -107,9 +108,14 @@ export default class RouteStore {
107
108
  return;
108
109
  if (destinationReady) {
109
110
  void destinationReady.then(() => {
110
- if (selectRouteRequest === this.selectRouteRequest) {
111
- this.rootStore.moveToList(list, true);
112
- }
111
+ if (selectRouteRequest !== this.selectRouteRequest)
112
+ return;
113
+ // A route the engine has already drawn framed itself as it did (`onRouteUpdate`), and
114
+ // this focus, held back for the destination's level, would land after that fit and
115
+ // pull the camera onto the listed booths — from the blue dot, the destination alone.
116
+ if (this.routedRoute === route && this.routeLines.length)
117
+ return;
118
+ this.rootStore.moveToList(list, true);
113
119
  });
114
120
  }
115
121
  else {
@@ -172,6 +178,23 @@ export default class RouteStore {
172
178
  ?.filter((name, i, self) => self.indexOf(name) === i);
173
179
  return routeSteps(layers ?? [], this.campusLayersBox.get(), (name) => Boolean(store.layerStore.findLayer(name))).map((name, i) => ({ id: i + 1, layer: store.layerStore.findLayer(name) }));
174
180
  }
181
+ /**
182
+ * The floor a plan point stands on — a position fix, or a coordinate route endpoint. Floors
183
+ * belong to venues, so on a venue-model plan the outline the point lies in decides: outdoors it
184
+ * stands on none, whatever floor it reports; inside a venue it keeps the reported floor only when
185
+ * that floor is one of the venue's own levels, and otherwise takes the venue's
186
+ * (`venueLevelForFix`). Another hall's floor would scope the point to that hall — read as off a
187
+ * route right under it, and start a route "from here" at that hall's nearest walkway. Off a
188
+ * venue model the reported floor stands as is.
189
+ */
190
+ pointLayer(point, z) {
191
+ const reported = this.rootStore.layerStore.findLayer(z);
192
+ const venueStore = this.rootStore.venueStore;
193
+ if (!venueStore?.hasVenueModel)
194
+ return reported;
195
+ const venue = venueStore.venueAt(point);
196
+ return venue ? venueLevelForFix(venue, reported?.name).layer : null;
197
+ }
175
198
  /**
176
199
  * Used only by the SDK `getBooth(RouteWaypoint)` path for coord-form
177
200
  * waypoints (`floorplan.ready.tsx`). Internal callers prefer
@@ -181,7 +204,6 @@ export default class RouteStore {
181
204
  getNearestBooth(position) {
182
205
  if (!position)
183
206
  return null;
184
- const layerExists = this.rootStore.layerStore.findLayer(position.z);
185
207
  const gpsConfig = getFpGeo()?.properties.config;
186
208
  const isGpsFix = Boolean(position.lat && position.lng);
187
209
  const localPoint = gpsConfig && isGpsFix ? convertGpsToLocal(position, gpsConfig) : position;
@@ -190,15 +212,17 @@ export default class RouteStore {
190
212
  if (!localPoint || !isValidPointCoords(localPoint.x) || !isValidPointCoords(localPoint.y)) {
191
213
  return null;
192
214
  }
215
+ const layer = this.pointLayer(localPoint, position.z);
216
+ // Off a venue model an empty `z` can still match a layer by name, and such a floorless fix keeps
217
+ // every visible booth in play, as before; on one, the floor `pointLayer` decided is the answer.
218
+ const floorless = !this.rootStore.venueStore?.hasVenueModel && typeof position.z !== 'number' && !position.z;
193
219
  return (this.rootStore.boothStore.booths
194
220
  .filter((b) => {
195
- if (layersStore.mode === LayersMode.Default || !layerExists) {
221
+ if (this.rootStore.layerStore.mode === LayersMode.Default || !layer) {
196
222
  return b.visible && b.rect;
197
223
  }
198
224
  else {
199
- return (b.rect &&
200
- ((typeof position.z !== 'number' && !position.z && b.visible) ||
201
- layerExists.name === b.layer?.name));
225
+ return b.rect && ((floorless && b.visible) || layer.name === b.layer?.name);
202
226
  }
203
227
  })
204
228
  .sort((b1, b2) => pointDistance(localPoint, b1.rect.center) - pointDistance(localPoint, b2.rect.center))[0] || null);
@@ -271,7 +295,12 @@ export default class RouteStore {
271
295
  point.lat = replaceCommasWithDot(point.lat);
272
296
  if (point.lng !== undefined)
273
297
  point.lng = replaceCommasWithDot(point.lng);
274
- if (!areLayersEnabled()) {
298
+ // A numeric `z` is a floor index (as `LayerStore.findLayer` reads a number). With
299
+ // `ignoreUnknownFloorIndex`, one with no floor at it reports no floor, rather than one whose
300
+ // name merely holds the number (13 → Hall13).
301
+ const floors = this.rootStore.layerStore.layers.filter((layer) => !layer.rootParent && !layer.frozen);
302
+ const noFloorAtIndex = typeof point.z === 'number' && !floors[point.z];
303
+ if ((data.ignoreUnknownFloorIndex === true && noFloorAtIndex) || !areLayersEnabled()) {
275
304
  point.z = undefined;
276
305
  }
277
306
  }
@@ -287,13 +316,13 @@ export default class RouteStore {
287
316
  this.currentPosition = null;
288
317
  return;
289
318
  }
290
- // Floors belong to venues: a fix outside every venue outline stands on none, whatever floor it
291
- // reports and whichever floor the route is on. A floor it is not on would scope it to that
292
- // hall — read as off a route that is right under it, and start a route from inside the hall.
293
- const venueStore = this.rootStore.venueStore;
294
- const outdoors = !!venueStore?.hasVenueModel && !venueStore.venueAt(position);
295
- const layer = outdoors ? null : store.layerStore.findLayer(point.z);
296
- const newPosition = new CurrentPosition(position.x, position.y, outdoors ? undefined : layer?.name || this.currentRouteLayer?.name, calculateRelativeBearing(position), point.lat, point.lng);
319
+ const layer = this.pointLayer(position, point.z);
320
+ // Off a venue model, a fix without a floor takes the route's; on one, `pointLayer` has
321
+ // already decided — no floor outdoors, the venue's own inside an outline.
322
+ const routeLayerFallback = this.rootStore.venueStore?.hasVenueModel
323
+ ? undefined
324
+ : this.currentRouteLayer?.name;
325
+ const newPosition = new CurrentPosition(position.x, position.y, layer?.name || routeLayerFallback, calculateRelativeBearing(position), point.lat, point.lng);
297
326
  let isPositionAndRouteOnTheSameLayer = !this.routeLines?.length;
298
327
  if (layer && this.routeLines?.length) {
299
328
  isPositionAndRouteOnTheSameLayer = !!this.routeLines.find((line) => line.p0.layer === layer.name || line.p1.layer === layer.name);
@@ -94,6 +94,13 @@ export declare class Venue {
94
94
  /** Full floor detail currently visible (R6); unevaluated counts as visible. */
95
95
  get detailVisible(): boolean;
96
96
  }
97
+ /**
98
+ * The level of `venue` that a position fix inside it stands on: the reported floor when it is one
99
+ * of the venue's own levels, otherwise the level the venue shows. The outline a fix lies in names
100
+ * its venue beyond doubt; the floor it reports can be wrong — a positioning system may carry an
101
+ * indoor floor over onto later GPS fixes, or number the floors its own way.
102
+ */
103
+ export declare function venueLevelForFix(venue: Pick<Venue, 'levels' | 'activeLevel'>, reportedLayerName: string | undefined): VenueLevel;
97
104
  /**
98
105
  * Owns the venue model of a multi-venue plan: the venue list, viewport focus,
99
106
  * and each venue's active level. Levels stay owned by LayerStore; a venue
@@ -89,6 +89,15 @@ export class Venue {
89
89
  return this._presentationState.get()?.detailVisible ?? true;
90
90
  }
91
91
  }
92
+ /**
93
+ * The level of `venue` that a position fix inside it stands on: the reported floor when it is one
94
+ * of the venue's own levels, otherwise the level the venue shows. The outline a fix lies in names
95
+ * its venue beyond doubt; the floor it reports can be wrong — a positioning system may carry an
96
+ * indoor floor over onto later GPS fixes, or number the floors its own way.
97
+ */
98
+ export function venueLevelForFix(venue, reportedLayerName) {
99
+ return venue.levels.find((level) => level.layer.name === reportedLayerName) ?? venue.activeLevel;
100
+ }
92
101
  /**
93
102
  * Owns the venue model of a multi-venue plan: the venue list, viewport focus,
94
103
  * and each venue's active level. Levels stay owned by LayerStore; a venue
@@ -0,0 +1,10 @@
1
+ /** Sends one event while SDK telemetry is on. Never throws. */
2
+ export declare function sendSdkTelemetry(event: string): void;
3
+ /**
4
+ * Queues one `selectCurrentPosition` call in localStorage, where it outlives
5
+ * the page, and sends the queue as one event once the previous request is done
6
+ * and the interval since it has passed. A batch that never reached the intake
7
+ * (offline, network error) stays queued for the next send.
8
+ */
9
+ export declare function queuePositionTelemetry(item: Record<string, unknown>): void;
10
+ //# sourceMappingURL=sdk-telemetry.d.ts.map