@expofp/floorplan 3.35.0 → 3.35.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/dist/browser/{Button-DfC_vCEY.js → Button-BPQnJjoN.js} +6 -6
  2. package/dist/browser/{CookieConsent-zsJlyuvm.js → CookieConsent-CYpwXrw0.js} +8 -8
  3. package/dist/browser/{Debug-DlxKJH4h.js → Debug-DJ02jJ5Q.js} +8 -8
  4. package/dist/browser/{DebugTools-DlmzS_VG.js → DebugTools-BCx6s2Fc.js} +7 -7
  5. package/dist/browser/{Demo-Dvn0OVoH.js → Demo-EWDcqW4X.js} +10 -10
  6. package/dist/browser/{Free-BlSArgWI.js → Free-DKMv19Hs.js} +10 -10
  7. package/dist/browser/{GalleryContainer-hIf9VfU3.js → GalleryContainer-CvjywJze.js} +11 -11
  8. package/dist/browser/{GpsLoader-BCwThbCM.js → GpsLoader-DnZOaiOj.js} +11 -11
  9. package/dist/browser/{KioskStore-CsXOhSMP.js → KioskStore-B_QD5WD2.js} +6 -6
  10. package/dist/browser/{MaplibreAdapter-DWcvE2Ec.js → MaplibreAdapter-DfUBzoCo.js} +12 -12
  11. package/dist/browser/{ModalContainer-DxeKREfc.js → ModalContainer-iUxlX_EW.js} +11 -11
  12. package/dist/browser/{PermissionNotice-BxEbDltF.js → PermissionNotice-4GkEdwAt.js} +7 -7
  13. package/dist/browser/{SetKioskMode-D3UABJpZ.js → SetKioskMode-r4WLFRA0.js} +10 -10
  14. package/dist/browser/{ShowKiosk-6mFmNpFm.js → ShowKiosk-DmmyfPH3.js} +11 -11
  15. package/dist/browser/{ViewerMenuPanel-BO_-7Y_i.js → ViewerMenuPanel-G5WeOVxy.js} +10 -10
  16. package/dist/browser/{add-debug-secret-listener-veloxngO.js → add-debug-secret-listener-cqT9ixCW.js} +1 -1
  17. package/dist/browser/{adopt-global-settings-d5uyY5A6.js → adopt-global-settings-TiK3bdw8.js} +10 -10
  18. package/dist/browser/{boolean-editor-gFxeiKz4.js → boolean-editor-gv5KgSFC.js} +10 -10
  19. package/dist/browser/{bootIntercom-C3QDF5oB.js → bootIntercom-DSN5Oxb8.js} +3 -3
  20. package/dist/browser/bundle.json +75 -69
  21. package/dist/browser/{camera-events-C6Dmf2wR.js → camera-events-BzzhQV7p.js} +1 -1
  22. package/dist/browser/{classnames-BS1IM9A-.js → classnames-DaTJg5Ke.js} +2 -2
  23. package/dist/browser/{client-ezZAHjfj.js → client-DXynaRJh.js} +6 -6
  24. package/dist/browser/{components-PA3hCLCa.js → components-BJkZsl-J.js} +169 -170
  25. package/dist/browser/{debug-context-DiTR6Py6.js → debug-context-DafSJe6V.js} +6 -6
  26. package/dist/browser/{debug-overlay-DD5gUmO6.js → debug-overlay-Cnht9M1f.js} +11 -11
  27. package/dist/browser/{debug-ui-CWBuocQN.js → debug-ui-CfgbL90e.js} +7 -7
  28. package/dist/browser/{dimming-Ds9fAjfB.js → dimming-BTSxZdFU.js} +9 -9
  29. package/dist/browser/{dist-DBuzYqpa.js → dist-C5PCsTLB.js} +3 -3
  30. package/dist/browser/{dist-CQxqEb-6.js → dist-CyuhMWuJ.js} +7 -7
  31. package/dist/browser/{dist-D-q_r1-V.js → dist-TUAZaqFf.js} +6 -6
  32. package/dist/browser/{efp-debug-init-Co9uXMuX.js → efp-debug-init-Dmuf0OD9.js} +4 -4
  33. package/dist/browser/{enum-editor-LWVu-JIK.js → enum-editor-DhSd_imG.js} +5 -5
  34. package/dist/browser/{es5-DGb5TwpZ.js → es5-DjAesjxT.js} +2 -2
  35. package/dist/browser/event-head-CQJFTgLp.js +56 -0
  36. package/dist/browser/event-not-found-BD8VwBEd.js +31 -0
  37. package/dist/browser/{exports-B-6KjI9h.js → exports-BWxS7e8x.js} +1 -1
  38. package/dist/browser/{favicon-CWCPCNM-.js → favicon-knUtM628.js} +1 -1
  39. package/dist/browser/{fetch-retry.umd-kGON8ji6.js → fetch-retry.umd-DW0ekhe-.js} +2 -2
  40. package/dist/browser/{flex-DqcWgHRa.js → flex-Di6JEi7f.js} +6 -6
  41. package/dist/browser/{floorplan.loader-BRvRi40U.js → floorplan.loader-yNOwUjHQ.js} +602 -592
  42. package/dist/browser/{floorplan.ready-B9-MIw8B.js → floorplan.ready-C1R3whps.js} +338 -335
  43. package/dist/browser/{fuse-BXW5RuhW.js → fuse-CklOJAb0.js} +2 -2
  44. package/dist/browser/{i18n-D80X6LMz.js → i18n-DOTxhE5G.js} +6 -6
  45. package/dist/browser/index.js +54 -49
  46. package/dist/browser/{index.module-DNr0maw3.js → index.module-mXl8MtT3.js} +4 -4
  47. package/dist/browser/{integrateKiosk-BL84U1ZL.js → integrateKiosk-b2AMRK5l.js} +5 -5
  48. package/dist/browser/is-own-domain-BZ3_6LnT.js +26 -0
  49. package/dist/browser/{is-webview-CA6ivKK_.js → is-webview-BwUFYV3U.js} +1 -1
  50. package/dist/browser/{jsx-runtime-BT50TP7_.js → jsx-runtime-BUFDOCAr.js} +2 -2
  51. package/dist/browser/{kiosk-record-QoK8Mq08.js → kiosk-record-Dx28-RL0.js} +1 -1
  52. package/dist/browser/{lib-Dn401ByH.js → lib-BSoYmy6y.js} +3 -3
  53. package/dist/browser/{loadImage-BaHKwI_N.js → loadImage-CT_B_63i.js} +4 -4
  54. package/dist/browser/{logDeviceInfo-Btc7mU_S.js → logDeviceInfo-D5aYLPIp.js} +9 -9
  55. package/dist/browser/{mobx-c2h1ijB_.js → mobx-DmvJdfvB.js} +4 -4
  56. package/dist/browser/{optional-boolean-editor-DkXbwHPW.js → optional-boolean-editor-DQP8ScA6.js} +4 -4
  57. package/dist/browser/{optional-enum-editor-D6J8s67w.js → optional-enum-editor-CK8QdwSw.js} +5 -5
  58. package/dist/browser/{optional-string-editor-DvlDx9cr.js → optional-string-editor-DXnEx_OV.js} +5 -5
  59. package/dist/browser/{particles.min-BlF_1zig.js → particles.min-DTfxDQ63.js} +2 -2
  60. package/dist/browser/{react-CTNuj5uG.js → react-BYD9sU4s.js} +2 -2
  61. package/dist/browser/{react-dom-Dd-QC57h.js → react-dom-DcdoI_pK.js} +3 -3
  62. package/dist/browser/{rolldown-runtime-BkVgj4VA.js → rolldown-runtime-D02yMjJw.js} +1 -1
  63. package/dist/browser/{scheduler-BGogpU6B.js → scheduler-CHcj0Ili.js} +2 -2
  64. package/dist/browser/{select-CNUhWDWs.js → select-CVLafnyq.js} +11 -11
  65. package/dist/browser/{settings-DNaOj9LN.js → settings-DTliQPIF.js} +2 -2
  66. package/dist/browser/{settings-item-Bb1ifzkN.js → settings-item-CSulAbWO.js} +7 -7
  67. package/dist/browser/{store-CpViG4ds.js → store-hAR4IdGb.js} +36 -43
  68. package/dist/browser/{string-editor-BwfOcpmc.js → string-editor-Bjapa7B7.js} +5 -5
  69. package/dist/browser/{text-field-BS3w11vk.js → text-field-dygdoVbb.js} +6 -6
  70. package/dist/browser/{theme-jH8ml6K6.js → theme-mpY9s4gk.js} +9 -9
  71. package/dist/browser/{ui-Bbl-WJZx.js → ui-B7DDzAAp.js} +9 -9
  72. package/dist/browser/{useRenderTarget-BX8tGScr.js → useRenderTarget-M5MRh8Ft.js} +5 -5
  73. package/dist/browser/{viewport-COvScbd2.js → viewport-DOv49fSW.js} +3 -3
  74. package/dist/esm/_misc_to_move/initHtmlHead.js +1 -1
  75. package/dist/esm/components/SearchBox.d.ts +1 -2
  76. package/dist/esm/components/SearchBox.js +1 -1
  77. package/dist/esm/load.js +11 -11
  78. package/dist/esm/services/url-dispatch.js +1 -1
  79. package/dist/esm/tools/event-not-found.js +1 -1
  80. package/dist/esm/utils/brand.d.ts +18 -0
  81. package/dist/esm/utils/brand.js +1 -0
  82. package/dist/esm/utils/event-head.d.ts +38 -0
  83. package/dist/esm/utils/event-head.js +1 -0
  84. package/dist/esm/utils/event-title.d.ts +19 -0
  85. package/dist/esm/utils/event-title.js +1 -0
  86. package/dist/esm/utils/is-own-domain.d.ts +12 -0
  87. package/dist/esm/utils/is-own-domain.js +1 -0
  88. package/package.json +10 -10
  89. package/dist/browser/event-not-found-zFibfbER.js +0 -29
