UNPKG

@expofp/floorplan

Version:

Interactive floor plan library for expos and events

2,046 lines • 85.1 kB
(function() {
	try {
		var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
		e.SENTRY_RELEASE = { id: "3.47.0" };
		var t = new e.Error().stack;
		t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "f2d4ba0c-abb5-477e-ab59-50fb5e1af18e", e._sentryDebugIdIdentifier = "sentry-dbid-f2d4ba0c-abb5-477e-ab59-50fb5e1af18e");
	} catch {}
})();
import { r as e, t } from "./rolldown-runtime-5rOLGCTp.js";
import { A as n, D as r, O as i, U as a, V as o, k as s, l as c, m as l, n as u, s as d, t as f } from "./i18n-DlquqKCP.js";
import { o as p } from "./is-debug-IkNSAGo8.js";
import { a as m, c as h, n as g } from "./mobx.module-BTnTbXnp.js";
import { s as _, u as v } from "./kioskApi-CG3QGuUx.js";
import { u as y } from "./store-DTvNQcN7.js";
import { n as b } from "./freeBanner-BQ-1hI0V.js";
import { $t as x, G as S, Gt as ee, Jt as C, L as w, Ut as T, Vt as E, bt as te, et as D, g as O, in as ne, nt as k, rt as A } from "./LayerStore-DCg-juRT.js";
import { f as re, n as j, o as ie } from "./RouteStore-B82dztUW.js";
import { n as ae } from "./kiosk-mode-zD8K_fUT.js";
import { c as oe, o as se, r as M, s as ce, t as le } from "./scene-CeKqMicD.js";
//#region ../../node_modules/.pnpm/resize-observer@1.0.4/node_modules/resize-observer/lib/ContentRect.js
var ue = /* @__PURE__ */ t(((e) => {
	Object.defineProperty(e, "__esModule", { value: !0 }), e.ContentRect = function(e) {
		if ("getBBox" in e) {
			var t = e.getBBox();
			return Object.freeze({
				height: t.height,
				left: 0,
				top: 0,
				width: t.width
			});
		} else {
			var n = window.getComputedStyle(e);
			return Object.freeze({
				height: parseFloat(n.height || "0"),
				left: parseFloat(n.paddingLeft || "0"),
				top: parseFloat(n.paddingTop || "0"),
				width: parseFloat(n.width || "0")
			});
		}
	};
})), de = /* @__PURE__ */ t(((e) => {
	Object.defineProperty(e, "__esModule", { value: !0 });
	var t = ue();
	e.ResizeObservation = function() {
		function e(e) {
			this.target = e, this.$$broadcastWidth = this.$$broadcastHeight = 0;
		}
		return Object.defineProperty(e.prototype, "broadcastWidth", {
			get: function() {
				return this.$$broadcastWidth;
			},
			enumerable: !0,
			configurable: !0
		}), Object.defineProperty(e.prototype, "broadcastHeight", {
			get: function() {
				return this.$$broadcastHeight;
			},
			enumerable: !0,
			configurable: !0
		}), e.prototype.isActive = function() {
			var e = t.ContentRect(this.target);
			return !!e && (e.width !== this.broadcastWidth || e.height !== this.broadcastHeight);
		}, e;
	}();
})), fe = /* @__PURE__ */ t(((e) => {
	Object.defineProperty(e, "__esModule", { value: !0 });
	var t = ue();
	e.ResizeObserverEntry = function() {
		function e(e) {
			this.target = e, this.contentRect = t.ContentRect(e);
		}
		return e;
	}();
})), pe = /* @__PURE__ */ t(((e) => {
	Object.defineProperty(e, "__esModule", { value: !0 });
	var t = de(), n = fe(), r = [], i = function() {
		function e(e) {
			this.$$observationTargets = [], this.$$activeTargets = [], this.$$skippedTargets = [];
			var t = s(e);
			if (t) throw TypeError(t);
			this.$$callback = e;
		}
		return e.prototype.observe = function(e) {
			var n = c("observe", e);
			if (n) throw TypeError(n);
			l(this.$$observationTargets, e) >= 0 || (this.$$observationTargets.push(new t.ResizeObservation(e)), a(this));
		}, e.prototype.unobserve = function(e) {
			var t = c("unobserve", e);
			if (t) throw TypeError(t);
			var n = l(this.$$observationTargets, e);
			n < 0 || (this.$$observationTargets.splice(n, 1), this.$$observationTargets.length === 0 && o(this));
		}, e.prototype.disconnect = function() {
			this.$$observationTargets = [], this.$$activeTargets = [], o(this);
		}, e;
	}();
	e.ResizeObserver = i;
	function a(e) {
		r.indexOf(e) < 0 && (r.push(e), v());
	}
	function o(e) {
		var t = r.indexOf(e);
		t >= 0 && (r.splice(t, 1), b());
	}
	function s(e) {
		if (e === void 0) return "Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.";
		if (typeof e != "function") return "Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.";
	}
	function c(e, t) {
		if (t === void 0) return "Failed to execute '" + e + "' on 'ResizeObserver': 1 argument required, but only 0 present.";
		if (!(t && t.nodeType === window.Node.ELEMENT_NODE)) return "Failed to execute '" + e + "' on 'ResizeObserver': parameter 1 is not of type 'Element'.";
	}
	function l(e, t) {
		for (var n = 0; n < e.length; n += 1) if (e[n].target === t) return n;
		return -1;
	}
	var u = function(e) {
		r.forEach(function(t) {
			t.$$activeTargets = [], t.$$skippedTargets = [], t.$$observationTargets.forEach(function(n) {
				n.isActive() && (h(n.target) > e ? t.$$activeTargets.push(n) : t.$$skippedTargets.push(n));
			});
		});
	}, d = function() {
		return r.some(function(e) {
			return !!e.$$activeTargets.length;
		});
	}, f = function() {
		return r.some(function(e) {
			return !!e.$$skippedTargets.length;
		});
	}, p = function() {
		var e = Infinity;
		return r.forEach(function(t) {
			if (t.$$activeTargets.length) {
				var r = [];
				t.$$activeTargets.forEach(function(t) {
					var i = new n.ResizeObserverEntry(t.target);
					r.push(i), t.$$broadcastWidth = i.contentRect.width, t.$$broadcastHeight = i.contentRect.height;
					var a = h(t.target);
					a < e && (e = a);
				}), t.$$callback(r, t), t.$$activeTargets = [];
			}
		}), e;
	}, m = function() {
		var e = new window.ErrorEvent("ResizeLoopError", { message: "ResizeObserver loop completed with undelivered notifications." });
		window.dispatchEvent(e);
	}, h = function(e) {
		for (var t = 0; e.parentNode;) e = e.parentNode, t += 1;
		return t;
	}, g = function() {
		var e = 0;
		for (u(e); d();) e = p(), u(e);
		f() && m();
	}, _, v = function() {
		_ || y();
	}, y = function() {
		_ = window.requestAnimationFrame(function() {
			g(), y();
		});
	}, b = function() {
		_ && !r.some(function(e) {
			return !!e.$$observationTargets.length;
		}) && (window.cancelAnimationFrame(_), _ = void 0);
	};
	e.install = function() {
		return window.ResizeObserver = i;
	};
})), me = () => _;
//#endregion
//#region src/components/Kiosk/SetKiosk/getKioskUrlParamKey.ts
function N(e) {
	return `${v}${e}`;
}
//#endregion
//#region src/store/CategoryStore.ts
var he = /* @__PURE__ */ e(te(), 1), P, F;
function I(e, t, n, r, i) {
	var a = {};
	return Object.keys(r).forEach(function(e) {
		a[e] = r[e];
	}), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
		return r(e, t, n) || n;
	}, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
}
var ge = (P = m({ keepAlive: !0 }), F = class {
	get categoryById() {
		return new Map(this.categories.map((e) => [e.id, e]));
	}
	get seminarsCategory() {
		return this.categories.find((e) => e.slug === "seminars");
	}
	constructor(e) {
		this.rootStore = void 0, this.categories = [], this.rootStore = e;
	}
}, I(F.prototype, "categoryById", [P], Object.getOwnPropertyDescriptor(F.prototype, "categoryById"), F.prototype), I(F.prototype, "seminarsCategory", [m], Object.getOwnPropertyDescriptor(F.prototype, "seminarsCategory"), F.prototype), F), L = class {
	constructor() {
		this.store = void 0, this.id = void 0, this.name = void 0, this.slug = void 0, this.sponsorship = void 0, this.exhibitors = void 0, this.entity = { type: "category" };
	}
}, R, z, _e, B;
function ve(e, t, n, r) {
	n && Object.defineProperty(e, t, {
		enumerable: n.enumerable,
		configurable: n.configurable,
		writable: n.writable,
		value: n.initializer ? n.initializer.call(r) : void 0
	});
}
function V(e, t, n, r, i) {
	var a = {};
	return Object.keys(r).forEach(function(e) {
		a[e] = r[e];
	}), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
		return r(e, t, n) || n;
	}, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
}
var ye = (B = class {
	constructor(e) {
		this.rootStore = void 0, this.eventItems = [], this.rootStore = e;
	}
	findByNameOrSlug(e) {
		return this.eventItems.find((t) => t.name === e || t.slug === e || t.externalId === e);
	}
	get bookmarked() {
		return this.eventItems.filter((e) => e.bookmarked);
	}
	get visited() {
		return this.eventItems.filter((e) => e.visited);
	}
	get tracks() {
		let e = /* @__PURE__ */ new Map();
		return this.eventItems.forEach((t) => {
			t.tracks.forEach((t) => {
				e.set(t.id, t);
			});
		}), Array.from(e.values()).sort((e, t) => e.name.localeCompare(t.name));
	}
	getEventsByTrack(e) {
		return this.eventItems.filter((t) => t.tracks.some((t) => t.id === e));
	}
	getEventsBySpeaker(e) {
		return this.eventItems.filter((t) => t.speakers.some((t) => t.id === e));
	}
	get venues() {
		let e = /* @__PURE__ */ new Map();
		return this.eventItems.forEach((t) => {
			if (t.boothId) {
				let n = this.rootStore.boothStore.booths.find((e) => e.id === t.boothId);
				n && e.set(n.id, n);
			}
		}), Array.from(e.values()).sort((e, t) => e.name.localeCompare(t.name));
	}
	getEventsByVenue(e) {
		return this.eventItems.filter((t) => t.boothId === e);
	}
	get pastEvents() {
		let e = /* @__PURE__ */ new Date();
		return this.eventItems.filter((t) => new Date(t.endDate) < e);
	}
	get futureEvents() {
		let e = /* @__PURE__ */ new Date();
		return this.eventItems.filter((t) => new Date(t.startDate) > e);
	}
	get liveEvents() {
		let e = /* @__PURE__ */ new Date();
		return this.eventItems.filter((t) => {
			let n = new Date(t.startDate), r = new Date(t.endDate);
			return n <= e && e <= r;
		});
	}
	get todayEvents() {
		let e = /* @__PURE__ */ new Date();
		return e.setHours(0, 0, 0, 0), this.eventItems.filter((t) => {
			let n = new Date(t.startDate);
			return n.setHours(0, 0, 0, 0), n.getTime() === e.getTime();
		});
	}
	get tomorrowEvents() {
		let e = /* @__PURE__ */ new Date();
		return e.setDate(e.getDate() + 1), e.setHours(0, 0, 0, 0), this.eventItems.filter((t) => {
			let n = new Date(t.startDate);
			return n.setHours(0, 0, 0, 0), n.getTime() === e.getTime();
		});
	}
	replaceBookmarked(e) {
		let t = (e || []).map((e) => this.eventItems.find((t) => t.id === e)).filter((e) => e), n = new Set(t), r = this.bookmarked.filter((e) => !n.has(e));
		for (let e of r) e.bookmarked = !1;
		for (let e of t) e.bookmarked = !0;
	}
	replaceVisited(e) {
		let t = (e || []).map((e) => this.eventItems.find((t) => t.id === e)).filter((e) => e), n = new Set(t), r = this.visited.filter((e) => !n.has(e));
		for (let e of r) e.visited = !1;
		for (let e of t) e.visited = !0;
	}
}, V(B.prototype, "bookmarked", [m], Object.getOwnPropertyDescriptor(B.prototype, "bookmarked"), B.prototype), V(B.prototype, "visited", [m], Object.getOwnPropertyDescriptor(B.prototype, "visited"), B.prototype), V(B.prototype, "tracks", [m], Object.getOwnPropertyDescriptor(B.prototype, "tracks"), B.prototype), V(B.prototype, "venues", [m], Object.getOwnPropertyDescriptor(B.prototype, "venues"), B.prototype), V(B.prototype, "pastEvents", [m], Object.getOwnPropertyDescriptor(B.prototype, "pastEvents"), B.prototype), V(B.prototype, "futureEvents", [m], Object.getOwnPropertyDescriptor(B.prototype, "futureEvents"), B.prototype), V(B.prototype, "liveEvents", [m], Object.getOwnPropertyDescriptor(B.prototype, "liveEvents"), B.prototype), V(B.prototype, "todayEvents", [m], Object.getOwnPropertyDescriptor(B.prototype, "todayEvents"), B.prototype), V(B.prototype, "tomorrowEvents", [m], Object.getOwnPropertyDescriptor(B.prototype, "tomorrowEvents"), B.prototype), V(B.prototype, "replaceBookmarked", [g], Object.getOwnPropertyDescriptor(B.prototype, "replaceBookmarked"), B.prototype), V(B.prototype, "replaceVisited", [g], Object.getOwnPropertyDescriptor(B.prototype, "replaceVisited"), B.prototype), B), H = (R = class {
	constructor(e, t, n, r, i, a, o, s, c = [], l = [], u = { type: "event" }) {
		this.id = e, this.externalId = t, this.boothId = n, this.name = r, this.description = i, this.startDate = a, this.endDate = o, this.logoFile = s, this.speakers = c, this.tracks = l, this.entity = u, this.slug = void 0, ve(this, "bookmarked", z, this), ve(this, "visited", _e, this), this.slug = S(r || `event-${e}`);
	}
	get isEnded() {
		return this.endDate && new Date(this.endDate).getTime() < (/* @__PURE__ */ new Date()).getTime();
	}
	get hasSpeakers() {
		return this.speakers.length > 0;
	}
	get hasTracks() {
		return this.tracks.length > 0;
	}
	get primaryTrack() {
		return this.tracks.length > 0 ? this.tracks[0] : null;
	}
	get speakerNames() {
		return this.speakers.map((e) => e.name).join(", ");
	}
	get trackNames() {
		return this.tracks.map((e) => e.name).join(", ");
	}
}, z = V(R.prototype, "bookmarked", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), _e = V(R.prototype, "visited", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), R);
//#endregion
//#region src/utils/color-gradient.ts
function be(e, t, n, r) {
	if (r.length === 0) return "transparent";
	let i = r.map((e) => (0, he.default)(e)), a = Math.max(0, Math.min((e - t) / (n - t) || 0, 1)), o = Math.sqrt(a) * (i.length - 1), s = Math.min(Math.floor(o), i.length - 1), c = i[s], l = i[Math.min(s + 1, i.length - 1)], u = o - s;
	return c.mix(l, u).hex();
}
//#endregion
//#region src/store/HeatmapStore.ts
var xe, U;
function Se(e, t, n, r, i) {
	var a = {};
	return Object.keys(r).forEach(function(e) {
		a[e] = r[e];
	}), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
		return r(e, t, n) || n;
	}, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
}
var Ce = (xe = m({ keepAlive: !0 }), U = class {
	constructor() {
		this.heatmapData = {}, this.forceTrack = null;
	}
	get minAndMaxClicks() {
		let { booths: e = [], exhibitors: t = [], yah: n = [] } = this.heatmapData, r = [
			...e,
			...t,
			...n
		];
		if (r.length === 0) return {
			min: 0,
			max: 0
		};
		let { min: i, max: a } = ((e) => e.reduce((e, t) => (t.viewCount > e.max && (e.max = t.viewCount), t.viewCount < e.min && (e.min = t.viewCount), e), {
			min: e[0].viewCount,
			max: e[0].viewCount
		}))(r);
		return {
			min: i,
			max: a
		};
	}
	getClicksByType(e) {
		return e instanceof L ? -1 : e instanceof O || e instanceof W ? this.getClicksByItem(e) : e instanceof H ? 0 : this.getClicksByItem(e);
	}
	getClicksByItem(e) {
		if (e instanceof O) {
			var t;
			return ((t = this.heatmapData) == null || (t = t.exhibitors) == null || (t = t.find((t) => t.id === e.id)) == null ? void 0 : t.viewCount) || 0;
		}
		if (e instanceof D) {
			var n;
			return ((n = this.heatmapData) == null || (n = n.booths) == null || (n = n.find((t) => t.id === e.id)) == null ? void 0 : n.viewCount) || 0;
		}
		if (e instanceof W) {
			var r;
			return ((r = this.heatmapData) == null || (r = r.yah) == null || (r = r.find((t) => t.id === e.id)) == null ? void 0 : r.viewCount) || 0;
		}
		return 0;
	}
	getTotalClicksByBooth(e) {
		let t = this.getClicksByItem(e);
		for (let n of e.exhibitors) {
			let e = this.getClicksByItem(n);
			t += e;
		}
		return t;
	}
	getColorByClicks(e) {
		let { min: t, max: n } = this.minAndMaxClicks;
		return be(e, t, n, E.heatmapColors);
	}
	getHeatmapColorForBooth(e) {
		let t = this.getTotalClicksByBooth(e);
		return (0, he.default)(this.getColorByClicks(t));
	}
}, Se(U.prototype, "minAndMaxClicks", [xe], Object.getOwnPropertyDescriptor(U.prototype, "minAndMaxClicks"), U.prototype), U), W = class {
	constructor(e, t, n, r, i, a) {
		this.id = e, this.name = t, this.viewCount = n, this.x = r, this.y = i, this.z = a, this.entity = { type: "heatmap-yah" };
	}
}, G, we, K, Te;
function Ee(e, t, n, r) {
	n && Object.defineProperty(e, t, {
		enumerable: n.enumerable,
		configurable: n.configurable,
		writable: n.writable,
		value: n.initializer ? n.initializer.call(r) : void 0
	});
}
function q(e, t, n, r, i) {
	var a = {};
	return Object.keys(r).forEach(function(e) {
		a[e] = r[e];
	}), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
		return r(e, t, n) || n;
	}, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
}
var J = (G = class {
	constructor(e, t, n, r, i, a, o = { type: "speaker" }) {
		this.id = e, this.externalId = t, this.name = n, this.company = r, this.jobTitle = i, this.photoFile = a, this.entity = o, this.slug = void 0, Ee(this, "bookmarked", we, this), this.slug = S(n || `speaker-${e}`);
	}
	get displayName() {
		return this.name;
	}
	get fullTitle() {
		let e = [this.name];
		return this.jobTitle && e.push(this.jobTitle), this.company && e.push(this.company), e.join(" - ");
	}
	get hasPhoto() {
		return !!this.photoFile;
	}
	get hasCompany() {
		return !!this.company;
	}
	get hasJobTitle() {
		return !!this.jobTitle;
	}
}, we = q(G.prototype, "bookmarked", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), G), De = (K = class {
	constructor(e) {
		this.rootStore = void 0, this.speakersMap = /* @__PURE__ */ new Map(), Ee(this, "selectedSpeaker", Te, this), this.rootStore = e;
	}
	get speakers() {
		return Array.from(this.speakersMap.values()).sort((e, t) => e.name.localeCompare(t.name));
	}
	getSpeakerById(e) {
		return this.speakersMap.get(e);
	}
	getSpeakerBySlug(e) {
		return Array.from(this.speakersMap.values()).find((t) => t.slug === e);
	}
	addSpeaker(e) {
		if (this.speakersMap.has(e.id)) return this.speakersMap.get(e.id);
		let t = new J(e.id, e.externalId, e.name, e.company, e.jobTitle, e.photoFile);
		return this.speakersMap.set(e.id, t), t;
	}
	get companies() {
		let e = /* @__PURE__ */ new Set();
		return this.speakers.forEach((t) => {
			t.company && e.add(t.company);
		}), Array.from(e).sort();
	}
	get jobTitles() {
		let e = /* @__PURE__ */ new Set();
		return this.speakers.forEach((t) => {
			t.jobTitle && e.add(t.jobTitle);
		}), Array.from(e).sort();
	}
	getSpeakersByCompany(e) {
		return this.speakers.filter((t) => t.company === e);
	}
	getSpeakersByJobTitle(e) {
		return this.speakers.filter((t) => t.jobTitle === e);
	}
	getEventsBySpeaker(e) {
		return this.rootStore.eventStore.eventItems.filter((t) => t.speakers.some((t) => t.id === e));
	}
	findBySlug(e) {
		return this.getSpeakerBySlug(e);
	}
	selectSpeaker(e, t = !0) {
		this.selectedSpeaker = e, this.rootStore.uiState.details = e, this.rootStore.uiState.desiredOverlaySize = "medium";
	}
	get bookmarked() {
		return this.speakers.filter((e) => e.bookmarked);
	}
	replaceBookmarked(e) {
		let t = (e || []).map((e) => this.speakersMap.get(e)).filter((e) => e), n = new Set(t), r = this.bookmarked.filter((e) => !n.has(e));
		for (let e of r) e.bookmarked = !1;
		for (let e of t) e.bookmarked = !0;
	}
	clearSelectedSpeaker() {
		this.selectedSpeaker = null, this.rootStore.uiState.details = null;
	}
}, Te = q(K.prototype, "selectedSpeaker", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), q(K.prototype, "speakers", [m], Object.getOwnPropertyDescriptor(K.prototype, "speakers"), K.prototype), q(K.prototype, "companies", [m], Object.getOwnPropertyDescriptor(K.prototype, "companies"), K.prototype), q(K.prototype, "jobTitles", [m], Object.getOwnPropertyDescriptor(K.prototype, "jobTitles"), K.prototype), q(K.prototype, "selectSpeaker", [g], Object.getOwnPropertyDescriptor(K.prototype, "selectSpeaker"), K.prototype), q(K.prototype, "bookmarked", [m], Object.getOwnPropertyDescriptor(K.prototype, "bookmarked"), K.prototype), q(K.prototype, "replaceBookmarked", [g], Object.getOwnPropertyDescriptor(K.prototype, "replaceBookmarked"), K.prototype), q(K.prototype, "clearSelectedSpeaker", [g], Object.getOwnPropertyDescriptor(K.prototype, "clearSelectedSpeaker"), K.prototype), K), Oe = [
	"x",
	"y",
	"z"
];
function ke(e) {
	let t = {}, n = je(e, "x");
	n !== null && (t.x = n);
	let r = je(e, "y");
	r !== null && (t.y = r);
	let i = e.get(N("z"));
	return i !== null && (t.z = i), t;
}
function Ae(e, t) {
	if (t) for (let n of Oe) {
		let r = t[n];
		r != null && e.set(N(n), typeof r == "number" ? r.toFixed(2) : `${r}`);
	}
}
function je(e, t) {
	let n = e.get(N(t));
	if (n === null) return null;
	let r = parseFloat(n);
	return Number.isNaN(r) ? null : r;
}
//#endregion
//#region src/tools/has-html-tags.ts
function Me(e) {
	return /<[^>]*>/.test(e);
}
//#endregion
//#region src/tools/strip-html.ts
function Ne(e) {
	var t;
	if (typeof document > "u") return e;
	let n = document.createElement("div");
	return n.innerHTML = e, (t = n.textContent) == null ? "" : t;
}
//#endregion
//#region src/utils/responsiveClass.ts
var Pe = {
	xs: 0,
	sm: 480,
	md: 768,
	lg: 998,
	xl: 1100
};
function Fe(e) {
	let { sm: t, md: n, lg: r, xl: i } = Pe;
	return e < t ? "xs" : e >= t && e < n ? "sm" : e >= n && e < r ? "md" : e >= r && e < i ? "lg" : "xl";
}
//#endregion
//#region src/utils/trackingParams.ts
var Ie = [
	"_gl",
	"_ga",
	"_ga_[\\w-]+",
	"gclid",
	"gclsrc",
	"gbraid",
	"wbraid",
	"gad_source",
	"fbclid",
	"utm_[\\w-]+"
], Le = RegExp(`^(${Ie.join("|")})$`, "i");
function Re(e) {
	let t = e.startsWith("?") ? e.slice(1) : e;
	if (!t) return null;
	let n = t.split("&"), r = n.filter((e) => !Le.test(e.split("=")[0]));
	return r.length === n.length ? null : r.join("&");
}
//#endregion
//#region src/utils/sanitizeText.ts
var ze = (e) => e.trim().replace(/[^a-z0-9]/gi, "");
function Be(e, t = []) {
	if (!e) return "";
	let n = [
		...Ie,
		"ref=",
		"lp_id=",
		"lp_token=",
		`${me()}=`
	].concat(t), r = RegExp(`(^|\\?|&)(${n.join("|")})[^&]*`, "g");
	return e.replace(r, "").replace(/(^|[?&])([^=&#]+)=(?=&|$)/g, (e, t, n) => `${t}${n}`);
}
//#endregion
//#region src/store/UIState.ts
var Ve, He, Ue, We, Ge, Ke, qe, Je, Ye, Xe, Ze, Qe, $e, et, tt, nt, rt, it, at, ot, st, Y, ct, lt, ut, dt, ft, pt, mt, ht, gt, _t, vt, yt, bt, xt, St, Ct, wt, Tt, Et, Dt, Ot, kt, At, jt, Mt, Nt, Pt, Ft, It, Lt, Rt, zt, Bt, Vt, Ht, Ut, Wt, Gt, Kt, qt, Jt, Yt, Xt, Zt, Qt, $t, en, tn, nn, rn, an, on, sn, cn, ln, un, X, dn, fn, pn, mn, hn, gn, _n, vn, yn, bn, xn, Sn, Cn, wn, Tn;
function Z(e, t, n, r) {
	n && Object.defineProperty(e, t, {
		enumerable: n.enumerable,
		configurable: n.configurable,
		writable: n.writable,
		value: n.initializer ? n.initializer.call(r) : void 0
	});
}
function Q(e, t, n, r, i) {
	var a = {};
	return Object.keys(r).forEach(function(e) {
		a[e] = r[e];
	}), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
		return r(e, t, n) || n;
	}, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
}
var En = 1.5, Dn = .66, On = ["dimensions25"], kn = (Ve = h.struct, He = h.ref, Ue = h.ref, We = h.ref, Ge = h.struct, Ke = m({ keepAlive: !0 }), qe = m({ keepAlive: !0 }), Je = m({ keepAlive: !0 }), Ye = m({ keepAlive: !0 }), Xe = m({ keepAlive: !0 }), Ze = m({ keepAlive: !0 }), Qe = m({ keepAlive: !0 }), $e = m({ keepAlive: !0 }), et = m({ keepAlive: !0 }), tt = m({ keepAlive: !0 }), nt = m({ keepAlive: !0 }), rt = m({ keepAlive: !0 }), it = m({ keepAlive: !0 }), at = m({ keepAlive: !0 }), ot = m({ keepAlive: !0 }), st = m({ keepAlive: !0 }), Y = class {
	setSelectedCategoryFilters(e) {
		this.selectedCategoryFilters = e;
	}
	resetCategoryFilter() {
		this.selectedCategoryFilters = [], this.categoryFilterOpen = !1;
	}
	setSearchClearMode(e) {
		this.searchClearMode = e;
	}
	setRouteTitle(e) {
		this.routeTitle = e;
	}
	setRouteDescription(e) {
		this.routeDescription = e;
	}
	setIsMultiPointRoute(e) {
		this.isMultiPointRoute = e;
	}
	setTourTitle(e) {
		this.tourTitle = e;
	}
	setTourDescription(e) {
		this.tourDescription = e;
	}
	setIsMultiPointTour(e) {
		this.isMultiPointTour = e;
	}
	setPathwayOnlyMode(e) {
		this.pathwayOnlyMode = e;
	}
	setMultiPointTourList(e) {
		this.list = {
			type: "multi-point-tour",
			tourId: e
		};
	}
	get activePathwayLayers() {
		var e;
		if (((e = this.list) == null ? void 0 : e.type) === "multi-point-tour") {
			var t;
			let e = this.rootStore.toursStore.getTourById(this.list.tourId);
			return (e == null || (t = e.layers) == null ? void 0 : t.map((e) => e.id)) || [];
		}
		return [];
	}
	get highlightedBooths() {
		var e, t, n, r, i, a, o;
		let s = new Set(this.rootStore.exhibitorStore.highlightedByExternalIds), c = new Set(this.rootStore.boothStore.highlightedByExternalIds), l = /* @__PURE__ */ new Set([...this.rootStore.exhibitorStore.exhibitors.filter((e) => s.has(e.externalId)).flatMap((e) => e.booths.filter((e) => e instanceof k)).map((e) => e.id.toString()), ...this.rootStore.boothStore.booths.filter((e) => c.has(e.externalId)).map((e) => e.id.toString())]);
		if (((e = this.list) == null ? void 0 : e.type) === "search" && !((t = this.list) == null || (t = t.text) == null) && t.trim().length) {
			l.clear();
			let e = this.fuzzySearchItems.filter((e) => e.score === 0).map((e) => e.item);
			e.length ? $(e, this.rootStore.boothStore.booths, this.rootStore.eventStore.eventItems).forEach((e) => l.add(e.id.toString())) : this.listBooths.forEach((e) => l.add(e.id.toString()));
		}
		if (((n = this.list) == null ? void 0 : n.type) === "filter" && (l.clear(), this.list.items.flatMap((e) => e.booths.filter((e) => e instanceof k)).forEach((e) => l.add(e.id.toString()))), this.categoryFilterOpen && this.selectedCategoryFilters.length > 0 ? (l.clear(), this.selectedCategoryFilters.forEach((e) => {
			e.exhibitors.flatMap((e) => e.booths).forEach((e) => l.add(e.id.toString()));
		})) : ((r = this.list) == null ? void 0 : r.type) === "category" && (l.clear(), this.list.category.exhibitors.flatMap((e) => e.booths).forEach((e) => l.add(e.id.toString()))), ((i = this.list) == null ? void 0 : i.type) === "bookmarks" && (l.clear(), $(this.listItems, this.rootStore.boothStore.booths, this.rootStore.eventStore.eventItems).forEach((e) => l.add(e.id.toString()))), ((a = this.list) == null ? void 0 : a.type) === "visited" && (l.clear(), $(this.listItems, this.rootStore.boothStore.booths, this.rootStore.eventStore.eventItems).forEach((e) => l.add(e.id.toString()))), ((o = this.list) == null ? void 0 : o.type) === "exhibitors") {
			var u;
			l.clear();
			let e = (u = this.list.text) == null ? void 0 : u.toLowerCase().trim(), t = this.rootStore.exhibitorStore.exhibitors;
			e && (t = t.filter((t) => t.name.toLowerCase().includes(e))), t.flatMap((e) => e.booths.filter((e) => e instanceof k)).forEach((e) => l.add(e.id.toString()));
		}
		if (this.selectedPoiTypeFilters.length > 0 && (l.clear(), this.selectedPoiTypeFilters.forEach((e) => {
			this.rootStore.boothStore.booths.filter((t) => t.poiTypeId === e.id).forEach((e) => l.add(e.id.toString()));
		})), this.details instanceof j) {
			var d;
			l.clear(), this.details.from instanceof D && l.add(this.details.from.id.toString()), this.details.to instanceof D && l.add(this.details.to.id.toString()), (d = this.details.waypoints) == null || d.forEach((e) => l.add(e.id.toString()));
		}
		if (this.details instanceof D && (l.clear(), l.add(this.details.id.toString())), this.details instanceof O && (l.clear(), this.details.booths.filter((e) => e instanceof k).forEach((e) => l.add(e.id.toString()))), this.details instanceof H) {
			let e = this.details;
			if (e.boothId) {
				l.clear();
				let t = this.rootStore.boothStore.booths.find((t) => t.id === e.boothId);
				t && l.add(t.id.toString());
			}
		}
		return l;
	}
	constructor(e) {
		this.rootStore = void 0, this.interfaceMetadata = Object.freeze([
			{
				id: "menu",
				className: "efp-overlay-menu",
				priority: 80,
				isActive: () => this.menu,
				searchBoxConfig: () => ({
					mode: "interface",
					title: d("Menu")
				})
			},
			{
				id: "exhibitor",
				className: "efp-overlay-exhibitor",
				priority: 70,
				isActive: () => this.details instanceof O,
				searchBoxConfig: () => ({
					mode: "details",
					title: this.details.name
				})
			},
			{
				id: "booth",
				className: "efp-overlay-booth",
				priority: 70,
				isActive: () => this.details instanceof D,
				searchBoxConfig: () => {
					let e = this.details;
					return {
						mode: "details",
						title: e.title || e.name
					};
				}
			},
			{
				id: "event",
				className: "efp-overlay-event",
				priority: 70,
				isActive: () => this.details instanceof H,
				searchBoxConfig: () => ({
					mode: "details",
					title: this.details.name
				})
			},
			{
				id: "route",
				className: "efp-overlay-route",
				priority: 70,
				isActive: () => this.details instanceof j,
				searchBoxConfig: () => ({
					mode: "details",
					title: d("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: d("Search")
				})
			},
			{
				id: "exhibitors",
				className: "efp-overlay-exhibitors",
				priority: 50,
				isActive: () => this.list.type === "exhibitors" && !this.details,
				searchBoxConfig: () => ({
					mode: "search",
					title: d("Exhibitors")
				})
			},
			{
				id: "filter",
				className: "efp-overlay-filter",
				priority: 50,
				isActive: () => this.list.type === "filter" && !this.details,
				searchBoxConfig: () => ({
					mode: "search",
					title: d("Filter")
				})
			},
			{
				id: "bookmarks",
				className: "efp-overlay-bookmarks",
				priority: 50,
				isActive: () => this.list.type === "bookmarks" && !this.details,
				searchBoxConfig: () => ({
					mode: "interface",
					title: d("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: d("Visited"),
					badge: this.rootStore.exhibitorStore.visited.length
				})
			},
			{
				id: r,
				className: "efp-overlay-language",
				priority: 50,
				isActive: () => this.list.type === r,
				searchBoxConfig: () => ({
					mode: "interface",
					title: d("Language")
				})
			},
			{
				id: "category",
				className: "efp-overlay-category",
				priority: 50,
				isActive: () => !y.menu && !!y.selectedCategory,
				searchBoxConfig: () => {
					var e;
					return {
						mode: "interface",
						title: this.list.type === "category" && ((e = this.list.category) == null ? void 0 : e.name) || d("Categories")
					};
				}
			},
			{
				id: "sessions",
				className: "efp-overlay-sessions",
				priority: 50,
				isActive: () => this.list.type === "sessions" && !this.details,
				searchBoxConfig: () => ({
					mode: "search",
					title: d("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: d("Speakers")
				})
			},
			{
				id: "speaker",
				className: "efp-overlay-speaker",
				priority: 50,
				isActive: () => this.details instanceof J,
				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: d("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 || d("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 || d("Multi-point route")
				})
			},
			{
				id: "route-planner",
				className: "efp-overlay-route-planner",
				priority: 76,
				isActive: () => this.list.type === "route-planner" && (!this.details || this.details instanceof j),
				searchBoxConfig: () => ({
					mode: "interface",
					title: d("Route planner")
				})
			}
		].sort((e, t) => t.priority - e.priority)), Z(this, "list", ct, this), Z(this, "details", lt, this), Z(this, "hoveredExhibitor", ut, this), Z(this, "hoveredBooth", dt, this), Z(this, "zoomBy", ft, this), Z(this, "rollReset", pt, this), Z(this, "moveToBooths", mt, this), Z(this, "moveToRect", ht, this), Z(this, "moveToRectPaddingPercent", gt, this), Z(this, "moveToLocation", _t, this), Z(this, "menu", vt, this), Z(this, "searchFocused", yt, this), Z(this, "searchClearMode", bt, this), Z(this, "printingPdf", xt, this), Z(this, "screenSize", St, this), Z(this, "desiredOverlaySize", Ct, this), Z(this, "overlayShowsAll", wt, this), Z(this, "centerMap", Tt, this), Z(this, "zoomAfTransformK", Et, this), Z(this, "activeListIndex", Dt, this), Z(this, "devicePixelRatio", Ot, this), this.previewExhibitor = null, Z(this, "wsStarted", kt, this), Z(this, "canvasStarted", At, this), Z(this, "inIdle", jt, this), Z(this, "modalActive", Mt, this), Z(this, "galleryActive", Nt, this), Z(this, "hideOverlay", Pt, this), Z(this, "searchButtonsOverride", Ft, this), Z(this, "hideCookieConsent", It, this), Z(this, "hideHeaderLogo", Lt, this), Z(this, "hideLogoInBooth", Rt, this), Z(this, "disableBookmarked", zt, this), Z(this, "hideLanguage", Bt, this), Z(this, "monochrome", Vt, this), Z(this, "heatmap", Ht, this), Z(this, "heatmapYah", Ut, this), this.rootElement = null, Z(this, "debugCircles", Wt, this), Z(this, "mapControlsHidden", Gt, this), Z(this, "floorsControlHidden", Kt, this), Z(this, "hideFreeOrDemo", qt, this), Z(this, "freeBannerDismissed", Jt, this), Z(this, "currentBanner", Yt, this), Z(this, "sceneDefReady", Xt, this), Z(this, "categoryFilterOpen", Zt, this), Z(this, "selectedCategoryFilters", Qt, this), Z(this, "selectedPoiTypeFilters", $t, this), Z(this, "selectedTrack", en, this), Z(this, "subButtonsVisible", tn, this), Z(this, "searchBoxMode", nn, this), Z(this, "searchBoxTitle", rn, this), Z(this, "searchBoxSubtitle", an, this), Z(this, "routeTitle", on, this), Z(this, "routeDescription", sn, this), Z(this, "isMultiPointRoute", cn, this), Z(this, "tourTitle", ln, this), Z(this, "tourDescription", un, this), Z(this, "isMultiPointTour", X, this), Z(this, "pathwayOnlyMode", dn, this), Z(this, "isOverlayScrolled", fn, this), Z(this, "listScrollTop", pn, this), Z(this, "listScrollItemId", mn, this), Z(this, "listScrollIndex", hn, this), this.scrollPositions = /* @__PURE__ */ new Map(), this.scrollItemIds = /* @__PURE__ */ new Map(), Z(this, "_customUIScale", gn, this), this.searchFilterHeightPx = 54, this.searchInputHeightPx = 54, this.overlayUISizePx = 390, this.overlayKioskSizePx = 450, this.overlayMediumHeightRems = 10, this.headerHeightRem = 0, this.wsHeightRems = 54 / 16, this.mapVisibleStart = 0, Z(this, "forceDim", _n, this), Z(this, "mapSettings", vn, this), this.maxPitch = 60, Z(this, "animatePitch", yn, this), Z(this, "forceShowDetails", bn, this), Z(this, "buildRoute", xn, this), Z(this, "globalErrorMessages", Sn, this), this.minUIScale = .8, this.maxUIScale = 1.4, Z(this, "kioskEnabled", Cn, this), Z(this, "setKioskModeEnabled", wn, this), Z(this, "kioskData", Tn, this), this.rootStore = e, this.mapSettings = { ...this.defaultMapSettings }, this.initializeUIScale();
	}
	get rtl() {
		let e = f();
		return e === "ar" || e === "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 O ? this.details : null;
	}
	get selectedBooth() {
		return this.details instanceof D ? this.details : null;
	}
	get selectedCategory() {
		return this.list.type === "category" ? this.list.category : null;
	}
	get selectedRoute() {
		return this.details instanceof j ? this.details : null;
	}
	get selectedSpeaker() {
		return this.details instanceof J ? this.details : null;
	}
	get uiScale() {
		return this._customUIScale === null ? this.kiosk ? 1.2 : 1 : this._customUIScale;
	}
	get isGuidedToursActive() {
		return this.rootStore.toursStore.isActive;
	}
	get getRouteNextFloor() {
		var e, t, n;
		let r = this.rootStore.routeStore.pathLayers, i = (e = this.rootStore.routeStore.currentRouteLayer) == null ? void 0 : e.name;
		if (!i) return null;
		let a = r.findIndex((e) => {
			var t;
			return ((t = e.layer) == null ? void 0 : t.name) === i;
		});
		return a === -1 || (t = (n = r[a + 1]) == null || (n = n.layer) == null ? void 0 : n.name) == null ? null : t;
	}
	get headerHeightPx() {
		return w(this.headerHeightRem);
	}
	get screenWidth() {
		return this.screenSize.width;
	}
	get overlayPosition() {
		return this.screenSize.width > 768 || 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 !== "language" && !("text" in this.list && 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 : w(this.screenSize.width);
	}
	get wsHeightCss() {
		return this.wsShown ? `calc(${this.wsHeightRems}rem * var(--ui-scale))` : "0px";
	}
	scaledRemsToPixels(e) {
		return w(e) * this.uiScale;
	}
	get wsOccupiedHeightPx() {
		return this.wsShown ? this.scaledRemsToPixels(this.wsHeightRems) : 0;
	}
	get wsShown() {
		return !this.hideHeaderLogo && this.rootStore.exhibitorStore.advertised.length > 0;
	}
	get wsDesktopPosition() {
		return E.EXPO === "cbresupplypartner" ? "bottom" : "top";
	}
	get wsPosition() {
		return this.overlayBottom ? "top" : this.wsDesktopPosition;
	}
	get responsiveClass() {
		return Fe(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 : w(this.overlayMediumHeightRems);
	}
	get searchActionsHeightPx() {
		return this.overlayPosition === "bottom" ? this.searchInputHeightPx + this.searchFilterHeightPx : this.searchInputHeightPx;
	}
	get shouldShowSearchButtons() {
		return this.rootStore.searchButtonsStore.hasAnySearchButtons && !this.details && !this.menu && !["language", "filter"].includes(this.list.type);
	}
	get shouldShowMobileToggle() {
		let e = this.list.type === "route-planner";
		return this.overlayPosition === "bottom" && (e || !this.details && !this.menu && this.list.type !== "language" && this.list.type !== "bookmarks" && this.list.type !== "sessions");
	}
	get mobileToggleTopPx() {
		return this.shouldShowMobileToggle ? w(58 / 16) : 0;
	}
	get mobileToggleIsListMode() {
		return !this.isOverlayOpen || this.overlaySize !== "full";
	}
	get canvasVisibleRectPx() {
		let e = this.screenSize;
		return x.fromMinMax({
			x: y.rtl ? 0 : this.mapVisibleStart,
			y: this.mapVisibleTop + this.searchActionsHeightPx
		}, {
			x: y.rtl ? e.width - this.mapVisibleStart : e.width,
			y: e.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() {
		var e, t;
		if (y.overlayCollapsed) return !1;
		if (c && localStorage.getItem("forcebackdrop") === "1") return !0;
		if (this.overlayBottom || (e = this.selectedExhibitor) != null && e.leadingImageUrl && !((t = this.selectedExhibitor) != null && t.leadingImageLinkUrl)) return !1;
		let n = l.satisfies({ safari: ">=13" }), r = l.satisfies({ chrome: ">=77" });
		return /(android)/i.test(navigator.userAgent) ? !1 : n || r && y.canvasSizePt.height * y.canvasSizePt.width < 3e6;
	}
	setForceDim(e) {
		this.forceDim = e;
	}
	get dimmed() {
		var e, t, n;
		return this.forceDim || this.pathwayOnlyMode ? !0 : this.highlightedBooths.size > 0 || ((e = this.list) == null ? void 0 : e.type) === "search" && ((t = this.list) == null || (t = t.text) == null ? void 0 : t.trim().length) > 0 || ((n = this.list) == null ? void 0 : n.type) === "exhibitors";
	}
	get defaultSearchItems() {
		let { exhibitorStore: e, categoryStore: t, boothStore: n, heatmapStore: r } = this.rootStore, i = e.exhibitors, a = t.categories.filter((e) => e.exhibitors.length), o = n.booths;
		this.selectedPoiTypeFilters.length > 0 && (i = i.filter((e) => e.booths.some((e) => this.selectedPoiTypeFilters.some((t) => e.poiTypeId === t.id))));
		let s = [], c = !this.selectedCategoryFilters.length && C.showCategories ? a.filter((e) => !On.includes(E.EXPO) || !e.name.includes("/")) : [], l = o.filter((e) => e instanceof A);
		if (this.selectedCategoryFilters.length > 0 ? s = [...i] : (C.showCompaniesAndBooths && (s = s.concat(i)), C.showOtherSpaces && (s = s.concat(l))), this.heatmap) return [...i, ...o].sort((e, t) => r.getClicksByType(t) - r.getClicksByType(e));
		if (this.heatmapYah) {
			var u;
			return ((u = r.heatmapData) == null || (u = u.yah) == null ? void 0 : u.sort((e, t) => r.getClicksByType(t) - r.getClicksByType(e))) || [];
		}
		return i.length === 0 ? o : [...c, ...s.sort((e, t) => {
			let n = e instanceof O && e.featured !== void 0;
			if (n !== (t instanceof O && t.featured !== void 0)) return n ? -1 : 1;
			let r = e instanceof A && e.title ? e.title : e.name, i = t instanceof A && t.title ? t.title : t.name;
			return r.localeCompare(i, void 0, {
				sensitivity: "base",
				numeric: !0
			});
		})];
	}
	get searchItems() {
		var e;
		if (this.list.type !== "search") return [];
		let t = ((e = this.list.text) == null ? void 0 : e.trim().toLowerCase()) || "", { exhibitorStore: n, boothStore: r, eventStore: i, speakerStore: a, heatmapStore: o } = this.rootStore, s = n.exhibitors, c = r.booths, l = i.eventItems, u = a.speakers;
		if (this.selectedCategoryFilters.length > 0 && (s = s.filter((e) => this.selectedCategoryFilters.some((t) => e.categories.some((e) => e.id === t.id)))), this.selectedPoiTypeFilters.length > 0 && (s = s.filter((e) => e.booths.some((e) => this.selectedPoiTypeFilters.some((t) => e.poiTypeId === t.id)))), !t) return this.defaultSearchItems;
		let d = [t.replace(/&[^&=]+=[^&]+/g, "")];
		if (this.heatmapYah) {
			var f;
			return ((f = o.heatmapData.yah) == null ? [] : f).filter((e) => Number.isNaN(Number(t)) ? e : e.viewCount >= Number(t)).sort((e, t) => o.getClicksByType(t) - o.getClicksByType(e));
		}
		let p = [], m = /* @__PURE__ */ new Set(), h = /* @__PURE__ */ new Set(), g = /* @__PURE__ */ new Set(), _ = /* @__PURE__ */ new Set();
		function v(e) {
			return e ? e.replace(/[!@#$%^*\-.,()^#$%:?_+'"/]/g, " ").replace(/\s\s+/g, " ") : "";
		}
		function y(e, t) {
			return !e || !t ? !1 : v(e).toLowerCase().includes(v(t).toLowerCase());
		}
		function b(e, t) {
			return e ? y(e, t) || y(C.levelTerm + " " + e, t) : !1;
		}
		s.forEach((e) => {
			d.some((t) => y(e.name, t) || e.booths.some((e) => {
				var n, r;
				return !t && y(e.name, t) || b((n = (r = e.layer) == null ? void 0 : r.name) == null ? null : n, t);
			})) && m.add(e);
		}), this.selectedCategoryFilters.length > 0 && c.forEach((e) => {
			(this.heatmap || !(e instanceof k) || !Array.from(m).find((t) => t.booths.includes(e))) && d.some((t) => {
				var n, r;
				return y(e.title || "", t) || y(e.name, t) || y(e.fullName, t) || b((n = (r = e.layer) == null ? void 0 : r.name) == null ? null : n, t);
			}) && h.add(e);
		});
		let x = l, S = u;
		if (x.forEach((e) => {
			d.some((t) => y(e.name || "", t) || y(e.description || "", t)) && g.add(e);
		}), S.forEach((e) => {
			d.some((t) => y(e.name, t) || y(e.company, t) || y(e.jobTitle, t)) && _.add(e);
		}), p.push(...g), p.push(...m), this.heatmap) return p.sort((e, t) => o.getClicksByType(t) - o.getClicksByType(e));
		let ee = new Map(p.map((e) => [e.id, e]));
		return p.map((e) => {
			if (!e.name) return null;
			let n = ze(e instanceof D && e.fullName.toLowerCase() || e.name.toLowerCase()), r = n.indexOf(ze(t));
			if (r === -1) return null;
			let i = {
				id: e.id,
				position: r,
				lowerCaseName: n,
				featured: !1
			};
			return e instanceof O && (i.featured = e.featured), i;
		}).filter((e) => !!e).sort((e, t) => (e.featured || t.featured) && e.featured !== t.featured ? e.featured ? -1 : 1 : e.position === t.position ? e.lowerCaseName.localeCompare(t.lowerCaseName) || String(e.id).localeCompare(String(t.id)) : e.position - t.position).map(({ id: e }) => ee.get(e)).filter((e) => !!e);
	}
	get searchList() {
		return [
			...this.rootStore.eventStore.eventItems,
			...this.rootStore.speakerStore.speakers,
			...this.rootStore.categoryStore.categories.filter((e) => e.exhibitors.length),
			...this.rootStore.exhibitorStore.exhibitors,
			...this.rootStore.boothStore.booths
		];
	}
	get foundInDescription() {
		var e, t;
		if (((e = this.list) == null ? void 0 : e.type) !== "search") return [];
		let n = (t = this.list) == null || (t = t.text) == null ? void 0 : t.trim().toLowerCase();
		if (!n) return [];
		let r = this.fuzzySearchItems.map(({ item: e }) => e), i = new Set(r.map((e) => e.name)), a = this.categoryFilteredSearchList.filter((e) => !i.has(e.name)), o = [];
		for (let e of a) {
			let t = An(e);
			if (!t) continue;
			let r = (Me(t) ? Ne(t) : t).toLowerCase().indexOf(n);
			r !== -1 && o.push({
				item: e,
				pos: r
			});
		}
		return o.sort((e, t) => e.pos - t.pos), o.map((e) => e.item);
	}
	get foundInDescriptionStruct() {
		var e, t;
		let n = {};
		if (((e = this.list) == null ? void 0 : e.type) !== "search") return n;
		let r = (t = this.list) == null || (t = t.text) == null ? void 0 : t.trim().toLowerCase();
		return this.foundInDescription.forEach((e) => {
			let t = An(e);
			if (!t) return;
			Me(t) && (t = Ne(t));
			let i = t.toLowerCase().indexOf(r);
			if (i === -1) return;
			let a = i > 3 ? i - 3 : 0, o = t.substring(a).trim();
			n[e.id] = i > 0 ? `...${o}` : o;
		}), n;
	}
	get categoryFilteredSearchList() {
		return this.selectedCategoryFilters.length === 0 ? this.searchList : this.searchList.filter((e) => e instanceof O && this.selectedCategoryFilters.some((t) => e.categories.some((e) => e.id === t.id)));
	}
	get fuzzySearchItems() {
		var e, t;
		if (((e = this.list) == null ? void 0 : e.type) !== "search") return [];
		let n = (t = this.list) == null || (t = t.text) == null ? void 0 : t.trim().toLowerCase();
		if (!n) return this.defaultSearchItems.map((e) => ({
			item: e,
			score: 0,
			matches: []
		}));
		let r = this.rootStore.fuzzySearchEngineStore.search(this.categoryFilteredSearchList, n), i = [], a = [];
		for (let e of r) {
			var o, s, c, l, u, d, f, p;
			let t = e.item, r = t.entity.type, m = r === "booth" ? t : null, h = r === "exhibitor" ? t : null, g = [
				(o = (s = t.name) == null ? void 0 : s.toLowerCase()) == null ? "" : o,
				(c = m == null || (l = m.title) == null ? void 0 : l.toLowerCase()) == null ? "" : c,
				(u = m == null || (d = m.fullName) == null ? void 0 : d.toLowerCase()) == null ? "" : u,
				...(f = h == null || (p = h.booths) == null ? void 0 : p.map((e) => {
					var t, n;
					return (t = (n = e.name) == null ? void 0 : n.toLowerCase()) == null ? "" : t;
				})) == null ? [] : f
			], _ = Infinity;
			for (let e of g) {
				let t = e.indexOf(n);
				t !== -1 && t < _ && (_ = t);
			}
			_ === Infinity ? a.push(e) : i.push({
				result: {
					item: t,
					score: 0
				},
				pos: _
			});
		}
		return i.sort((e, t) => e.pos - t.pos), [...i.map((e) => e.result), ...a];
	}
	get listItems() {
		if (this.details instanceof j && this.list.type !== "multi-point-tour") return [this.details.from, this.details.to].filter((e) => e instanceof D);
		switch (this.list.type) {
			case "search": {
				let e = !(this.heatmap || this.heatmapYah) && this.rootStore.fuzzySearchEngineStore.engine ? this.fuzzySearchItems.map(({ item: e }) => e).concat(this.foundInDescription) : this.searchItems;
				return e = e.filter((e) => e.entity.type !== "booth" || !e.exhibitors.length), this.hasAppliedFilters ? e.filter((e) => {
					if (this.selectedCategoryFilters.length > 0 && e instanceof O && !this.selectedCategoryFilters.some((t) => e.categories.some((e) => e.id === t.id))) return !1;
					if (this.selectedPoiTypeFilters.length > 0) {
						if (e instanceof O && !e.booths.some((e) => this.selectedPoiTypeFilters.some((t) => e.poiTypeId === t.id)) || e instanceof D && !this.selectedPoiTypeFilters.some((t) => e.poiTypeId === t.id)) return !1;
						if (e instanceof H && e.boothId) {
							let t = this.rootStore.boothStore.booths.find((t) => t.id === e.boothId);
							if (!t || !this.selectedPoiTypeFilters.some((e) => t.poiTypeId === e.id)) return !1;
						}
					}
					return !0;
				}) : e;
			}
			case "bookmarks": return [
				...this.rootStore.exhibitorStore.bookmarked,
				...this.rootStore.eventStore.bookmarked,
				...this.rootStore.speakerStore.bookmarked,
				...this.rootStore.boothStore.booths.filter((e) => e.exhibitors.length === 0 && e.bookmarkedDirectly)
			];
			case "visited": return [...this.rootStore.exhibitorStore.visited, ...this.rootStore.eventStore.visited];
			case "category": return this.list.category.exhibitors;
			case r: return u();
			case "filter": return this.list.items;
			case "sessions": return this.rootStore.eventStore.eventItems;
			case "exhibitors": {
				var e;
				let t = this.rootStore.exhibitorStore.exhibitors, n = (e = this.list.text) == null ? void 0 : e.toLowerCase().trim();
				return n ? t.filter((e) => e.name.toLowerCase().includes(n)) : t;
			}
			case "multi-point-tour": {
				let e = this.rootStore.toursStore.getTourById(this.list.tourId);
				return !e || !e.points || e.points.length === 0 ? [] : e.points.map((e) => {
					let t = parseInt(e);
					if (!isNaN(t)) {
						let e = this.rootStore.boothStore.boothById.get(t);
						if (e) return e;
					}
					let n = ie(e);
					return (n == null ? void 0 : n.entity) || null;
				}).filter((e) => !!e);
			}
			case "route-planner": return this.rootStore.routePlannerStore.resolvedBooths;
		}
		throw Error("Unknown list.type");
	}
	get listBooths() {
		return $(this.listItems, this.rootStore.boothStore.booths, this.rootStore.eventStore.eventItems);
	}
	get selectedBooths() {
		var e;
		let t = [];
		this.selectedExhibitor ? t = this.selectedExhibitor.booths : this.selectedBooth && (t = [this.selectedBooth]);
		let n = this.selectedRoute, r = [
			n == null ? void 0 : n.from,
			n == null ? void 0 : n.to,
			...(e = n == null ? void 0 : n.waypoints) == null ? [] : e
		].filter((e) => e instanceof D);
		return t.push(...r), new Set(t);
	}
	get hoveredBooths() {
		let e = [];
		return this.hoveredBooth ? e = [this.hoveredBooth] : this.hoveredExhibitor && (e = this.hoveredExhibitor.booths), new Set(e);
	}
	get visibility() {
		var e;
		return {
			controls: !this.mapControlsHidden,
			levels: !this.floorsControlHidden,
			header: this.wsShown,
			overlay: !this.hideOverlay,
			searchButtons: (e = this.searchButtonsOverride) == null ? !this.hideOverlay : e
		};
	}
	setVisibility(e) {
		let t = [
			"controls",
			"levels",
			"header",
			"overlay"
		], n = {
			...t.reduce((e, t) => ({
				...e,
				[t]: !0
			}), {}),
			...t.filter((t) => t in e).reduce((t, n) => ({
				...t,
				[n]: e[n]
			}), {})
		}, r = typeof e.searchButtons == "boolean" ? e.searchButtons : null;
		c && (Object.values(n).every(Boolean) && r === null ? localStorage.removeItem(a) : localStorage.setItem(a, JSON.stringify(r === null ? n : {
			...n,
			searchButtons: r
		}))), this.mapControlsHidden = !n.controls, this.floorsControlHidden = !n.levels, this.hideHeaderLogo = !n.header, this.hideFreeOrDemo = !n.header, this.hideOverlay = !n.overlay, this.searchButtonsOverride = r;
	}
	toggleMapOverlay() {
		this.overlayPosition === "bottom" && this.overlaySize === "full" ? this.desiredOverlaySize = "medium" : this.overlayPosition === "bottom" && this.overlaySize !== "full" && (this.desiredOverlaySize = "full");
	}
	changeZoom(e) {
		this.zoomBy = e;
	}
	zoomIn() {
		this.changeZoom(En);
	}
	zoomOut() {
		this.changeZoom(Dn);
	}
	fitBounds() {
		var e;
		let { rect: t, source: n } = oe({
			layerViewbox: this.rootStore.layerStore.viewboxRectangle,
			explicitArea: ee() ? T() : null,
			layerRectangle: this.rootStore.layerStore.rectangle,
			sceneDef: (e = le()) == null ? null : e,
			svgArea: T()
		});
		this.moveToRect = t, this.moveToRectPaddingPercent = se(n) ? 0 : ce(t, T()), this.rollReset = !0;
	}
	get previewMode() {
		var e;
		let t = c ? (e = localStorage.getItem("efp-previewMode")) == null ? localStorage.getItem(i) : e : null;
		return t === "true" || t === "1" || this.rootStore.fp.previewMode;
	}
	get viewerMode() {
		var e;
		let t = c ? (e = localStorage.getItem("efp-viewerMode")) == null ? localStorage.getItem(n) : e : null;
		return t === "true" || t === "1" || this.rootStore.fp.viewerMode;
	}
	get selectedEventItem() {
		return this.details instanceof H ? this.details : null;
	}
	get defaultMapSettings() {
		return {
			zoomtime: 500,
			pitchtime: 500,
			center: void 0,
			centerxy: void 0,
			z: void 0,
			bearing: 0,
			roll: 1,
			pitch: 1,
			pitchdegrees: this.pitchEnabled ? 30 : 0
		};
	}
	setMapSettings(e) {
		let t = {};
		for (let n of Object.keys(e)) {
			let r = e[n];
			r != null && (n === "zoomtime" || n === "pitchtime" ? t[n] = Math.min(Math.max(e[n] || this.mapSettings[n] || 0, 500), 5e3) : Object.assign(t, { [n]: r }));
		}
		this.mapSettings = {
			...this.mapSettings,
			...t
		};
	}
	resetMapSettings() {
		this.mapSettings = { ...this.defaultMapSettings };
	}
	get is3DView() {
		return !!C.allow3dView;
	}
	get pitchEnabled() {
		return this.is3DView ? this.mapSettings.pitch === void 0 || Number(this.mapSettings.pitch) === 1 : !1;
	}
	get rollEnabled() {
		return this.rootStore.fp.enableRotation ? this.mapSettings.roll === void 0 || Number(this.mapSettings.roll) === 1 : !1;
	}
	get baseQRCodeUrl() {
		return `https://${E.EXPO}.expofp.com`;
	}
	get viewMapOnPhoneQRCodeUrl() {
		if (C != null && C.customKioskQrCodeUrl) return C.customKioskQrCodeUrl;
		let e = new URL(this.baseQRCodeUrl);
		e.search = window.location.search;
		let t = e.toString();
		return console.log("View Map On Phone QR Code Url", t), t;
	}
	get routeQRCodeUrl() {
		var e, t;
		let n = new URL(this.baseQRCodeUrl), r = (e = this.selectedRoute) == null ? void 0 : e.from, i = (t = this.selectedRoute) == null ? void 0 : t.to, a = r instanceof D ? r.slug : "", o = i instanceof D ? i.slug : "";
		n.search = `?route%3A${encodeURIComponent(o)}%3A${encodeURIComponent(a)}%3Afalse`, Ae(n.searchParams, this.kioskData);
		let s = n.toString();
		return console.log("Route QR Code Url", s), s;
	}
	get isFeaturedExhibitorActive() {
		return this.details instanceof O && !!this.details.featured;
	}
	get activeInterfaceData() {
		for (let e of this.interfaceMetadata) if (e.isActive()) return e;
		return null;
	}
	get activeInterfaceId() {
		var e;
		return (e = this.activeInterfaceData) == null ? void 0 : e.id;
	}
	get searchBoxConfig() {
		let e = this.activeInterfaceData;
		return !e || !e.searchBoxConfig ? {
			mode: "search",
			title: "",
			subtitle: void 0,
			badge: void 0,
			icon: void 0
		} : e.searchBoxConfig() || {
			mode: "search",
			title: "",
			subtitle: void 0,
			badge: void 0,
			icon: void 0
		};
	}
	get searchBoxActions() {
		var e, t, n;
		return (e = (t = this.activeInterfaceData) == null || (n = t.actions) == null ? void 0 : n.call(t)) == null ? [] : e;
	}
	get overlayInterfaceClasses() {
		let e = [], t = this.activeInterfaceData;
		return t && (e.push(t.className), t.additionalClasses && e.push(...t.additionalClasses())), this.details && e.push("overlay-has-details"), this.list.type && e.push(`overlay-list-${this.list.type}`), this.isFeaturedExhibitorActive && e.push("overlay-exhibitor-featured"), e;
	}
	get isOverlayOpen() {
		return this.noOverlay && !this.overlayOnDemand ? !1 : this.activeInterfaceData !== null;
	}
	setOverlayScrolled(e) {
		this.isOverlayScrolled = e;
	}
	setListScrollTop(e, t) {
		this.listScrollTop = t, this.scrollPositions.set(e, t);
	}
	setListScrollItemId(e, t) {
		this.listScrollItemId = t, this.scrollItemIds.set(e, t);
	}
	getListScrollTop(e) {
		return this.scrollPositions.get(e) || 0;
	}
	getListScrollItemId(e) {
		return this.scrollItemIds.get(e) || null;
	}
	clearListScroll(e) {
		this.scrollPositions.delete(e), this.scrollItemIds.delete(e), this.list.type === e && (this.listScrollTop = 0, this.listScrollItemId = null);
	}
	get bannerType() {
		return this.hideFreeOrDemo || this.heatmap ? null : E.EXPO === "expo" ? "demo" : C.expoFpAd || C.isTrial ? "free" : null;
	}
	setCurrentBanner(e) {
		this.currentBanner = e;
	}
	setForceShowDetails(e) {
		this.forceShowDetails = e;
	}
	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(e) {
		this.globalErrorMessages.push(e);
	}
	popGlobalErrorMessage() {
		this.globalErrorMessages.pop();
	}
	initializeUIScale() {
		if (new URLSearchParams(window.location.search).get("kiosk") !== "0" && !(M && ae()) && c) {
			var e;
			let t = (e = localStorage.getItem("efp-uiScale")) == null ? localStorage.getItem(s) : e;
			if (t) {
				let e = parseFloat(t);
				!isNaN(e) && e >= .8 && e <= 1.4 && (this._customUIScale = e);
			}
		}
	}
	setUIScale(e, t = !0) {
		if (e === void 0 || isNaN(e) || e < this.minUIScale || e > this.maxUIScale) {
			p.warn(`Invalid ui-scale value: ${e}. Must be between ${this.minUIScale} and ${this.maxUIScale}.`);
			return;
		}
		this._customUIScale = e, t && c && (localStorage.setItem(o, e.toString()), localStorage.removeItem(s));
	}
	setKioskUIScale(e, t) {
		M || this.setUIScale(e, t);
	}
	resetUIScale() {
		this._customUIScale = null, c && (localStorage.removeItem(o), localStorage.removeItem(s));
	}
	restoreUIScale() {
		this._customUIScale = null, this.initializeUIScale();
	}
	get kiosk() {
		return this.kioskEnabled;
	}
	set kiosk(e) {
		this.kioskEnabled = e && !M;
	}
	enableSetKioskMode(e) {
		this.setKioskModeEnabled = e;
	}
	setKioskData(e) {
		this.kioskData = e;
	}
}, ct = Q(Y.prototype, "list", [Ve], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return {
			type: "search",
			text: "",
			focused: !1
		};
	}
}), lt = Q(Y.prototype, "details", [He], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), ut = Q(Y.prototype, "hoveredExhibitor", [Ue], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), dt = Q(Y.prototype, "hoveredBooth", [We], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), ft = Q(Y.prototype, "zoomBy", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), pt = Q(Y.prototype, "rollReset", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), mt = Q(Y.prototype, "moveToBooths", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), ht = Q(Y.prototype, "moveToRect", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), gt = Q(Y.prototype, "moveToRectPaddingPercent", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), _t = Q(Y.prototype, "moveToLocation", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), vt = Q(Y.prototype, "menu", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), yt = Q(Y.prototype, "searchFocused", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), bt = Q(Y.prototype, "searchClearMode", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), xt = Q(Y.prototype, "printingPdf", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), St = Q(Y.prototype, "screenSize", [Ge], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return new ne(window.innerWidth, window.innerHeight);
	}
}), Ct = Q(Y.prototype, "desiredOverlaySize", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: null
}), wt = Q(Y.prototype, "overlayShowsAll", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Tt = Q(Y.prototype, "centerMap", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Et = Q(Y.prototype, "zoomAfTransformK", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return 1;
	}
}), Dt = Q(Y.prototype, "activeListIndex", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return -1;
	}
}), Ot = Q(Y.prototype, "devicePixelRatio", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return window.devicePixelRatio;
	}
}), kt = Q(Y.prototype, "wsStarted", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), At = Q(Y.prototype, "canvasStarted", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), jt = Q(Y.prototype, "inIdle", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Mt = Q(Y.prototype, "modalActive", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return { share: !1 };
	}
}), Nt = Q(Y.prototype, "galleryActive", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Pt = Q(Y.prototype, "hideOverlay", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Ft = Q(Y.prototype, "searchButtonsOverride", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), It = Q(Y.prototype, "hideCookieConsent", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !!re();
	}
}), Lt = Q(Y.prototype, "hideHeaderLogo", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Rt = Q(Y.prototype, "hideLogoInBooth", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), zt = Q(Y.prototype, "disableBookmarked", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Bt = Q(Y.prototype, "hideLanguage", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Vt = Q(Y.prototype, "monochrome", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Ht = Q(Y.prototype, "heatmap", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Ut = Q(Y.prototype, "heatmapYah", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Wt = Q(Y.prototype, "debugCircles", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return [];
	}
}), Gt = Q(Y.prototype, "mapControlsHidden", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Kt = Q(Y.prototype, "floorsControlHidden", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), qt = Q(Y.prototype, "hideFreeOrDemo", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Jt = Q(Y.prototype, "freeBannerDismissed", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return b(sessionStorage);
	}
}), Yt = Q(Y.prototype, "currentBanner", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), Xt = Q(Y.prototype, "sceneDefReady", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Zt = Q(Y.prototype, "categoryFilterOpen", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Qt = Q(Y.prototype, "selectedCategoryFilters", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return [];
	}
}), $t = Q(Y.prototype, "selectedPoiTypeFilters", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return [];
	}
}), en = Q(Y.prototype, "selectedTrack", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), tn = Q(Y.prototype, "subButtonsVisible", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), nn = Q(Y.prototype, "searchBoxMode", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return "search";
	}
}), rn = Q(Y.prototype, "searchBoxTitle", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return "";
	}
}), an = Q(Y.prototype, "searchBoxSubtitle", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: null
}), on = Q(Y.prototype, "routeTitle", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: null
}), sn = Q(Y.prototype, "routeDescription", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: null
}), cn = Q(Y.prototype, "isMultiPointRoute", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), ln = Q(Y.prototype, "tourTitle", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: null
}), un = Q(Y.prototype, "tourDescription", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: null
}), X = Q(Y.prototype, "isMultiPointTour", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), dn = Q(Y.prototype, "pathwayOnlyMode", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), fn = Q(Y.prototype, "isOverlayScrolled", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), pn = Q(Y.prototype, "listScrollTop", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return 0;
	}
}), mn = Q(Y.prototype, "listScrollItemId", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), hn = Q(Y.prototype, "listScrollIndex", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return 0;
	}
}), gn = Q(Y.prototype, "_customUIScale", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), Q(Y.prototype, "setSelectedCategoryFilters", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setSelectedCategoryFilters"), Y.prototype), Q(Y.prototype, "resetCategoryFilter", [g], Object.getOwnPropertyDescriptor(Y.prototype, "resetCategoryFilter"), Y.prototype), Q(Y.prototype, "setSearchClearMode", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setSearchClearMode"), Y.prototype), Q(Y.prototype, "setRouteTitle", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setRouteTitle"), Y.prototype), Q(Y.prototype, "setRouteDescription", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setRouteDescription"), Y.prototype), Q(Y.prototype, "setIsMultiPointRoute", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setIsMultiPointRoute"), Y.prototype), Q(Y.prototype, "setTourTitle", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setTourTitle"), Y.prototype), Q(Y.prototype, "setTourDescription", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setTourDescription"), Y.prototype), Q(Y.prototype, "setIsMultiPointTour", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setIsMultiPointTour"), Y.prototype), Q(Y.prototype, "setPathwayOnlyMode", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setPathwayOnlyMode"), Y.prototype), Q(Y.prototype, "setMultiPointTourList", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setMultiPointTourList"), Y.prototype), Q(Y.prototype, "activePathwayLayers", [m], Object.getOwnPropertyDescriptor(Y.prototype, "activePathwayLayers"), Y.prototype), Q(Y.prototype, "highlightedBooths", [m], Object.getOwnPropertyDescriptor(Y.prototype, "highlightedBooths"), Y.prototype), Q(Y.prototype, "rtl", [m], Object.getOwnPropertyDescriptor(Y.prototype, "rtl"), Y.prototype), Q(Y.prototype, "noOverlay", [Ke], Object.getOwnPropertyDescriptor(Y.prototype, "noOverlay"), Y.prototype), Q(Y.prototype, "overlayOnDemand", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlayOnDemand"), Y.prototype), Q(Y.prototype, "overlayHiddenNow", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlayHiddenNow"), Y.prototype), Q(Y.prototype, "selectedExhibitor", [qe], Object.getOwnPropertyDescriptor(Y.prototype, "selectedExhibitor"), Y.prototype), Q(Y.prototype, "selectedBooth", [Je], Object.getOwnPropertyDescriptor(Y.prototype, "selectedBooth"), Y.prototype), Q(Y.prototype, "selectedCategory", [Ye], Object.getOwnPropertyDescriptor(Y.prototype, "selectedCategory"), Y.prototype), Q(Y.prototype, "selectedRoute", [Xe], Object.getOwnPropertyDescriptor(Y.prototype, "selectedRoute"), Y.prototype), Q(Y.prototype, "selectedSpeaker", [Ze], Object.getOwnPropertyDescriptor(Y.prototype, "selectedSpeaker"), Y.prototype), Q(Y.prototype, "uiScale", [Qe], Object.getOwnPropertyDescriptor(Y.prototype, "uiScale"), Y.prototype), Q(Y.prototype, "isGuidedToursActive", [$e], Object.getOwnPropertyDescriptor(Y.prototype, "isGuidedToursActive"), Y.prototype), Q(Y.prototype, "getRouteNextFloor", [et], Object.getOwnPropertyDescriptor(Y.prototype, "getRouteNextFloor"), Y.prototype), Q(Y.prototype, "headerHeightPx", [m], Object.getOwnPropertyDescriptor(Y.prototype, "headerHeightPx"), Y.prototype), Q(Y.prototype, "screenWidth", [m], Object.getOwnPropertyDescriptor(Y.prototype, "screenWidth"), Y.prototype), Q(Y.prototype, "overlayPosition", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlayPosition"), Y.prototype), Q(Y.prototype, "overlayCollapsed", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlayCollapsed"), Y.prototype), Q(Y.prototype, "overlaySize", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlaySize"), Y.prototype), Q(Y.prototype, "overlayBottom", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlayBottom"), Y.prototype), Q(Y.prototype, "overlayLeft", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlayLeft"), Y.prototype), Q(Y.prototype, "overlayWidthPx", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlayWidthPx"), Y.prototype), Q(Y.prototype, "wsHeightCss", [m], Object.getOwnPropertyDescriptor(Y.prototype, "wsHeightCss"), Y.prototype), Q(Y.prototype, "wsOccupiedHeightPx", [m], Object.getOwnPropertyDescriptor(Y.prototype, "wsOccupiedHeightPx"), Y.prototype), Q(Y.prototype, "wsShown", [tt], Object.getOwnPropertyDescriptor(Y.prototype, "wsShown"), Y.prototype), Q(Y.prototype, "wsDesktopPosition", [m], Object.getOwnPropertyDescriptor(Y.prototype, "wsDesktopPosition"), Y.prototype), Q(Y.prototype, "wsPosition", [m], Object.getOwnPropertyDescriptor(Y.prototype, "wsPosition"), Y.prototype), Q(Y.prototype, "responsiveClass", [m], Object.getOwnPropertyDescriptor(Y.prototype, "responsiveClass"), Y.prototype), Q(Y.prototype, "mapVisibleTop", [m], Object.getOwnPropertyDescriptor(Y.prototype, "mapVisibleTop"), Y.prototype), Q(Y.prototype, "mapVisibleBottom", [m], Object.getOwnPropertyDescriptor(Y.prototype, "mapVisibleBottom"), Y.prototype), Q(Y.prototype, "searchActionsHeightPx", [m], Object.getOwnPropertyDescriptor(Y.prototype, "searchActionsHeightPx"), Y.prototype), Q(Y.prototype, "shouldShowSearchButtons", [m], Object.getOwnPropertyDescriptor(Y.prototype, "shouldShowSearchButtons"), Y.prototype), Q(Y.prototype, "shouldShowMobileToggle", [m], Object.getOwnPropertyDescriptor(Y.prototype, "shouldShowMobileToggle"), Y.prototype), Q(Y.prototype, "mobileToggleTopPx", [m], Object.getOwnPropertyDescriptor(Y.prototype, "mobileToggleTopPx"), Y.prototype), Q(Y.prototype, "mobileToggleIsListMode", [m], Object.getOwnPropertyDescriptor(Y.prototype, "mobileToggleIsListMode"), Y.prototype), Q(Y.prototype, "canvasVisibleRectPx", [m], Object.getOwnPropertyDescriptor(Y.prototype, "canvasVisibleRectPx"), Y.prototype), Q(Y.prototype, "shouldShiftMapRect", [m], Object.getOwnPropertyDescriptor(Y.prototype, "shouldShiftMapRect"), Y.prototype), Q(Y.prototype, "hasAppliedFilters", [m], Object.getOwnPropertyDescriptor(Y.prototype, "hasAppliedFilters"), Y.prototype), Q(Y.prototype, "canvasVisibleRectPt", [m], Object.getOwnPropertyDescriptor(Y.prototype, "canvasVisibleRectPt"), Y.prototype), Q(Y.prototype, "canvasSizePt", [m], Object.getOwnPropertyDescriptor(Y.prototype, "canvasSizePt"), Y.prototype), Q(Y.prototype, "shouldUseBackdrop", [nt], Object.getOwnPropertyDescriptor(Y.prototype, "shouldUseBackdrop"), Y.prototype), _n = Q(Y.prototype, "forceDim", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Q(Y.prototype, "setForceDim", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setForceDim"), Y.prototype), Q(Y.prototype, "dimmed", [m], Object.getOwnPropertyDescriptor(Y.prototype, "dimmed"), Y.prototype), Q(Y.prototype, "defaultSearchItems", [m], Object.getOwnPropertyDescriptor(Y.prototype, "defaultSearchItems"), Y.prototype), Q(Y.prototype, "searchItems", [m], Object.getOwnPropertyDescriptor(Y.prototype, "searchItems"), Y.prototype), Q(Y.prototype, "searchList", [m], Object.getOwnPropertyDescriptor(Y.prototype, "searchList"), Y.prototype), Q(Y.prototype, "foundInDescription", [m], Object.getOwnPropertyDescriptor(Y.prototype, "foundInDescription"), Y.prototype), Q(Y.prototype, "foundInDescriptionStruct", [m], Object.getOwnPropertyDescriptor(Y.prototype, "foundInDescriptionStruct"), Y.prototype), Q(Y.prototype, "categoryFilteredSearchList", [m], Object.getOwnPropertyDescriptor(Y.prototype, "categoryFilteredSearchList"), Y.prototype), Q(Y.prototype, "fuzzySearchItems", [m], Object.getOwnPropertyDescriptor(Y.prototype, "fuzzySearchItems"), Y.prototype), Q(Y.prototype, "listItems", [m], Object.getOwnPropertyDescriptor(Y.prototype, "listItems"), Y.prototype), Q(Y.prototype, "listBooths", [rt], Object.getOwnPropertyDescriptor(Y.prototype, "listBooths"), Y.prototype), Q(Y.prototype, "selectedBooths", [it], Object.getOwnPropertyDescriptor(Y.prototype, "selectedBooths"), Y.prototype), Q(Y.prototype, "hoveredBooths", [at], Object.getOwnPropertyDescriptor(Y.prototype, "hoveredBooths"), Y.prototype), Q(Y.prototype, "visibility", [m], Object.getOwnPropertyDescriptor(Y.prototype, "visibility"), Y.prototype), Q(Y.prototype, "setVisibility", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setVisibility"), Y.prototype), Q(Y.prototype, "toggleMapOverlay", [g], Object.getOwnPropertyDescriptor(Y.prototype, "toggleMapOverlay"), Y.prototype), Q(Y.prototype, "changeZoom", [g], Object.getOwnPropertyDescriptor(Y.prototype, "changeZoom"), Y.prototype), Q(Y.prototype, "zoomIn", [g], Object.getOwnPropertyDescriptor(Y.prototype, "zoomIn"), Y.prototype), Q(Y.prototype, "zoomOut", [g], Object.getOwnPropertyDescriptor(Y.prototype, "zoomOut"), Y.prototype), Q(Y.prototype, "fitBounds", [g], Object.getOwnPropertyDescriptor(Y.prototype, "fitBounds"), Y.prototype), Q(Y.prototype, "selectedEventItem", [ot], Object.getOwnPropertyDescriptor(Y.prototype, "selectedEventItem"), Y.prototype), vn = Q(Y.prototype, "mapSettings", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return {};
	}
}), Q(Y.prototype, "setMapSettings", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setMapSettings"), Y.prototype), Q(Y.prototype, "resetMapSettings", [g], Object.getOwnPropertyDescriptor(Y.prototype, "resetMapSettings"), Y.prototype), yn = Q(Y.prototype, "animatePitch", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !0;
	}
}), Q(Y.prototype, "pitchEnabled", [st], Object.getOwnPropertyDescriptor(Y.prototype, "pitchEnabled"), Y.prototype), Q(Y.prototype, "rollEnabled", [m], Object.getOwnPropertyDescriptor(Y.prototype, "rollEnabled"), Y.prototype), Q(Y.prototype, "baseQRCodeUrl", [m], Object.getOwnPropertyDescriptor(Y.prototype, "baseQRCodeUrl"), Y.prototype), Q(Y.prototype, "viewMapOnPhoneQRCodeUrl", [m], Object.getOwnPropertyDescriptor(Y.prototype, "viewMapOnPhoneQRCodeUrl"), Y.prototype), Q(Y.prototype, "routeQRCodeUrl", [m], Object.getOwnPropertyDescriptor(Y.prototype, "routeQRCodeUrl"), Y.prototype), Q(Y.prototype, "isFeaturedExhibitorActive", [m], Object.getOwnPropertyDescriptor(Y.prototype, "isFeaturedExhibitorActive"), Y.prototype), Q(Y.prototype, "activeInterfaceData", [m], Object.getOwnPropertyDescriptor(Y.prototype, "activeInterfaceData"), Y.prototype), Q(Y.prototype, "activeInterfaceId", [m], Object.getOwnPropertyDescriptor(Y.prototype, "activeInterfaceId"), Y.prototype), Q(Y.prototype, "searchBoxConfig", [m], Object.getOwnPropertyDescriptor(Y.prototype, "searchBoxConfig"), Y.prototype), Q(Y.prototype, "searchBoxActions", [m], Object.getOwnPropertyDescriptor(Y.prototype, "searchBoxActions"), Y.prototype), Q(Y.prototype, "overlayInterfaceClasses", [m], Object.getOwnPropertyDescriptor(Y.prototype, "overlayInterfaceClasses"), Y.prototype), Q(Y.prototype, "isOverlayOpen", [m], Object.getOwnPropertyDescriptor(Y.prototype, "isOverlayOpen"), Y.prototype), Q(Y.prototype, "setOverlayScrolled", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setOverlayScrolled"), Y.prototype), Q(Y.prototype, "setListScrollTop", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setListScrollTop"), Y.prototype), Q(Y.prototype, "setListScrollItemId", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setListScrollItemId"), Y.prototype), Q(Y.prototype, "getListScrollTop", [g], Object.getOwnPropertyDescriptor(Y.prototype, "getListScrollTop"), Y.prototype), Q(Y.prototype, "getListScrollItemId", [g], Object.getOwnPropertyDescriptor(Y.prototype, "getListScrollItemId"), Y.prototype), Q(Y.prototype, "clearListScroll", [g], Object.getOwnPropertyDescriptor(Y.prototype, "clearListScroll"), Y.prototype), Q(Y.prototype, "bannerType", [m], Object.getOwnPropertyDescriptor(Y.prototype, "bannerType"), Y.prototype), Q(Y.prototype, "setCurrentBanner", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setCurrentBanner"), Y.prototype), bn = Q(Y.prototype, "forceShowDetails", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Q(Y.prototype, "setForceShowDetails", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setForceShowDetails"), Y.prototype), Q(Y.prototype, "showRouteInstantly", [m], Object.getOwnPropertyDescriptor(Y.prototype, "showRouteInstantly"), Y.prototype), xn = Q(Y.prototype, "buildRoute", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Q(Y.prototype, "startBuildRoute", [g], Object.getOwnPropertyDescriptor(Y.prototype, "startBuildRoute"), Y.prototype), Sn = Q(Y.prototype, "globalErrorMessages", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return [];
	}
}), Q(Y.prototype, "setGlobalErrorMessage", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setGlobalErrorMessage"), Y.prototype), Q(Y.prototype, "popGlobalErrorMessage", [g], Object.getOwnPropertyDescriptor(Y.prototype, "popGlobalErrorMessage"), Y.prototype), Q(Y.prototype, "initializeUIScale", [g], Object.getOwnPropertyDescriptor(Y.prototype, "initializeUIScale"), Y.prototype), Q(Y.prototype, "setUIScale", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setUIScale"), Y.prototype), Q(Y.prototype, "setKioskUIScale", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setKioskUIScale"), Y.prototype), Q(Y.prototype, "resetUIScale", [g], Object.getOwnPropertyDescriptor(Y.prototype, "resetUIScale"), Y.prototype), Q(Y.prototype, "restoreUIScale", [g], Object.getOwnPropertyDescriptor(Y.prototype, "restoreUIScale"), Y.prototype), Cn = Q(Y.prototype, "kioskEnabled", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), wn = Q(Y.prototype, "setKioskModeEnabled", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return !1;
	}
}), Q(Y.prototype, "enableSetKioskMode", [g], Object.getOwnPropertyDescriptor(Y.prototype, "enableSetKioskMode"), Y.prototype), Tn = Q(Y.prototype, "kioskData", [h], {
	configurable: !0,
	enumerable: !0,
	writable: !0,
	initializer: function() {
		return null;
	}
}), Q(Y.prototype, "setKioskData", [g], Object.getOwnPropertyDescriptor(Y.prototype, "setKioskData"), Y.prototype), Y);
function An(e) {
	return "description" in e && typeof e.description == "string" ? e.description : void 0;
}
function $(e, t, n = []) {
	let r = [];
	return e.forEach((e) => {
		if (e instanceof O) r.push(...e.booths);
		else if (e instanceof D) r.push(e);
		else if (e instanceof H) {
			let n = t.find((t) => t.id === e.boothId);
			e.boothId && n && r.push(n);
		} else e instanceof J && n.filter((t) => t.speakers.some((t) => t.id === e.id) && t.boothId).forEach((e) => {
			let n = t.find((t) => t.id === e.boothId);
			n && r.push(n);
		});
	}), new Set(r.filter(Boolean));
}
//#endregion
export { ke as a, Ce as c, H as d, ye as f, pe as h, Re as i, W as l, ge as m, En as n, J as o, L as p, Be as r, De as s, kn as t, be as u };