@expofp/floorplan 3.13.4 → 3.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/{Button-Di2ct8As.js → Button-DiKCIDd1.js} +5 -5
- package/dist/browser/{CookieConsent-CzE7xqru.js → CookieConsent-DXk2Caeo.js} +7 -7
- package/dist/browser/{Debug-BsFpCwAP.js → Debug-Mo3SzSJr.js} +7 -7
- package/dist/browser/{Demo-CUBUALkV.js → Demo-ACnPuJuZ.js} +9 -9
- package/dist/browser/Free-DGCskEvz.js +68 -0
- package/dist/browser/{Gallery-BseorZVt.js → Gallery-BRAf8cfL.js} +9 -9
- package/dist/browser/{GpsLoader-CEqhVKuQ.js → GpsLoader-rTwB2wu0.js} +10 -10
- package/dist/browser/{KioskStore-CkjO0Hfm.js → KioskStore-CYH_X97a.js} +3 -3
- package/dist/browser/{MaplibreAdapter-Cv3TA80a.js → MaplibreAdapter-bgkOesNk.js} +2019 -2002
- package/dist/browser/{ModalContainer-DBzlfN-T.js → ModalContainer-BN8zhCt2.js} +10 -10
- package/dist/browser/{PermissionNotice-B07dAoJS.js → PermissionNotice-C8C_NDGv.js} +6 -6
- package/dist/browser/{SetKioskMode-Bx1kz1kp.js → SetKioskMode-4Ezmfeob.js} +8 -8
- package/dist/browser/{ShowKiosk-B7-iTNeI.js → ShowKiosk-BUsEWQV4.js} +11 -11
- package/dist/browser/{TouchHand-Bnn5MVhC.js → TouchHand-DkHfBJG-.js} +4 -4
- package/dist/browser/{ViewerMenuPanel-CXUBz4Wo.js → ViewerMenuPanel-CfqODIqt.js} +9 -9
- package/dist/browser/{add-debug-secret-listener-BNYotAb-.js → add-debug-secret-listener-DYtnArTi.js} +1 -1
- package/dist/browser/{adopt-global-settings-4U11MsDW.js → adopt-global-settings-BED4RRA8.js} +9 -9
- package/dist/browser/{boolean-editor-CHApWCH1.js → boolean-editor-dOhsBReV.js} +9 -9
- package/dist/browser/{bootIntercom-DxJQ9eFU.js → bootIntercom-D79L4pO2.js} +2 -2
- package/dist/browser/{booth-by-xy-BLVVwNtj.js → booth-by-xy-DuDn5AXV.js} +6 -6
- package/dist/browser/bundle.json +65 -65
- package/dist/browser/{classnames-DyPh2wWH.js → classnames-Bioiliw4.js} +2 -2
- package/dist/browser/{client-VtpPft-k.js → client-Cttq4oY1.js} +4 -4
- package/dist/browser/{components-pEqQBzpb.js → components-Bgx5mydM.js} +65 -62
- package/dist/browser/{debug-overlay-BIIG939X.js → debug-overlay-KXVOoJjM.js} +10 -10
- package/dist/browser/{debug-ui-Dd-aHSgD.js → debug-ui-ZzOpVpEz.js} +6 -6
- package/dist/browser/{dist-B--b6-sL.js → dist-9RSDApOC.js} +6 -6
- package/dist/browser/{dist-qa-F0eMk.js → dist-BPj-IuGE.js} +5 -5
- package/dist/browser/{dist-B-7AJaNA.js → dist-L0hv6drb.js} +3 -3
- package/dist/browser/{efp-debug-init-Bzf4T8Xx.js → efp-debug-init-Agb1pk8j.js} +3 -3
- package/dist/browser/{enum-editor-DC0RIYSE.js → enum-editor-Bh_hYBnp.js} +4 -4
- package/dist/browser/{es5-DQ8JOeDN.js → es5-kIj9wk6V.js} +2 -2
- package/dist/browser/{event-not-found-BKJBsZXi.js → event-not-found-mH5XaRNk.js} +1 -1
- package/dist/browser/{exports-6X24q5_8.js → exports-CVxQSSfr.js} +37 -37
- package/dist/browser/{favicon-DxFo6cG6.js → favicon-WuO1Pu8A.js} +1 -1
- package/dist/browser/{fetch-retry.umd-DbPKc93r.js → fetch-retry.umd-FoSetp20.js} +2 -2
- package/dist/browser/{flex-D7Rgw10G.js → flex-BfiMbJhi.js} +5 -5
- package/dist/browser/{floorplan.loader-DWmxY4b8.js → floorplan.loader-CbrCvnB3.js} +77 -77
- package/dist/browser/{floorplan.ready-BBeRJMyN.js → floorplan.ready-D7yYGdzw.js} +18 -18
- package/dist/browser/{fuse-CMjVlF0N.js → fuse-BvFHcjwl.js} +2 -2
- package/dist/browser/{i18n-xqAQbHAE.js → i18n-DqJQjSKr.js} +1040 -1038
- package/dist/browser/index.js +14 -14
- package/dist/browser/{index.module-Cow3RO4I.js → index.module-CEPrlQrj.js} +4 -4
- package/dist/browser/{integrateKiosk-GhnQowhu.js → integrateKiosk-CJ_IdVa8.js} +3 -3
- package/dist/browser/{is-webview-BL3sbVlT.js → is-webview-tegLZHDi.js} +1 -1
- package/dist/browser/{jsx-runtime-1kuNv2jo.js → jsx-runtime-BIqVyDF_.js} +2 -2
- package/dist/browser/{lib-KmlWWpxs.js → lib-DvrhZpe0.js} +3 -3
- package/dist/browser/{loadImage-OQCwDcXc.js → loadImage-De6eYPJF.js} +4 -4
- package/dist/browser/{logDeviceInfo-C4CqLCSB.js → logDeviceInfo-Bum0lCVo.js} +9 -9
- package/dist/browser/{main-lSz23rgB.js → main-g8ySx9GZ.js} +1 -1
- package/dist/browser/{mobx-Juv7YSNw.js → mobx-DMf4iflz.js} +4 -4
- package/dist/browser/{optional-boolean-editor-Bzfn3FDz.js → optional-boolean-editor-CPYoKATy.js} +3 -3
- package/dist/browser/{optional-enum-editor-C46BK0zF.js → optional-enum-editor-DfoHhTUT.js} +4 -4
- package/dist/browser/{optional-string-editor-77_tZQLr.js → optional-string-editor-D7iVASyc.js} +4 -4
- package/dist/browser/{particles.min-vy3ld3Rh.js → particles.min-ArVYLTRf.js} +2 -2
- package/dist/browser/{react-DTFJ9F0z.js → react-4YK9tuu5.js} +2 -2
- package/dist/browser/{react-dom--ZXNmyjd.js → react-dom-CJtjdq-P.js} +3 -3
- package/dist/browser/{rolldown-runtime-DKhEBWux.js → rolldown-runtime-CCOBdLcF.js} +1 -1
- package/dist/browser/{select-BSCoOOKF.js → select-Dy5YH7Jb.js} +10 -10
- package/dist/browser/{settings-COo-V6uV.js → settings-C_UdnCV9.js} +2 -2
- package/dist/browser/{settings-item-twkhiQs1.js → settings-item-DIBQbzxn.js} +6 -6
- package/dist/browser/{store-7Bfkwa8d.js → store-ye6iGYGq.js} +6683 -6657
- package/dist/browser/{string-editor-D3_ZBuje.js → string-editor-B9d3eAoA.js} +4 -4
- package/dist/browser/{text-field-BlFx76b3.js → text-field-CkqHnfbI.js} +5 -5
- package/dist/browser/{theme-Cdr_JTu6.js → theme-hhwTUU9a.js} +8 -8
- package/dist/browser/{ui-DsnmvJHp.js → ui-CXpcuvXZ.js} +8 -8
- package/dist/browser/{useRenderTarget-CqTbZKLS.js → useRenderTarget-BuB768wj.js} +4 -4
- package/dist/esm/components/Layout.js +1 -1
- package/dist/esm/components/Maplibre/utils/map-helpers.d.ts +3 -2
- package/dist/esm/components/Maplibre/utils/map-helpers.js +1 -1
- package/dist/esm/components/Maplibre/utils/map-theme.d.ts +20 -0
- package/dist/esm/components/Maplibre/utils/map-theme.js +1 -0
- package/dist/esm/components/SearchButtons/SearchButtons.d.ts +1 -2
- package/dist/esm/components/SearchButtons/SearchButtons.js +1 -1
- package/dist/esm/data/fpGeo.d.ts +11 -4
- package/dist/esm/data/fpGeo.js +1 -1
- package/dist/esm/store/RoutePlannerStore.d.ts +2 -4
- package/dist/esm/store/RoutePlannerStore.js +1 -1
- package/dist/esm/store/UIState.d.ts +3 -0
- package/dist/esm/store/UIState.js +1 -1
- package/dist/esm/store/types.d.ts +1 -0
- package/dist/esm/tools/settings.d.ts +2 -2
- package/dist/esm/tools/settings.js +1 -1
- package/dist/esm/types.d.ts +1 -0
- package/dist/esm/ui/Autocomplete/Autocomplete.js +1 -1
- package/package.json +14 -14
- package/dist/browser/Free-CeVCkK7q.js +0 -68
|
@@ -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.
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.15.0" };
|
|
5
5
|
var t = new e.Error().stack;
|
|
6
6
|
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "0a67f4c1-0ef6-428f-92c6-94c57178bf21", e._sentryDebugIdIdentifier = "sentry-dbid-0a67f4c1-0ef6-428f-92c6-94c57178bf21");
|
|
7
7
|
} catch {}
|
|
8
8
|
})();
|
|
9
|
-
import { t as e } from "./jsx-runtime-
|
|
10
|
-
import { t } from "./settings-item-
|
|
11
|
-
import { t as n } from "./text-field-
|
|
9
|
+
import { t as e } from "./jsx-runtime-BIqVyDF_.js";
|
|
10
|
+
import { t } from "./settings-item-DIBQbzxn.js";
|
|
11
|
+
import { t as n } from "./text-field-CkqHnfbI.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.
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.15.0" };
|
|
5
5
|
var t = new e.Error().stack;
|
|
6
6
|
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "9c5a0877-c176-4e2d-b51c-123d50ab2b3c", e._sentryDebugIdIdentifier = "sentry-dbid-9c5a0877-c176-4e2d-b51c-123d50ab2b3c");
|
|
7
7
|
} catch {}
|
|
8
8
|
})();
|
|
9
|
-
import { r as e } from "./rolldown-runtime-
|
|
10
|
-
import { t } from "./react-
|
|
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-
|
|
12
|
-
import { t as l } from "./classnames-
|
|
9
|
+
import { r as e } from "./rolldown-runtime-CCOBdLcF.js";
|
|
10
|
+
import { t } from "./react-4YK9tuu5.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-BfiMbJhi.js";
|
|
12
|
+
import { t as l } from "./classnames-Bioiliw4.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.
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.15.0" };
|
|
5
5
|
var t = new e.Error().stack;
|
|
6
6
|
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "f658045a-5be7-4ea4-a4b2-ddea9ab9caf3", e._sentryDebugIdIdentifier = "sentry-dbid-f658045a-5be7-4ea4-a4b2-ddea9ab9caf3");
|
|
7
7
|
} catch {}
|
|
8
8
|
})();
|
|
9
|
-
import { r as e } from "./rolldown-runtime-
|
|
10
|
-
import { t } from "./react-
|
|
11
|
-
import { t as n } from "./jsx-runtime-
|
|
12
|
-
import { t as r } from "./react-dom
|
|
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-
|
|
14
|
-
import { c as f, i as p, n as m, o as h, r as g, s as _, t as v } from "./dist-
|
|
15
|
-
import { t as y } from "./classnames-
|
|
9
|
+
import { r as e } from "./rolldown-runtime-CCOBdLcF.js";
|
|
10
|
+
import { t } from "./react-4YK9tuu5.js";
|
|
11
|
+
import { t as n } from "./jsx-runtime-BIqVyDF_.js";
|
|
12
|
+
import { t as r } from "./react-dom-CJtjdq-P.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-BfiMbJhi.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-9RSDApOC.js";
|
|
15
|
+
import { t as y } from "./classnames-Bioiliw4.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.
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.15.0" };
|
|
5
5
|
var t = new e.Error().stack;
|
|
6
6
|
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "3c34ab8b-5d65-4c06-8595-6ed371acabc5", e._sentryDebugIdIdentifier = "sentry-dbid-3c34ab8b-5d65-4c06-8595-6ed371acabc5");
|
|
7
7
|
} catch {}
|
|
8
8
|
})();
|
|
9
|
-
import { r as e } from "./rolldown-runtime-
|
|
10
|
-
import { a as t, i as n, s as r } from "./efp-debug-init-
|
|
11
|
-
import { a as i, i as a } from "./adopt-global-settings-
|
|
12
|
-
import { t as o } from "./jsx-runtime-
|
|
13
|
-
import "./settings-
|
|
14
|
-
import { t as s } from "./add-debug-secret-listener-
|
|
9
|
+
import { r as e } from "./rolldown-runtime-CCOBdLcF.js";
|
|
10
|
+
import { a as t, i as n, s as r } from "./efp-debug-init-Agb1pk8j.js";
|
|
11
|
+
import { a as i, i as a } from "./adopt-global-settings-BED4RRA8.js";
|
|
12
|
+
import { t as o } from "./jsx-runtime-BIqVyDF_.js";
|
|
13
|
+
import "./settings-C_UdnCV9.js";
|
|
14
|
+
import { t as s } from "./add-debug-secret-listener-DYtnArTi.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-
|
|
29
|
+
let { DebugUi: n } = await import("./debug-ui-ZzOpVpEz.js"), { createRoot: i } = await import("./client-Cttq4oY1.js").then((t) => /* @__PURE__ */ e(t.default, 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.
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.15.0" };
|
|
5
5
|
var t = new e.Error().stack;
|
|
6
6
|
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "a7e05aea-745e-4a4b-ba82-432527d9c312", e._sentryDebugIdIdentifier = "sentry-dbid-a7e05aea-745e-4a4b-ba82-432527d9c312");
|
|
7
7
|
} catch {}
|
|
8
8
|
})();
|
|
9
|
-
import { r as e } from "./rolldown-runtime-
|
|
10
|
-
import { t } from "./react-
|
|
11
|
-
import { c as n } from "./store-
|
|
9
|
+
import { r as e } from "./rolldown-runtime-CCOBdLcF.js";
|
|
10
|
+
import { t } from "./react-4YK9tuu5.js";
|
|
11
|
+
import { c as n } from "./store-ye6iGYGq.js";
|
|
12
12
|
//#region src/utils/getRenderTargetFromRoot.ts
|
|
13
13
|
var r = /* @__PURE__ */ e(t(), 1);
|
|
14
14
|
function i(e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o,jsxs as
|
|
1
|
+
import{jsx as o,jsxs as D}from"react/jsx-runtime";import"../styles/main.scss";import"./Layout.scss";import x from"classnames";import{observer as R}from"mobx-react-lite";import i,{Suspense as a,useEffect as B,useState as v}from"react";import t,{layersStore as c,uiState as e}from"../store";import{LayersMode as k}from"../store/LayerStore";import{checkUserIsGDPR as L,GaEventActions as m,hasUserConsent as G,sendEventToGa as n,setConsentSettings as S,setCookieConsent as C}from"../tools/gtag";import T from"../tools/settings";import F from"../tools/track-event";import j from"../ui/Spinner";import{isWebGlSupported as A}from"../utils";import{t as I}from"../utils/i18n";import P from"../utils/is-debug";import{useReaction as l}from"../utils/mobx";import{CategoryFilterModal as V}from"./CategoryFilterModal";import H from"./ErrorBoundary";import $ from"./GlobalErrorMessage";import K from"./HeatmapLegendContainer";import N from"./IntercomLauncher";import _ from"./LevelSelectorContainer";import U from"./LogoOverlay";import W from"./Map/Map";import q from"./MapControlsContainer";import X from"./MobileToggleButtonContainer";import Y from"./OverlayContainer";import J from"./SearchBox";import Q from"./SearchButtons/SearchButtons";import Z from"./SessionsFiltersModal";import ee from"./ShareContainer";import oe from"./SpeakersFiltersModal";import te from"./Ws";const re=i.lazy(()=>import("./Demo")),ie=i.lazy(()=>import("./Free")),ae=i.lazy(()=>import("./Debug")),ne=i.lazy(()=>import("./Maplibre/MaplibreAdapter")),le=i.lazy(()=>import("./ModalContainer")),se=i.lazy(()=>import("./CookieConsent")),me=i.lazy(()=>import("./GpsLoader")),de=i.lazy(()=>import("./Kiosk/SetKioskMode")),pe=i.lazy(()=>import("./Kiosk/ShowKiosk"));export default R(function({offHistory:b,consent:d}){const[f,p]=v(!1),[w,z]=v(!1),u=t.maplibreStore.showMaplibre,M=e.searchButtonsOverride!==!1&&(!e.noOverlay||e.overlayOnDemand),O=!e.noOverlay||e.overlayOnDemand&&(w||e.isOverlayOpen);let s=null;e.bannerType==="demo"?s=o(re,{}):e.bannerType==="free"&&(s=o(ie,{}));const g=()=>{C(!0),S(),t.uiState.hideCookieConsent=!0},E=()=>{C(!1),S(),t.uiState.hideCookieConsent=!0};B(()=>{async function r(){const h=await L();p(!!(h||h===null))}G(d)?p(!0):r()},[]),l(()=>e.isOverlayOpen,r=>r&&z(!0)),l(()=>e.selectedExhibitor,r=>{t.heatmapStore.forceTrack?(n(t.heatmapStore.forceTrack.action,t.heatmapStore.forceTrack.label),t.heatmapStore.forceTrack=null):r&&(F("exview",r.id),n(m.ViewExhibitor,r.name))}),l(()=>e.selectedBooth,r=>r?.name&&n(m.ViewBooth,r.name)),l(()=>e.selectedCategory,r=>r?.name&&n(m.ViewCategory,r?.name)),l(()=>e.selectedEventItem,r=>r?.name&&n(m.ViewExhibitor,r.name));const y=!e.hideCookieConsent&&!e.kiosk&&f&&d==="ask";return o("div",{id:"efp-layout",className:x("layout",{"efp-kiosk":e.kiosk,"efp-kiosk-route-active":e.kiosk&&e.selectedRoute?.from&&e.selectedRoute?.to,"efp-layers-mode":t.layerStore.mode,"efp-ws-mode":e.wsShown,"efp-no-overlay":e.overlayHiddenNow,"efp-overlay-on-demand":e.overlayOnDemand,"efp-top-banner":e.bannerType==="free"&&!e.freeBannerDismissed,"efp-viewer-mode":e.viewerMode}),dir:e.rtl?"rtl":"ltr",style:{"--ui-scale":e.uiScale.toString()},children:D("div",{className:`layout__fixed expo-${T.EXPO} overlay-${t.uiState.overlayPosition}`,children:[(c.mode===k.Radio||c.mode===k.CheckBox)&&!e.floorsControlHidden&&t.initialized&&o(_,{}),O&&t.initialized&&o(Y,{isGDPR:f,consent:d}),t.initialized&&o(U,{}),(!e.noOverlay||e.overlayOnDemand&&e.isOverlayOpen)&&t.initialized&&!(e.viewerMode&&e.menu)&&o(J,{}),M&&t.initialized&&o(Q,{}),!e.noOverlay&&t.initialized&&o(X,{}),!e.mapControlsHidden&&t.initialized&&o(q,{}),o(N,{}),!e.hideHeaderLogo&&t.initialized&&o(te,{}),t.routeStore.gpsEnabled&&o(me,{requestCompassAllowed:!y}),A&&!u&&o(W,{}),u&&o(H,{children:o(a,{fallback:o("div",{}),children:o(ne,{viewMode:t.maplibreStore.mapViewMode})})}),s&&!e.hideFreeOrDemo&&!e.heatmap?o(a,{fallback:null,children:s}):null,y&&o(a,{fallback:null,children:o(se,{link:"https://expofp.com/pages/viewer-cookie-consent",onAccept:g,onReject:E})}),P?o(a,{fallback:null,children:o(ae,{})}):null,e.modalActive.share?o(a,{fallback:null,children:o(le,{variant:"share",ariaLabel:I("Share"),open:e.modalActive.share,onClose:()=>t.toggleModal("share"),children:o(ee,{title:e.selectedExhibitor?.name||e.selectedEventItem?.name||"",url:b?`${window.location.origin}?${encodeURI(e.selectedExhibitor?.slug||e.selectedEventItem?.slug)}`:window.location.href})})}):null,e.heatmap||e.heatmapYah?o(K,{style:{left:`calc(50% + ${t.uiState.mapVisibleStart/2}px)`},className:e.responsiveClass}):null,o(j,{active:!c.layersLoaded}),o("div",{id:"fps"}),t.initialized&&o(V,{}),t.initialized&&o(Z,{store:t.sessionsFilterStore}),t.initialized&&o(oe,{store:t.speakerFilterStore}),o($,{}),t.initialized&&e.setKioskModeEnabled&&o(a,{fallback:null,children:o(de,{})}),t.initialized&&!e.setKioskModeEnabled&&o(a,{fallback:null,children:o(pe,{})})]})})});
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type Map as MaplibreMap } from 'maplibre-gl';
|
|
2
|
-
import { type MapOptions, type TileSourceConfig } from '../MaplibreWrapper';
|
|
3
|
-
export declare const
|
|
2
|
+
import { type MapOptions, type TileSourceConfig } from '../MaplibreWrapper.js';
|
|
3
|
+
export declare const LIGHT_TILE_SOURCE: TileSourceConfig;
|
|
4
|
+
export declare const DARK_TILE_SOURCE: TileSourceConfig;
|
|
4
5
|
export declare const DEFAULT_MAP_OPTIONS: MapOptions;
|
|
5
6
|
export declare const MAP_2D_OPTIONS: MapOptions;
|
|
6
7
|
export declare function applyMapDimValue(map: MaplibreMap | null, value: number): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import u from"../../../store";import{MAP_DIM_LAYER_ID as
|
|
1
|
+
import{fpGeo as u}from"../../../data/fpGeo.js";import a from"../../../store/index.js";import m from"../../../tools/settings.js";import{MAP_DIM_LAYER_ID as s}from"../MaplibreWrapper.js";import{resolveMapTheme as f}from"./map-theme.js";export const LIGHT_TILE_SOURCE={style:"https://basemaps.cartocdn.com/gl/positron-gl-style/style.json"},DARK_TILE_SOURCE={style:"https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json"};const c=12;export const DEFAULT_MAP_OPTIONS={pitch:30,maxPitch:70,minZoom:c},MAP_2D_OPTIONS={pitch:0,maxPitch:0,minZoom:c};export function applyMapDimValue(t,e){t?.getLayer(s)&&(t.setPaintProperty(s,"fill-opacity",p(e)),t.triggerRepaint())}function p(t){return Math.min(Math.max(t,0),1)}export function applyMapOptions(t,e,n=!1){if(!t)return;t.setMinZoom(e.minZoom??null),t.setMaxZoom(e.maxZoom??null),t.setMaxBounds(e.maxBounds??null);const o=e.pitch,r=e.maxPitch,l=t.getPitch(),i=!!(n&&o!=null&&r!=null&&r<l);r!=null&&!i&&t.setMaxPitch(e.maxPitch),!(o==null||l===o)&&(n?(t.easeTo({pitch:o,duration:300}),i&&t.once("moveend",()=>t.setMaxPitch(r))):t.jumpTo({pitch:o}))}export function getTileSource(){const t=a.fp?.maplibre??window.__efpMaplibre;return t?.style?{style:t.style}:t?.styleUrl?{style:t.styleUrl}:f(u?.properties?.config?.style,m.backgroundColor)==="dark"?DARK_TILE_SOURCE:LIGHT_TILE_SOURCE}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type MapTheme } from '@expofp/schema';
|
|
2
|
+
/**
|
|
3
|
+
* The palette implied by the drawing's background color — the fallback for
|
|
4
|
+
* drawings that predate `__fpGeo.properties.config.style`.
|
|
5
|
+
*
|
|
6
|
+
* `'none'` is a real authored value (the plan asks for no background at all)
|
|
7
|
+
* and is not a parseable color, so it and anything else unparseable resolve to
|
|
8
|
+
* the light palette the SDK has always used.
|
|
9
|
+
*
|
|
10
|
+
* Inferring a palette from a background color is a guess — the two are separate
|
|
11
|
+
* decisions, and a plan may legitimately want a dark surround without a dark
|
|
12
|
+
* basemap. The Designer's explicit geo config avoids that ambiguity.
|
|
13
|
+
*/
|
|
14
|
+
export declare function deriveMapThemeFromBackground(backgroundColor: string | undefined): MapTheme;
|
|
15
|
+
/**
|
|
16
|
+
* Resolve the basemap palette: the one the drawing declares in its geo config,
|
|
17
|
+
* else the one its background color implies.
|
|
18
|
+
*/
|
|
19
|
+
export declare function resolveMapTheme(drawingTheme: MapTheme | undefined, backgroundColor: string | undefined): MapTheme;
|
|
20
|
+
//# sourceMappingURL=map-theme.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"color";const n=50;function i(t){return t==="light"||t==="dark"}export function deriveMapThemeFromBackground(t){if(!t||t==="none")return"light";try{return e(t).lightness()<n?"dark":"light"}catch{return"light"}}export function resolveMapTheme(t,r){return i(t)?t:deriveMapThemeFromBackground(r)}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import './SearchButtons.scss';
|
|
2
|
-
|
|
3
|
-
declare const SearchButtons: React.FunctionComponent<object>;
|
|
2
|
+
declare const SearchButtons: import("react").FunctionComponent<object>;
|
|
4
3
|
export default SearchButtons;
|
|
5
4
|
//# sourceMappingURL=SearchButtons.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r,jsxs as a}from"react/jsx-runtime";import"./SearchButtons.scss";import i from"classnames";import{observer as l}from"mobx-react-lite";import{useMemo as n}from"react";import m from"../../data";import e from"../../store";import{t as u}from"../../utils/i18n";import
|
|
1
|
+
import{jsx as r,jsxs as a}from"react/jsx-runtime";import"./SearchButtons.scss";import i from"classnames";import{observer as l}from"mobx-react-lite";import{useMemo as n}from"react";import m from"../../data";import e from"../../store";import{t as u}from"../../utils/i18n";import p from"../ScrollableRowContainer";import f from"./SearchButton";import d from"./SearchSubButtons";const c=l(()=>{const{searchButtonsStore:t}=e,s=n(()=>t.searchButtons.filter(o=>o.enabled),[t.searchButtons]);return t.shouldShow?a("div",{className:i("efp-search-buttons",{"is-overlay-full":e.uiState.isOverlayOpen&&e.uiState.overlaySize==="full","is-long-levels":!m.shortLevelName,"is-standalone":e.uiState.overlayOnDemand&&!e.uiState.isOverlayOpen,"efp-semi-transparent":e.uiState.setKioskModeEnabled}),children:[r(p,{ariaLabel:u("Search filters"),scrollAmount:150,showArrowsOnMobile:!1,arrowPosition:"inside",children:s.map(o=>r(f,{...o,isDisabled:e.uiState.setKioskModeEnabled},o.id))}),t.subButtonsEnabled&&r(d,{})]}):null});export default c;
|
package/dist/esm/data/fpGeo.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type MapTheme } from '@expofp/schema';
|
|
2
2
|
interface ImageData {
|
|
3
3
|
layer: string;
|
|
4
4
|
data: string;
|
|
5
|
-
points: [][];
|
|
5
|
+
points: unknown[][];
|
|
6
6
|
}
|
|
7
7
|
interface GeoAnchorPoint {
|
|
8
8
|
x: number;
|
|
@@ -17,15 +17,22 @@ interface FpGeoProperties {
|
|
|
17
17
|
p2: GeoAnchorPoint;
|
|
18
18
|
bearing?: number;
|
|
19
19
|
snapThreshold?: number;
|
|
20
|
+
/** Basemap palette the Designer authored the drawing for. */
|
|
21
|
+
style?: MapTheme;
|
|
20
22
|
};
|
|
21
23
|
mpViewbox?: number[];
|
|
22
24
|
useMaplibre?: boolean;
|
|
23
25
|
[key: string]: unknown;
|
|
24
26
|
}
|
|
25
|
-
|
|
27
|
+
/**
|
|
28
|
+
* `__fpGeo` as the SDK reads it: the georeferencing extension of a GeoJSON
|
|
29
|
+
* FeatureCollection. Only `properties` and `images` are consumed here — the
|
|
30
|
+
* FeatureCollection part (`type`, `features`) passes through untyped.
|
|
31
|
+
*/
|
|
32
|
+
interface ExtendFeatureCollection {
|
|
26
33
|
properties: FpGeoProperties;
|
|
27
34
|
images: ImageData[];
|
|
28
35
|
}
|
|
29
|
-
export declare const fpGeo: ExtendFeatureCollection;
|
|
36
|
+
export declare const fpGeo: ExtendFeatureCollection | undefined;
|
|
30
37
|
export {};
|
|
31
38
|
//# sourceMappingURL=fpGeo.d.ts.map
|
package/dist/esm/data/fpGeo.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{getFpSvgJs as o}from"./fp-payloads";export const fpGeo=o().__fpGeo;
|
|
1
|
+
import{getFpSvgJs as o}from"./fp-payloads.js";export const fpGeo=o().__fpGeo;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { AutocompleteOptionObject } from '../ui/Autocomplete';
|
|
1
2
|
import { Booth } from './BoothStore';
|
|
2
3
|
import { EventItem } from './EventStore';
|
|
3
4
|
import { Exhibitor } from './ExhibitorStore';
|
|
@@ -18,10 +19,7 @@ export default class RoutePlannerStore {
|
|
|
18
19
|
get resolvedBooths(): Booth[];
|
|
19
20
|
get stopsCount(): number;
|
|
20
21
|
get startPointBoothOptions(): Booth[];
|
|
21
|
-
get startPointAutocompleteOptions():
|
|
22
|
-
value: string;
|
|
23
|
-
label: string;
|
|
24
|
-
}[];
|
|
22
|
+
get startPointAutocompleteOptions(): AutocompleteOptionObject[];
|
|
25
23
|
get title(): string;
|
|
26
24
|
get subtitleParts(): {
|
|
27
25
|
stops: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as u}from"tslib";import{action as a,computed as c,observable as y}from"mobx";import{t as m}from"../utils/i18n";import{findBooth as b,Route as g}from"./RouteStore";export default class n{constructor(t){this.items=[],this.startPoint=null,this.source=null,this.excludedVisitedCount=0,this.rootStore=t}get resolvedBooths(){const t=new Map;return this.startPoint&&t.set(this.startPoint.id,this.startPoint),this.items.forEach(o=>{o.booth&&t.set(o.booth.id,o.booth)}),Array.from(t.values())}get stopsCount(){return this.items.length}get startPointBoothOptions(){return this.rootStore.boothStore.booths}get startPointAutocompleteOptions(){const{exhibitorStore:t}=this.rootStore,o=this.startPointBoothOptions,r=[],i=new Set;return t.exhibitors.forEach(e=>{e.booths.forEach(l=>{i.add(l.id),r.push({value:l.id.toString(),label:`${e.name} - ${l.name}
|
|
1
|
+
import{__decorate as u}from"tslib";import{action as a,computed as c,observable as y}from"mobx";import{t as m}from"../utils/i18n";import{findBooth as b,Route as g}from"./RouteStore";export default class n{constructor(t){this.items=[],this.startPoint=null,this.source=null,this.excludedVisitedCount=0,this.rootStore=t}get resolvedBooths(){const t=new Map;return this.startPoint&&t.set(this.startPoint.id,this.startPoint),this.items.forEach(o=>{o.booth&&t.set(o.booth.id,o.booth)}),Array.from(t.values())}get stopsCount(){return this.items.length}get startPointBoothOptions(){return this.rootStore.boothStore.booths}get startPointAutocompleteOptions(){const{exhibitorStore:t}=this.rootStore,o=this.startPointBoothOptions,r=[],i=new Set;return t.exhibitors.forEach(e=>{e.booths.forEach(l=>{i.add(l.id),r.push({value:l.id.toString(),label:`${e.name} - ${l.name}`,exhibitorId:e.id})})}),o.filter(e=>!i.has(e.id)).forEach(e=>{r.push({value:e.id.toString(),label:e.name})}),r.sort((e,l)=>e.label.localeCompare(l.label,void 0,{sensitivity:"base"}))}get title(){return this.source==="bookmarks"?m("Bookmarks route"):""}get subtitleParts(){const{routeInfo:t}=this.rootStore.routeStore;let o;if(t?.time){const r=t.time;o=r<60?m("< 1 min"):m("~ {{n}} min",{n:Math.round(r/60)})}return{stops:m("{{count}} stops",{count:this.stopsCount}),from:this.startPoint?m("From {{name}}",{name:this.startPoint.name}):void 0,distance:t?t.distance:void 0,travelTime:o}}get routeFloors(){const t=this.rootStore.routeStore.pathLayers;return t.map((o,r)=>{const i=t[r+1],s=o.layer?.basePriority??0,e=i?.layer?.basePriority??0,l=i?e<s?"up":"down":void 0;return{id:o.id,name:o.layer?.shortName,description:o.layer?.description,directionToNext:l}})}get currentRouteFloor(){const t=this.routeFloors,o=this.rootStore.routeStore.currentRouteLayer;if(!t.length)return;if(!o)return t[0]?{id:t[0].id,name:t[0].name}:void 0;const r=t.find(i=>i.description?.toLowerCase()===o.description?.toLowerCase());return r?{id:r.id,name:r.name}:{id:t[0].id,name:t[0].name}}setRouteFloor(t){const o=this.rootStore.routeStore.pathLayers.find(r=>r.id===t.id);o?.layer&&this.rootStore.layerStore.updateVisibility(o.layer,!0)}launch(t,o="custom",r){this.excludedVisitedCount=t.filter(s=>s.type==="exhibitor"&&s.entity.visited).length,this.items=t.filter(s=>s.type==="exhibitor"?!s.entity.visited:!0),this.source=o,this.startPoint=r!==void 0?r:this.detectStartPoint();const{uiState:i}=this.rootStore;i.list={type:"route-planner",source:o},i.details=null,i.menu=!1,this.buildRoute()}launchFromBookmarks(t){const{exhibitorStore:o,eventStore:r,boothStore:i}=this.rootStore,s=[];o.bookmarked.forEach(e=>{s.push({type:"exhibitor",entity:e,booth:e.booths[0]||null})}),i.booths.filter(e=>e.exhibitors.length===0&&e.bookmarkedDirectly).forEach(e=>{s.push({type:"booth",entity:e,booth:e})}),this.launch(s,"bookmarks",t)}launchFromSlugs(t,o){const r=this.resolveSlugs(t);this.launch(r,"custom",o)}resolveSlugs(t){const{exhibitorStore:o,eventStore:r,boothStore:i}=this.rootStore;return t.filter(Boolean).map(s=>{const e=s.toLowerCase(),l=o.exhibitors.find(d=>d.slug?.toLowerCase()===e||d.externalId?.toLowerCase()===e);if(l)return{type:"exhibitor",entity:l,booth:l.booths[0]||null};const p=b(s);return p?{type:"booth",entity:p,booth:p}:null}).filter(s=>s!==null)}buildRoute(){const t=[];if(this.startPoint&&this.startPoint.name&&t.push(this.startPoint.name),this.items.forEach(h=>{h.booth&&h.booth.name&&t.push(h.booth.name)}),t.length<2){this.rootStore.routeStore.updateRoute([]);return}let o;try{const h=this.rootStore.fp?.getOptimizedRoutes?.(t);o=Array.isArray(h)?h.flatMap(S=>S?.waypoints??[]):[]}catch{o=[]}const r=new Set(t),i=new Set(o),s=t.length>0&&[...r].every(h=>i.has(h));(!o.length||!s)&&(o=t.slice()),this.reorderItemsByNames(o);const e=this.resolvedBooths;if(e.length<2){this.rootStore.routeStore.updateRoute([]);return}const l=e[0],p=e[e.length-1],d=e.slice(1,-1),f=new g(l,p,d);this.rootStore.routeStore.selectRoute(f,!1),this.rootStore.uiState.setIsMultiPointRoute(d.length>0)}reorderItemsByNames(t){const o=this.startPoint?this.startPoint.name:null,r=new Map;this.items.forEach(s=>{const e=s.booth?s.booth.name:null;e&&(r.has(e)||r.set(e,[]),r.get(e).push(s))});const i=[];t.forEach(s=>{if(s!==o){const e=r.get(s);e&&e.length>0&&i.push(...e.splice(0))}}),this.items=i}detectStartPoint(){const{boothStore:t,poiTypeStore:o}=this.rootStore,r=["entrance","entrances"],i=o.poiTypes.find(s=>r.includes(s.name.toLowerCase()));return i&&t.booths.find(s=>s.poiTypeId===i.id)||null}setStartPoint(t){this.startPoint=t,this.buildRoute()}removeItem(t){this.items.splice(t,1),this.buildRoute()}reorderItems(t,o){const[r]=this.items.splice(t,1);this.items.splice(o,0,r),this.buildRoute()}close(){this.items=[],this.startPoint=null,this.source=null,this.excludedVisitedCount=0,this.rootStore.uiState.details=null,this.rootStore.uiState.list={type:"search",text:"",focused:!1},this.rootStore.routeStore.selectRoute(null,!1)}}u([y],n.prototype,"items",void 0),u([y],n.prototype,"startPoint",void 0),u([y],n.prototype,"source",void 0),u([y],n.prototype,"excludedVisitedCount",void 0),u([c],n.prototype,"resolvedBooths",null),u([c],n.prototype,"stopsCount",null),u([c],n.prototype,"startPointBoothOptions",null),u([c],n.prototype,"startPointAutocompleteOptions",null),u([c],n.prototype,"title",null),u([c],n.prototype,"subtitleParts",null),u([c],n.prototype,"routeFloors",null),u([c],n.prototype,"currentRouteFloor",null),u([a],n.prototype,"setRouteFloor",null),u([a],n.prototype,"launch",null),u([a],n.prototype,"launchFromBookmarks",null),u([a],n.prototype,"launchFromSlugs",null),u([a],n.prototype,"buildRoute",null),u([a],n.prototype,"setStartPoint",null),u([a],n.prototype,"removeItem",null),u([a],n.prototype,"reorderItems",null),u([a],n.prototype,"close",null);
|
|
@@ -59,6 +59,7 @@ export default class UIState {
|
|
|
59
59
|
};
|
|
60
60
|
galleryActive: boolean;
|
|
61
61
|
hideOverlay: boolean;
|
|
62
|
+
searchButtonsOverride: boolean | null;
|
|
62
63
|
hideCookieConsent: boolean;
|
|
63
64
|
hideHeaderLogo: boolean;
|
|
64
65
|
hideLogoInBooth: boolean;
|
|
@@ -124,6 +125,8 @@ export default class UIState {
|
|
|
124
125
|
constructor(rootStore: RootStore);
|
|
125
126
|
get rtl(): boolean;
|
|
126
127
|
get noOverlay(): boolean;
|
|
128
|
+
get overlayOnDemand(): boolean;
|
|
129
|
+
get overlayHiddenNow(): boolean;
|
|
127
130
|
get onBoothClick(): (e: FloorPlanBoothClickEvent) => void;
|
|
128
131
|
get onMarkerClick(): (e: import("..").FloorPlanMarkerEvent) => void;
|
|
129
132
|
get onBookmarkClick(): (e: FloorPlanBookmarkClickEvent) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate as e}from"tslib";import{Box as it}from"@expofp/geometry";import{action as u,computed as n,observable as a}from"mobx";import{setKioskUrlParams as st}from"../components/Kiosk/kioskUrlParam";import{LANGUAGE_TYPE as E,LEGACY_PREVIEW_MODE_STORAGE_KEY as rt,LEGACY_UI_SCALE_STORAGE_KEY as U,LEGACY_VIEWER_MODE_STORAGE_KEY as lt,MOBILE_BREAKPOINT as at,PREVIEW_MODE_STORAGE_KEY as nt,UI_SCALE_STORAGE_KEY as N,VIEWER_MODE_STORAGE_KEY as ht,VISIBILITY_STORAGE_KEY as W}from"../constants";import C from"../data";import{svgArea as H,svgAreaExplicit as ct}from"../data/svg";import{readFreeBannerDismissed as pt}from"../tools/freeBanner";import{hasUserConsent as dt}from"../tools/gtag";import{hasHtmlTags as j}from"../tools/has-html-tags";import ut from"../tools/logger";import L from"../tools/settings";import{stripHtml as X}from"../tools/strip-html";import{remsToPixels as F}from"../utils";import Z from"../utils/browser";import{getLocale as ft,getLocales as yt,t as v}from"../utils/i18n";import{isLocalStorageAvailable as k}from"../utils/localStorage";import{getResponsiveClass as mt}from"../utils/responsiveClass";import{sanitizeStr as J}from"../utils/sanitizeText";import{resolveVenueFitRect as gt}from"../utils/scene-bounds";import{uiState as P}from".";import{BoothBase as I,RegularBooth as R,SpecialBooth as _}from"./BoothStore";import{EventItem as O}from"./EventStore";import{Exhibitor as x}from"./ExhibitorStore";import{findEntityByExternalId as St,Route as T}from"./RouteStore";import{SpeakerItem as V}from"./SpeakerStore";const vt=["dimensions25"];export default class t{setSelectedCategoryFilters(o){this.selectedCategoryFilters=o}resetCategoryFilter(){this.selectedCategoryFilters=[],this.categoryFilterOpen=!1}setSearchClearMode(o){this.searchClearMode=o}setRouteTitle(o){this.routeTitle=o}setRouteDescription(o){this.routeDescription=o}setIsMultiPointRoute(o){this.isMultiPointRoute=o}setTourTitle(o){this.tourTitle=o}setTourDescription(o){this.tourDescription=o}setIsMultiPointTour(o){this.isMultiPointTour=o}setPathwayOnlyMode(o){this.pathwayOnlyMode=o}setMultiPointTourList(o){this.list={type:"multi-point-tour",tourId:o}}get activePathwayLayers(){return this.list?.type==="multi-point-tour"?this.rootStore.toursStore.getTourById(this.list.tourId)?.layers?.map(r=>r.id)||[]:[]}get highlightedBooths(){const o=new Set(this.rootStore.exhibitorStore.highlightedByExternalIds),r=new Set(this.rootStore.boothStore.highlightedByExternalIds),s=new Set([this.rootStore.exhibitorStore.exhibitors.filter(i=>o.has(i.externalId)).flatMap(i=>i.booths.filter(l=>l instanceof R)).map(i=>i.id.toString()),this.rootStore.boothStore.booths.filter(i=>r.has(i.externalId)).map(i=>i.id.toString())].flat());if(this.list?.type==="search"&&this.list?.text?.trim().length){s.clear();const i=this.fuzzySearchItems.filter(l=>l.score===0).map(l=>l.item);i.length?D(i,this.rootStore.boothStore.booths,this.rootStore.eventStore.eventItems).forEach(l=>s.add(l.id.toString())):this.listBooths.forEach(l=>s.add(l.id.toString()))}if(this.list?.type==="filter"&&(s.clear(),this.list.items.flatMap(i=>i.booths.filter(l=>l instanceof R)).forEach(i=>s.add(i.id.toString()))),this.categoryFilterOpen&&this.selectedCategoryFilters.length>0?(s.clear(),this.selectedCategoryFilters.forEach(i=>{i.exhibitors.flatMap(l=>l.booths).forEach(l=>s.add(l.id.toString()))})):this.list?.type==="category"&&(s.clear(),this.list.category.exhibitors.flatMap(i=>i.booths).forEach(i=>s.add(i.id.toString()))),this.list?.type==="bookmarks"&&(s.clear(),D(this.listItems,this.rootStore.boothStore.booths,this.rootStore.eventStore.eventItems).forEach(i=>s.add(i.id.toString()))),this.list?.type==="visited"&&(s.clear(),D(this.listItems,this.rootStore.boothStore.booths,this.rootStore.eventStore.eventItems).forEach(i=>s.add(i.id.toString()))),this.list?.type==="exhibitors"){s.clear();const i=this.list.text?.toLowerCase().trim();let l=this.rootStore.exhibitorStore.exhibitors;i&&(l=l.filter(d=>d.name.toLowerCase().includes(i))),l.flatMap(d=>d.booths.filter(f=>f instanceof R)).forEach(d=>s.add(d.id.toString()))}if(this.selectedPoiTypeFilters.length>0&&(s.clear(),this.selectedPoiTypeFilters.forEach(i=>{this.rootStore.boothStore.booths.filter(l=>l.poiTypeId===i.id).forEach(l=>s.add(l.id.toString()))})),this.details instanceof T&&(s.clear(),this.details.from instanceof I&&s.add(this.details.from.id.toString()),this.details.to instanceof I&&s.add(this.details.to.id.toString()),this.details.waypoints?.forEach(i=>s.add(i.id.toString()))),this.details instanceof I&&(s.clear(),s.add(this.details.id.toString())),this.details instanceof x&&(s.clear(),this.details.booths.filter(i=>i instanceof R).forEach(i=>s.add(i.id.toString()))),this.details instanceof O){const i=this.details;if(i.boothId){s.clear();const l=this.rootStore.boothStore.booths.find(d=>d.id===i.boothId);l&&s.add(l.id.toString())}}return s.delete(void 0),s.delete(null),s}constructor(o){this.interfaceMetadata=Object.freeze([{id:"menu",className:"efp-overlay-menu",priority:80,isActive:()=>this.menu,searchBoxConfig:()=>({mode:"interface",title:v("Menu")})},{id:"exhibitor",className:"efp-overlay-exhibitor",priority:70,isActive:()=>this.details instanceof x,searchBoxConfig:()=>({mode:"details",title:this.details.name})},{id:"booth",className:"efp-overlay-booth",priority:70,isActive:()=>this.details instanceof I,searchBoxConfig:()=>{const r=this.details;return{mode:"details",title:r.title||r.name}}},{id:"event",className:"efp-overlay-event",priority:70,isActive:()=>this.details instanceof O,searchBoxConfig:()=>({mode:"details",title:this.details.name})},{id:"route",className:"efp-overlay-route",priority:70,isActive:()=>this.details instanceof T,searchBoxConfig:()=>{const r=this.details;return{mode:"details",title:v("Directions")}}},{id:"search",className:"efp-overlay-search",priority:60,isActive:()=>!this.details&&!this.menu&&this.list.type==="search"&&(this.rootStore.fp.alwaysShowSidebar||this.heatmap||this.searchFocused||this.list.text.length>0||this.searchClearMode),searchBoxConfig:()=>({mode:"search",title:v("Search")})},{id:"exhibitors",className:"efp-overlay-exhibitors",priority:50,isActive:()=>this.list.type==="exhibitors"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Exhibitors")})},{id:"filter",className:"efp-overlay-filter",priority:50,isActive:()=>this.list.type==="filter"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Filter")})},{id:"bookmarks",className:"efp-overlay-bookmarks",priority:50,isActive:()=>this.list.type==="bookmarks"&&!this.details,searchBoxConfig:()=>({mode:"interface",title:v("Bookmarks"),badge:this.rootStore.bookmarksStore.total})},{id:"visited",className:"efp-overlay-visited",priority:50,isActive:()=>this.list.type==="visited"&&!this.details,searchBoxConfig:()=>({mode:"interface",title:v("Visited"),badge:this.rootStore.exhibitorStore.visited.length})},{id:E,className:"efp-overlay-language",priority:50,isActive:()=>this.list.type===E,searchBoxConfig:()=>({mode:"interface",title:v("Language")})},{id:"category",className:"efp-overlay-category",priority:50,isActive:()=>!P.menu&&!!P.selectedCategory,searchBoxConfig:()=>({mode:"interface",title:this.list.type==="category"&&this.list.category?.name||v("Categories")})},{id:"sessions",className:"efp-overlay-sessions",priority:50,isActive:()=>this.list.type==="sessions"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Sessions"),subtitle:this.selectedTrack?this.selectedTrack.name:void 0})},{id:"speakers",className:"efp-overlay-speakers",priority:50,isActive:()=>this.list.type==="speakers"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Speakers")})},{id:"speaker",className:"efp-overlay-speaker",priority:50,isActive:()=>this.details instanceof V,searchBoxConfig:()=>({mode:"details",title:this.details.name})},{id:"tours",className:"efp-overlay-tours",priority:50,isActive:()=>this.list.type==="tours"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Guided Tours")})},{id:"multi-point-wayfinding",className:"efp-overlay-multi-point",priority:75,isActive:()=>!!(this.isMultiPointRoute&&this.selectedRoute&&this.list.type!=="route-planner"),searchBoxConfig:()=>({mode:"interface",title:this.routeTitle||v("Multi-point route")})},{id:"multi-point-tour",className:"efp-overlay-multi-point-tour",priority:75,isActive:()=>this.list.type==="multi-point-tour"&&!this.details,searchBoxConfig:()=>({mode:"interface",title:this.tourTitle||v("Multi-point route")})},{id:"route-planner",className:"efp-overlay-route-planner",priority:76,isActive:()=>this.list.type==="route-planner"&&(!this.details||this.details instanceof T),searchBoxConfig:()=>({mode:"interface",title:v("Route planner")})}].sort((r,s)=>s.priority-r.priority)),this.list={type:"search",text:"",focused:!1},this.details=null,this.hoveredExhibitor=null,this.hoveredBooth=null,this.zoomBy=null,this.rollReset=!1,this.moveToBooths=null,this.moveToRect=null,this.moveToLocation=!1,this.menu=!1,this.searchFocused=!1,this.searchClearMode=!1,this.printingPdf=!1,this.overlayShowsAll=!1,this.centerMap=!1,this.zoomAfTransformK=1,this.activeListIndex=-1,this.devicePixelRatio=window.devicePixelRatio,this.previewExhibitor=null,this.wsStarted=!1,this.canvasStarted=!1,this.kiosk=!1,this.inIdle=!1,this.modalActive={share:!1},this.galleryActive=!1,this.hideOverlay=!1,this.hideCookieConsent=!!dt(),this.hideHeaderLogo=!1,this.hideLogoInBooth=!1,this.disableBookmarked=!1,this.hideLanguage=!1,this.monochrome=!1,this.heatmap=!1,this.heatmapYah=!1,this.debugCircles=[],this.mapControlsHidden=!1,this.floorsControlHidden=!1,this.hideFreeOrDemo=!1,this.freeBannerDismissed=pt(sessionStorage),this.currentBanner=null,this.sceneDefReady=!1,this.categoryFilterOpen=!1,this.selectedCategoryFilters=[],this.selectedPoiTypeFilters=[],this.selectedTrack=null,this.subButtonsVisible=!1,this.searchBoxMode="search",this.searchBoxTitle="",this.isMultiPointRoute=!1,this.isMultiPointTour=!1,this.pathwayOnlyMode=!1,this.isOverlayScrolled=!1,this.listScrollTop=0,this.listScrollItemId=null,this.listScrollIndex=0,this.scrollPositions=new Map,this.scrollItemIds=new Map,this._customUIScale=null,this.searchFilterHeightPx=54,this.searchInputHeightPx=54,this.overlayUISizePx=390,this.overlayKioskSizePx=450,this.overlayMediumHeightRems=10,this.forceDim=!1,this.mapSettings={...this.defaultMapSettings},this.forceShowDetails=!1,this.buildRoute=!1,this.globalErrorMessages=[],this.minUIScale=.8,this.maxUIScale=1.4,this.setKioskModeEnabled=!1,this.rootStore=o,this.initializeUIScale()}get rtl(){const o=ft();return o==="ar"||o==="he"}get noOverlay(){return this.rootStore.fp.noOverlay||this.hideOverlay}get onBoothClick(){return this.rootStore.fp.onBoothClick}get onMarkerClick(){return this.rootStore.fp.onMarkerClick}get onBookmarkClick(){return this.rootStore.fp.onBookmarkClick}get onVisitedClick(){return this.rootStore.fp.onVisitedClick}get onCategoryClick(){return this.rootStore.fp.onCategoryClick}get onDirection(){return this.rootStore.fp.onDirection}get onDetails(){return this.rootStore.fp.onDetails}get onExhibitorCustomButtonClick(){return this.rootStore.fp.onExhibitorCustomButtonClick}get onGetCoordsClick(){return this.rootStore.fp.onGetCoordsClick}get selectedExhibitor(){return this.details instanceof x?this.details:null}get selectedBooth(){return this.details instanceof I?this.details:null}get selectedCategory(){return this.list.type==="category"?this.list.category:null}get selectedRoute(){return this.details instanceof T?this.details:null}get selectedSpeaker(){return this.details instanceof V?this.details:null}get uiScale(){return this._customUIScale!==null?this._customUIScale:this.kiosk?1.2:1}get isGuidedToursActive(){return this.rootStore.toursStore.isActive}get getRouteNextFloor(){const o=this.rootStore.routeStore.pathLayers,r=this.rootStore.routeStore.currentRouteLayer?.name;if(!r)return null;const s=o.findIndex(c=>c.layer?.name===r);return s===-1?null:o[s+1]?.layer?.name}get headerHeightRem(){return 0}get headerHeightPx(){return F(this.headerHeightRem)}get overlayPosition(){return!this.screenSize||this.screenSize.width>at||this.kiosk?"left":"bottom"}get overlayCollapsed(){return this.kiosk&&this.overlayPosition==="left"&&!this.searchFocused&&!this.menu&&!this.details&&!this.selectedCategory&&!this.selectedExhibitor&&this.list.type!=="bookmarks"&&this.list.type!==E&&!this.list.text?.length}get overlaySize(){return this.overlayLeft?"full":this.desiredOverlaySize}get overlayBottom(){return this.overlayPosition==="bottom"}get overlayLeft(){return this.overlayPosition==="left"}get overlayWidthPx(){return this.noOverlay?0:this.overlayLeft?this.kiosk?this.overlayKioskSizePx:this.overlayUISizePx:F(this.screenSize.width)}get wsImageHeightPx(){return 44}get wsPaddingPx(){return F(.25)}get wsOccupiedHeightPx(){return this.wsShown?this.wsImageHeightPx+this.wsPaddingPx*2:0}get wsShown(){return!this.hideHeaderLogo&&this.rootStore.exhibitorStore.advertised.length>0}get wsDesktopPosition(){return L.EXPO==="cbresupplypartner"?"bottom":"top"}get wsPosition(){return this.overlayBottom?"top":this.wsDesktopPosition}get responsiveClass(){return mt(this.screenSize.width)}get mapVisibleTop(){return(this.wsPosition==="top"?this.wsOccupiedHeightPx:0)+this.headerHeightPx}get mapVisibleBottom(){return this.overlayLeft||this.noOverlay?this.wsPosition==="bottom"?this.wsOccupiedHeightPx:0:F(this.overlayMediumHeightRems)}get mapVisibleStart(){return 0}get searchActionsHeightPx(){return this.overlayPosition==="bottom"?this.searchInputHeightPx+this.searchFilterHeightPx:this.searchInputHeightPx}get fullSizeOffset(){const o=this.wsShown?54:0,r=this.bannerType==="free"&&!this.freeBannerDismissed?40:0,s=20;if(this.details&&!(this.details instanceof T))return o+r+s;const c=54,i=this.shouldShowSearchButtons?54:0;return o+r+c+s+i}get shouldShowSearchButtons(){return this.rootStore.searchButtonsStore.hasAnySearchButtons&&!this.details&&!this.menu&&![E,"filter"].includes(this.list.type)}get shouldShowMobileToggle(){const o=this.list.type==="route-planner";return this.overlayPosition==="bottom"&&(o||!this.details&&!this.menu&&this.list.type!==E&&this.list.type!=="bookmarks"&&this.list.type!=="sessions")}get mobileToggleIsListMode(){return!this.isOverlayOpen||this.overlaySize!=="full"}get canvasVisibleRectPx(){const o=this.screenSize;return it.fromMinMax({x:P.rtl?0:this.mapVisibleStart,y:this.mapVisibleTop+this.searchActionsHeightPx},{x:P.rtl?o.width-this.mapVisibleStart:o.width,y:o.height-this.mapVisibleBottom})}get shouldShiftMapRect(){return this.overlayPosition==="left"&&(this.details||this.hasAppliedFilters||this.selectedRoute)}get hasAppliedFilters(){return this.selectedCategoryFilters.length>0||this.selectedPoiTypeFilters.length>0}get canvasVisibleRectPt(){return this.canvasVisibleRectPx.scale(this.devicePixelRatio,{x:0,y:0})}get canvasSizePt(){return this.screenSize.multiply(this.devicePixelRatio)}get shouldUseBackdrop(){if(P.overlayCollapsed)return!1;if(k&&localStorage.getItem("forcebackdrop")==="1")return!0;if(this.overlayBottom||this.selectedExhibitor?.leadingImageUrl&&!this.selectedExhibitor?.leadingImageLinkUrl)return!1;const o=Z.satisfies({safari:">=13"}),r=Z.satisfies({chrome:">=77"});var s=/(android)/i.test(navigator.userAgent);return s?!1:o||r&&P.canvasSizePt.height*P.canvasSizePt.width<3e6}setForceDim(o){this.forceDim=o}get dimmed(){return this.forceDim||this.pathwayOnlyMode?!0:this.highlightedBooths.size>0||this.list?.type==="search"&&this.list?.text?.trim().length>0||this.list?.type==="exhibitors"}get defaultSearchItems(){const{exhibitorStore:o,categoryStore:r,boothStore:s,heatmapStore:c}=this.rootStore;let i=o.exhibitors;const l=r.categories.filter(y=>y.exhibitors.length),d=s.booths;this.selectedPoiTypeFilters.length>0&&(i=i.filter(y=>y.booths.some(m=>this.selectedPoiTypeFilters.some(S=>m.poiTypeId===S.id))));let f=[];const B=!this.selectedCategoryFilters.length&&C.showCategories?l.filter(y=>vt.includes(L.EXPO)?!y.name.includes("/"):!0):[],A=d.filter(y=>y instanceof _);return this.selectedCategoryFilters.length>0?f=[...i]:(C.showCompaniesAndBooths&&(f=f.concat(i)),C.showOtherSpaces&&(f=f.concat(A))),this.heatmap?[...i,...d].sort((m,S)=>c.getClicksByType(S)-c.getClicksByType(m)):this.heatmapYah?c.heatmapData?.yah?.sort((y,m)=>c.getClicksByType(m)-c.getClicksByType(y))||[]:i.length===0?d:B.concat(f.sort((y,m)=>{const S=y instanceof x&&y.featured!==void 0,w=m instanceof x&&m.featured!==void 0;if(S!==w)return S?-1:1;const M=y instanceof _&&y.title?y.title:y.name,z=m instanceof _&&m.title?m.title:m.name;return M.localeCompare(z,void 0,{sensitivity:"base",numeric:!0})}))}get searchItems(){if(this.list.type!=="search")return[];let o=this.list.text?.trim().toLowerCase()||"";const{exhibitorStore:r,categoryStore:s,boothStore:c,eventStore:i,speakerStore:l,heatmapStore:d}=this.rootStore;let f=r.exhibitors;const B=s.categories.filter(h=>h.exhibitors.length),A=c.booths,y=i.eventItems,m=l.speakers;if(this.selectedCategoryFilters.length>0&&(f=f.filter(h=>this.selectedCategoryFilters.some(p=>h.categories.some(g=>g.id===p.id)))),this.selectedPoiTypeFilters.length>0&&(f=f.filter(h=>h.booths.some(p=>this.selectedPoiTypeFilters.some(g=>p.poiTypeId===g.id)))),!o)return this.defaultSearchItems;const S=[o.replace(/&[^&=]+=[^&]+/g,"")];if(this.heatmapYah)return d.heatmapData.yah.filter(p=>Number.isNaN(Number(o))?p:p.viewCount>=Number(o)).sort((p,g)=>d.getClicksByType(g)-d.getClicksByType(p));const w=[],M=new Set,z=new Set,K=new Set,q=new Set;function Y(h){return h?h.replace(/[!@#$%^*-\.,\(\)^#$%:?_+'"\/]/g," ").replace(/\s\s+/g," "):""}function b(h,p){return!h||!p?!1:Y(h).toLowerCase().includes(Y(p).toLowerCase())}function Q(h,p){return h?b(h,p)||b(C.levelTerm+" "+h,p):!1}f.forEach(h=>{S.some(p=>b(h.name,p)||h.booths.some(g=>!p&&b(g.name,p)||Q(g.layer?.name??null,p)))&&M.add(h)}),this.selectedCategoryFilters.length>0&&A.forEach(h=>{(this.heatmap||!(h instanceof R)||!Array.from(M).find(g=>g.booths.includes(h)))&&S.some(g=>b(h.title||"",g)||b(h.name,g)||b(h.fullName,g)||Q(h.layer?.name??null,g))&&z.add(h)});const tt=y,et=m;if(tt.forEach(h=>{S.some(p=>b(h.name||"",p)||b(h.description||"",p))&&K.add(h)}),et.forEach(h=>{S.some(p=>b(h.name,p)||b(h.company,p)||b(h.jobTitle,p))&&q.add(h)}),w.push(...K),w.push(...M),this.heatmap)return w.sort((h,p)=>d.getClicksByType(p)-d.getClicksByType(h));const ot=new Map(w.map(h=>[h.id,h]));return w.map(h=>{if(!h.name)return null;const p=J(h instanceof I&&h.fullName.toLowerCase()||h.name.toLowerCase()),g=p.indexOf(J(o));if(g===-1)return null;const $={id:h.id,position:g,lowerCaseName:p,featured:!1};return h instanceof x&&($.featured=h.featured),$}).filter(Boolean).sort((h,p)=>(h.featured||p.featured)&&h.featured!==p.featured?h.featured?-1:1:h.position!==p.position?h.position-p.position:h.lowerCaseName.localeCompare(p.lowerCaseName)||String(h.id).localeCompare(String(p.id))).map(({id:h})=>ot.get(h))}get searchList(){return[...this.rootStore.eventStore.eventItems,...this.rootStore.speakerStore.speakers,...this.rootStore.categoryStore.categories.filter(o=>o.exhibitors.length),...this.rootStore.exhibitorStore.exhibitors,...this.rootStore.boothStore.booths]}get foundInDescription(){if(this.list?.type!=="search")return[];const o=this.list?.text?.trim().toLowerCase();if(!o)return[];const r=this.fuzzySearchItems.map(({item:l})=>l),s=new Set(r.map(l=>l.name)),c=this.categoryFilteredSearchList.filter(l=>!s.has(l.name)),i=[];for(const l of c){const d=l.description;if(!d)continue;const B=(j(d)?X(d):d).toLowerCase().indexOf(o);B!==-1&&i.push({item:l,pos:B})}return i.sort((l,d)=>l.pos-d.pos),i.map(l=>l.item)}get foundInDescriptionStruct(){const o={};if(this.list?.type!=="search")return o;const r=this.list?.text?.trim().toLowerCase();return this.foundInDescription.forEach(s=>{let c=s.description;if(!c)return;j(c)&&(c=X(c));const i=c.toLowerCase().indexOf(r);if(i===-1)return;const l=3,d=i>l?i-l:0,f=c.substring(d).trim();o[s.id]=i>0?`...${f}`:f}),o}get categoryFilteredSearchList(){return this.selectedCategoryFilters.length===0?this.searchList:this.searchList.filter(o=>o instanceof x&&this.selectedCategoryFilters.some(r=>o.categories.some(s=>s.id===r.id)))}get fuzzySearchItems(){if(this.list?.type!=="search")return[];const o=this.list?.text?.trim().toLowerCase();if(!o)return this.defaultSearchItems.map(i=>({item:i,score:0,matches:[]}));const r=this.rootStore.fuzzySearchEngineStore.search(this.categoryFilteredSearchList,o),s=[],c=[];for(const i of r){const l=i.item,d=l.entity.type,f=d==="booth"?l:null,B=d==="exhibitor"?l:null,A=[l.name?.toLowerCase()??"",f?.title?.toLowerCase()??"",f?.fullName?.toLowerCase()??"",...B?.booths?.map(m=>m.name?.toLowerCase()??"")??[]];let y=1/0;for(const m of A){const S=m.indexOf(o);S!==-1&&S<y&&(y=S)}y!==1/0?s.push({result:{item:l,score:0},pos:y}):c.push(i)}return s.sort((i,l)=>i.pos-l.pos),[...s.map(i=>i.result),...c]}get listItems(){if(this.details instanceof T&&this.list.type!=="multi-point-tour")return[this.details.from,this.details.to].filter(o=>o instanceof I);switch(this.list.type){case"search":let o=!(this.heatmap||this.heatmapYah)&&this.rootStore.fuzzySearchEngineStore.engine?this.fuzzySearchItems.map(({item:i})=>i).concat(this.foundInDescription):this.searchItems;return o=o.filter(i=>i.entity.type==="booth"?!i.exhibitors.length:!0),this.hasAppliedFilters?o.filter(i=>{if(this.selectedCategoryFilters.length>0&&i instanceof x&&!this.selectedCategoryFilters.some(l=>i.categories.some(d=>d.id===l.id)))return!1;if(this.selectedPoiTypeFilters.length>0){if(i instanceof x&&!i.booths.some(l=>this.selectedPoiTypeFilters.some(d=>l.poiTypeId===d.id))||i instanceof I&&!this.selectedPoiTypeFilters.some(l=>i.poiTypeId===l.id))return!1;if(i instanceof O&&i.boothId){const l=this.rootStore.boothStore.booths.find(d=>d.id===i.boothId);if(!l||!this.selectedPoiTypeFilters.some(d=>l.poiTypeId===d.id))return!1}}return!0}):o;case"bookmarks":return[...this.rootStore.exhibitorStore.bookmarked,...this.rootStore.eventStore.bookmarked,...this.rootStore.speakerStore.bookmarked,...this.rootStore.boothStore.booths.filter(i=>i.exhibitors.length===0&&i.bookmarkedDirectly)];case"visited":return[...this.rootStore.exhibitorStore.visited,...this.rootStore.eventStore.visited];case"category":return this.list.category.exhibitors;case E:return yt();case"filter":return this.list.items;case"sessions":return this.rootStore.eventStore.eventItems;case"exhibitors":const r=this.rootStore.exhibitorStore.exhibitors,s=this.list.text?.toLowerCase().trim();return s?r.filter(i=>i.name.toLowerCase().includes(s)):r;case"multi-point-tour":const c=this.rootStore.toursStore.getTourById(this.list.tourId);return c?!c.points||c.points.length===0?[]:c.points.map(i=>{const l=parseInt(i);if(!isNaN(l)){const f=this.rootStore.boothStore.boothById.get(l);if(f)return f}return St(i)?.entity||null}).filter(Boolean):[];case"route-planner":return this.rootStore.routePlannerStore.resolvedBooths}throw new Error("Unknown list.type")}get listBooths(){return D(this.listItems,this.rootStore.boothStore.booths,this.rootStore.eventStore.eventItems)}get selectedBooths(){let o=[];this.selectedExhibitor?o=this.selectedExhibitor.booths:this.selectedBooth&&(o=[this.selectedBooth]);const r=this.selectedRoute,s=[r?.from,r?.to,...r?.waypoints??[]].filter(c=>c instanceof I);return o.push(...s),new Set(o)}get hoveredBooths(){let o;return this.hoveredBooth?o=[this.hoveredBooth]:this.hoveredExhibitor&&(o=this.hoveredExhibitor.booths),new Set(o)}get visibility(){return{controls:!this.mapControlsHidden,levels:!this.floorsControlHidden,header:this.wsShown,overlay:!this.hideOverlay}}setVisibility(o){const r={...Object.keys(this.visibility).reduce((s,c)=>({...s,[c]:!0}),{}),...Object.keys(o).filter(s=>this.visibility.hasOwnProperty(s)).reduce((s,c)=>({...s,[c]:o[c]}),{})};Object.values(r).every(Boolean)?k&&localStorage.removeItem(W):k&&localStorage.setItem(W,JSON.stringify(r)),this.mapControlsHidden=!r.controls,this.floorsControlHidden=!r.levels,this.hideHeaderLogo=!r.header,this.hideFreeOrDemo=!r.header,this.hideOverlay=!r.overlay}toggleMapOverlay(){this.overlayPosition==="bottom"&&this.overlaySize==="full"?this.desiredOverlaySize="medium":this.overlayPosition==="bottom"&&this.overlaySize!=="full"&&(this.desiredOverlaySize="full")}changeZoom(o){this.zoomBy=o}zoomIn(){this.changeZoom(1.5)}zoomOut(){this.changeZoom(.66)}fitBounds(){if(this.rootStore.maplibreStore.showMaplibre){const{rect:o}=gt({layerViewbox:this.rootStore.layerStore.viewboxRectangle,explicitArea:ct?H:null,layerRectangle:this.rootStore.layerStore.rectangle,sceneDef:this.rootStore.rendererService.scene,svgArea:H});this.moveToRect=o}else this.moveToRect=this.rootStore.layerStore.rectangle||H;this.rollReset=!0}get previewMode(){const o=k?localStorage.getItem(nt)??localStorage.getItem(rt):null;return o==="true"||o==="1"||this.rootStore.fp.previewMode}get viewerMode(){const o=k?localStorage.getItem(ht)??localStorage.getItem(lt):null;return o==="true"||o==="1"||this.rootStore.fp.viewerMode}get selectedEventItem(){return this.details instanceof O?this.details:null}get defaultMapSettings(){return{zoomtime:500,center:void 0,centerxy:void 0,z:void 0,bearing:0,roll:1}}setMapSettings(o){const r={};for(const s in o)o[s]!=null&&(s==="zoomtime"?r[s]=Math.min(Math.max(o[s]||this.mapSettings.zoomtime,500),5e3):r[s]=o[s]);this.mapSettings={...this.mapSettings,...r}}resetMapSettings(){this.mapSettings={...this.defaultMapSettings}}get baseQRCodeUrl(){return`https://${L.EXPO}.expofp.com`}get viewMapOnPhoneQRCodeUrl(){if(C?.customKioskQrCodeUrl)return C.customKioskQrCodeUrl;const o=new URL(this.baseQRCodeUrl);o.search=window.location.search;const r=o.toString();return console.log("View Map On Phone QR Code Url",r),r}get routeQRCodeUrl(){const o=new URL(this.baseQRCodeUrl),r=this.selectedRoute?.from,s=this.selectedRoute?.to,c=r instanceof I?r.slug:"",i=s instanceof I?s.slug:"";o.search=`?route%3A${encodeURIComponent(i)}%3A${encodeURIComponent(c)}%3Afalse`,st(o.searchParams,this.kioskData,["x","y","z"]);const l=o.toString();return console.log("Route QR Code Url",l),l}get isFeaturedExhibitorActive(){return this.details instanceof x&&!!this.details.featured}get activeInterfaceData(){for(const o of this.interfaceMetadata)if(o.isActive())return o;return null}get searchBoxConfig(){const o=this.activeInterfaceData;return!o||!o.searchBoxConfig?{mode:"search",title:"",subtitle:void 0,badge:void 0,icon:void 0}:o.searchBoxConfig()||{mode:"search",title:"",subtitle:void 0,badge:void 0,icon:void 0}}get searchBoxActions(){return this.activeInterfaceData?.actions?.()??[]}get overlayInterfaceClasses(){const o=[],r=this.activeInterfaceData;return r&&(o.push(r.className),r.additionalClasses&&o.push(...r.additionalClasses())),this.details&&o.push("overlay-has-details"),this.list.type&&o.push(`overlay-list-${this.list.type}`),this.isFeaturedExhibitorActive&&o.push("overlay-exhibitor-featured"),o}get isOverlayOpen(){return this.noOverlay||this.hideOverlay?!1:this.activeInterfaceData!==null}setOverlayScrolled(o){this.isOverlayScrolled=o}setListScrollTop(o,r){this.listScrollTop=r,this.scrollPositions.set(o,r)}setListScrollItemId(o,r){this.listScrollItemId=r,this.scrollItemIds.set(o,r)}getListScrollTop(o){return this.scrollPositions.get(o)||0}getListScrollItemId(o){return this.scrollItemIds.get(o)||null}clearListScroll(o){this.scrollPositions.delete(o),this.scrollItemIds.delete(o),this.list.type===o&&(this.listScrollTop=0,this.listScrollItemId=null)}get bannerType(){return this.hideFreeOrDemo||this.heatmap?null:L.EXPO==="expo"?"demo":C.expoFpAd||C.isTrial?"free":null}get isBannerVisible(){return this.bannerType!==null}setCurrentBanner(o){this.currentBanner=o}setForceShowDetails(o){this.forceShowDetails=o}get showRouteInstantly(){return!!(this.kiosk&&!this.forceShowDetails)}startBuildRoute(){this.rootStore.selectSearch(""),this.mapControlsHidden=!0,this.floorsControlHidden=!0,this.hideHeaderLogo=!0,this.hideFreeOrDemo=!0,this.hideOverlay=!0,this.hideCookieConsent=!0,this.buildRoute=!0}setGlobalErrorMessage(o){this.globalErrorMessages.push(o)}popGlobalErrorMessage(){this.globalErrorMessages.pop()}initializeUIScale(){if(new URLSearchParams(window.location.search).get("kiosk")!=="0"&&k){const r=localStorage.getItem(N)??localStorage.getItem(U);if(r){const s=parseFloat(r);!isNaN(s)&&s>=.8&&s<=1.4&&(this._customUIScale=s)}}}setUIScale(o,r=!0){if(isNaN(o)||o<this.minUIScale||o>this.maxUIScale){ut.warn(`Invalid ui-scale value: ${o}. Must be between ${this.minUIScale} and ${this.maxUIScale}.`);return}this._customUIScale=o,r&&k&&(localStorage.setItem(N,o.toString()),localStorage.removeItem(U))}resetUIScale(){this._customUIScale=null,k&&(localStorage.removeItem(N),localStorage.removeItem(U))}enableSetKioskMode(o){this.setKioskModeEnabled=o}setKioskData(o){this.kioskData=o}}e([a.struct],t.prototype,"list",void 0),e([a.ref],t.prototype,"details",void 0),e([a.ref],t.prototype,"hoveredExhibitor",void 0),e([a.ref],t.prototype,"hoveredBooth",void 0),e([a],t.prototype,"zoomBy",void 0),e([a],t.prototype,"rollReset",void 0),e([a],t.prototype,"moveToBooths",void 0),e([a],t.prototype,"moveToRect",void 0),e([a],t.prototype,"moveToLocation",void 0),e([a],t.prototype,"menu",void 0),e([a],t.prototype,"searchFocused",void 0),e([a],t.prototype,"searchClearMode",void 0),e([a],t.prototype,"printingPdf",void 0),e([a.struct],t.prototype,"screenSize",void 0),e([a],t.prototype,"desiredOverlaySize",void 0),e([a],t.prototype,"overlayShowsAll",void 0),e([a],t.prototype,"centerMap",void 0),e([a],t.prototype,"zoomAfTransformK",void 0),e([a],t.prototype,"activeListIndex",void 0),e([a],t.prototype,"devicePixelRatio",void 0),e([a],t.prototype,"wsStarted",void 0),e([a],t.prototype,"canvasStarted",void 0),e([a],t.prototype,"kiosk",void 0),e([a],t.prototype,"inIdle",void 0),e([a],t.prototype,"modalActive",void 0),e([a],t.prototype,"galleryActive",void 0),e([a],t.prototype,"hideOverlay",void 0),e([a],t.prototype,"hideCookieConsent",void 0),e([a],t.prototype,"hideHeaderLogo",void 0),e([a],t.prototype,"hideLogoInBooth",void 0),e([a],t.prototype,"disableBookmarked",void 0),e([a],t.prototype,"hideLanguage",void 0),e([a],t.prototype,"monochrome",void 0),e([a],t.prototype,"heatmap",void 0),e([a],t.prototype,"heatmapYah",void 0),e([a],t.prototype,"debugCircles",void 0),e([a],t.prototype,"mapControlsHidden",void 0),e([a],t.prototype,"floorsControlHidden",void 0),e([a],t.prototype,"hideFreeOrDemo",void 0),e([a],t.prototype,"freeBannerDismissed",void 0),e([a],t.prototype,"currentBanner",void 0),e([a],t.prototype,"sceneDefReady",void 0),e([a],t.prototype,"categoryFilterOpen",void 0),e([a],t.prototype,"selectedCategoryFilters",void 0),e([a],t.prototype,"selectedPoiTypeFilters",void 0),e([a],t.prototype,"selectedTrack",void 0),e([a],t.prototype,"subButtonsVisible",void 0),e([a],t.prototype,"mapControlsDOMRect",void 0),e([a],t.prototype,"searchBoxMode",void 0),e([a],t.prototype,"searchBoxTitle",void 0),e([a],t.prototype,"searchBoxSubtitle",void 0),e([a],t.prototype,"routeTitle",void 0),e([a],t.prototype,"routeDescription",void 0),e([a],t.prototype,"isMultiPointRoute",void 0),e([a],t.prototype,"tourTitle",void 0),e([a],t.prototype,"tourDescription",void 0),e([a],t.prototype,"isMultiPointTour",void 0),e([a],t.prototype,"pathwayOnlyMode",void 0),e([a],t.prototype,"isOverlayScrolled",void 0),e([a],t.prototype,"listScrollTop",void 0),e([a],t.prototype,"listScrollItemId",void 0),e([a],t.prototype,"listScrollIndex",void 0),e([a],t.prototype,"_customUIScale",void 0),e([u],t.prototype,"setSelectedCategoryFilters",null),e([u],t.prototype,"resetCategoryFilter",null),e([u],t.prototype,"setSearchClearMode",null),e([u],t.prototype,"setRouteTitle",null),e([u],t.prototype,"setRouteDescription",null),e([u],t.prototype,"setIsMultiPointRoute",null),e([u],t.prototype,"setTourTitle",null),e([u],t.prototype,"setTourDescription",null),e([u],t.prototype,"setIsMultiPointTour",null),e([u],t.prototype,"setPathwayOnlyMode",null),e([u],t.prototype,"setMultiPointTourList",null),e([n],t.prototype,"activePathwayLayers",null),e([n],t.prototype,"highlightedBooths",null),e([n],t.prototype,"rtl",null),e([n({keepAlive:!0})],t.prototype,"noOverlay",null),e([n({keepAlive:!0})],t.prototype,"selectedExhibitor",null),e([n({keepAlive:!0})],t.prototype,"selectedBooth",null),e([n({keepAlive:!0})],t.prototype,"selectedCategory",null),e([n({keepAlive:!0})],t.prototype,"selectedRoute",null),e([n({keepAlive:!0})],t.prototype,"selectedSpeaker",null),e([n({keepAlive:!0})],t.prototype,"uiScale",null),e([n({keepAlive:!0})],t.prototype,"isGuidedToursActive",null),e([n({keepAlive:!0})],t.prototype,"getRouteNextFloor",null),e([n],t.prototype,"headerHeightRem",null),e([n],t.prototype,"headerHeightPx",null),e([n],t.prototype,"overlayPosition",null),e([n],t.prototype,"overlayCollapsed",null),e([n],t.prototype,"overlaySize",null),e([n],t.prototype,"overlayBottom",null),e([n],t.prototype,"overlayLeft",null),e([n],t.prototype,"overlayWidthPx",null),e([n({keepAlive:!0})],t.prototype,"wsImageHeightPx",null),e([n],t.prototype,"wsPaddingPx",null),e([n],t.prototype,"wsOccupiedHeightPx",null),e([n({keepAlive:!0})],t.prototype,"wsShown",null),e([n],t.prototype,"wsDesktopPosition",null),e([n],t.prototype,"wsPosition",null),e([n],t.prototype,"responsiveClass",null),e([n],t.prototype,"mapVisibleTop",null),e([n],t.prototype,"mapVisibleBottom",null),e([n],t.prototype,"mapVisibleStart",null),e([n],t.prototype,"searchActionsHeightPx",null),e([n],t.prototype,"fullSizeOffset",null),e([n],t.prototype,"shouldShowSearchButtons",null),e([n],t.prototype,"shouldShowMobileToggle",null),e([n],t.prototype,"mobileToggleIsListMode",null),e([n],t.prototype,"canvasVisibleRectPx",null),e([n],t.prototype,"shouldShiftMapRect",null),e([n],t.prototype,"hasAppliedFilters",null),e([n],t.prototype,"canvasVisibleRectPt",null),e([n],t.prototype,"canvasSizePt",null),e([n({keepAlive:!0})],t.prototype,"shouldUseBackdrop",null),e([a],t.prototype,"forceDim",void 0),e([u],t.prototype,"setForceDim",null),e([n],t.prototype,"dimmed",null),e([n],t.prototype,"defaultSearchItems",null),e([n],t.prototype,"searchItems",null),e([n],t.prototype,"searchList",null),e([n],t.prototype,"foundInDescription",null),e([n],t.prototype,"foundInDescriptionStruct",null),e([n],t.prototype,"categoryFilteredSearchList",null),e([n],t.prototype,"fuzzySearchItems",null),e([n],t.prototype,"listItems",null),e([n({keepAlive:!0})],t.prototype,"listBooths",null),e([n({keepAlive:!0})],t.prototype,"selectedBooths",null),e([n({keepAlive:!0})],t.prototype,"hoveredBooths",null),e([n],t.prototype,"visibility",null),e([u],t.prototype,"setVisibility",null),e([u],t.prototype,"toggleMapOverlay",null),e([u],t.prototype,"changeZoom",null),e([u],t.prototype,"zoomIn",null),e([u],t.prototype,"zoomOut",null),e([u],t.prototype,"fitBounds",null),e([n({keepAlive:!0})],t.prototype,"selectedEventItem",null),e([a],t.prototype,"mapSettings",void 0),e([u],t.prototype,"setMapSettings",null),e([u],t.prototype,"resetMapSettings",null),e([n],t.prototype,"baseQRCodeUrl",null),e([n],t.prototype,"viewMapOnPhoneQRCodeUrl",null),e([n],t.prototype,"routeQRCodeUrl",null),e([n],t.prototype,"isFeaturedExhibitorActive",null),e([n],t.prototype,"activeInterfaceData",null),e([n],t.prototype,"searchBoxConfig",null),e([n],t.prototype,"searchBoxActions",null),e([n],t.prototype,"overlayInterfaceClasses",null),e([n],t.prototype,"isOverlayOpen",null),e([u],t.prototype,"setOverlayScrolled",null),e([u],t.prototype,"setListScrollTop",null),e([u],t.prototype,"setListScrollItemId",null),e([u],t.prototype,"getListScrollTop",null),e([u],t.prototype,"getListScrollItemId",null),e([u],t.prototype,"clearListScroll",null),e([n],t.prototype,"bannerType",null),e([n],t.prototype,"isBannerVisible",null),e([u],t.prototype,"setCurrentBanner",null),e([a],t.prototype,"forceShowDetails",void 0),e([u],t.prototype,"setForceShowDetails",null),e([n],t.prototype,"showRouteInstantly",null),e([a],t.prototype,"buildRoute",void 0),e([u],t.prototype,"startBuildRoute",null),e([a],t.prototype,"globalErrorMessages",void 0),e([u],t.prototype,"setGlobalErrorMessage",null),e([u],t.prototype,"popGlobalErrorMessage",null),e([u],t.prototype,"initializeUIScale",null),e([u],t.prototype,"setUIScale",null),e([u],t.prototype,"resetUIScale",null),e([a],t.prototype,"setKioskModeEnabled",void 0),e([u],t.prototype,"enableSetKioskMode",null),e([a],t.prototype,"kioskData",void 0),e([u],t.prototype,"setKioskData",null);function D(G,o,r=[]){const s=[];return G.forEach(c=>{c instanceof x?s.push(...c.booths):c instanceof I?s.push(c):c instanceof O?c.boothId&&s.push(o.find(i=>i.id===c.boothId)):c instanceof V&&r.filter(i=>i.speakers.some(l=>l.id===c.id)&&i.boothId).forEach(i=>s.push(o.find(l=>l.id===i.boothId)))}),new Set(s.filter(Boolean))}
|
|
1
|
+
import{__decorate as e}from"tslib";import{Box as it}from"@expofp/geometry";import{action as u,computed as n,observable as l}from"mobx";import{setKioskUrlParams as st}from"../components/Kiosk/kioskUrlParam";import{LANGUAGE_TYPE as E,LEGACY_PREVIEW_MODE_STORAGE_KEY as rt,LEGACY_UI_SCALE_STORAGE_KEY as N,LEGACY_VIEWER_MODE_STORAGE_KEY as lt,MOBILE_BREAKPOINT as at,PREVIEW_MODE_STORAGE_KEY as nt,UI_SCALE_STORAGE_KEY as U,VIEWER_MODE_STORAGE_KEY as ht,VISIBILITY_STORAGE_KEY as W}from"../constants";import C from"../data";import{svgArea as H,svgAreaExplicit as ct}from"../data/svg";import{readFreeBannerDismissed as pt}from"../tools/freeBanner";import{hasUserConsent as dt}from"../tools/gtag";import{hasHtmlTags as X}from"../tools/has-html-tags";import ut from"../tools/logger";import L from"../tools/settings";import{stripHtml as j}from"../tools/strip-html";import{remsToPixels as D}from"../utils";import Z from"../utils/browser";import{getLocale as ft,getLocales as yt,t as v}from"../utils/i18n";import{isLocalStorageAvailable as w}from"../utils/localStorage";import{getResponsiveClass as mt}from"../utils/responsiveClass";import{sanitizeStr as J}from"../utils/sanitizeText";import{resolveVenueFitRect as gt}from"../utils/scene-bounds";import{uiState as P}from".";import{BoothBase as I,RegularBooth as M,SpecialBooth as _}from"./BoothStore";import{EventItem as R}from"./EventStore";import{Exhibitor as x}from"./ExhibitorStore";import{findEntityByExternalId as St,Route as T}from"./RouteStore";import{SpeakerItem as V}from"./SpeakerStore";const vt=["dimensions25"];export default class t{setSelectedCategoryFilters(o){this.selectedCategoryFilters=o}resetCategoryFilter(){this.selectedCategoryFilters=[],this.categoryFilterOpen=!1}setSearchClearMode(o){this.searchClearMode=o}setRouteTitle(o){this.routeTitle=o}setRouteDescription(o){this.routeDescription=o}setIsMultiPointRoute(o){this.isMultiPointRoute=o}setTourTitle(o){this.tourTitle=o}setTourDescription(o){this.tourDescription=o}setIsMultiPointTour(o){this.isMultiPointTour=o}setPathwayOnlyMode(o){this.pathwayOnlyMode=o}setMultiPointTourList(o){this.list={type:"multi-point-tour",tourId:o}}get activePathwayLayers(){return this.list?.type==="multi-point-tour"?this.rootStore.toursStore.getTourById(this.list.tourId)?.layers?.map(a=>a.id)||[]:[]}get highlightedBooths(){const o=new Set(this.rootStore.exhibitorStore.highlightedByExternalIds),a=new Set(this.rootStore.boothStore.highlightedByExternalIds),s=new Set([this.rootStore.exhibitorStore.exhibitors.filter(i=>o.has(i.externalId)).flatMap(i=>i.booths.filter(r=>r instanceof M)).map(i=>i.id.toString()),this.rootStore.boothStore.booths.filter(i=>a.has(i.externalId)).map(i=>i.id.toString())].flat());if(this.list?.type==="search"&&this.list?.text?.trim().length){s.clear();const i=this.fuzzySearchItems.filter(r=>r.score===0).map(r=>r.item);i.length?F(i,this.rootStore.boothStore.booths,this.rootStore.eventStore.eventItems).forEach(r=>s.add(r.id.toString())):this.listBooths.forEach(r=>s.add(r.id.toString()))}if(this.list?.type==="filter"&&(s.clear(),this.list.items.flatMap(i=>i.booths.filter(r=>r instanceof M)).forEach(i=>s.add(i.id.toString()))),this.categoryFilterOpen&&this.selectedCategoryFilters.length>0?(s.clear(),this.selectedCategoryFilters.forEach(i=>{i.exhibitors.flatMap(r=>r.booths).forEach(r=>s.add(r.id.toString()))})):this.list?.type==="category"&&(s.clear(),this.list.category.exhibitors.flatMap(i=>i.booths).forEach(i=>s.add(i.id.toString()))),this.list?.type==="bookmarks"&&(s.clear(),F(this.listItems,this.rootStore.boothStore.booths,this.rootStore.eventStore.eventItems).forEach(i=>s.add(i.id.toString()))),this.list?.type==="visited"&&(s.clear(),F(this.listItems,this.rootStore.boothStore.booths,this.rootStore.eventStore.eventItems).forEach(i=>s.add(i.id.toString()))),this.list?.type==="exhibitors"){s.clear();const i=this.list.text?.toLowerCase().trim();let r=this.rootStore.exhibitorStore.exhibitors;i&&(r=r.filter(d=>d.name.toLowerCase().includes(i))),r.flatMap(d=>d.booths.filter(f=>f instanceof M)).forEach(d=>s.add(d.id.toString()))}if(this.selectedPoiTypeFilters.length>0&&(s.clear(),this.selectedPoiTypeFilters.forEach(i=>{this.rootStore.boothStore.booths.filter(r=>r.poiTypeId===i.id).forEach(r=>s.add(r.id.toString()))})),this.details instanceof T&&(s.clear(),this.details.from instanceof I&&s.add(this.details.from.id.toString()),this.details.to instanceof I&&s.add(this.details.to.id.toString()),this.details.waypoints?.forEach(i=>s.add(i.id.toString()))),this.details instanceof I&&(s.clear(),s.add(this.details.id.toString())),this.details instanceof x&&(s.clear(),this.details.booths.filter(i=>i instanceof M).forEach(i=>s.add(i.id.toString()))),this.details instanceof R){const i=this.details;if(i.boothId){s.clear();const r=this.rootStore.boothStore.booths.find(d=>d.id===i.boothId);r&&s.add(r.id.toString())}}return s.delete(void 0),s.delete(null),s}constructor(o){this.interfaceMetadata=Object.freeze([{id:"menu",className:"efp-overlay-menu",priority:80,isActive:()=>this.menu,searchBoxConfig:()=>({mode:"interface",title:v("Menu")})},{id:"exhibitor",className:"efp-overlay-exhibitor",priority:70,isActive:()=>this.details instanceof x,searchBoxConfig:()=>({mode:"details",title:this.details.name})},{id:"booth",className:"efp-overlay-booth",priority:70,isActive:()=>this.details instanceof I,searchBoxConfig:()=>{const a=this.details;return{mode:"details",title:a.title||a.name}}},{id:"event",className:"efp-overlay-event",priority:70,isActive:()=>this.details instanceof R,searchBoxConfig:()=>({mode:"details",title:this.details.name})},{id:"route",className:"efp-overlay-route",priority:70,isActive:()=>this.details instanceof T,searchBoxConfig:()=>{const a=this.details;return{mode:"details",title:v("Directions")}}},{id:"search",className:"efp-overlay-search",priority:60,isActive:()=>!this.details&&!this.menu&&this.list.type==="search"&&(this.rootStore.fp.alwaysShowSidebar&&!this.overlayOnDemand||this.heatmap||this.searchFocused||this.list.text.length>0||this.searchClearMode),searchBoxConfig:()=>({mode:"search",title:v("Search")})},{id:"exhibitors",className:"efp-overlay-exhibitors",priority:50,isActive:()=>this.list.type==="exhibitors"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Exhibitors")})},{id:"filter",className:"efp-overlay-filter",priority:50,isActive:()=>this.list.type==="filter"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Filter")})},{id:"bookmarks",className:"efp-overlay-bookmarks",priority:50,isActive:()=>this.list.type==="bookmarks"&&!this.details,searchBoxConfig:()=>({mode:"interface",title:v("Bookmarks"),badge:this.rootStore.bookmarksStore.total})},{id:"visited",className:"efp-overlay-visited",priority:50,isActive:()=>this.list.type==="visited"&&!this.details,searchBoxConfig:()=>({mode:"interface",title:v("Visited"),badge:this.rootStore.exhibitorStore.visited.length})},{id:E,className:"efp-overlay-language",priority:50,isActive:()=>this.list.type===E,searchBoxConfig:()=>({mode:"interface",title:v("Language")})},{id:"category",className:"efp-overlay-category",priority:50,isActive:()=>!P.menu&&!!P.selectedCategory,searchBoxConfig:()=>({mode:"interface",title:this.list.type==="category"&&this.list.category?.name||v("Categories")})},{id:"sessions",className:"efp-overlay-sessions",priority:50,isActive:()=>this.list.type==="sessions"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Sessions"),subtitle:this.selectedTrack?this.selectedTrack.name:void 0})},{id:"speakers",className:"efp-overlay-speakers",priority:50,isActive:()=>this.list.type==="speakers"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Speakers")})},{id:"speaker",className:"efp-overlay-speaker",priority:50,isActive:()=>this.details instanceof V,searchBoxConfig:()=>({mode:"details",title:this.details.name})},{id:"tours",className:"efp-overlay-tours",priority:50,isActive:()=>this.list.type==="tours"&&!this.details,searchBoxConfig:()=>({mode:"search",title:v("Guided Tours")})},{id:"multi-point-wayfinding",className:"efp-overlay-multi-point",priority:75,isActive:()=>!!(this.isMultiPointRoute&&this.selectedRoute&&this.list.type!=="route-planner"),searchBoxConfig:()=>({mode:"interface",title:this.routeTitle||v("Multi-point route")})},{id:"multi-point-tour",className:"efp-overlay-multi-point-tour",priority:75,isActive:()=>this.list.type==="multi-point-tour"&&!this.details,searchBoxConfig:()=>({mode:"interface",title:this.tourTitle||v("Multi-point route")})},{id:"route-planner",className:"efp-overlay-route-planner",priority:76,isActive:()=>this.list.type==="route-planner"&&(!this.details||this.details instanceof T),searchBoxConfig:()=>({mode:"interface",title:v("Route planner")})}].sort((a,s)=>s.priority-a.priority)),this.list={type:"search",text:"",focused:!1},this.details=null,this.hoveredExhibitor=null,this.hoveredBooth=null,this.zoomBy=null,this.rollReset=!1,this.moveToBooths=null,this.moveToRect=null,this.moveToLocation=!1,this.menu=!1,this.searchFocused=!1,this.searchClearMode=!1,this.printingPdf=!1,this.overlayShowsAll=!1,this.centerMap=!1,this.zoomAfTransformK=1,this.activeListIndex=-1,this.devicePixelRatio=window.devicePixelRatio,this.previewExhibitor=null,this.wsStarted=!1,this.canvasStarted=!1,this.kiosk=!1,this.inIdle=!1,this.modalActive={share:!1},this.galleryActive=!1,this.hideOverlay=!1,this.searchButtonsOverride=null,this.hideCookieConsent=!!dt(),this.hideHeaderLogo=!1,this.hideLogoInBooth=!1,this.disableBookmarked=!1,this.hideLanguage=!1,this.monochrome=!1,this.heatmap=!1,this.heatmapYah=!1,this.debugCircles=[],this.mapControlsHidden=!1,this.floorsControlHidden=!1,this.hideFreeOrDemo=!1,this.freeBannerDismissed=pt(sessionStorage),this.currentBanner=null,this.sceneDefReady=!1,this.categoryFilterOpen=!1,this.selectedCategoryFilters=[],this.selectedPoiTypeFilters=[],this.selectedTrack=null,this.subButtonsVisible=!1,this.searchBoxMode="search",this.searchBoxTitle="",this.isMultiPointRoute=!1,this.isMultiPointTour=!1,this.pathwayOnlyMode=!1,this.isOverlayScrolled=!1,this.listScrollTop=0,this.listScrollItemId=null,this.listScrollIndex=0,this.scrollPositions=new Map,this.scrollItemIds=new Map,this._customUIScale=null,this.searchFilterHeightPx=54,this.searchInputHeightPx=54,this.overlayUISizePx=390,this.overlayKioskSizePx=450,this.overlayMediumHeightRems=10,this.forceDim=!1,this.mapSettings={...this.defaultMapSettings},this.forceShowDetails=!1,this.buildRoute=!1,this.globalErrorMessages=[],this.minUIScale=.8,this.maxUIScale=1.4,this.setKioskModeEnabled=!1,this.rootStore=o,this.initializeUIScale()}get rtl(){const o=ft();return o==="ar"||o==="he"}get noOverlay(){return this.rootStore.fp.noOverlay||this.hideOverlay}get overlayOnDemand(){return this.noOverlay&&this.searchButtonsOverride===!0}get overlayHiddenNow(){return this.noOverlay&&!(this.overlayOnDemand&&this.isOverlayOpen)}get onBoothClick(){return this.rootStore.fp.onBoothClick}get onMarkerClick(){return this.rootStore.fp.onMarkerClick}get onBookmarkClick(){return this.rootStore.fp.onBookmarkClick}get onVisitedClick(){return this.rootStore.fp.onVisitedClick}get onCategoryClick(){return this.rootStore.fp.onCategoryClick}get onDirection(){return this.rootStore.fp.onDirection}get onDetails(){return this.rootStore.fp.onDetails}get onExhibitorCustomButtonClick(){return this.rootStore.fp.onExhibitorCustomButtonClick}get onGetCoordsClick(){return this.rootStore.fp.onGetCoordsClick}get selectedExhibitor(){return this.details instanceof x?this.details:null}get selectedBooth(){return this.details instanceof I?this.details:null}get selectedCategory(){return this.list.type==="category"?this.list.category:null}get selectedRoute(){return this.details instanceof T?this.details:null}get selectedSpeaker(){return this.details instanceof V?this.details:null}get uiScale(){return this._customUIScale!==null?this._customUIScale:this.kiosk?1.2:1}get isGuidedToursActive(){return this.rootStore.toursStore.isActive}get getRouteNextFloor(){const o=this.rootStore.routeStore.pathLayers,a=this.rootStore.routeStore.currentRouteLayer?.name;if(!a)return null;const s=o.findIndex(c=>c.layer?.name===a);return s===-1?null:o[s+1]?.layer?.name}get headerHeightRem(){return 0}get headerHeightPx(){return D(this.headerHeightRem)}get overlayPosition(){return!this.screenSize||this.screenSize.width>at||this.kiosk?"left":"bottom"}get overlayCollapsed(){return this.kiosk&&this.overlayPosition==="left"&&!this.searchFocused&&!this.menu&&!this.details&&!this.selectedCategory&&!this.selectedExhibitor&&this.list.type!=="bookmarks"&&this.list.type!==E&&!this.list.text?.length}get overlaySize(){return this.overlayLeft?"full":this.desiredOverlaySize}get overlayBottom(){return this.overlayPosition==="bottom"}get overlayLeft(){return this.overlayPosition==="left"}get overlayWidthPx(){return this.overlayHiddenNow?0:this.overlayLeft?this.kiosk?this.overlayKioskSizePx:this.overlayUISizePx:D(this.screenSize.width)}get wsImageHeightPx(){return 44}get wsPaddingPx(){return D(.25)}get wsOccupiedHeightPx(){return this.wsShown?this.wsImageHeightPx+this.wsPaddingPx*2:0}get wsShown(){return!this.hideHeaderLogo&&this.rootStore.exhibitorStore.advertised.length>0}get wsDesktopPosition(){return L.EXPO==="cbresupplypartner"?"bottom":"top"}get wsPosition(){return this.overlayBottom?"top":this.wsDesktopPosition}get responsiveClass(){return mt(this.screenSize.width)}get mapVisibleTop(){return(this.wsPosition==="top"?this.wsOccupiedHeightPx:0)+this.headerHeightPx}get mapVisibleBottom(){return this.overlayLeft||this.overlayHiddenNow?this.wsPosition==="bottom"?this.wsOccupiedHeightPx:0:D(this.overlayMediumHeightRems)}get mapVisibleStart(){return 0}get searchActionsHeightPx(){return this.overlayPosition==="bottom"?this.searchInputHeightPx+this.searchFilterHeightPx:this.searchInputHeightPx}get fullSizeOffset(){const o=this.wsShown?54:0,a=this.bannerType==="free"&&!this.freeBannerDismissed?40:0,s=20;if(this.details&&!(this.details instanceof T))return o+a+s;const c=54,i=this.shouldShowSearchButtons?54:0;return o+a+c+s+i}get shouldShowSearchButtons(){return this.rootStore.searchButtonsStore.hasAnySearchButtons&&!this.details&&!this.menu&&![E,"filter"].includes(this.list.type)}get shouldShowMobileToggle(){const o=this.list.type==="route-planner";return this.overlayPosition==="bottom"&&(o||!this.details&&!this.menu&&this.list.type!==E&&this.list.type!=="bookmarks"&&this.list.type!=="sessions")}get mobileToggleIsListMode(){return!this.isOverlayOpen||this.overlaySize!=="full"}get canvasVisibleRectPx(){const o=this.screenSize;return it.fromMinMax({x:P.rtl?0:this.mapVisibleStart,y:this.mapVisibleTop+this.searchActionsHeightPx},{x:P.rtl?o.width-this.mapVisibleStart:o.width,y:o.height-this.mapVisibleBottom})}get shouldShiftMapRect(){return this.overlayPosition==="left"&&(this.details||this.hasAppliedFilters||this.selectedRoute)}get hasAppliedFilters(){return this.selectedCategoryFilters.length>0||this.selectedPoiTypeFilters.length>0}get canvasVisibleRectPt(){return this.canvasVisibleRectPx.scale(this.devicePixelRatio,{x:0,y:0})}get canvasSizePt(){return this.screenSize.multiply(this.devicePixelRatio)}get shouldUseBackdrop(){if(P.overlayCollapsed)return!1;if(w&&localStorage.getItem("forcebackdrop")==="1")return!0;if(this.overlayBottom||this.selectedExhibitor?.leadingImageUrl&&!this.selectedExhibitor?.leadingImageLinkUrl)return!1;const o=Z.satisfies({safari:">=13"}),a=Z.satisfies({chrome:">=77"});var s=/(android)/i.test(navigator.userAgent);return s?!1:o||a&&P.canvasSizePt.height*P.canvasSizePt.width<3e6}setForceDim(o){this.forceDim=o}get dimmed(){return this.forceDim||this.pathwayOnlyMode?!0:this.highlightedBooths.size>0||this.list?.type==="search"&&this.list?.text?.trim().length>0||this.list?.type==="exhibitors"}get defaultSearchItems(){const{exhibitorStore:o,categoryStore:a,boothStore:s,heatmapStore:c}=this.rootStore;let i=o.exhibitors;const r=a.categories.filter(y=>y.exhibitors.length),d=s.booths;this.selectedPoiTypeFilters.length>0&&(i=i.filter(y=>y.booths.some(m=>this.selectedPoiTypeFilters.some(S=>m.poiTypeId===S.id))));let f=[];const k=!this.selectedCategoryFilters.length&&C.showCategories?r.filter(y=>vt.includes(L.EXPO)?!y.name.includes("/"):!0):[],A=d.filter(y=>y instanceof _);return this.selectedCategoryFilters.length>0?f=[...i]:(C.showCompaniesAndBooths&&(f=f.concat(i)),C.showOtherSpaces&&(f=f.concat(A))),this.heatmap?[...i,...d].sort((m,S)=>c.getClicksByType(S)-c.getClicksByType(m)):this.heatmapYah?c.heatmapData?.yah?.sort((y,m)=>c.getClicksByType(m)-c.getClicksByType(y))||[]:i.length===0?d:k.concat(f.sort((y,m)=>{const S=y instanceof x&&y.featured!==void 0,B=m instanceof x&&m.featured!==void 0;if(S!==B)return S?-1:1;const O=y instanceof _&&y.title?y.title:y.name,z=m instanceof _&&m.title?m.title:m.name;return O.localeCompare(z,void 0,{sensitivity:"base",numeric:!0})}))}get searchItems(){if(this.list.type!=="search")return[];let o=this.list.text?.trim().toLowerCase()||"";const{exhibitorStore:a,categoryStore:s,boothStore:c,eventStore:i,speakerStore:r,heatmapStore:d}=this.rootStore;let f=a.exhibitors;const k=s.categories.filter(h=>h.exhibitors.length),A=c.booths,y=i.eventItems,m=r.speakers;if(this.selectedCategoryFilters.length>0&&(f=f.filter(h=>this.selectedCategoryFilters.some(p=>h.categories.some(g=>g.id===p.id)))),this.selectedPoiTypeFilters.length>0&&(f=f.filter(h=>h.booths.some(p=>this.selectedPoiTypeFilters.some(g=>p.poiTypeId===g.id)))),!o)return this.defaultSearchItems;const S=[o.replace(/&[^&=]+=[^&]+/g,"")];if(this.heatmapYah)return d.heatmapData.yah.filter(p=>Number.isNaN(Number(o))?p:p.viewCount>=Number(o)).sort((p,g)=>d.getClicksByType(g)-d.getClicksByType(p));const B=[],O=new Set,z=new Set,G=new Set,q=new Set;function Y(h){return h?h.replace(/[!@#$%^*-\.,\(\)^#$%:?_+'"\/]/g," ").replace(/\s\s+/g," "):""}function b(h,p){return!h||!p?!1:Y(h).toLowerCase().includes(Y(p).toLowerCase())}function Q(h,p){return h?b(h,p)||b(C.levelTerm+" "+h,p):!1}f.forEach(h=>{S.some(p=>b(h.name,p)||h.booths.some(g=>!p&&b(g.name,p)||Q(g.layer?.name??null,p)))&&O.add(h)}),this.selectedCategoryFilters.length>0&&A.forEach(h=>{(this.heatmap||!(h instanceof M)||!Array.from(O).find(g=>g.booths.includes(h)))&&S.some(g=>b(h.title||"",g)||b(h.name,g)||b(h.fullName,g)||Q(h.layer?.name??null,g))&&z.add(h)});const tt=y,et=m;if(tt.forEach(h=>{S.some(p=>b(h.name||"",p)||b(h.description||"",p))&&G.add(h)}),et.forEach(h=>{S.some(p=>b(h.name,p)||b(h.company,p)||b(h.jobTitle,p))&&q.add(h)}),B.push(...G),B.push(...O),this.heatmap)return B.sort((h,p)=>d.getClicksByType(p)-d.getClicksByType(h));const ot=new Map(B.map(h=>[h.id,h]));return B.map(h=>{if(!h.name)return null;const p=J(h instanceof I&&h.fullName.toLowerCase()||h.name.toLowerCase()),g=p.indexOf(J(o));if(g===-1)return null;const $={id:h.id,position:g,lowerCaseName:p,featured:!1};return h instanceof x&&($.featured=h.featured),$}).filter(Boolean).sort((h,p)=>(h.featured||p.featured)&&h.featured!==p.featured?h.featured?-1:1:h.position!==p.position?h.position-p.position:h.lowerCaseName.localeCompare(p.lowerCaseName)||String(h.id).localeCompare(String(p.id))).map(({id:h})=>ot.get(h))}get searchList(){return[...this.rootStore.eventStore.eventItems,...this.rootStore.speakerStore.speakers,...this.rootStore.categoryStore.categories.filter(o=>o.exhibitors.length),...this.rootStore.exhibitorStore.exhibitors,...this.rootStore.boothStore.booths]}get foundInDescription(){if(this.list?.type!=="search")return[];const o=this.list?.text?.trim().toLowerCase();if(!o)return[];const a=this.fuzzySearchItems.map(({item:r})=>r),s=new Set(a.map(r=>r.name)),c=this.categoryFilteredSearchList.filter(r=>!s.has(r.name)),i=[];for(const r of c){const d=r.description;if(!d)continue;const k=(X(d)?j(d):d).toLowerCase().indexOf(o);k!==-1&&i.push({item:r,pos:k})}return i.sort((r,d)=>r.pos-d.pos),i.map(r=>r.item)}get foundInDescriptionStruct(){const o={};if(this.list?.type!=="search")return o;const a=this.list?.text?.trim().toLowerCase();return this.foundInDescription.forEach(s=>{let c=s.description;if(!c)return;X(c)&&(c=j(c));const i=c.toLowerCase().indexOf(a);if(i===-1)return;const r=3,d=i>r?i-r:0,f=c.substring(d).trim();o[s.id]=i>0?`...${f}`:f}),o}get categoryFilteredSearchList(){return this.selectedCategoryFilters.length===0?this.searchList:this.searchList.filter(o=>o instanceof x&&this.selectedCategoryFilters.some(a=>o.categories.some(s=>s.id===a.id)))}get fuzzySearchItems(){if(this.list?.type!=="search")return[];const o=this.list?.text?.trim().toLowerCase();if(!o)return this.defaultSearchItems.map(i=>({item:i,score:0,matches:[]}));const a=this.rootStore.fuzzySearchEngineStore.search(this.categoryFilteredSearchList,o),s=[],c=[];for(const i of a){const r=i.item,d=r.entity.type,f=d==="booth"?r:null,k=d==="exhibitor"?r:null,A=[r.name?.toLowerCase()??"",f?.title?.toLowerCase()??"",f?.fullName?.toLowerCase()??"",...k?.booths?.map(m=>m.name?.toLowerCase()??"")??[]];let y=1/0;for(const m of A){const S=m.indexOf(o);S!==-1&&S<y&&(y=S)}y!==1/0?s.push({result:{item:r,score:0},pos:y}):c.push(i)}return s.sort((i,r)=>i.pos-r.pos),[...s.map(i=>i.result),...c]}get listItems(){if(this.details instanceof T&&this.list.type!=="multi-point-tour")return[this.details.from,this.details.to].filter(o=>o instanceof I);switch(this.list.type){case"search":let o=!(this.heatmap||this.heatmapYah)&&this.rootStore.fuzzySearchEngineStore.engine?this.fuzzySearchItems.map(({item:i})=>i).concat(this.foundInDescription):this.searchItems;return o=o.filter(i=>i.entity.type==="booth"?!i.exhibitors.length:!0),this.hasAppliedFilters?o.filter(i=>{if(this.selectedCategoryFilters.length>0&&i instanceof x&&!this.selectedCategoryFilters.some(r=>i.categories.some(d=>d.id===r.id)))return!1;if(this.selectedPoiTypeFilters.length>0){if(i instanceof x&&!i.booths.some(r=>this.selectedPoiTypeFilters.some(d=>r.poiTypeId===d.id))||i instanceof I&&!this.selectedPoiTypeFilters.some(r=>i.poiTypeId===r.id))return!1;if(i instanceof R&&i.boothId){const r=this.rootStore.boothStore.booths.find(d=>d.id===i.boothId);if(!r||!this.selectedPoiTypeFilters.some(d=>r.poiTypeId===d.id))return!1}}return!0}):o;case"bookmarks":return[...this.rootStore.exhibitorStore.bookmarked,...this.rootStore.eventStore.bookmarked,...this.rootStore.speakerStore.bookmarked,...this.rootStore.boothStore.booths.filter(i=>i.exhibitors.length===0&&i.bookmarkedDirectly)];case"visited":return[...this.rootStore.exhibitorStore.visited,...this.rootStore.eventStore.visited];case"category":return this.list.category.exhibitors;case E:return yt();case"filter":return this.list.items;case"sessions":return this.rootStore.eventStore.eventItems;case"exhibitors":const a=this.rootStore.exhibitorStore.exhibitors,s=this.list.text?.toLowerCase().trim();return s?a.filter(i=>i.name.toLowerCase().includes(s)):a;case"multi-point-tour":const c=this.rootStore.toursStore.getTourById(this.list.tourId);return c?!c.points||c.points.length===0?[]:c.points.map(i=>{const r=parseInt(i);if(!isNaN(r)){const f=this.rootStore.boothStore.boothById.get(r);if(f)return f}return St(i)?.entity||null}).filter(Boolean):[];case"route-planner":return this.rootStore.routePlannerStore.resolvedBooths}throw new Error("Unknown list.type")}get listBooths(){return F(this.listItems,this.rootStore.boothStore.booths,this.rootStore.eventStore.eventItems)}get selectedBooths(){let o=[];this.selectedExhibitor?o=this.selectedExhibitor.booths:this.selectedBooth&&(o=[this.selectedBooth]);const a=this.selectedRoute,s=[a?.from,a?.to,...a?.waypoints??[]].filter(c=>c instanceof I);return o.push(...s),new Set(o)}get hoveredBooths(){let o;return this.hoveredBooth?o=[this.hoveredBooth]:this.hoveredExhibitor&&(o=this.hoveredExhibitor.booths),new Set(o)}get visibility(){return{controls:!this.mapControlsHidden,levels:!this.floorsControlHidden,header:this.wsShown,overlay:!this.hideOverlay,searchButtons:this.searchButtonsOverride??!this.hideOverlay}}setVisibility(o){const a=["controls","levels","header","overlay"],s={...a.reduce((i,r)=>({...i,[r]:!0}),{}),...Object.keys(o).filter(i=>a.includes(i)).reduce((i,r)=>({...i,[r]:o[r]}),{})},c=typeof o.searchButtons=="boolean"?o.searchButtons:null;w&&(Object.values(s).every(Boolean)&&c===null?localStorage.removeItem(W):localStorage.setItem(W,JSON.stringify(c===null?s:{...s,searchButtons:c}))),this.mapControlsHidden=!s.controls,this.floorsControlHidden=!s.levels,this.hideHeaderLogo=!s.header,this.hideFreeOrDemo=!s.header,this.hideOverlay=!s.overlay,this.searchButtonsOverride=c}toggleMapOverlay(){this.overlayPosition==="bottom"&&this.overlaySize==="full"?this.desiredOverlaySize="medium":this.overlayPosition==="bottom"&&this.overlaySize!=="full"&&(this.desiredOverlaySize="full")}changeZoom(o){this.zoomBy=o}zoomIn(){this.changeZoom(1.5)}zoomOut(){this.changeZoom(.66)}fitBounds(){if(this.rootStore.maplibreStore.showMaplibre){const{rect:o}=gt({layerViewbox:this.rootStore.layerStore.viewboxRectangle,explicitArea:ct?H:null,layerRectangle:this.rootStore.layerStore.rectangle,sceneDef:this.rootStore.rendererService.scene,svgArea:H});this.moveToRect=o}else this.moveToRect=this.rootStore.layerStore.rectangle||H;this.rollReset=!0}get previewMode(){const o=w?localStorage.getItem(nt)??localStorage.getItem(rt):null;return o==="true"||o==="1"||this.rootStore.fp.previewMode}get viewerMode(){const o=w?localStorage.getItem(ht)??localStorage.getItem(lt):null;return o==="true"||o==="1"||this.rootStore.fp.viewerMode}get selectedEventItem(){return this.details instanceof R?this.details:null}get defaultMapSettings(){return{zoomtime:500,center:void 0,centerxy:void 0,z:void 0,bearing:0,roll:1}}setMapSettings(o){const a={};for(const s in o)o[s]!=null&&(s==="zoomtime"?a[s]=Math.min(Math.max(o[s]||this.mapSettings.zoomtime,500),5e3):a[s]=o[s]);this.mapSettings={...this.mapSettings,...a}}resetMapSettings(){this.mapSettings={...this.defaultMapSettings}}get baseQRCodeUrl(){return`https://${L.EXPO}.expofp.com`}get viewMapOnPhoneQRCodeUrl(){if(C?.customKioskQrCodeUrl)return C.customKioskQrCodeUrl;const o=new URL(this.baseQRCodeUrl);o.search=window.location.search;const a=o.toString();return console.log("View Map On Phone QR Code Url",a),a}get routeQRCodeUrl(){const o=new URL(this.baseQRCodeUrl),a=this.selectedRoute?.from,s=this.selectedRoute?.to,c=a instanceof I?a.slug:"",i=s instanceof I?s.slug:"";o.search=`?route%3A${encodeURIComponent(i)}%3A${encodeURIComponent(c)}%3Afalse`,st(o.searchParams,this.kioskData,["x","y","z"]);const r=o.toString();return console.log("Route QR Code Url",r),r}get isFeaturedExhibitorActive(){return this.details instanceof x&&!!this.details.featured}get activeInterfaceData(){for(const o of this.interfaceMetadata)if(o.isActive())return o;return null}get searchBoxConfig(){const o=this.activeInterfaceData;return!o||!o.searchBoxConfig?{mode:"search",title:"",subtitle:void 0,badge:void 0,icon:void 0}:o.searchBoxConfig()||{mode:"search",title:"",subtitle:void 0,badge:void 0,icon:void 0}}get searchBoxActions(){return this.activeInterfaceData?.actions?.()??[]}get overlayInterfaceClasses(){const o=[],a=this.activeInterfaceData;return a&&(o.push(a.className),a.additionalClasses&&o.push(...a.additionalClasses())),this.details&&o.push("overlay-has-details"),this.list.type&&o.push(`overlay-list-${this.list.type}`),this.isFeaturedExhibitorActive&&o.push("overlay-exhibitor-featured"),o}get isOverlayOpen(){return this.noOverlay&&!this.overlayOnDemand?!1:this.activeInterfaceData!==null}setOverlayScrolled(o){this.isOverlayScrolled=o}setListScrollTop(o,a){this.listScrollTop=a,this.scrollPositions.set(o,a)}setListScrollItemId(o,a){this.listScrollItemId=a,this.scrollItemIds.set(o,a)}getListScrollTop(o){return this.scrollPositions.get(o)||0}getListScrollItemId(o){return this.scrollItemIds.get(o)||null}clearListScroll(o){this.scrollPositions.delete(o),this.scrollItemIds.delete(o),this.list.type===o&&(this.listScrollTop=0,this.listScrollItemId=null)}get bannerType(){return this.hideFreeOrDemo||this.heatmap?null:L.EXPO==="expo"?"demo":C.expoFpAd||C.isTrial?"free":null}get isBannerVisible(){return this.bannerType!==null}setCurrentBanner(o){this.currentBanner=o}setForceShowDetails(o){this.forceShowDetails=o}get showRouteInstantly(){return!!(this.kiosk&&!this.forceShowDetails)}startBuildRoute(){this.rootStore.selectSearch(""),this.mapControlsHidden=!0,this.floorsControlHidden=!0,this.hideHeaderLogo=!0,this.hideFreeOrDemo=!0,this.hideOverlay=!0,this.hideCookieConsent=!0,this.buildRoute=!0}setGlobalErrorMessage(o){this.globalErrorMessages.push(o)}popGlobalErrorMessage(){this.globalErrorMessages.pop()}initializeUIScale(){if(new URLSearchParams(window.location.search).get("kiosk")!=="0"&&w){const a=localStorage.getItem(U)??localStorage.getItem(N);if(a){const s=parseFloat(a);!isNaN(s)&&s>=.8&&s<=1.4&&(this._customUIScale=s)}}}setUIScale(o,a=!0){if(isNaN(o)||o<this.minUIScale||o>this.maxUIScale){ut.warn(`Invalid ui-scale value: ${o}. Must be between ${this.minUIScale} and ${this.maxUIScale}.`);return}this._customUIScale=o,a&&w&&(localStorage.setItem(U,o.toString()),localStorage.removeItem(N))}resetUIScale(){this._customUIScale=null,w&&(localStorage.removeItem(U),localStorage.removeItem(N))}enableSetKioskMode(o){this.setKioskModeEnabled=o}setKioskData(o){this.kioskData=o}}e([l.struct],t.prototype,"list",void 0),e([l.ref],t.prototype,"details",void 0),e([l.ref],t.prototype,"hoveredExhibitor",void 0),e([l.ref],t.prototype,"hoveredBooth",void 0),e([l],t.prototype,"zoomBy",void 0),e([l],t.prototype,"rollReset",void 0),e([l],t.prototype,"moveToBooths",void 0),e([l],t.prototype,"moveToRect",void 0),e([l],t.prototype,"moveToLocation",void 0),e([l],t.prototype,"menu",void 0),e([l],t.prototype,"searchFocused",void 0),e([l],t.prototype,"searchClearMode",void 0),e([l],t.prototype,"printingPdf",void 0),e([l.struct],t.prototype,"screenSize",void 0),e([l],t.prototype,"desiredOverlaySize",void 0),e([l],t.prototype,"overlayShowsAll",void 0),e([l],t.prototype,"centerMap",void 0),e([l],t.prototype,"zoomAfTransformK",void 0),e([l],t.prototype,"activeListIndex",void 0),e([l],t.prototype,"devicePixelRatio",void 0),e([l],t.prototype,"wsStarted",void 0),e([l],t.prototype,"canvasStarted",void 0),e([l],t.prototype,"kiosk",void 0),e([l],t.prototype,"inIdle",void 0),e([l],t.prototype,"modalActive",void 0),e([l],t.prototype,"galleryActive",void 0),e([l],t.prototype,"hideOverlay",void 0),e([l],t.prototype,"searchButtonsOverride",void 0),e([l],t.prototype,"hideCookieConsent",void 0),e([l],t.prototype,"hideHeaderLogo",void 0),e([l],t.prototype,"hideLogoInBooth",void 0),e([l],t.prototype,"disableBookmarked",void 0),e([l],t.prototype,"hideLanguage",void 0),e([l],t.prototype,"monochrome",void 0),e([l],t.prototype,"heatmap",void 0),e([l],t.prototype,"heatmapYah",void 0),e([l],t.prototype,"debugCircles",void 0),e([l],t.prototype,"mapControlsHidden",void 0),e([l],t.prototype,"floorsControlHidden",void 0),e([l],t.prototype,"hideFreeOrDemo",void 0),e([l],t.prototype,"freeBannerDismissed",void 0),e([l],t.prototype,"currentBanner",void 0),e([l],t.prototype,"sceneDefReady",void 0),e([l],t.prototype,"categoryFilterOpen",void 0),e([l],t.prototype,"selectedCategoryFilters",void 0),e([l],t.prototype,"selectedPoiTypeFilters",void 0),e([l],t.prototype,"selectedTrack",void 0),e([l],t.prototype,"subButtonsVisible",void 0),e([l],t.prototype,"mapControlsDOMRect",void 0),e([l],t.prototype,"searchBoxMode",void 0),e([l],t.prototype,"searchBoxTitle",void 0),e([l],t.prototype,"searchBoxSubtitle",void 0),e([l],t.prototype,"routeTitle",void 0),e([l],t.prototype,"routeDescription",void 0),e([l],t.prototype,"isMultiPointRoute",void 0),e([l],t.prototype,"tourTitle",void 0),e([l],t.prototype,"tourDescription",void 0),e([l],t.prototype,"isMultiPointTour",void 0),e([l],t.prototype,"pathwayOnlyMode",void 0),e([l],t.prototype,"isOverlayScrolled",void 0),e([l],t.prototype,"listScrollTop",void 0),e([l],t.prototype,"listScrollItemId",void 0),e([l],t.prototype,"listScrollIndex",void 0),e([l],t.prototype,"_customUIScale",void 0),e([u],t.prototype,"setSelectedCategoryFilters",null),e([u],t.prototype,"resetCategoryFilter",null),e([u],t.prototype,"setSearchClearMode",null),e([u],t.prototype,"setRouteTitle",null),e([u],t.prototype,"setRouteDescription",null),e([u],t.prototype,"setIsMultiPointRoute",null),e([u],t.prototype,"setTourTitle",null),e([u],t.prototype,"setTourDescription",null),e([u],t.prototype,"setIsMultiPointTour",null),e([u],t.prototype,"setPathwayOnlyMode",null),e([u],t.prototype,"setMultiPointTourList",null),e([n],t.prototype,"activePathwayLayers",null),e([n],t.prototype,"highlightedBooths",null),e([n],t.prototype,"rtl",null),e([n({keepAlive:!0})],t.prototype,"noOverlay",null),e([n],t.prototype,"overlayOnDemand",null),e([n],t.prototype,"overlayHiddenNow",null),e([n({keepAlive:!0})],t.prototype,"selectedExhibitor",null),e([n({keepAlive:!0})],t.prototype,"selectedBooth",null),e([n({keepAlive:!0})],t.prototype,"selectedCategory",null),e([n({keepAlive:!0})],t.prototype,"selectedRoute",null),e([n({keepAlive:!0})],t.prototype,"selectedSpeaker",null),e([n({keepAlive:!0})],t.prototype,"uiScale",null),e([n({keepAlive:!0})],t.prototype,"isGuidedToursActive",null),e([n({keepAlive:!0})],t.prototype,"getRouteNextFloor",null),e([n],t.prototype,"headerHeightRem",null),e([n],t.prototype,"headerHeightPx",null),e([n],t.prototype,"overlayPosition",null),e([n],t.prototype,"overlayCollapsed",null),e([n],t.prototype,"overlaySize",null),e([n],t.prototype,"overlayBottom",null),e([n],t.prototype,"overlayLeft",null),e([n],t.prototype,"overlayWidthPx",null),e([n({keepAlive:!0})],t.prototype,"wsImageHeightPx",null),e([n],t.prototype,"wsPaddingPx",null),e([n],t.prototype,"wsOccupiedHeightPx",null),e([n({keepAlive:!0})],t.prototype,"wsShown",null),e([n],t.prototype,"wsDesktopPosition",null),e([n],t.prototype,"wsPosition",null),e([n],t.prototype,"responsiveClass",null),e([n],t.prototype,"mapVisibleTop",null),e([n],t.prototype,"mapVisibleBottom",null),e([n],t.prototype,"mapVisibleStart",null),e([n],t.prototype,"searchActionsHeightPx",null),e([n],t.prototype,"fullSizeOffset",null),e([n],t.prototype,"shouldShowSearchButtons",null),e([n],t.prototype,"shouldShowMobileToggle",null),e([n],t.prototype,"mobileToggleIsListMode",null),e([n],t.prototype,"canvasVisibleRectPx",null),e([n],t.prototype,"shouldShiftMapRect",null),e([n],t.prototype,"hasAppliedFilters",null),e([n],t.prototype,"canvasVisibleRectPt",null),e([n],t.prototype,"canvasSizePt",null),e([n({keepAlive:!0})],t.prototype,"shouldUseBackdrop",null),e([l],t.prototype,"forceDim",void 0),e([u],t.prototype,"setForceDim",null),e([n],t.prototype,"dimmed",null),e([n],t.prototype,"defaultSearchItems",null),e([n],t.prototype,"searchItems",null),e([n],t.prototype,"searchList",null),e([n],t.prototype,"foundInDescription",null),e([n],t.prototype,"foundInDescriptionStruct",null),e([n],t.prototype,"categoryFilteredSearchList",null),e([n],t.prototype,"fuzzySearchItems",null),e([n],t.prototype,"listItems",null),e([n({keepAlive:!0})],t.prototype,"listBooths",null),e([n({keepAlive:!0})],t.prototype,"selectedBooths",null),e([n({keepAlive:!0})],t.prototype,"hoveredBooths",null),e([n],t.prototype,"visibility",null),e([u],t.prototype,"setVisibility",null),e([u],t.prototype,"toggleMapOverlay",null),e([u],t.prototype,"changeZoom",null),e([u],t.prototype,"zoomIn",null),e([u],t.prototype,"zoomOut",null),e([u],t.prototype,"fitBounds",null),e([n({keepAlive:!0})],t.prototype,"selectedEventItem",null),e([l],t.prototype,"mapSettings",void 0),e([u],t.prototype,"setMapSettings",null),e([u],t.prototype,"resetMapSettings",null),e([n],t.prototype,"baseQRCodeUrl",null),e([n],t.prototype,"viewMapOnPhoneQRCodeUrl",null),e([n],t.prototype,"routeQRCodeUrl",null),e([n],t.prototype,"isFeaturedExhibitorActive",null),e([n],t.prototype,"activeInterfaceData",null),e([n],t.prototype,"searchBoxConfig",null),e([n],t.prototype,"searchBoxActions",null),e([n],t.prototype,"overlayInterfaceClasses",null),e([n],t.prototype,"isOverlayOpen",null),e([u],t.prototype,"setOverlayScrolled",null),e([u],t.prototype,"setListScrollTop",null),e([u],t.prototype,"setListScrollItemId",null),e([u],t.prototype,"getListScrollTop",null),e([u],t.prototype,"getListScrollItemId",null),e([u],t.prototype,"clearListScroll",null),e([n],t.prototype,"bannerType",null),e([n],t.prototype,"isBannerVisible",null),e([u],t.prototype,"setCurrentBanner",null),e([l],t.prototype,"forceShowDetails",void 0),e([u],t.prototype,"setForceShowDetails",null),e([n],t.prototype,"showRouteInstantly",null),e([l],t.prototype,"buildRoute",void 0),e([u],t.prototype,"startBuildRoute",null),e([l],t.prototype,"globalErrorMessages",void 0),e([u],t.prototype,"setGlobalErrorMessage",null),e([u],t.prototype,"popGlobalErrorMessage",null),e([u],t.prototype,"initializeUIScale",null),e([u],t.prototype,"setUIScale",null),e([u],t.prototype,"resetUIScale",null),e([l],t.prototype,"setKioskModeEnabled",void 0),e([u],t.prototype,"enableSetKioskMode",null),e([l],t.prototype,"kioskData",void 0),e([u],t.prototype,"setKioskData",null);function F(K,o,a=[]){const s=[];return K.forEach(c=>{c instanceof x?s.push(...c.booths):c instanceof I?s.push(c):c instanceof R?c.boothId&&s.push(o.find(i=>i.id===c.boothId)):c instanceof V&&a.filter(i=>i.speakers.some(r=>r.id===c.id)&&i.boothId).forEach(i=>s.push(o.find(r=>r.id===i.boothId)))}),new Set(s.filter(Boolean))}
|
|
@@ -2,7 +2,7 @@ export declare class FpSettings {
|
|
|
2
2
|
boothLabelColor: string;
|
|
3
3
|
boothBorderColor: string;
|
|
4
4
|
backgroundColor: string;
|
|
5
|
-
boothBorderWidth
|
|
5
|
+
boothBorderWidth?: number;
|
|
6
6
|
heatmapColors: string[];
|
|
7
7
|
maxZoom?: number;
|
|
8
8
|
}
|
|
@@ -15,7 +15,7 @@ declare class Settings extends FpSettings {
|
|
|
15
15
|
default: string;
|
|
16
16
|
defaultHold: string;
|
|
17
17
|
defaultSold: string;
|
|
18
|
-
seectedLight: null;
|
|
18
|
+
seectedLight: string | null;
|
|
19
19
|
selected: string;
|
|
20
20
|
selectedBorder: null;
|
|
21
21
|
wayfinding: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import t from"deepmerge";import{getFpSvgJs as l}from"../data/fp-payloads.js";export class FpSettings{constructor(){this.boothLabelColor="#fff",this.boothBorderColor="#fff",this.backgroundColor="#ebebeb",this.heatmapColors=["#FDE7C7","#FDDBAE","#FDC48D","#FCB37C","#FCA26D","#F67B5B","#EB483E","#E03143","#6C0022"]}}class i extends FpSettings{constructor(){super(...arguments),this.EXPO=window.__efpEvent,this.borderless=!1,this.wayfinding=!1,this.colors={booths:{default:"#41b6e7",defaultHold:"#48484A",defaultSold:"#41b6e7",seectedLight:null,selected:"#fb3e59",selectedBorder:null,wayfinding:{selected:"#0088D6",selectedBorder:null},empty:"#aaaaaa"}}}}let e=new i;e.EXPO.startsWith("sxsw2024")?(e.colors.booths.selected="#FF6400",e.colors.booths.seectedLight="#808080"):e.EXPO==="whxdubai2026"?(e.colors.booths.selected="#2B66FE",e.maxZoom=450):e.EXPO==="whxlabs2026"?e.colors.booths.selected="#2B66FE":(e.EXPO==="wineparis2026"||e.EXPO==="rdemo2025")&&(e.maxZoom=450);const r=window.__settings,s=l().__fpSettings??{};e=t(e,r??s),e=t(e,s);export default e;
|