@@ -1,16 +1,16 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.35.0" };
4
+ e.SENTRY_RELEASE = { id: "3.35.2" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "ca552457-b813-4b63-90ef-427597ab621b", e._sentryDebugIdIdentifier = "sentry-dbid-ca552457-b813-4b63-90ef-427597ab621b");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "c6a1731a-1271-4ce1-8638-1f53d03215e3", e._sentryDebugIdIdentifier = "sentry-dbid-c6a1731a-1271-4ce1-8638-1f53d03215e3");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BkVgj4VA.js";
10
- import { t } from "./react-CTNuj5uG.js";
11
- import { t as n } from "./jsx-runtime-BT50TP7_.js";
12
- import { c as r, l as i, t as a, u as o, y as s } from "./flex-DqcWgHRa.js";
13
- import { t as c } from "./classnames-BS1IM9A-.js";
9
+ import { r as e } from "./rolldown-runtime-D02yMjJw.js";
10
+ import { t } from "./react-BYD9sU4s.js";
11
+ import { t as n } from "./jsx-runtime-BUFDOCAr.js";
12
+ import { c as r, l as i, t as a, u as o, y as s } from "./flex-Di6JEi7f.js";
13
+ import { t as c } from "./classnames-DaTJg5Ke.js";
14
14
  //#region ../../node_modules/.pnpm/@radix-ui+themes@3.3.0_@types+react-dom@19.2.3_@types+react@19.2.17__@types+react@19.2._5ea800d4e947acedb1fa1275f1697b17/node_modules/@radix-ui/themes/dist/esm/components/separator.props.js
15
15
  var l = /* @__PURE__ */ e(t()), u = /* @__PURE__ */ e(c()), d = {
16
16
  orientation: {
@@ -2,22 +2,22 @@ function __vite_inject_css__(css, id, forceLightDom){ if (typeof document==='un
2
2
  (function() {
3
3
  try {
4
4
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
5
- e.SENTRY_RELEASE = { id: "3.35.0" };
5
+ e.SENTRY_RELEASE = { id: "3.35.2" };
6
6
  var t = new e.Error().stack;
7
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "9b35dc63-bb5e-44b0-ab7a-f9bf1898287d", e._sentryDebugIdIdentifier = "sentry-dbid-9b35dc63-bb5e-44b0-ab7a-f9bf1898287d");
7
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "c1f6ecdd-4195-4cde-b78b-5eca6963ffb5", e._sentryDebugIdIdentifier = "sentry-dbid-c1f6ecdd-4195-4cde-b78b-5eca6963ffb5");
8
8
  } catch {}
9
9
  })();
10
- import { r as e, t } from "./rolldown-runtime-BkVgj4VA.js";
11
- import { A as n, B as r, Bt as i, C as a, G as o, H as s, I as c, J as l, K as u, L as d, M as f, Q as p, R as m, U as h, V as g, W as _, Y as v, _ as y, a as b, c as x, ct as S, d as C, dt as w, f as T, ft as E, h as D, it as O, j as k, l as A, m as j, n as ee, nt as te, ot as ne, p as re, s as M, st as ie, t as ae, v as N, w as oe, y as se } from "./i18n-D80X6LMz.js";
12
- import { s as ce } from "./efp-debug-init-Co9uXMuX.js";
13
- import { t as le } from "./react-CTNuj5uG.js";
14
- import { t as ue } from "./jsx-runtime-BT50TP7_.js";
15
- import { n as de, r as P, t as fe } from "./loadImage-BaHKwI_N.js";
16
- import { t as pe } from "./is-webview-CA6ivKK_.js";
17
- import { t as me } from "./scheduler-BGogpU6B.js";
18
- import { $ as he, $t as ge, A as _e, At as ve, B as ye, Bt as be, C as xe, Ct as Se, D as Ce, Dt as we, E as Te, Et as Ee, F as De, Ft as Oe, G as ke, Gt as Ae, H as je, Ht as Me, I as Ne, It as Pe, J as Fe, Jt as Ie, K as Le, Kt as Re, L as ze, Lt as Be, M as Ve, Mt as He, N as Ue, Nt as We, O as Ge, Ot as Ke, P as qe, Pt as Je, Q as F, Qt as Ye, R as Xe, Rt as Ze, S as Qe, St as $e, T as et, Tt as tt, U as nt, Ut as rt, V as it, Vt as at, W as ot, Wt as st, X as ct, Xt as lt, Y as ut, Yt as dt, Z as ft, Zt as pt, _ as mt, _n as ht, _t as gt, a as _t, an as vt, at as yt, b as bt, bt as xt, cn as St, ct as Ct, d as wt, dn as Tt, dt as Et, en as Dt, et as Ot, f as kt, fn as At, ft as jt, g as Mt, gn as Nt, gt as Pt, h as Ft, hn as I, ht as It, i as Lt, in as Rt, it as zt, j as Bt, jt as Vt, k as Ht, kt as Ut, l as Wt, ln as Gt, lt as Kt, m as qt, mn as Jt, mt as Yt, nn as Xt, nt as Zt, o as Qt, on as $t, ot as en, p as tn, pn as nn, pt as rn, q as an, qt as on, r as sn, rn as cn, rt as ln, s as un, sn as dn, st as fn, tn as pn, tt as mn, u as hn, un as gn, ut as _n, v as vn, vn as yn, vt as bn, w as xn, wt as Sn, x as Cn, xt as wn, y as Tn, yn as En, yt as Dn, z as On, zt as kn } from "./debug-context-DiTR6Py6.js";
19
- import { t as An } from "./classnames-BS1IM9A-.js";
20
- import { t as jn } from "./Button-DfC_vCEY.js";
10
+ import { r as e, t } from "./rolldown-runtime-D02yMjJw.js";
11
+ import { A as n, B as r, Bt as i, C as a, G as o, H as s, I as c, J as l, K as u, L as d, M as f, Q as p, R as m, U as h, V as g, W as _, Y as v, _ as y, a as b, c as x, ct as S, d as C, dt as w, f as T, ft as E, h as D, it as O, j as k, l as A, m as j, n as ee, nt as te, ot as ne, p as re, s as M, st as ie, t as ae, v as N, w as oe, y as se } from "./i18n-DOTxhE5G.js";
12
+ import { s as ce } from "./efp-debug-init-Dmuf0OD9.js";
13
+ import { t as le } from "./react-BYD9sU4s.js";
14
+ import { t as ue } from "./jsx-runtime-BUFDOCAr.js";
15
+ import { n as de, r as P, t as fe } from "./loadImage-CT_B_63i.js";
16
+ import { t as pe } from "./is-webview-BwUFYV3U.js";
17
+ import { t as me } from "./scheduler-CHcj0Ili.js";
18
+ import { $ as he, $t as ge, A as _e, At as ve, B as ye, Bt as be, C as xe, Ct as Se, D as Ce, Dt as we, E as Te, Et as Ee, F as De, Ft as Oe, G as ke, Gt as Ae, H as je, Ht as Me, I as Ne, It as Pe, J as Fe, Jt as Ie, K as Le, Kt as Re, L as ze, Lt as Be, M as Ve, Mt as He, N as Ue, Nt as We, O as Ge, Ot as Ke, P as qe, Pt as Je, Q as F, Qt as Ye, R as Xe, Rt as Ze, S as Qe, St as $e, T as et, Tt as tt, U as nt, Ut as rt, V as it, Vt as at, W as ot, Wt as st, X as ct, Xt as lt, Y as ut, Yt as dt, Z as ft, Zt as pt, _ as mt, _n as ht, _t as gt, a as _t, an as vt, at as yt, b as bt, bt as xt, cn as St, ct as Ct, d as wt, dn as Tt, dt as Et, en as Dt, et as Ot, f as kt, fn as At, ft as jt, g as Mt, gn as Nt, gt as Pt, h as Ft, hn as I, ht as It, i as Lt, in as Rt, it as zt, j as Bt, jt as Vt, k as Ht, kt as Ut, l as Wt, ln as Gt, lt as Kt, m as qt, mn as Jt, mt as Yt, nn as Xt, nt as Zt, o as Qt, on as $t, ot as en, p as tn, pn as nn, pt as rn, q as an, qt as on, r as sn, rn as cn, rt as ln, s as un, sn as dn, st as fn, tn as pn, tt as mn, u as hn, un as gn, ut as _n, v as vn, vn as yn, vt as bn, w as xn, wt as Sn, x as Cn, xt as wn, y as Tn, yn as En, yt as Dn, z as On, zt as kn } from "./debug-context-DafSJe6V.js";
19
+ import { t as An } from "./classnames-DaTJg5Ke.js";
20
+ import { t as jn } from "./Button-BPQnJjoN.js";
21
21
  //#region ../../node_modules/.pnpm/resize-observer@1.0.4/node_modules/resize-observer/lib/ContentRect.js
22
22
  var Mn = /* @__PURE__ */ t(((e) => {
23
23
  Object.defineProperty(e, "__esModule", { value: !0 }), e.ContentRect = function(e) {
@@ -8436,25 +8436,25 @@ function Oh(e, t, n = 0) {
8436
8436
  },
8437
8437
  drain(e, t = -1) {
8438
8438
  if (o.size === 0 && s.size === 0) return !1;
8439
- let n = performance.now(), r = () => t > 0 && performance.now() - n >= t, i = 0;
8439
+ let n = performance.now(), r = 0, i = 0, a = () => i > 0 && t > 0 && performance.now() - n >= t;
8440
8440
  for (let t of o) {
8441
- if (r()) break;
8442
- if (o.delete(t), t.hidden === !0 || e !== void 0 && yh(t, e)) {
8441
+ if (a()) break;
8442
+ if (i++, o.delete(t), t.hidden === !0 || e !== void 0 && yh(t, e)) {
8443
8443
  s.add(t);
8444
8444
  continue;
8445
8445
  }
8446
- p(t) && i++;
8446
+ p(t) && r++;
8447
8447
  }
8448
8448
  for (let e of s) {
8449
- if (r()) break;
8450
- s.delete(e), p(e) && i++;
8449
+ if (a()) break;
8450
+ i++, s.delete(e), p(e) && r++;
8451
8451
  }
8452
- let a = o.size + s.size;
8453
- if (i > 0) {
8452
+ let c = o.size + s.size;
8453
+ if (r > 0) {
8454
8454
  let e = (performance.now() - n).toFixed(2);
8455
- wh.debug(`laid out ${i} defs (${a} remaining) in ${e}ms`);
8455
+ wh.debug(`laid out ${r} defs (${c} remaining) in ${e}ms`);
8456
8456
  }
8457
- return a > 0;
8457
+ return c > 0;
8458
8458
  }
8459
8459
  };
8460
8460
  }
@@ -10153,12 +10153,12 @@ var Rv = !1;
10153
10153
  //#endregion
10154
10154
  //#region ../renderer/src/debug/debug-chunk.ts
10155
10155
  function zv() {
10156
- return Vv != null || (Vv = import("./DebugTools-DlmzS_VG.js")), Vv;
10156
+ return Vv != null || (Vv = import("./DebugTools-BCx6s2Fc.js")), Vv;
10157
10157
  }
10158
10158
  async function Bv() {
10159
10159
  await zv();
10160
10160
  }
10161
- var Vv, Hv = (0, L.lazy)(() => import("./DebugTools-DlmzS_VG.js").then((e) => ({ default: e.DebugTools })));
10161
+ var Vv, Hv = (0, L.lazy)(() => import("./DebugTools-BCx6s2Fc.js").then((e) => ({ default: e.DebugTools })));
10162
10162
  function Uv(e) {
10163
10163
  let t = (0, U.c)(7), n, r, i;
10164
10164
  t[0] === e ? (n = t[1], r = t[2], i = t[3]) : ({debugEnabled: i, children: r, ...n} = e, t[0] = e, t[1] = n, t[2] = r, t[3] = i), i && (0, L.use)(zv());
@@ -12073,7 +12073,7 @@ var ZS = new I(), QS = new be(), $S = new I(), eC = new Dn(), tC = new Dn(), nC
12073
12073
  var r, i;
12074
12074
  return this.sortDirection * (((r = t[e.index]) == null ? 0 : r) - ((i = t[n.index]) == null ? 0 : i));
12075
12075
  });
12076
- }, this.layerDefs = [], this.layerDimmed = !1, this.dimmedBySlot = [], this.orderByDef = /* @__PURE__ */ new WeakMap(), this.orderBySlot = [], this.slotByDef = /* @__PURE__ */ new Map(), this.defBySlot = /* @__PURE__ */ new Map(), this.schema = void 0, this.sortDirection = void 0, this.boundMesh = void 0, this.schema = (t = e.schema) == null ? kb : t, this.sortDirection = e.reverse ? -1 : 1;
12076
+ }, this.layerDefs = [], this.layerDimmed = !1, this.dimmedBySlot = [], this.orderByDef = /* @__PURE__ */ new WeakMap(), this.orderBySlot = [], this.slotByDef = /* @__PURE__ */ new Map(), this.defBySlot = /* @__PURE__ */ new Map(), this.schema = void 0, this.sortDirection = void 0, this.boundMesh = void 0, this.kindMismatchHandler = void 0, this.schema = (t = e.schema) == null ? kb : t, this.sortDirection = e.reverse ? -1 : 1;
12077
12077
  }
12078
12078
  get mesh() {
12079
12079
  return this.boundMesh;
@@ -12097,6 +12097,13 @@ var ZS = new I(), QS = new be(), $S = new I(), eC = new Dn(), tC = new Dn(), nC
12097
12097
  defFromHit(e) {
12098
12098
  return this.defAt(e.instanceId);
12099
12099
  }
12100
+ setKindMismatchHandler(e) {
12101
+ this.kindMismatchHandler = e;
12102
+ }
12103
+ reportKindMismatch() {
12104
+ var e;
12105
+ (e = this.kindMismatchHandler) == null || e.call(this);
12106
+ }
12100
12107
  setVisibleAt(e, t) {
12101
12108
  this.mesh.setVisibleAt(e, t);
12102
12109
  }
@@ -15124,16 +15131,9 @@ function jE(e) {
15124
15131
  }
15125
15132
  var ME = class extends oC {
15126
15133
  constructor(e, t, n = "opaque") {
15127
- super({ schema: IE }), this.args = void 0, this.kind = void 0, this.meshMatrix = PE, this.extents = void 0, this.kindMismatchHandler = void 0, this.extents = e.clone().applyMatrix4(PE), this.kind = n, this.args = [{ capacity: Math.max(t, 1) }];
15134
+ super({ schema: IE }), this.args = void 0, this.kind = void 0, this.meshMatrix = PE, this.extents = void 0, this.extents = e.clone().applyMatrix4(PE), this.kind = n, this.args = [{ capacity: Math.max(t, 1) }];
15128
15135
  }
15129
15136
  setPaintOrder() {}
15130
- setKindMismatchHandler(e) {
15131
- this.kindMismatchHandler = e;
15132
- }
15133
- reportKindMismatch() {
15134
- var e;
15135
- (e = this.kindMismatchHandler) == null || e.call(this);
15136
- }
15137
15137
  place(e, t) {
15138
15138
  this.mesh.setMatrixAt(e, GE.multiplyMatrices(FE, NE(this.extents, t.bounds)).multiply(PE));
15139
15139
  }
@@ -15369,7 +15369,7 @@ function uD(e) {
15369
15369
  }
15370
15370
  var dD = class extends oC {
15371
15371
  constructor(e, t = "planar") {
15372
- super(), this.capacity = void 0, this.kind = void 0, this.geometryIds = /* @__PURE__ */ new Map(), this.allocated = void 0, this.target = void 0, this.kindMismatchHandler = void 0, this.kind = t, this.allocated = fD(e, (e) => this.geometryFor(e)), this.capacity = [
15372
+ super(), this.capacity = void 0, this.kind = void 0, this.geometryIds = /* @__PURE__ */ new Map(), this.allocated = void 0, this.target = void 0, this.kind = t, this.allocated = fD(e, (e) => this.geometryFor(e)), this.capacity = [
15373
15373
  this.allocated.instances,
15374
15374
  this.allocated.vertices,
15375
15375
  this.allocated.indices
@@ -15391,13 +15391,6 @@ var dD = class extends oC {
15391
15391
  }
15392
15392
  this.target.vertices = t, this.target.indices = n;
15393
15393
  }
15394
- setKindMismatchHandler(e) {
15395
- this.kindMismatchHandler = e;
15396
- }
15397
- reportKindMismatch() {
15398
- var e;
15399
- (e = this.kindMismatchHandler) == null || e.call(this);
15400
- }
15401
15394
  defFromHit(e) {
15402
15395
  return this.defAt(e.batchId);
15403
15396
  }
@@ -24360,7 +24353,7 @@ var iL = (eL = class {
24360
24353
  }
24361
24354
  async buildEngine() {
24362
24355
  try {
24363
- let { default: e } = await import("./fuse-BXW5RuhW.js").then((e) => e.n);
24356
+ let { default: e } = await import("./fuse-CklOJAb0.js").then((e) => e.n);
24364
24357
  se(() => {
24365
24358
  this.engine = new e([], {
24366
24359
  keys: this.keys,
@@ -1,14 +1,14 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.35.0" };
4
+ e.SENTRY_RELEASE = { id: "3.35.2" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "edf52ee9-f3a6-424f-a5ff-f0c8342333ab", e._sentryDebugIdIdentifier = "sentry-dbid-edf52ee9-f3a6-424f-a5ff-f0c8342333ab");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "8f241b7f-d106-4e96-a6a2-b96a0f9abf69", e._sentryDebugIdIdentifier = "sentry-dbid-8f241b7f-d106-4e96-a6a2-b96a0f9abf69");
7
7
  } catch {}
8
8
  })();
9
- import { t as e } from "./jsx-runtime-BT50TP7_.js";
10
- import { t } from "./settings-item-Bb1ifzkN.js";
11
- import { t as n } from "./text-field-BS3w11vk.js";
9
+ import { t as e } from "./jsx-runtime-BUFDOCAr.js";
10
+ import { t } from "./settings-item-CSulAbWO.js";
11
+ import { t as n } from "./text-field-dygdoVbb.js";
12
12
  //#region ../debug/src/lib/ui/string-editor.tsx
13
13
  var r = e(), i = (e) => {
14
14
  var i;
@@ -1,15 +1,15 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.35.0" };
4
+ e.SENTRY_RELEASE = { id: "3.35.2" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "b57a1337-f6ba-488a-8e6f-60f9358b45a2", e._sentryDebugIdIdentifier = "sentry-dbid-b57a1337-f6ba-488a-8e6f-60f9358b45a2");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "e13f8c4e-8995-47cd-802d-392fd9bdf13a", e._sentryDebugIdIdentifier = "sentry-dbid-e13f8c4e-8995-47cd-802d-392fd9bdf13a");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BkVgj4VA.js";
10
- import { t } from "./react-CTNuj5uG.js";
11
- import { D as n, i as r, l as i, n as a, s as o, u as s, y as c } from "./flex-DqcWgHRa.js";
12
- import { t as l } from "./classnames-BS1IM9A-.js";
9
+ import { r as e } from "./rolldown-runtime-D02yMjJw.js";
10
+ import { t } from "./react-BYD9sU4s.js";
11
+ import { D as n, i as r, l as i, n as a, s as o, u as s, y as c } from "./flex-Di6JEi7f.js";
12
+ import { t as l } from "./classnames-DaTJg5Ke.js";
13
13
  //#region ../../node_modules/.pnpm/@radix-ui+themes@3.3.0_@types+react-dom@19.2.3_@types+react@19.2.17__@types+react@19.2._5ea800d4e947acedb1fa1275f1697b17/node_modules/@radix-ui/themes/dist/esm/components/text-field.props.js
14
14
  var u = /* @__PURE__ */ e(t()), d = /* @__PURE__ */ e(l()), f = {
15
15
  size: {
@@ -1,18 +1,18 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.35.0" };
4
+ e.SENTRY_RELEASE = { id: "3.35.2" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "f5429b84-6f5b-4b20-898f-e5345902ef44", e._sentryDebugIdIdentifier = "sentry-dbid-f5429b84-6f5b-4b20-898f-e5345902ef44");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "5b26ff7f-61de-4d09-8508-a74b71b94f98", e._sentryDebugIdIdentifier = "sentry-dbid-5b26ff7f-61de-4d09-8508-a74b71b94f98");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BkVgj4VA.js";
10
- import { t } from "./react-CTNuj5uG.js";
11
- import { t as n } from "./jsx-runtime-BT50TP7_.js";
12
- import { t as r } from "./react-dom-Dd-QC57h.js";
13
- import { C as i, E as a, O as o, T as s, _ as c, o as l, v as u, w as d } from "./flex-DqcWgHRa.js";
14
- import { c as f, i as p, n as m, o as h, r as g, s as _, t as v } from "./dist-CQxqEb-6.js";
15
- import { t as y } from "./classnames-BS1IM9A-.js";
9
+ import { r as e } from "./rolldown-runtime-D02yMjJw.js";
10
+ import { t } from "./react-BYD9sU4s.js";
11
+ import { t as n } from "./jsx-runtime-BUFDOCAr.js";
12
+ import { t as r } from "./react-dom-DcdoI_pK.js";
13
+ import { C as i, E as a, O as o, T as s, _ as c, o as l, v as u, w as d } from "./flex-Di6JEi7f.js";
14
+ import { c as f, i as p, n as m, o as h, r as g, s as _, t as v } from "./dist-CyuhMWuJ.js";
15
+ import { t as y } from "./classnames-DaTJg5Ke.js";
16
16
  //#region ../../node_modules/.pnpm/@radix-ui+react-visually-hidden@1.2.3_@types+react-dom@19.2.3_@types+react@19.2.17__@ty_cffccd7838985066e8e1d993b5cb6017/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs
17
17
  var b = /* @__PURE__ */ e(r(), 1), x = /* @__PURE__ */ e(t(), 1), S = n(), C = Object.freeze({
18
18
  position: "absolute",
@@ -1,17 +1,17 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.35.0" };
4
+ e.SENTRY_RELEASE = { id: "3.35.2" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "cbb5c555-77ff-4375-8420-80c8ae476dcf", e._sentryDebugIdIdentifier = "sentry-dbid-cbb5c555-77ff-4375-8420-80c8ae476dcf");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "80a4f49f-d869-4a38-b1c0-c3cfd645ceec", e._sentryDebugIdIdentifier = "sentry-dbid-80a4f49f-d869-4a38-b1c0-c3cfd645ceec");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BkVgj4VA.js";
10
- import { a as t, i as n, s as r } from "./efp-debug-init-Co9uXMuX.js";
11
- import { a as i, i as a } from "./adopt-global-settings-d5uyY5A6.js";
12
- import { t as o } from "./jsx-runtime-BT50TP7_.js";
13
- import "./settings-DNaOj9LN.js";
14
- import { t as s } from "./add-debug-secret-listener-veloxngO.js";
9
+ import { r as e } from "./rolldown-runtime-D02yMjJw.js";
10
+ import { a as t, i as n, s as r } from "./efp-debug-init-Dmuf0OD9.js";
11
+ import { a as i, i as a } from "./adopt-global-settings-TiK3bdw8.js";
12
+ import { t as o } from "./jsx-runtime-BUFDOCAr.js";
13
+ import "./settings-DTliQPIF.js";
14
+ import { t as s } from "./add-debug-secret-listener-cqT9ixCW.js";
15
15
  //#region ../debug/src/lib/ui/render-debug-ui.tsx
16
16
  var c = /* @__PURE__ */ e(r(), 1), l = o(), u = !1;
17
17
  function d() {
@@ -26,7 +26,7 @@ function d() {
26
26
  }
27
27
  });
28
28
  let o = async (t) => {
29
- let { DebugUi: n } = await import("./debug-ui-CWBuocQN.js"), { createRoot: i } = await import("./client-ezZAHjfj.js").then((t) => /* @__PURE__ */ e(t.t(), 1)), a = document.createElement("div");
29
+ let { DebugUi: n } = await import("./debug-ui-CfgbL90e.js"), { createRoot: i } = await import("./client-DXynaRJh.js").then((t) => /* @__PURE__ */ e(t.t(), 1)), a = document.createElement("div");
30
30
  document.body.appendChild(a), i(a).render(/* @__PURE__ */ (0, l.jsx)(n, {
31
31
  useDebugButtonState: r.useState,
32
32
  open: t
@@ -1,14 +1,14 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.35.0" };
4
+ e.SENTRY_RELEASE = { id: "3.35.2" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "7407e64e-4c4e-4bfb-b2ef-80063ad22998", e._sentryDebugIdIdentifier = "sentry-dbid-7407e64e-4c4e-4bfb-b2ef-80063ad22998");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "44feeb02-c84e-4fb1-b2f8-984c7d50f58d", e._sentryDebugIdIdentifier = "sentry-dbid-44feeb02-c84e-4fb1-b2f8-984c7d50f58d");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-BkVgj4VA.js";
10
- import { t } from "./react-CTNuj5uG.js";
11
- import { l as n } from "./store-CpViG4ds.js";
9
+ import { r as e } from "./rolldown-runtime-D02yMjJw.js";
10
+ import { t } from "./react-BYD9sU4s.js";
11
+ import { l as n } from "./store-hAR4IdGb.js";
12
12
  //#region ../ui/src/shared/activeElement.ts
13
13
  var r = (e) => !!e && "activeElement" in e;
14
14
  function i(e) {
@@ -1,12 +1,12 @@
1
1
  (function() {
2
2
  try {
3
3
  var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
- e.SENTRY_RELEASE = { id: "3.35.0" };
4
+ e.SENTRY_RELEASE = { id: "3.35.2" };
5
5
  var t = new e.Error().stack;
6
- t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "444f9271-dd41-4d29-81a9-c2a30e2274e9", e._sentryDebugIdIdentifier = "sentry-dbid-444f9271-dd41-4d29-81a9-c2a30e2274e9");
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "c4f57458-fee1-48bc-a518-81372913a556", e._sentryDebugIdIdentifier = "sentry-dbid-c4f57458-fee1-48bc-a518-81372913a556");
7
7
  } catch {}
8
8
  })();
9
- import { c as e, ht as t } from "./store-CpViG4ds.js";
9
+ import { c as e, ht as t } from "./store-hAR4IdGb.js";
10
10
  //#region src/components/Map/viewport.ts
11
11
  function n(e) {
12
12
  return {
@@ -1 +1 @@
1
- export function initHtmlHead(){if(typeof window>"u"||typeof document>"u")return;if(!document.querySelector('meta[name="viewport"]')){const e=document.createElement("meta");e.name="viewport",e.content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no",document.head.appendChild(e)}const n=()=>!!document.querySelector('link[rel="icon"]');n()||import("../assets/favicon.png").then(({default:e})=>{if(n())return;const t=document.createElement("link");t.rel="icon",t.type="image/png",t.href=e,document.head.appendChild(t)}),(!document.title||document.title==="Document")&&(document.title="Floor Plan by ExpoFP")}
1
+ import{brand as o}from"../utils/brand";import{formatPlaceholderTitle as i}from"../utils/event-title";import m from"../utils/is-own-domain";export function initHtmlHead(){if(typeof window>"u"||typeof document>"u")return;if(!document.querySelector('meta[name="viewport"]')){const e=document.createElement("meta");e.name="viewport",e.content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no",document.head.appendChild(e)}const n=()=>!!document.querySelector('link[rel="icon"]');n()||import("../assets/favicon.png").then(({default:e})=>{if(n())return;const t=document.createElement("link");t.rel="icon",t.type="image/png",t.href=e,document.head.appendChild(t)}),m&&(!document.title||document.title==="Document")&&(document.title=i(window.location.hostname,o))}
@@ -1,8 +1,7 @@
1
1
  import './SearchBox.scss';
2
- import React from 'react';
3
2
  interface SearchBoxProps {
4
3
  className?: string;
5
4
  }
6
- declare function SearchBox({ className }: SearchBoxProps): React.JSX.Element;
5
+ declare function SearchBox({ className }: SearchBoxProps): import("react").JSX.Element;
7
6
  export default SearchBox;
8
7
  //# sourceMappingURL=SearchBox.d.ts.map
@@ -1 +1 @@
1
- import{jsx as o,jsxs as b}from"react/jsx-runtime";import"./SearchBox.scss";import f from"classnames";import{useObserver as D}from"mobx-react-lite";import k,{useCallback as T,useEffect as v,useRef as C}from"react";import a,{searchStore as e}from"../store";import z from"../tools/debounce";import{GaEventActions as j,sendEventToGa as K}from"../tools/gtag";import{handleCustomCommand as L}from"../utils/customCommands";import{t as i}from"../utils/i18n";import{useAutorun as l}from"../utils/mobx";import{Badge as P}from"./";const G=1e3;function R({className:g}){const I=C(),p=C(null);function w(t){let s=0;switch(t.key){case"Down":case"ArrowDown":s=1;break;case"Up":case"ArrowUp":s=-1;break;case"Enter":t.preventDefault(),a.openActiveListItem();const n=c();n&&L(n.value);return;case"Escape":t.preventDefault(),e.closeSearch();return}s&&(t.preventDefault(),a.changeActiveListIndex(s))}function c(){return p.current}const[B,u]=k.useState(""),[h,E]=k.useState(!1);l(()=>{E(a.uiState.kiosk&&a.uiState.inIdle)}),v(()=>{if(!h){u("");return}const t=[i("Find Companies..."),i("Find Categories..."),i("Find Sessions..."),i("Search...")];let s=0,n=0,r=!1,S;const _=()=>{const d=t[s];r?(u(d.substring(0,n-1)),n--):(u(d.substring(0,n+1)),n++);let m=r?50:100;!r&&n===d.length?(r=!0,m=2e3):r&&n===0&&(r=!1,s=(s+1)%t.length,m=500),S=setTimeout(_,m)};return _(),()=>clearTimeout(S)},[h]),l(()=>{const t=document.activeElement;a.uiState.overlaySize!=="full"&&t===c()&&!e.isFocused&&c()?.blur()}),l(()=>{a.uiState.menu&&a.uiState.kiosk&&e.setFocused(!1)}),l(()=>{const t=c(),s=document.activeElement;t&&e.isFocused&&s!==t&&!e.skipInputFocus&&t.focus()}),v(()=>{a.fuzzySearchEngineStore.loadEngine()},[]);const N=T(z(()=>{e.searchText&&K(j.Search,e.searchText),window.__resett?.()},G),[]);function M(){e.setSearchText(c()?.value||""),N()}function y(){e.setFocused(!0),window.__resett?.()}function A(){e.isFocused||(e.handleSearchAction(),setTimeout(()=>{c()?.focus()},100))}function F(){e.handleBackAction()}function x(){e.closeSearch()}return D(()=>b("div",{className:f("search-box",g,e.searchBoxClass,{"efp-semi-transparent":a.uiState.setKioskModeEnabled}),"data-interface":a.uiState.activeInterfaceId,ref:I,children:[o("button",{className:f("search-box__button","search-box__button--back",{"is-mobile-details":e.isMobileDetailsMode,"search-box__button--home":e.backMode!=="back"&&a.uiState.viewerMode}),onClick:F,type:"button","aria-label":e.backMode==="back"?i("Go back"):i("Main menu"),children:o("i",{className:e.backMode==="back"?"icon-chevron-left":a.uiState.viewerMode?"icon-home-solid":"icon-menu"})}),o("div",{className:"search-box__input-wrapper",children:e.shouldShowSearchInput?o("input",{ref:p,type:"search",className:"search-box__input",placeholder:h?B:e.placeholder,"aria-label":"Search",value:e.searchText,onChange:M,onKeyDown:w,onFocus:y,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",disabled:a.uiState.setKioskModeEnabled}):b("div",{className:"search-box__title",children:[e.searchBoxIcon&&o("i",{className:f("search-box__title-icon",e.searchBoxIcon)}),b("div",{className:"search-box__title-content",children:[o("strong",{className:"search-box__title-text",children:e.searchBoxTitle}),e.searchBoxSubtitle&&o("span",{className:"search-box__title-subtitle",children:e.searchBoxSubtitle})]}),e.searchBoxBadge?o(P,{variant:"lightgray",size:"md",rounded:!0,noMargins:!0,children:e.searchBoxBadge}):null]})}),!e.shouldShowSearchInput&&e.searchBoxActions.map(t=>o("button",{className:"search-box__button search-box__button--ui-action",onClick:t.handler,type:"button","aria-label":t.label,title:t.label,children:o("i",{className:t.icon})},t.id)),o("button",{className:"search-box__button search-box__button--action",onClick:e.shouldShowSearchInput?e.shouldShowCloseButton?x:A:x,type:"button","aria-label":e.ariaLabel,children:o("i",{className:e.actionButtonIcon})})]}))}export default R;
1
+ import{jsx as o,jsxs as f}from"react/jsx-runtime";import"./SearchBox.scss";import p from"classnames";import{useObserver as T}from"mobx-react-lite";import{useEffect as g,useMemo as j,useRef as v,useState as w}from"react";import x,{searchStore as e,uiState as s}from"../store";import z from"../tools/debounce";import{GaEventActions as K,sendEventToGa as L}from"../tools/gtag";import{handleCustomCommand as P}from"../utils/customCommands";import{t as i}from"../utils/i18n";import{useAutorun as u}from"../utils/mobx";import{Badge as R}from"./";const G=1e3;function B(l){return l.getRootNode().activeElement===l}function U({className:l}){const _=v(null),r=v(null);function I(t){let n=0;switch(t.key){case"Down":case"ArrowDown":n=1;break;case"Up":case"ArrowUp":n=-1;break;case"Enter":{t.preventDefault(),x.openActiveListItem();const a=r.current;a&&P(a.value);return}case"Escape":t.preventDefault(),e.closeSearch();return}n&&(t.preventDefault(),x.changeActiveListIndex(n))}const[N,k]=w(""),[h,M]=w(!1);u(()=>{M(s.kiosk&&s.inIdle)}),g(()=>{if(!h)return;const t=[i("Find Companies..."),i("Find Categories..."),i("Find Sessions..."),i("Search...")];let n=0,a=0,c=!1,d;const C=()=>{const m=t[n];c?(k(m.substring(0,a-1)),a--):(k(m.substring(0,a+1)),a++);let b=c?50:100;!c&&a===m.length?(c=!0,b=2e3):c&&a===0&&(c=!1,n=(n+1)%t.length,b=500),d=setTimeout(C,b)};return d=setTimeout(C,0),()=>clearTimeout(d)},[h]),u(()=>{const t=r.current;t&&!e.isFocused&&B(t)&&t.blur()}),u(()=>{s.menu&&s.kiosk&&e.setFocused(!1)}),u(()=>{const t=r.current;t&&e.isFocused&&!e.skipInputFocus&&!B(t)&&t.focus()}),g(()=>{x.fuzzySearchEngineStore.loadEngine()},[]);const E=j(()=>z(()=>{e.searchText&&L(K.Search,e.searchText),window.__resett?.()},G),[]);function F(){e.setSearchText(r.current?.value||""),E()}function y(){e.setFocused(!0),window.__resett?.()}function A(){e.isFocused||(e.handleSearchAction(),setTimeout(()=>{r.current?.focus()},100))}function D(){e.handleBackAction()}function S(){e.closeSearch()}return T(()=>f("div",{className:p("search-box",l,e.searchBoxClass,{"efp-semi-transparent":s.setKioskModeEnabled}),"data-interface":s.activeInterfaceId,ref:_,children:[o("button",{className:p("search-box__button","search-box__button--back",{"is-mobile-details":e.isMobileDetailsMode,"search-box__button--home":e.backMode!=="back"&&s.viewerMode}),onClick:D,type:"button","aria-label":e.backMode==="back"?i("Go back"):i("Main menu"),children:o("i",{className:e.backMode==="back"?"icon-chevron-left":s.viewerMode?"icon-home-solid":"icon-menu"})}),o("div",{className:"search-box__input-wrapper",children:e.shouldShowSearchInput?o("input",{ref:r,type:"search",className:"search-box__input",placeholder:h?N:e.placeholder,"aria-label":"Search",value:e.searchText,onChange:F,onKeyDown:I,onFocus:y,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",spellCheck:!1,disabled:s.setKioskModeEnabled}):f("div",{className:"search-box__title",children:[e.searchBoxIcon&&o("i",{className:p("search-box__title-icon",e.searchBoxIcon)}),f("div",{className:"search-box__title-content",children:[o("strong",{className:"search-box__title-text",children:e.searchBoxTitle}),e.searchBoxSubtitle&&o("span",{className:"search-box__title-subtitle",children:e.searchBoxSubtitle})]}),e.searchBoxBadge?o(R,{variant:"lightgray",size:"md",rounded:!0,noMargins:!0,children:e.searchBoxBadge}):null]})}),!e.shouldShowSearchInput&&e.searchBoxActions.map(t=>o("button",{className:"search-box__button search-box__button--ui-action",onClick:t.handler,type:"button","aria-label":t.label,title:t.label,children:o("i",{className:t.icon})},t.id)),o("button",{className:"search-box__button search-box__button--action",onClick:e.shouldShowSearchInput?e.shouldShowCloseButton?S:A:S,type:"button","aria-label":e.ariaLabel,children:o("i",{className:e.actionButtonIcon})})]}))}export default U;
package/dist/esm/load.js CHANGED
@@ -1,4 +1,4 @@
1
- import"./utils/silence-mobx-react-lite-warning";import{applyIntents as f,loadConfig as p,setConfig as m}from"@expofp/config";import{safeLocalStorage as u}from"@expofp/utils";import d from"debug";import{initHtmlHead as h}from"./_misc_to_move/initHtmlHead";import{logBuildInfo as y}from"./_misc_to_move/logBuildInfo";import v from"./floorplan.loader";import{migrateLegacyStorageKeys as g}from"./utils/legacy-storage-keys";const s=d("efp:load");export async function load(r,e={}){h(),y(),d("efp:device").enabled&&import("./_misc_to_move/logDeviceInfo").then(t=>t.logDeviceInfo()).catch(()=>{});const a=e.element;let o;if(typeof a=="string"){const t=document.querySelector(a);if(!t)throw new Error(`Element not found for selector: ${a}`);o=t}else a?o=a:(o=document.getElementById("floorplan"),o||(o=document.createElement("div"),S(o),document.body.appendChild(o)));w(),o.setAttribute("data-efp-floorplan-defaults",""),document.documentElement.style.overscrollBehavior||="none",document.body.style.overscrollBehavior||="none",requestAnimationFrame(()=>{o.style.backgroundColor="#ebebeb"}),g();let i;try{if(i=await p(r,e,window.location.search,u()??void 0),!i.fpSvgJsRef)throw new Error("No floor plan drawing: the manifest must set `legacyDataUrlBase` (live event) or `fpSvgJsRef` (offline copy)")}catch(t){const{showEventNotFound:c}=await import("./tools/event-not-found");throw c(o),t}s("config",i),m(i);const n=new v(e,o),l=window.___fpResolve;return window.___fp=n,l&&(n.ready.then(()=>l(n)).catch(t=>s("placeholder resolve skipped:",t)),delete window.___fpResolve),n.ready.then(()=>{const t=new CustomEvent("expofp:ready",{detail:{floorplan:n}});window.__expofpReady=t,window.dispatchEvent(t)}).catch(t=>s("ready event skipped:",t)),n.ready.then(()=>f(n,i.intents)).catch(t=>s("config intents skipped:",t)),n}function w(){const r="efp-floorplan-defaults";if(document.getElementById(r))return;const e=document.createElement("style");e.id=r,e.textContent=`
1
+ import"./utils/silence-mobx-react-lite-warning";import{applyIntents as f,loadConfig as p,setConfig as m}from"@expofp/config";import{safeLocalStorage as u}from"@expofp/utils";import d from"debug";import{initHtmlHead as h}from"./_misc_to_move/initHtmlHead";import{logBuildInfo as y}from"./_misc_to_move/logBuildInfo";import v from"./floorplan.loader";import{brand as g}from"./utils/brand";import{applyEventHead as w,buildEventHead as S}from"./utils/event-head";import{formatEventTitle as k}from"./utils/event-title";import E from"./utils/is-own-domain";import{migrateLegacyStorageKeys as b}from"./utils/legacy-storage-keys";const s=d("efp:load");export async function load(i,t={}){h(),y(),d("efp:device").enabled&&import("./_misc_to_move/logDeviceInfo").then(e=>e.logDeviceInfo()).catch(()=>{});const a=t.element;let o;if(typeof a=="string"){const e=document.querySelector(a);if(!e)throw new Error(`Element not found for selector: ${a}`);o=e}else a?o=a:(o=document.getElementById("floorplan"),o||(o=document.createElement("div"),_(o),document.body.appendChild(o)));x(),o.setAttribute("data-efp-floorplan-defaults",""),document.documentElement.style.overscrollBehavior||="none",document.body.style.overscrollBehavior||="none",requestAnimationFrame(()=>{o.style.backgroundColor="#ebebeb"}),b();let n;try{if(n=await p(i,t,window.location.search,u()??void 0),!n.fpSvgJsRef)throw new Error("No floor plan drawing: the manifest must set `legacyDataUrlBase` (live event) or `fpSvgJsRef` (offline copy)")}catch(e){const{showEventNotFound:c}=await import("./tools/event-not-found");throw c(o),e}if(s("config",n),m(n),E){const e=k(n,g);e&&(document.title=e),w(document,S(n),`${window.location.origin}/`)}const r=new v(t,o),l=window.___fpResolve;return window.___fp=r,l&&(r.ready.then(()=>l(r)).catch(e=>s("placeholder resolve skipped:",e)),delete window.___fpResolve),r.ready.then(()=>{const e=new CustomEvent("expofp:ready",{detail:{floorplan:r}});window.__expofpReady=e,window.dispatchEvent(e)}).catch(e=>s("ready event skipped:",e)),r.ready.then(()=>f(r,n.intents)).catch(e=>s("config intents skipped:",e)),r}function x(){const i="efp-floorplan-defaults";if(document.getElementById(i))return;const t=document.createElement("style");t.id=i,t.textContent=`
2
2
  [data-efp-floorplan-defaults] {
3
3
  position: fixed;
4
4
  top: 0;
@@ -10,8 +10,8 @@ import"./utils/silence-mobx-react-lite-warning";import{applyIntents as f,loadCon
10
10
  overscroll-behavior: none;
11
11
  background: #fff;
12
12
  transition: background-color 2s ease;
13
- }`,document.head.prepend(e)}function S(r){if(!document.adoptedStyleSheets)return;const e="efp-runtime-loader-spinner",a=`
14
- .${e} {
13
+ }`,document.head.prepend(t)}function _(i){if(!document.adoptedStyleSheets)return;const t="efp-runtime-loader-spinner",a=`
14
+ .${t} {
15
15
  position: fixed;
16
16
  top: 50%;
17
17
  left: 50%;
@@ -25,29 +25,29 @@ import"./utils/silence-mobx-react-lite-warning";import{applyIntents as f,loadCon
25
25
  transition: all 1s ease;
26
26
  }
27
27
 
28
- .${e} > svg {
28
+ .${t} > svg {
29
29
  width: 60px;
30
30
  transform-origin: center;
31
- animation: ${e}-rotate 2s linear infinite;
31
+ animation: ${t}-rotate 2s linear infinite;
32
32
  }
33
33
 
34
- .${e} > svg > circle {
34
+ .${t} > svg > circle {
35
35
  fill: none;
36
36
  stroke: var(--color-primary, #2382f4);
37
37
  stroke-dasharray: 1, 200;
38
38
  stroke-dashoffset: 0;
39
39
  stroke-linecap: round;
40
40
  stroke-width: 2;
41
- animation: ${e}-dash 1.5s ease-in-out infinite;
41
+ animation: ${t}-dash 1.5s ease-in-out infinite;
42
42
  }
43
43
 
44
- @keyframes ${e}-rotate {
44
+ @keyframes ${t}-rotate {
45
45
  100% {
46
46
  transform: rotate(360deg);
47
47
  }
48
48
  }
49
49
 
50
- @keyframes ${e}-dash {
50
+ @keyframes ${t}-dash {
51
51
  0% {
52
52
  stroke-dasharray: 1, 200;
53
53
  stroke-dashoffset: 0;
@@ -61,8 +61,8 @@ import"./utils/silence-mobx-react-lite-warning";import{applyIntents as f,loadCon
61
61
  100% {
62
62
  stroke-dashoffset: -125px;
63
63
  }
64
- }`,o=new CSSStyleSheet;o.replaceSync(a),document.adoptedStyleSheets=[...document.adoptedStyleSheets,o],r.innerHTML=`<div class="${e}">
64
+ }`,o=new CSSStyleSheet;o.replaceSync(a),document.adoptedStyleSheets=[...document.adoptedStyleSheets,o],i.innerHTML=`<div class="${t}">
65
65
  <svg viewBox="25 25 50 50">
66
66
  <circle r="20" cy="50" cx="50"></circle>
67
67
  </svg>
68
- </div>`,requestAnimationFrame(()=>{r.querySelector(`.${e}`)?.style.setProperty("opacity","1")})}
68
+ </div>`,requestAnimationFrame(()=>{i.querySelector(`.${t}`)?.style.setProperty("opacity","1")})}
@@ -1 +1 @@
1
- import{applyIntents as G,getConfig as h,parseDeprecatedUrlParams as K,parseFromUrlTolerant as V,parseIntentsFromUrl as Y,parseLegacyQuery as E,serializeSelection as Q}from"@expofp/config";import{Box as W}from"@expofp/geometry";import{UrlConfigSchema as z}from"@expofp/schema";import{safeDecode as p}from"@expofp/utils";import{autorun as v,runInAction as H,when as d}from"mobx";import{applyKioskMode as j}from"../components/Kiosk/kiosk-mode";import{recoverKioskFromUrlPrams as N}from"../components/Kiosk/recoverKioskFromUrlPrams";import{LEGACY_PREVIEW_MODE_STORAGE_KEY as $,LEGACY_VIEWER_MODE_STORAGE_KEY as q,PREVIEW_MODE_STORAGE_KEY as I,VIEWER_MODE_STORAGE_KEY as x}from"../constants";import y from"../data";import i,{uiState as o}from"../store";import{BoothBase as w}from"../store/BoothStore";import{CurrentPosition as J,extractRoute as X}from"../store/RouteStore";import{setConsentSettings as Z}from"../tools/gtag";import M from"../tools/logger";import{areLayersEnabled as ee}from"../utils/areLayersEnabled";import{cameraToMapSettings as P}from"../utils/camera-map-settings";import{handleCustomCommand as te}from"../utils/customCommands";import{getMostFrequent as oe}from"../utils/getMostFrequent";import{heatmapEnabled as re}from"../utils/heatmap-enabled";import{isLocalStorageAvailable as B}from"../utils/localStorage";import{stripTrackingParams as ie}from"../utils/trackingParams";import{rewriteMultiSlugQuery as ne}from"./multi-slug";import{currentSearch as m,disableUrlWrites as se,initUrlSync as ae,pushQuery as le,replaceQuery as f}from"./url-sync";let g=!1;export function applyDeclarativeConfig(){k(h()),d(()=>i.layerStore.layersLoaded,()=>{const e=h().camera;Object.keys(e).length&&A(P(e));const t=h().visibility;Object.keys(t).length&&o.setVisibility(t)})}export function initUrlRouting(e){ae({offHistory:e,onNavigate:S}),L(),b(),d(()=>i.layerStore.layersLoaded,()=>{i.urlFilterManager&&!i.urlFilterManager.isInitialized&&i.urlFilterManager.initialize(),S(),v(_),v(T),o.viewerMode&&(o.menu=!0)})}export function applyParameters(e=""){f("?"+p(e.toString())),i.layerStore.layersLoaded?F(e):(b(),d(()=>i.layerStore.layersLoaded,()=>F(e)))}function F(e){const t="?"+p(e),r=fe(t),n=[...r.intents??[],...Y(t).intents],{intents:c=[],...l}=K(t,{visibility:r.visibility,consent:r.consent,intents:n});k(r),k(l);const a=r.consent??l.consent;a&&Z(a),r.camera&&Object.keys(r.camera).length&&A(P(r.camera)),r.visibility&&Object.keys(r.visibility).length&&o.setVisibility(r.visibility),L(),S();const s=[...n,...c];s.length&&G(i.fp,s)}function b(){const e=m(),t=e.length>1?p(e.substring(1)):"";return te(t)}function S(){g=!0;try{const e=new URLSearchParams(p(window.location.search));N(e);const{primary:t}=E(m()),r=t.type==="select"&&(!t.slug||/^t=[^&]*$/.test(t.slug))&&(o.heatmap||o.heatmapYah);!b()&&!r&&ce(t)}finally{g=!1}T(),_()}function ce(e){const t=i.fp;switch(e.type){case"kiosk":e.enabled!==null&&j(o,e.enabled);return;case"list":t.showList(e.list);return;case"tour":t.selectTour(e.tourId);return;case"planner":t.openPlanner({items:e.items,from:e.from,fromBookmarks:e.fromBookmarks});return;case"route":{i.routeStore.setOnlyAccessible(e.accessible),i.routeStore.selectRoute(X(e.from??"",e.to??"",e.waypoints)),i.uiState.setIsMultiPointRoute(e.waypoints.length>0),e.title&&i.uiState.setRouteTitle(e.title);return}case"selectExhibitors":setTimeout(()=>t.selectExhibitor(e.values),250);return;case"ownedByFilters":M.log("Skipping filter parameters in dispatchFromUrl (owned by URLFilterManager)");return;case"ownedByConfig":return;case"select":t.select(e.slug);return}}export function applyPathway(e){const{pathwayId:t,boothIds:r,exhibitorIds:n}=e,c=i.boothStore.booths.filter(s=>r.includes(s.externalId)),l=i.exhibitorStore.exhibitors.filter(s=>n.includes(s.externalId)).flatMap(s=>s.booths),a=[...c,...l];if(ee()){const s=oe(a.map(u=>u.layer.name));s&&i.fp.activateFloor({name:s})}(r.length>0||n.length>0)&&i.fp.highlightEntities([...r,...n]),i.layerStore.showPathWay(t),a.length>0&&H(()=>{i.uiState.moveToRect=W.fromUnion(...a.map(s=>s.rect).filter(Boolean)),i.uiState.rollReset=!0})}function L(){const{oneShots:e}=E(m());for(const r of e)ue(r);const t=ie(m());t!==null&&f("?"+t),o.previewExhibitor&&f("?"+o.previewExhibitor.slug),me()}function ue(e){switch(e.type){case"heatmap":R(e.yah);return;case"blueDot":{const t=new J(e.x,e.y,i.layerStore.findLayer(e.layer??"")?.name,void 0,e.lat,e.lng);d(()=>i.layerStore.layersLoaded,()=>i.routeStore.selectCurrentPosition(t,!0,1));return}case"viewerMode":B&&(e.enabled?localStorage.setItem(x,"true"):(localStorage.removeItem(x),localStorage.removeItem(q)));return;case"previewMode":B&&(e.enabled?localStorage.setItem(I,"true"):(localStorage.removeItem(I),localStorage.removeItem($)));return;case"uiScale":e.scale!==null?i.uiState.setUIScale(e.scale,!0):M.warn(`Invalid ui-scale parameter: ${e.raw}. Must be a number between 0.8 and 1.4.`);return;case"resetUiScale":i.uiState.resetUIScale();return}}function R(e){se(),e?(o.heatmapYah=!0,o.monochrome=!0,o.hideLogoInBooth=!0,o.hideHeaderLogo=!0,o.disableBookmarked=!0):o.heatmap=!0}function me(){const e=ne(m(),t=>i.exhibitorStore.exhibitors.find(n=>n.slug===t||n.externalId===t)?.name);e!==null&&f(e)}function k(e){e.noOverlay!==void 0&&(o.hideOverlay=e.noOverlay),e.monochrome&&(o.monochrome=!0),e.hideHeaderLogo&&(o.hideHeaderLogo=!0),e.hideLogoInBooth&&(o.hideLogoInBooth=!0),e.disableFeatured&&i.exhibitorStore.exhibitors.forEach(t=>t.featured=!1),e.disableBookmarked&&(o.disableBookmarked=!0),e.disableGps&&i.routeStore.setGpsTrackingEnabled(!1),e.heatmap&&re(e.heatmap)&&R(e.heatmap.variant==="yah")}function fe(e){return V(z,e).value}let U=null,O=null,C=null;function T(){const{selection:e,exhibitor:t,booth:r,eventItem:n}=pe(),c=i.urlFilterManager.filterSearch();if(g)return;const l=Q(e)||c;m()!==l&&(t!==U||r!==O||n!==C?le(l):f(l),U=t,O=r,C=n)}function pe(){const e=o.selectedExhibitor,t=o.selectedBooth,r=o.selectedEventItem,n=o.selectedRoute,c=o.selectedSpeaker,l=o.setKioskModeEnabled,a=o.list;let s;if(a.type==="route-planner"&&!e&&!t&&!r){const u=i.routePlannerStore;s={type:"planner",fromBookmarks:u.source==="bookmarks",items:u.items.map(D=>D.entity.slug).filter(Boolean),from:u.startPoint?.slug||void 0}}else if(n&&!o.isMultiPointRoute)s={type:"route",to:n.to instanceof w?n.to.slug:void 0,from:n.from instanceof w?n.from.slug:void 0,accessible:i.routeStore.onlyAccessible,waypoints:n.waypoints?.map(u=>u.slug)};else if(e)s={type:"slug",slug:e.slug};else if(t)s={type:"slug",slug:t.slug};else if(r)s={type:"slug",slug:r.slug};else if(c)s={type:"slug",slug:c.slug};else if(l)s={type:"none"};else switch(a.type){case"bookmarks":case"visited":case"sessions":case"exhibitors":case"speakers":case"tours":case"language":s={type:"list",list:a.type};break;case"category":s={type:"slug",slug:o.selectedCategory?.slug??""};break;case"search":s={type:"slug",slug:a.text||""};break;case"filter":s={type:"filter",key:a.query.key,value:a.query.value};break;case"multi-point-tour":s={type:"tour",tourId:a.tourId};break;default:throw new Error("Unkown list.type")}return{selection:s,exhibitor:e,booth:t,eventItem:r}}function _(){const e=o.selectedExhibitor,t=o.selectedEventItem,r=o.selectedSpeaker;let n="";e?n=e.name:t?n=t.name:r?n=r.name:o.list.type==="search"&&o.list.text?n="`"+(o.list.text||"")+"`":o.list.type==="multi-point-tour"&&o.tourTitle&&(n=o.tourTitle),n.length&&(n+=" \u2013 "),n+=y.title,y.subtitle&&(n+=" \u2013 "+y.subtitle),n+=" \u2013 Expo Floor Plan by ExpoFP",document.title=n}function A(e){try{if(o.setMapSettings(e),e.z){const t=i.layerStore.layers.find(r=>r.name===e.z);t&&i.layerStore.updateVisibility(t,!0)}}catch(t){console.error("Failed to process map settings.",t)}}
1
+ import{applyIntents as G,getConfig as h,parseDeprecatedUrlParams as K,parseFromUrlTolerant as V,parseIntentsFromUrl as Y,parseLegacyQuery as k,serializeSelection as Q}from"@expofp/config";import{Box as W}from"@expofp/geometry";import{UrlConfigSchema as z}from"@expofp/schema";import{safeDecode as p}from"@expofp/utils";import{autorun as v,runInAction as H,when as d}from"mobx";import{applyKioskMode as j}from"../components/Kiosk/kiosk-mode";import{recoverKioskFromUrlPrams as N}from"../components/Kiosk/recoverKioskFromUrlPrams";import{LEGACY_PREVIEW_MODE_STORAGE_KEY as $,LEGACY_VIEWER_MODE_STORAGE_KEY as q,PREVIEW_MODE_STORAGE_KEY as E,VIEWER_MODE_STORAGE_KEY as I}from"../constants";import J from"../data";import i,{uiState as o}from"../store";import{BoothBase as w}from"../store/BoothStore";import{CurrentPosition as X,extractRoute as Z}from"../store/RouteStore";import{setConsentSettings as ee}from"../tools/gtag";import x from"../tools/logger";import{areLayersEnabled as te}from"../utils/areLayersEnabled";import{brand as M}from"../utils/brand";import{cameraToMapSettings as B}from"../utils/camera-map-settings";import{handleCustomCommand as oe}from"../utils/customCommands";import{formatEventTitle as re,formatPlaceholderTitle as ie}from"../utils/event-title";import{getMostFrequent as ne}from"../utils/getMostFrequent";import{heatmapEnabled as se}from"../utils/heatmap-enabled";import ae from"../utils/is-own-domain";import{isLocalStorageAvailable as P}from"../utils/localStorage";import{stripTrackingParams as le}from"../utils/trackingParams";import{rewriteMultiSlugQuery as ce}from"./multi-slug";import{currentSearch as m,disableUrlWrites as ue,initUrlSync as me,pushQuery as fe,replaceQuery as f}from"./url-sync";let y=!1;export function applyDeclarativeConfig(){S(h()),d(()=>i.layerStore.layersLoaded,()=>{const e=h().camera;Object.keys(e).length&&A(B(e));const t=h().visibility;Object.keys(t).length&&o.setVisibility(t)})}export function initUrlRouting(e){me({offHistory:e,onNavigate:b}),O(),g(),d(()=>i.layerStore.layersLoaded,()=>{i.urlFilterManager&&!i.urlFilterManager.isInitialized&&i.urlFilterManager.initialize(),b(),v(_),v(T),o.viewerMode&&(o.menu=!0)})}export function applyParameters(e=""){f("?"+p(e.toString())),i.layerStore.layersLoaded?L(e):(g(),d(()=>i.layerStore.layersLoaded,()=>L(e)))}function L(e){const t="?"+p(e),r=ye(t),n=[...r.intents??[],...Y(t).intents],{intents:c=[],...l}=K(t,{visibility:r.visibility,consent:r.consent,intents:n});S(r),S(l);const a=r.consent??l.consent;a&&ee(a),r.camera&&Object.keys(r.camera).length&&A(B(r.camera)),r.visibility&&Object.keys(r.visibility).length&&o.setVisibility(r.visibility),O(),b();const s=[...n,...c];s.length&&G(i.fp,s)}function g(){const e=m(),t=e.length>1?p(e.substring(1)):"";return oe(t)}function b(){y=!0;try{const e=new URLSearchParams(p(window.location.search));N(e);const{primary:t}=k(m()),r=t.type==="select"&&(!t.slug||/^t=[^&]*$/.test(t.slug))&&(o.heatmap||o.heatmapYah);!g()&&!r&&pe(t)}finally{y=!1}T(),_()}function pe(e){const t=i.fp;switch(e.type){case"kiosk":e.enabled!==null&&j(o,e.enabled);return;case"list":t.showList(e.list);return;case"tour":t.selectTour(e.tourId);return;case"planner":t.openPlanner({items:e.items,from:e.from,fromBookmarks:e.fromBookmarks});return;case"route":{i.routeStore.setOnlyAccessible(e.accessible),i.routeStore.selectRoute(Z(e.from??"",e.to??"",e.waypoints)),i.uiState.setIsMultiPointRoute(e.waypoints.length>0),e.title&&i.uiState.setRouteTitle(e.title);return}case"selectExhibitors":setTimeout(()=>t.selectExhibitor(e.values),250);return;case"ownedByFilters":x.log("Skipping filter parameters in dispatchFromUrl (owned by URLFilterManager)");return;case"ownedByConfig":return;case"select":t.select(e.slug);return}}export function applyPathway(e){const{pathwayId:t,boothIds:r,exhibitorIds:n}=e,c=i.boothStore.booths.filter(s=>r.includes(s.externalId)),l=i.exhibitorStore.exhibitors.filter(s=>n.includes(s.externalId)).flatMap(s=>s.booths),a=[...c,...l];if(te()){const s=ne(a.map(u=>u.layer.name));s&&i.fp.activateFloor({name:s})}(r.length>0||n.length>0)&&i.fp.highlightEntities([...r,...n]),i.layerStore.showPathWay(t),a.length>0&&H(()=>{i.uiState.moveToRect=W.fromUnion(...a.map(s=>s.rect).filter(Boolean)),i.uiState.rollReset=!0})}function O(){const{oneShots:e}=k(m());for(const r of e)de(r);const t=le(m());t!==null&&f("?"+t),o.previewExhibitor&&f("?"+o.previewExhibitor.slug),he()}function de(e){switch(e.type){case"heatmap":R(e.yah);return;case"blueDot":{const t=new X(e.x,e.y,i.layerStore.findLayer(e.layer??"")?.name,void 0,e.lat,e.lng);d(()=>i.layerStore.layersLoaded,()=>i.routeStore.selectCurrentPosition(t,!0,1));return}case"viewerMode":P&&(e.enabled?localStorage.setItem(I,"true"):(localStorage.removeItem(I),localStorage.removeItem(q)));return;case"previewMode":P&&(e.enabled?localStorage.setItem(E,"true"):(localStorage.removeItem(E),localStorage.removeItem($)));return;case"uiScale":e.scale!==null?i.uiState.setUIScale(e.scale,!0):x.warn(`Invalid ui-scale parameter: ${e.raw}. Must be a number between 0.8 and 1.4.`);return;case"resetUiScale":i.uiState.resetUIScale();return}}function R(e){ue(),e?(o.heatmapYah=!0,o.monochrome=!0,o.hideLogoInBooth=!0,o.hideHeaderLogo=!0,o.disableBookmarked=!0):o.heatmap=!0}function he(){const e=ce(m(),t=>i.exhibitorStore.exhibitors.find(n=>n.slug===t||n.externalId===t)?.name);e!==null&&f(e)}function S(e){e.noOverlay!==void 0&&(o.hideOverlay=e.noOverlay),e.monochrome&&(o.monochrome=!0),e.hideHeaderLogo&&(o.hideHeaderLogo=!0),e.hideLogoInBooth&&(o.hideLogoInBooth=!0),e.disableFeatured&&i.exhibitorStore.exhibitors.forEach(t=>t.featured=!1),e.disableBookmarked&&(o.disableBookmarked=!0),e.disableGps&&i.routeStore.setGpsTrackingEnabled(!1),e.heatmap&&se(e.heatmap)&&R(e.heatmap.variant==="yah")}function ye(e){return V(z,e).value}let U=null,F=null,C=null;function T(){const{selection:e,exhibitor:t,booth:r,eventItem:n}=ge(),c=i.urlFilterManager.filterSearch();if(y)return;const l=Q(e)||c;m()!==l&&(t!==U||r!==F||n!==C?fe(l):f(l),U=t,F=r,C=n)}function ge(){const e=o.selectedExhibitor,t=o.selectedBooth,r=o.selectedEventItem,n=o.selectedRoute,c=o.selectedSpeaker,l=o.setKioskModeEnabled,a=o.list;let s;if(a.type==="route-planner"&&!e&&!t&&!r){const u=i.routePlannerStore;s={type:"planner",fromBookmarks:u.source==="bookmarks",items:u.items.map(D=>D.entity.slug).filter(Boolean),from:u.startPoint?.slug||void 0}}else if(n&&!o.isMultiPointRoute)s={type:"route",to:n.to instanceof w?n.to.slug:void 0,from:n.from instanceof w?n.from.slug:void 0,accessible:i.routeStore.onlyAccessible,waypoints:n.waypoints?.map(u=>u.slug)};else if(e)s={type:"slug",slug:e.slug};else if(t)s={type:"slug",slug:t.slug};else if(r)s={type:"slug",slug:r.slug};else if(c)s={type:"slug",slug:c.slug};else if(l)s={type:"none"};else switch(a.type){case"bookmarks":case"visited":case"sessions":case"exhibitors":case"speakers":case"tours":case"language":s={type:"list",list:a.type};break;case"category":s={type:"slug",slug:o.selectedCategory?.slug??""};break;case"search":s={type:"slug",slug:a.text||""};break;case"filter":s={type:"filter",key:a.query.key,value:a.query.value};break;case"multi-point-tour":s={type:"tour",tourId:a.tourId};break;default:throw new Error("Unkown list.type")}return{selection:s,exhibitor:e,booth:t,eventItem:r}}function _(){if(!ae)return;const e=o.selectedExhibitor,t=o.selectedEventItem,r=o.selectedSpeaker;let n="";e?n=e.name:t?n=t.name:r?n=r.name:o.list.type==="search"&&o.list.text?n="`"+(o.list.text||"")+"`":o.list.type==="multi-point-tour"&&o.tourTitle&&(n=o.tourTitle),n.length&&(n+=" \u2013 "),n+=re(J,M)??ie(window.location.hostname,M),document.title=n}function A(e){try{if(o.setMapSettings(e),e.z){const t=i.layerStore.layers.find(r=>r.name===e.z);t&&i.layerStore.updateVisibility(t,!0)}}catch(t){console.error("Failed to process map settings.",t)}}
@@ -1 +1 @@
1
- export function showEventNotFound(e){if(typeof document>"u"||!e)return;e.textContent="";const t=e.style;t.display="flex",t.flexDirection="column",t.alignItems="center",t.justifyContent="center",t.boxSizing="border-box",t.padding="24px",t.background="#ffffff",t.color="#1f2937",t.textAlign="center",t.fontFamily='Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif';const n=document.createElement("div");n.textContent="Event not found",n.style.cssText=["font-size: 28px","font-weight: 600","line-height: 1.25"].join("; ");const o=document.createElement("div");o.textContent="This event does not exist or is no longer available.",o.style.cssText=["margin-top: 8px","font-size: 16px","color: #6b7280"].join("; "),e.appendChild(n),e.appendChild(o)}
1
+ import{markNotIndexable as i}from"../utils/event-head";import s from"../utils/is-own-domain";export function showEventNotFound(e){if(typeof document>"u"||!e)return;s&&i(document),e.textContent="";const t=e.style;t.display="flex",t.flexDirection="column",t.alignItems="center",t.justifyContent="center",t.boxSizing="border-box",t.padding="24px",t.background="#ffffff",t.color="#1f2937",t.textAlign="center",t.fontFamily='Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif';const n=document.createElement("div");n.textContent="Event not found",n.style.cssText=["font-size: 28px","font-weight: 600","line-height: 1.25"].join("; ");const o=document.createElement("div");o.textContent="This event does not exist or is no longer available.",o.style.cssText=["margin-top: 8px","font-size: 16px","color: #6b7280"].join("; "),e.appendChild(n),e.appendChild(o)}
@@ -0,0 +1,18 @@
1
+ export type Brand = 'ExpoFP' | 'LocoMaven';
2
+ /**
3
+ * Apex domain → brand: every event is `<expo>.<apex>` (aws-code README), and
4
+ * the domain is what decides the brand. Not taken from the manifest's
5
+ * `locomaven` flag (aws-code `manifest-json`) — the lambda derives that from
6
+ * the same domain, and the placeholder title is written before any request
7
+ * settles, so only the hostname is known at both moments.
8
+ */
9
+ declare const BRAND_BY_APEX: {
10
+ readonly 'expofp.com': 'ExpoFP';
11
+ readonly 'locomaven.com': 'LocoMaven';
12
+ };
13
+ export declare const OWN_APEX_DOMAINS: (keyof typeof BRAND_BY_APEX)[];
14
+ /** Pure so it's testable without stubbing `window.location`. */
15
+ export declare function computeBrand(hostname: string): Brand;
16
+ export declare const brand: Brand;
17
+ export {};
18
+ //# sourceMappingURL=brand.d.ts.map
@@ -0,0 +1 @@
1
+ const t={"expofp.com":"ExpoFP","locomaven.com":"LocoMaven"};export const OWN_APEX_DOMAINS=Object.keys(t);const c="ExpoFP";export function computeBrand(o){const n=OWN_APEX_DOMAINS.find(e=>o===e||o.endsWith(`.${e}`));return n?t[n]:c}export const brand=typeof window>"u"?c:computeBrand(window.location.hostname);
@@ -0,0 +1,38 @@
1
+ /**
2
+ * The search-facing `<head>` (and the one `<h1>`) of an event page.
3
+ *
4
+ * The event shell served on `<expo>.expofp.com` is a bare HTML stub (aws-code
5
+ * `expo-index-v2`) with no description, heading or canonical, so crawlers that
6
+ * render JS get whatever the SDK writes. Every tag here fills a gap only — a
7
+ * page (or a future edge-generated shell) that already carries one wins — and
8
+ * the caller writes them only on our own event hosts (see is-own-domain.ts).
9
+ */
10
+ /** Search engines cut meta descriptions off past roughly this length. */
11
+ export declare const MAX_DESCRIPTION = 160;
12
+ interface EventHeadSource {
13
+ title: string;
14
+ subtitle: string;
15
+ locale: string;
16
+ exhibitors: readonly unknown[];
17
+ hideExhibitors: boolean;
18
+ }
19
+ export interface EventHead {
20
+ description: string;
21
+ /** Undefined when the event has no name to head the page with. */
22
+ heading: string | undefined;
23
+ /** Undefined unless `locale` is a well-formed BCP 47 tag. */
24
+ lang: string | undefined;
25
+ }
26
+ /** Cut to `max` characters on a word boundary, marking the cut with an ellipsis. */
27
+ export declare function truncateAtWord(text: string, max: number): string;
28
+ export declare function buildEventHead(source: EventHeadSource): EventHead;
29
+ /** Write the event head into `doc`, filling only what the page lacks. */
30
+ export declare function applyEventHead(doc: Document, head: EventHead, canonicalUrl: string): void;
31
+ /**
32
+ * Keep a page out of the index — the "Event not found" screen: every unknown
33
+ * or removed event host answers 200 with the same shell (a soft 404 the edge
34
+ * cannot yet turn into a real one), so without this they index as duplicates.
35
+ */
36
+ export declare function markNotIndexable(doc: Document): void;
37
+ export {};
38
+ //# sourceMappingURL=event-head.d.ts.map
@@ -0,0 +1 @@
1
+ export const MAX_DESCRIPTION=160;export function truncateAtWord(e,t){if(e.length<=t)return e;const i=e.slice(0,t-1),n=i.lastIndexOf(" ");return(n>0?i.slice(0,n):i).replace(/[\s,.:;–—|-]+$/u,"")+"\u2026"}const c=/^[a-z]{2,3}(?:-[a-z0-9]{2,8})*$/iu;export function buildEventHead(e){const t=e.title.trim(),i=e.subtitle.trim(),n=t?`${t} interactive floor plan`:"Interactive event floor plan",o=e.hideExhibitors?0:e.exhibitors.length,a=o>0?`Browse ${o} exhibitors, find booths and get directions.`:"Find booths and get directions.",l=truncateAtWord(`${n}${i?`: ${i}`:""}. ${a}`,160),r=e.locale.trim();return{description:l,heading:t||i||void 0,lang:c.test(r)?r:void 0}}const s=["position: absolute","width: 1px","height: 1px","margin: -1px","padding: 0","overflow: hidden","clip: rect(0, 0, 0, 0)","white-space: nowrap","border: 0"].join("; ");export function applyEventHead(e,t,i){if(!e.querySelector('meta[name="description"]')){const n=e.createElement("meta");n.name="description",n.content=t.description,e.head.appendChild(n)}if(!e.querySelector('link[rel="canonical"]')){const n=e.createElement("link");n.rel="canonical",n.href=i,e.head.appendChild(n)}if(t.heading&&!e.querySelector("h1")){const n=e.createElement("h1");n.textContent=t.heading,n.style.cssText=s,e.body.prepend(n)}t.lang&&(e.documentElement.lang=t.lang)}export function markNotIndexable(e){if(e.querySelector('meta[name="robots"]'))return;const t=e.createElement("meta");t.name="robots",t.content="noindex",e.head.appendChild(t)}
@@ -0,0 +1,19 @@
1
+ import type { Brand } from './brand';
2
+ interface EventTitleSource {
3
+ title: string;
4
+ subtitle: string;
5
+ }
6
+ /**
7
+ * The final, real title — event name (+ subtitle), known once `data.js` is
8
+ * loaded. Undefined when the event has neither (both default to `''`): the
9
+ * bare brand suffix would be the same for every such event, so the caller
10
+ * keeps the hostname-derived placeholder instead.
11
+ */
12
+ export declare function formatEventTitle(source: EventTitleSource, brand: Brand): string | undefined;
13
+ /**
14
+ * Synchronous placeholder set before any network request completes.
15
+ * Hostname-derived, not a literal constant, so it's unique per event.
16
+ */
17
+ export declare function formatPlaceholderTitle(hostname: string, brand: Brand): string;
18
+ export {};
19
+ //# sourceMappingURL=event-title.d.ts.map
@@ -0,0 +1 @@
1
+ export function formatEventTitle(t,o){const n=[t.title,t.subtitle].filter(Boolean);if(n.length)return[...n,`Expo Floor Plan by ${o}`].join(" \u2013 ")}export function formatPlaceholderTitle(t,o){const[n]=t.split(".");return`${n||t} \u2013 Expo Floor Plan by ${o}`}