@expofp/floorplan 3.3.7 → 3.4.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.
Files changed (249) hide show
  1. package/dist/browser/CookieConsent-BgzFI0o5.js +38 -0
  2. package/dist/browser/{Debug-A2TjoZQK.js → Debug-DwwZ0jVT.js} +9 -9
  3. package/dist/browser/{Demo-iK72mOgP.js → Demo-Bhv7muKd.js} +11 -11
  4. package/dist/browser/{Free-BcbAZA3y.js → Free-EaDzP7U5.js} +12 -12
  5. package/dist/browser/{Gallery-U-ldyITy.js → Gallery-BFio06PY.js} +10 -10
  6. package/dist/browser/{GpsLoader-DqPTky-0.js → GpsLoader-BhYirpWa.js} +46 -47
  7. package/dist/browser/{KioskStore-DIKp1HfX.js → KioskStore-DiTPaFb2.js} +17 -17
  8. package/dist/browser/MaplibreAdapter-BKj3sK8A.js +35131 -0
  9. package/dist/browser/{Modal-BLjdiYfi.js → Modal-DVY124d5.js} +10 -10
  10. package/dist/browser/PermissionNotice-CrAxf_da.js +54 -0
  11. package/dist/browser/{SetKioskMode-CIDQnVVK.js → SetKioskMode-Cj1IbMbn.js} +11 -11
  12. package/dist/browser/ShowKiosk-CqmJT8yJ.js +26 -0
  13. package/dist/browser/{TouchHand-4OAXEmLA.js → TouchHand-BdZWU_I1.js} +4 -4
  14. package/dist/browser/{ViewerMenuPanel-BFEwT9oC.js → ViewerMenuPanel-DbVIwrJO.js} +19 -19
  15. package/dist/browser/{add-debug-secret-listener-B2ugeAcj.js → add-debug-secret-listener-B8gxDWmn.js} +1 -1
  16. package/dist/browser/{boolean-editor-Cc1GCvQj.js → boolean-editor-CIT7g6C5.js} +10 -10
  17. package/dist/browser/{bootIntercom-BVGw_SpO.js → bootIntercom-CcgHFRAw.js} +2 -2
  18. package/dist/browser/{box-CaErtqkj.js → box-CydZk4HJ.js} +5 -5
  19. package/dist/browser/{browser-_paBhqQW.js → browser-DlMYMMvJ.js} +2 -2
  20. package/dist/browser/bundle.json +61 -61
  21. package/dist/browser/{classnames-CVk0A91C.js → classnames-DmdaKMoa.js} +2 -2
  22. package/dist/browser/{client-B70Nbh5h.js → client-8ygU_jvu.js} +4 -4
  23. package/dist/browser/components-BgwIl1Lu.js +6289 -0
  24. package/dist/browser/createWayfinding-D9tuHHx5.js +1889 -0
  25. package/dist/browser/{debug-overlay-CyYqgTdj.js → debug-overlay-Dos3Ate2.js} +11 -11
  26. package/dist/browser/{debug-ui-D9A6yzed.js → debug-ui-BjmKfkgV.js} +6 -6
  27. package/dist/browser/{dist-BUD3zJ9Z.js → dist-B3Y58WKJ.js} +6 -6
  28. package/dist/browser/{dist-BPljQLT7.js → dist-Bm6VKnC2.js} +3 -3
  29. package/dist/browser/{dist-BrWnw-Ri.js → dist-_wJOZ0rm.js} +5 -5
  30. package/dist/browser/{efp-debug-init-CL7ckXKd.js → efp-debug-init-yyCWZRTx.js} +5 -4
  31. package/dist/browser/{enum-editor-Djt6vsG1.js → enum-editor-D8X_uabc.js} +11 -11
  32. package/dist/browser/{event-not-found-CAUywrB2.js → event-not-found-Bm_W5xxA.js} +1 -1
  33. package/dist/browser/{exports-D5aj-cpr.js → exports-DnHrfjiU.js} +1 -1
  34. package/dist/browser/{favicon-B3ilFIzN.js → favicon-Bnz633J6.js} +1 -1
  35. package/dist/browser/{fetch-retry.umd-CC6nRZde.js → fetch-retry.umd-BunUcQza.js} +2 -2
  36. package/dist/browser/{flex-SCSgjwpS.js → flex-DwDJlblp.js} +6 -6
  37. package/dist/browser/{flex.props-DM7y21yG.js → flex.props-BAGkFvkN.js} +2 -2
  38. package/dist/browser/{floorplan.loader-BmVUKCxN.js → floorplan.loader-B3PUqtqn.js} +30 -31
  39. package/dist/browser/{floorplan.ready-da1pQZ1-.js → floorplan.ready-BAnq_GdS.js} +196 -196
  40. package/dist/browser/{fuse-DY6Kjf36.js → fuse-Bhsd7fBU.js} +2 -2
  41. package/dist/browser/{i18n-1-u98ly9.js → i18n-C5BBGKZk.js} +5 -5
  42. package/dist/browser/index.js +13 -13
  43. package/dist/browser/{jsx-runtime-BESB6cP1.js → jsx-runtime-Dk2--jeN.js} +2 -2
  44. package/dist/browser/{lib-BhhCH6-T.js → lib-Brd2BCh_.js} +4 -4
  45. package/dist/browser/locales/ar.json +0 -1
  46. package/dist/browser/locales/de.json +0 -1
  47. package/dist/browser/locales/es.json +0 -1
  48. package/dist/browser/locales/fr.json +0 -1
  49. package/dist/browser/locales/he.json +0 -1
  50. package/dist/browser/locales/it.json +0 -1
  51. package/dist/browser/locales/kk.json +0 -1
  52. package/dist/browser/locales/ko.json +0 -1
  53. package/dist/browser/locales/mn.json +0 -1
  54. package/dist/browser/locales/nl.json +0 -1
  55. package/dist/browser/locales/pl.json +0 -1
  56. package/dist/browser/locales/pt.json +0 -1
  57. package/dist/browser/locales/ru.json +0 -1
  58. package/dist/browser/locales/sv.json +0 -1
  59. package/dist/browser/locales/th.json +0 -1
  60. package/dist/browser/locales/tr.json +0 -1
  61. package/dist/browser/locales/uk.json +0 -1
  62. package/dist/browser/locales/vi.json +0 -1
  63. package/dist/browser/locales/zh.json +0 -1
  64. package/dist/browser/{main-D2NmCv2H.js → main-pIcuVUIg.js} +1 -1
  65. package/dist/browser/{mobx-Cfh5Vfk6.js → mobx-BfCD0EQ-.js} +4 -4
  66. package/dist/browser/{particles.min-B5qlVBuL.js → particles.min-ChGMv-bm.js} +2 -2
  67. package/dist/browser/{prop-types-DZ8VfWUb.js → prop-types-xdXFFTmm.js} +2 -2
  68. package/dist/browser/{react-cXsgFw41.js → react-BbZc5Oeq.js} +2 -2
  69. package/dist/browser/{react-dom-l5Q31Wma.js → react-dom-BBDOhlbP.js} +3 -3
  70. package/dist/browser/{reset-all-settings-B6K1EwXP.js → reset-all-settings-BQC7zljW.js} +7 -7
  71. package/dist/browser/{rolldown-runtime-hPqAdzN2.js → rolldown-runtime-DS4W77DU.js} +1 -1
  72. package/dist/browser/{settings-BZyvLLph.js → settings-CK-qRFM8.js} +2 -2
  73. package/dist/browser/{settings-item-zDeA5cv4.js → settings-item-CUnGC7xO.js} +6 -6
  74. package/dist/browser/{storage-CneO9F9t.js → storage-0QGL3b8S.js} +3 -3
  75. package/dist/browser/{store-CQphSXxk.js → store-Bm4aFC2V.js} +4543 -4998
  76. package/dist/browser/{string-editor-BJn1AFSw.js → string-editor-BNry84Oh.js} +8 -8
  77. package/dist/browser/{theme-DoAOOaRE.js → theme-BIXywNMw.js} +8 -8
  78. package/dist/browser/{ui-DNF4wGZh.js → ui-AzubEvGd.js} +8 -8
  79. package/dist/browser/{useRenderTarget-BYpCY_A9.js → useRenderTarget-Bf7cQRFi.js} +4 -4
  80. package/dist/esm/_misc_to_move/manifest.d.ts +1 -0
  81. package/dist/esm/components/AlertContainer.d.ts +1 -1
  82. package/dist/esm/components/Controls.js +1 -1
  83. package/dist/esm/components/CookieConsent.d.ts +3 -3
  84. package/dist/esm/components/CookieConsent.js +1 -1
  85. package/dist/esm/components/EntityItemContainer.d.ts +1 -1
  86. package/dist/esm/components/Exhibitor.js +1 -1
  87. package/dist/esm/components/HeatmapLegendContainer.d.ts +6 -0
  88. package/dist/esm/components/HeatmapLegendContainer.js +1 -0
  89. package/dist/esm/components/HighlightTextContainer.d.ts +1 -1
  90. package/dist/esm/components/Kiosk/SetKiosk/SetKioskComponent.js +1 -1
  91. package/dist/esm/components/Layout.js +1 -1
  92. package/dist/esm/components/LevelBadgeContainer.d.ts +6 -0
  93. package/dist/esm/components/LevelBadgeContainer.js +1 -0
  94. package/dist/esm/components/LevelSelector.js +1 -1
  95. package/dist/esm/components/LogoOverlay.js +1 -1
  96. package/dist/esm/components/Map/Map.js +1 -1
  97. package/dist/esm/components/Map/drawing/config/config-booth-bg.d.ts +3 -2
  98. package/dist/esm/components/Map/drawing/config/config-booth-bg.js +1 -1
  99. package/dist/esm/components/Map/drawing/config/config-booth-border.js +1 -1
  100. package/dist/esm/components/Map/drawing/config/config-booths.js +1 -1
  101. package/dist/esm/components/Map/drawing/config/config-load-layer.js +1 -1
  102. package/dist/esm/components/Map/traffic/useManageTraffic.js +1 -1
  103. package/dist/esm/components/Maplibre/MaplibreAdapter.d.ts +14 -0
  104. package/dist/esm/components/Maplibre/MaplibreAdapter.js +1 -0
  105. package/dist/esm/components/Maplibre/MaplibreWrapper.d.ts +69 -0
  106. package/dist/esm/components/Maplibre/MaplibreWrapper.js +1 -0
  107. package/dist/esm/components/Maplibre/useCameraReactions.d.ts +10 -0
  108. package/dist/esm/components/Maplibre/useCameraReactions.js +1 -0
  109. package/dist/esm/components/Maplibre/useDimming.d.ts +16 -0
  110. package/dist/esm/components/Maplibre/useDimming.js +1 -0
  111. package/dist/esm/components/Maplibre/useLayerVisibilitySync.d.ts +11 -0
  112. package/dist/esm/components/Maplibre/useLayerVisibilitySync.js +1 -0
  113. package/dist/esm/components/Maplibre/useRendererEvents.d.ts +9 -0
  114. package/dist/esm/components/Maplibre/useRendererEvents.js +1 -0
  115. package/dist/esm/components/Maplibre/useWayfindingAndMarkers.d.ts +8 -0
  116. package/dist/esm/components/Maplibre/useWayfindingAndMarkers.js +1 -0
  117. package/dist/esm/components/Maplibre/utils/geo-config.d.ts +30 -0
  118. package/dist/esm/components/Maplibre/utils/geo-config.js +1 -0
  119. package/dist/esm/components/Maplibre/utils/layer-defs.d.ts +4 -0
  120. package/dist/esm/components/Maplibre/utils/layer-defs.js +1 -0
  121. package/dist/esm/components/Maplibre/utils/map-helpers.d.ts +9 -0
  122. package/dist/esm/components/Maplibre/utils/map-helpers.js +1 -0
  123. package/dist/esm/components/Maplibre/utils/solver.d.ts +24 -0
  124. package/dist/esm/components/Maplibre/utils/solver.js +1 -0
  125. package/dist/esm/components/OverlayContainer.d.ts +1 -1
  126. package/dist/esm/components/OverlayGripContainer.d.ts +4 -0
  127. package/dist/esm/components/OverlayGripContainer.js +1 -0
  128. package/dist/esm/components/ScrollableRowContainer.d.ts +6 -0
  129. package/dist/esm/components/ScrollableRowContainer.js +1 -0
  130. package/dist/esm/components/SearchButtons/SearchButtons.d.ts +1 -1
  131. package/dist/esm/components/SearchButtons/SearchButtons.js +1 -1
  132. package/dist/esm/components/Shortcuts/ShortcutsToolbar.d.ts +1 -1
  133. package/dist/esm/components/Shortcuts/ShortcutsToolbar.js +1 -1
  134. package/dist/esm/components/WayfindingFloorSelectorContainer.d.ts +1 -1
  135. package/dist/esm/components/gps/GpsPermissionRequest.js +1 -1
  136. package/dist/esm/components/index.d.ts +9 -8
  137. package/dist/esm/components/index.js +1 -1
  138. package/dist/esm/data/Flags.d.ts +1 -0
  139. package/dist/esm/data/fpGeo.d.ts +20 -1
  140. package/dist/esm/floorplan.loader.d.ts +1 -0
  141. package/dist/esm/floorplan.loader.js +1 -1
  142. package/dist/esm/floorplan.ready.js +1 -1
  143. package/dist/esm/renderer/RendererService.d.ts +5 -0
  144. package/dist/esm/renderer/RendererService.js +1 -1
  145. package/dist/esm/services/routing.js +1 -1
  146. package/dist/esm/store/HeatmapStore.js +1 -1
  147. package/dist/esm/store/MaplibreStore.d.ts +22 -0
  148. package/dist/esm/store/MaplibreStore.js +1 -0
  149. package/dist/esm/store/RootStore.d.ts +2 -2
  150. package/dist/esm/store/RootStore.js +1 -1
  151. package/dist/esm/store/RouteStore.js +1 -1
  152. package/dist/esm/store/init/init-booths.js +1 -1
  153. package/dist/esm/types.d.ts +9 -0
  154. package/dist/esm/ui/Draggable/Draggable.d.ts +9 -0
  155. package/dist/esm/ui/Draggable/Draggable.js +1 -0
  156. package/dist/esm/ui/Draggable/index.d.ts +3 -0
  157. package/dist/esm/ui/Draggable/index.js +1 -0
  158. package/dist/esm/ui/HeatmapLegend/HeatmapLegend.d.ts +13 -0
  159. package/dist/esm/ui/HeatmapLegend/HeatmapLegend.js +1 -0
  160. package/dist/esm/ui/HeatmapLegend/index.d.ts +3 -0
  161. package/dist/esm/ui/HeatmapLegend/index.js +1 -0
  162. package/dist/esm/ui/LevelBadge/LevelBadge.d.ts +9 -0
  163. package/dist/esm/ui/LevelBadge/LevelBadge.js +1 -0
  164. package/dist/esm/ui/LevelBadge/index.d.ts +3 -0
  165. package/dist/esm/ui/LevelBadge/index.js +1 -0
  166. package/dist/esm/ui/OverlayGrip/OverlayGrip.d.ts +11 -0
  167. package/dist/esm/ui/OverlayGrip/OverlayGrip.js +1 -0
  168. package/dist/esm/ui/OverlayGrip/index.d.ts +3 -0
  169. package/dist/esm/ui/OverlayGrip/index.js +1 -0
  170. package/dist/esm/ui/PermissionNotice/PermissionNotice.d.ts +16 -0
  171. package/dist/esm/ui/PermissionNotice/PermissionNotice.js +1 -0
  172. package/dist/esm/ui/PermissionNotice/index.d.ts +3 -0
  173. package/dist/esm/ui/PermissionNotice/index.js +1 -0
  174. package/dist/esm/{components → ui/ScrollableRow}/ScrollableRow.d.ts +5 -4
  175. package/dist/esm/ui/ScrollableRow/ScrollableRow.js +1 -0
  176. package/dist/esm/ui/ScrollableRow/index.d.ts +3 -0
  177. package/dist/esm/ui/ScrollableRow/index.js +1 -0
  178. package/dist/esm/ui/ToggleSwitch/ToggleSwitch.d.ts +4 -10
  179. package/dist/esm/ui/ToggleSwitch/ToggleSwitch.js +1 -1
  180. package/dist/esm/ui/shared/interactive.d.ts +2 -0
  181. package/dist/esm/ui/shared/interactive.js +1 -0
  182. package/dist/esm/utils/color-gradient.d.ts +2 -0
  183. package/dist/esm/utils/color-gradient.js +1 -0
  184. package/dist/esm/utils/dimming.d.ts +16 -0
  185. package/dist/esm/utils/dimming.js +1 -0
  186. package/dist/esm/wayfinding/core/position/gpsThreshold.d.ts +1 -1
  187. package/package.json +5 -9
  188. package/dist/browser/CookieConsent-DeA-DR4A.js +0 -71
  189. package/dist/browser/Mapbox-ChPNLhVw.js +0 -120
  190. package/dist/browser/ShowKiosk-CprbVv29.js +0 -26
  191. package/dist/browser/ThreeComponent-CtqPjAlQ.js +0 -1494
  192. package/dist/browser/components-XkvqySvZ.js +0 -8143
  193. package/dist/browser/data-DshpY4Eh.js +0 -27967
  194. package/dist/browser/vendor/mapbox/mapbox-gl.css +0 -1
  195. package/dist/esm/components/BookmarkSvg.d.ts +0 -4
  196. package/dist/esm/components/BookmarkSvg.js +0 -1
  197. package/dist/esm/components/Draggable.d.ts +0 -10
  198. package/dist/esm/components/Draggable.js +0 -1
  199. package/dist/esm/components/HeatmapLegend.d.ts +0 -12
  200. package/dist/esm/components/HeatmapLegend.js +0 -1
  201. package/dist/esm/components/LevelBadge.d.ts +0 -8
  202. package/dist/esm/components/LevelBadge.js +0 -1
  203. package/dist/esm/components/Mapbox/Button.d.ts +0 -10
  204. package/dist/esm/components/Mapbox/Button.js +0 -1
  205. package/dist/esm/components/Mapbox/Dot.d.ts +0 -10
  206. package/dist/esm/components/Mapbox/Dot.js +0 -1
  207. package/dist/esm/components/Mapbox/MapLoader.d.ts +0 -4
  208. package/dist/esm/components/Mapbox/MapLoader.js +0 -1
  209. package/dist/esm/components/Mapbox/Mapbox.d.ts +0 -4
  210. package/dist/esm/components/Mapbox/Mapbox.js +0 -1
  211. package/dist/esm/components/Mapbox/utils/data.d.ts +0 -38
  212. package/dist/esm/components/Mapbox/utils/data.js +0 -1
  213. package/dist/esm/components/OverlayGrip.d.ts +0 -5
  214. package/dist/esm/components/OverlayGrip.js +0 -1
  215. package/dist/esm/components/PermissionNotice/PermissionNotice.d.ts +0 -14
  216. package/dist/esm/components/PermissionNotice/PermissionNotice.js +0 -1
  217. package/dist/esm/components/ScrollableRow.js +0 -1
  218. package/dist/esm/components/Threejs/ThreeComponent.d.ts +0 -7
  219. package/dist/esm/components/Threejs/ThreeComponent.js +0 -1
  220. package/dist/esm/components/Threejs/UIManager.d.ts +0 -28
  221. package/dist/esm/components/Threejs/UIManager.js +0 -1
  222. package/dist/esm/components/Threejs/common/BoothMesh.d.ts +0 -20
  223. package/dist/esm/components/Threejs/common/BoothMesh.js +0 -1
  224. package/dist/esm/components/Threejs/common/Scene.d.ts +0 -13
  225. package/dist/esm/components/Threejs/common/Scene.js +0 -1
  226. package/dist/esm/components/Threejs/common/SpriteMesh.d.ts +0 -5
  227. package/dist/esm/components/Threejs/common/SpriteMesh.js +0 -1
  228. package/dist/esm/components/Threejs/common/dataLoader.d.ts +0 -31
  229. package/dist/esm/components/Threejs/common/dataLoader.js +0 -1
  230. package/dist/esm/components/Threejs/common/modelLoader.d.ts +0 -3
  231. package/dist/esm/components/Threejs/common/modelLoader.js +0 -1
  232. package/dist/esm/components/Threejs/common/sceneLoader.d.ts +0 -7
  233. package/dist/esm/components/Threejs/common/sceneLoader.js +0 -1
  234. package/dist/esm/components/Threejs/index.d.ts +0 -4
  235. package/dist/esm/components/Threejs/index.js +0 -1
  236. package/dist/esm/components/Threejs/mapbox/configureWebGLForMapbox.d.ts +0 -2
  237. package/dist/esm/components/Threejs/mapbox/configureWebGLForMapbox.js +0 -1
  238. package/dist/esm/components/Threejs/mapbox/index_mapbox.d.ts +0 -4
  239. package/dist/esm/components/Threejs/mapbox/index_mapbox.js +0 -1
  240. package/dist/esm/components/Threejs/mapbox/init-mapbox.d.ts +0 -3
  241. package/dist/esm/components/Threejs/mapbox/init-mapbox.js +0 -1
  242. package/dist/esm/components/Threejs/utils/canvasFromText.d.ts +0 -2
  243. package/dist/esm/components/Threejs/utils/canvasFromText.js +0 -1
  244. package/dist/esm/components/Threejs/utils/textureMerger.d.ts +0 -60
  245. package/dist/esm/components/Threejs/utils/textureMerger.js +0 -1
  246. package/dist/esm/store/MapboxStore.d.ts +0 -13
  247. package/dist/esm/store/MapboxStore.js +0 -1
  248. package/dist/esm/tools/Color.d.ts +0 -2
  249. package/dist/esm/tools/Color.js +0 -1
@@ -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.3.7" };
4
+ e.SENTRY_RELEASE = { id: "3.4.0" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "90fb92e4-0c35-4d73-af3d-09f610967014", e._sentryDebugIdIdentifier = "sentry-dbid-90fb92e4-0c35-4d73-af3d-09f610967014");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-hPqAdzN2.js";
10
- import { t } from "./react-cXsgFw41.js";
11
- import { t as n } from "./jsx-runtime-BESB6cP1.js";
12
- import { E as r, c as i, l as a, o, r as s, v as c } from "./box-CaErtqkj.js";
13
- import { t as l } from "./classnames-CVk0A91C.js";
14
- import { t as u } from "./flex.props-DM7y21yG.js";
15
- import { t as d } from "./settings-item-zDeA5cv4.js";
9
+ import { r as e } from "./rolldown-runtime-DS4W77DU.js";
10
+ import { t } from "./react-BbZc5Oeq.js";
11
+ import { t as n } from "./jsx-runtime-Dk2--jeN.js";
12
+ import { E as r, c as i, l as a, o, r as s, v as c } from "./box-CydZk4HJ.js";
13
+ import { t as l } from "./classnames-DmdaKMoa.js";
14
+ import { t as u } from "./flex.props-BAGkFvkN.js";
15
+ import { t as d } from "./settings-item-CUnGC7xO.js";
16
16
  //#region ../../node_modules/.pnpm/@radix-ui+themes@3.3.0_@types+react-dom@19.2.3_@types+react@19.2.16__@types+react@19.2._237ab8922e2725fc6ff51784b4ebc77f/node_modules/@radix-ui/themes/dist/esm/components/text-field.props.js
17
17
  var f = {
18
18
  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.3.7" };
4
+ e.SENTRY_RELEASE = { id: "3.4.0" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "cff38276-aa8d-41db-a31e-c60b68cf072c", e._sentryDebugIdIdentifier = "sentry-dbid-cff38276-aa8d-41db-a31e-c60b68cf072c");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-hPqAdzN2.js";
10
- import { t } from "./react-cXsgFw41.js";
11
- import { t as n } from "./jsx-runtime-BESB6cP1.js";
12
- import { t as r } from "./react-dom-l5Q31Wma.js";
13
- import { C as i, D as a, S as o, T as s, _ as c, a as l, g as u, w as d } from "./box-CaErtqkj.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-BUD3zJ9Z.js";
15
- import { t as y } from "./classnames-CVk0A91C.js";
9
+ import { r as e } from "./rolldown-runtime-DS4W77DU.js";
10
+ import { t } from "./react-BbZc5Oeq.js";
11
+ import { t as n } from "./jsx-runtime-Dk2--jeN.js";
12
+ import { t as r } from "./react-dom-BBDOhlbP.js";
13
+ import { C as i, D as a, S as o, T as s, _ as c, a as l, g as u, w as d } from "./box-CydZk4HJ.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-B3Y58WKJ.js";
15
+ import { t as y } from "./classnames-DmdaKMoa.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.16__@ty_0100624f14fe05e2fce87091cda222ea/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.3.7" };
4
+ e.SENTRY_RELEASE = { id: "3.4.0" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "11c667ee-f279-40ae-b116-af84691ecf19", e._sentryDebugIdIdentifier = "sentry-dbid-11c667ee-f279-40ae-b116-af84691ecf19");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-hPqAdzN2.js";
10
- import { i as t, r as n } from "./reset-all-settings-B6K1EwXP.js";
11
- import { t as r } from "./jsx-runtime-BESB6cP1.js";
12
- import "./settings-BZyvLLph.js";
13
- import { t as i } from "./browser-_paBhqQW.js";
14
- import { t as a } from "./add-debug-secret-listener-B2ugeAcj.js";
9
+ import { r as e } from "./rolldown-runtime-DS4W77DU.js";
10
+ import { i as t, r as n } from "./reset-all-settings-BQC7zljW.js";
11
+ import { t as r } from "./jsx-runtime-Dk2--jeN.js";
12
+ import "./settings-CK-qRFM8.js";
13
+ import { t as i } from "./browser-DlMYMMvJ.js";
14
+ import { t as a } from "./add-debug-secret-listener-B8gxDWmn.js";
15
15
  //#region ../debug/src/lib/ui/render-debug-ui.tsx
16
16
  var o = /* @__PURE__ */ e(i(), 1), s = r(), c = !1;
17
17
  function l() {
@@ -26,7 +26,7 @@ function l() {
26
26
  }
27
27
  });
28
28
  let i = async (t) => {
29
- let { DebugUi: n } = await import("./debug-ui-D9A6yzed.js"), { createRoot: i } = await import("./client-B70Nbh5h.js").then((t) => /* @__PURE__ */ e(t.default, 1)), a = document.createElement("div");
29
+ let { DebugUi: n } = await import("./debug-ui-BjmKfkgV.js"), { createRoot: i } = await import("./client-8ygU_jvu.js").then((t) => /* @__PURE__ */ e(t.default, 1)), a = document.createElement("div");
30
30
  document.body.appendChild(a), i(a).render(/* @__PURE__ */ (0, s.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.3.7" };
4
+ e.SENTRY_RELEASE = { id: "3.4.0" };
5
5
  var t = new e.Error().stack;
6
6
  t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "efd08859-ff4a-4f73-977e-4ad657829cfc", e._sentryDebugIdIdentifier = "sentry-dbid-efd08859-ff4a-4f73-977e-4ad657829cfc");
7
7
  } catch {}
8
8
  })();
9
- import { r as e } from "./rolldown-runtime-hPqAdzN2.js";
10
- import { t } from "./react-cXsgFw41.js";
11
- import { s as n } from "./store-CQphSXxk.js";
9
+ import { r as e } from "./rolldown-runtime-DS4W77DU.js";
10
+ import { t } from "./react-BbZc5Oeq.js";
11
+ import { s as n } from "./store-Bm4aFC2V.js";
12
12
  //#region src/utils/getRenderTargetFromRoot.ts
13
13
  var r = /* @__PURE__ */ e(t(), 1);
14
14
  function i(e) {
@@ -1,5 +1,6 @@
1
1
  /**
2
2
  * ExpoFP Manifest format
3
+ * TODO: Keep this in sync with packages/data/src/lib/manifest.ts until this copy is removed.
3
4
  */
4
5
  export interface Manifest {
5
6
  expo: string;
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
2
  import type { AlertProps } from "../ui/Alert";
3
- declare const AlertContainer: React.FC<AlertProps>;
3
+ declare const AlertContainer: (props: AlertProps) => React.JSX.Element;
4
4
  export default AlertContainer;
5
5
  //# sourceMappingURL=AlertContainer.d.ts.map
@@ -1 +1 @@
1
- import{jsx as m}from"react/jsx-runtime";import c from"classnames";import{useLocalStore as d,useObserver as p}from"mobx-react-lite";import r,{layersStore as i,uiState as o}from"../store";import{LayerMode as n,LayersMode as u}from"../store/LayerStore";import{remsToPixels as a}from"../utils";import{t}from"../utils/i18n";import y from"./MapControls";export default function b(){const s=d(()=>({get className(){return c({controls:!0,container:!0,"-ready":!0,[o.responsiveClass]:!0})},get style(){return{[o.rtl?"left":"right"]:o.overlayPosition==="left"?o.overlayCollapsed?a(.9):(o.kiosk?10:0)+a(.7)+"px":"10px",bottom:o.kiosk?a(4):a(9.6)}},get layers(){return i.layers.filter(e=>e.mode!==n.AlwaysHidden&&e.mode!==n.AlwaysVisible).map(e=>({id:e.name,name:e.description,visible:e.visible})).concat([]).reverse()},get visible(){return i.layers.filter(e=>e.visible).map(e=>e.name)}}));return p(()=>m(y,{className:s.className,style:s.style,title:t("Map controls"),titles:[t("Find your location"),t("Zoom In"),t("Zoom Out"),t("View switch"),t("Fit to screen"),t("Layers")],onClickFindLocation:()=>r.routeStore.findLocation(),onClickZoomIn:()=>o.zoomIn(),onClickZoomOut:()=>o.zoomOut(),onClickByWidth:()=>o.fitBounds(),onViewModeSwitch:()=>r.mapboxStore.activateMapbox(),viewModeSwitch:r.mapboxStore.mapBoxEnabled&&!r.mapboxStore.hideModeSwitchButton,viewMode:r.mapboxStore.showMapbox,findLocation:r.routeStore.canFindLocation&&!o.setKioskModeEnabled,layersActiveItems:s.visible,layersList:i.mode===u.CheckBox?s.layers:null,onChangeLayers:e=>{i.updateVisibility(e,!i.layers.find(l=>l.name===e).visible)}}))}
1
+ import{jsx as m}from"react/jsx-runtime";import c from"classnames";import{useLocalStore as d,useObserver as p}from"mobx-react-lite";import i,{layersStore as r,uiState as o}from"../store";import{LayerMode as l,LayersMode as u}from"../store/LayerStore";import{remsToPixels as a}from"../utils";import{t}from"../utils/i18n";import y from"./MapControls";export default function b(){const s=d(()=>({get className(){return c({controls:!0,container:!0,"-ready":!0,[o.responsiveClass]:!0})},get style(){return{[o.rtl?"left":"right"]:o.overlayPosition==="left"?o.overlayCollapsed?a(.9):(o.kiosk?10:0)+a(.7)+"px":"10px",bottom:o.kiosk?a(4):a(9.6)}},get layers(){return r.layers.filter(e=>e.mode!==l.AlwaysHidden&&e.mode!==l.AlwaysVisible).map(e=>({id:e.name,name:e.description,visible:e.visible})).concat([]).reverse()},get visible(){return r.layers.filter(e=>e.visible).map(e=>e.name)}}));return p(()=>m(y,{className:s.className,style:s.style,title:t("Map controls"),titles:[t("Find your location"),t("Zoom In"),t("Zoom Out"),t("View switch"),t("Fit to screen"),t("Layers")],onClickFindLocation:()=>i.routeStore.findLocation(),onClickZoomIn:()=>o.zoomIn(),onClickZoomOut:()=>o.zoomOut(),onClickByWidth:()=>o.fitBounds(),onViewModeSwitch:()=>i.maplibreStore.activateMaplibre(),viewModeSwitch:i.maplibreStore.maplibreEnabled&&!i.maplibreStore.hideModeSwitchButton,viewMode:i.maplibreStore.isMap3d,findLocation:i.routeStore.canFindLocation&&!o.setKioskModeEnabled,layersActiveItems:s.visible,layersList:r.mode===u.CheckBox?s.layers:null,onChangeLayers:e=>{r.updateVisibility(e,!r.layers.find(n=>n.name===e).visible)}}))}
@@ -1,9 +1,9 @@
1
1
  import React from "react";
2
2
  export interface CookieConsentProps {
3
3
  link?: string;
4
- onClickAccept?: () => void;
5
- onClickReject?: () => void;
4
+ onAccept?: () => void;
5
+ onReject?: () => void;
6
6
  }
7
- declare const CookieConsent: React.FC<CookieConsentProps>;
7
+ declare const CookieConsent: React.FunctionComponent<CookieConsentProps>;
8
8
  export default CookieConsent;
9
9
  //# sourceMappingURL=CookieConsent.d.ts.map
@@ -1 +1 @@
1
- import{jsx as i,jsxs as s}from"react/jsx-runtime";import{t as e}from"../utils/i18n";import{observer as c}from"mobx-react-lite";import a from"./PermissionNotice/PermissionNotice";const n=c(({link:o,onClickAccept:r,onClickReject:t})=>s(a,{className:"permission-notice--cookie",title:e("Cookie Consent"),acceptText:e("Accept cookies"),rejectText:e("Reject"),onClickAccept:r,onClickReject:t,children:[e("We use cookies for analytics only"),"\xA0",o&&i("a",{href:o,target:"_blank",rel:"noopener noreferrer","aria-label":e("Read more about cookie usage in a new tab"),children:e("Read More")})]}));export default n;
1
+ import{jsx as a,jsxs as n}from"react/jsx-runtime";import{t as e}from"../utils/i18n";import{observer as s}from"mobx-react-lite";import c from"../ui/PermissionNotice";const i=s(({link:o,onAccept:t,onReject:r})=>n(c,{placement:"bottom-left",title:e("Cookie Consent"),acceptText:e("Accept cookies"),rejectText:e("Reject"),onAccept:t,onReject:r,children:[e("We use cookies for analytics only"),"\xA0",o&&a("a",{href:o,target:"_blank",rel:"noopener noreferrer","aria-label":e("Read more about cookie usage in a new tab"),children:e("Read More")})]}));export default i;
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
2
  import type { EntityItemProps } from "./EntityItem";
3
- declare const EntityItemContainer: React.FC<Omit<EntityItemProps, "highlight">>;
3
+ declare const EntityItemContainer: React.FunctionComponent<Omit<EntityItemProps, "highlight">>;
4
4
  export default EntityItemContainer;
5
5
  //# sourceMappingURL=EntityItemContainer.d.ts.map
@@ -1 +1 @@
1
- import{jsx as i,jsxs as a,Fragment as C}from"react/jsx-runtime";import p from"classnames";import{useLocalStore as Z,useObserver as T}from"mobx-react-lite";import ee,{Suspense as O,useRef as y,useState as I,useEffect as ie}from"react";import f from"../data";import l,{uiState as r}from"../store";import{RegularBooth as te}from"../store/BoothStore";import{GaEventActions as h,sendEventToGa as D}from"../tools/gtag";import oe from"../tools/logger";import S from"../tools/settings";import{t as d,getLocale as re}from"../utils/i18n";import ne from"../utils/is-mobile";import{useReaction as ae}from"../utils/mobx";import U from"../ui/Button";import G from"./ErrorBoundary";import"./Exhibitor.scss";import se from"./MarketMaterialList";import le from"./RebookingNotes";import ce,{defaultRebookingOptions as de}from"./RebookingRadioGroup";import he from"./Schedule";import me from"./SidebarActions";import ue from"../utils/useHeatmapOverlay";import be from"./AlertContainer";import{Transition as ke}from"react-transition-group";const z=ee.lazy(()=>import("./Gallery/Gallery"));function ge(){const w=y(),o=Z(()=>({collapsed:!0,updateOverlayContent:null,get exhibitor(){return r.selectedExhibitor},get websiteTrimmed(){return this.exhibitor.website?this.exhibitor.website.replace(/^(http(s?):\/\/)([^/]+)(\/)?$/i,"$3"):""},get anySocial(){return r.kiosk?!1:!!["facebook","instagram","linkedin","twitter","googlePlus","xing","youtube"].find(e=>this.exhibitor[e])},get anyAddress(){return!!["address","address2","phone1","website","email"].find(e=>this.exhibitor[e])},get anyMedia(){return!!this.exhibitor.videoUrl||!!(this.exhibitor.gallery&&this.exhibitor.gallery.length)},get anyButtons(){return!!(this.exhibitor.customButtonTitle||this.exhibitor.customButton2Title||this.exhibitor.customButton3Title)},get disableCollapse(){return!this.anySocial&&!this.anyAddress&&!this.anyMedia&&!this.anyButtons||r.overlayPosition==="left"&&(this.exhibitor.description||"").length<800},get showEdit(){return!!(f.sendLoginLinkUrl&&this.sendLinkEmail)},get sendLinkEmail(){return this.exhibitor.privateEmail||this.exhibitor.email}})),{heatmapBar:A}=ue(o.exhibitor),[x,M]=I(!1),[_,B]=I(!1),v=y(null);ie(()=>((()=>{if(v.current){const c=v.current.offsetHeight;M(c>300)}})(),()=>{l.exhibitorStore.rebookingStateChangeRequested=!1}),[]),ae(()=>o.exhibitor,()=>{w.current&&(w.current.parentElement.scrollTop=0),o.collapsed=!0});function N(e,c){if(u(c),r.kiosk)return e.preventDefault()}function H(e,c,m){D(h.ClickCustomButton,o.exhibitor.name);const b={externalId:o.exhibitor.externalId,buttonNumber:e,buttonUrl:c,preventDefault:m.preventDefault.bind(m)};r.onExhibitorCustomButtonClick&&r.onExhibitorCustomButtonClick(b)}function u(e){D(e,o.exhibitor.name)}const E=y(),V={entering:{opacity:1},entered:{opacity:1},exiting:{opacity:0},exited:{opacity:0}},L=150;return T(()=>{const e=o.exhibitor,c=f.isRebooking?(()=>{const t=new Set;for(const s of e.booths)s instanceof te&&s.size&&t.add(s.size);const n=Array.from(t);return a("div",{children:[n.length>0&&i("div",{className:"booth__infos",style:{padding:"0 15px",marginBottom:"1rem"},children:a("div",{className:"booth__info",children:[i("div",{className:"booth__info-icon",children:i("i",{className:"icon-size"})}),a("div",{className:"booth__info-body",children:[i("div",{className:"booth__info-title",children:d("Size")}),i("div",{className:"booth__info-val",children:n.join(", ")})]})]})}),i(ce,{showTitle:!1,options:de,checked:e.rebookingState.toString(),onChange:s=>l.exhibitorStore.setRebookingState(e,parseInt(s.target.value),e.rebookingNote)}),i(le,{state:"default",value:e.rebookingNote||"",onClickSave:s=>l.exhibitorStore.setRebookingState(e,e.rebookingState,s)}),i(ke,{in:l.exhibitorStore.rebookingStateChangeRequested,nodeRef:E,timeout:L,appear:!0,enter:!0,exit:!0,mountOnEnter:!0,unmountOnExit:!0,children:s=>i("div",{ref:E,style:{position:"fixed",bottom:"1rem",left:"1rem",zIndex:9999,transition:`opacity ${L}ms ease-in-out`,opacity:0,...V[s]},children:i(be,{title:l.exhibitorStore.rebookingStateSaved?d("Changes saved"):d("Oops! Something went wrong"),variant:l.exhibitorStore.rebookingStateSaved?"success":"error",inline:!0,closable:!0,onClose:()=>{l.exhibitorStore.rebookingStateChangeRequested=!1}})})})]})})():null,m=p({exhibitor:!0,"is-featured":e.featured,bookmarked:e.bookmarked,[r.responsiveClass]:!0}),b=()=>{o.collapsed=!1,setTimeout(o.updateOverlayContent)};function k(t,n,s){return!t||!n||r.kiosk||r.previewMode?null:i("div",{className:"exhibitor-custom-button",children:i(U,{link:n,inline:!0,onClick:g=>{H(s,n,g)},target:"_blank",children:t})},s)}const W=({exhibitor:t})=>{const s=[k(t.customButtonTitle,t.customButtonUrl,1),k(t.customButton2Title,t.customButton2Url,2),k(t.customButton3Title,t.customButton3Url,3)].filter(Boolean);return s.length===0?null:i("div",{className:"exhibitor-custom-buttons",children:s})};function X(t){if(t===null)return"";const n=t.split(RegExp("(?=!\\*\\/\\/\\|\\|\\^\\^[a-z]{2}\\^\\^\\/\\/\\|\\|\\*!)")),s=`!*//||^^${re()}^^//||*!`,g=n.find(Q=>Q.startsWith(s));return g!=null?g.substring(18):n[0].startsWith("!*//||^^")&&n[0].length>18?n[0].substring(18):n[0]}function K(){return!f.hideShareButton&&!r.kiosk&&window.location.host.endsWith(".expofp.com")&&S.EXPO!=="globalaltsmiami2024"}function R(){o.updateOverlayContent()}const J=t=>/^\d+$/.test(t),Y=t=>f.shortLevelName?t.layer?.shortName:t.layer?.description;return a("div",{className:m,"aria-label":d("Details"),children:[a("div",{className:"exhibitor__header",children:[a("div",{className:"exhibitor__header-name",children:[i("div",{className:"exhibitor__header-icon",children:i("i",{className:"icon-exhibitor-solid"})}),i("span",{dir:"auto",children:e.name}),A]}),i("button",{type:"button",onClick:()=>l.searchStore.handleBackAction(),className:"exhibitor__header-close",children:i("i",{className:"icon-close"})})]}),c||a(C,{children:[i("div",{className:"exhibitor__buttons",children:!r.isGuidedToursActive&&i(me,{showBookmark:!r.disableBookmarked&&!f.hideBookmarks&&!r.kiosk,showDirections:e.booths.length>0&&S.wayfinding,inBookmark:o.exhibitor.bookmarked,showShare:K(),showVisited:!r.kiosk,visited:o.exhibitor.visited,onClickBookmark:$,onClickShare:P,onClickDirections:()=>{l.routeStore.clickRoute(null,l.routeStore.tempToBooth||e.booths[0])},onClickVisited:F})}),e.leadingImageUrl?i("div",{className:"exhibitor__leading-image-container exhibitor-slider",children:e.leadingImageLinkUrl?i("a",{href:e.leadingImageLinkUrl,target:"_blank",rel:"noopener noreferrer",children:i("img",{src:e.leadingImageUrl,className:"exhibitor__leading-image",alt:"",crossOrigin:"anonymous"})}):i(G,{children:i(O,{fallback:null,children:i(z,{className:r.responsiveClass,onOpenGallery:()=>l.openGallery(),onCloseGallery:()=>l.closeGallery(),onImageLoadHeightUpdate:R,leading:!0,images:[e.leadingImageUrl]})})})}):null,a("div",{className:p("exhibitor__details",{"details-hidden":r.kiosk&&x&&!_}),ref:v,children:[a("div",{className:p("exhibitor-categories",{"is-links-disabled":r.isGuidedToursActive}),children:[e.featured&&i("div",{className:"exhibitor-featured",children:d("Featured")}),e.booths.map(t=>{const n=Y(t),s=g=>{g.preventDefault(),l.toggleMapOverlay(),l.selectBooth(t)};return a("a",{href:`?${t.slug}`,onClick:s,className:"exhibitor-categories__booth",children:[i("div",{className:"exhibitor-categories__booth-name",children:t.name}),n&&a("div",{className:"exhibitor-categories__booth-level",children:[J(n)?d("Level")+" ":"",n]})]},t.id)}),e.categories.map(t=>i("a",{href:"?"+encodeURIComponent(t.slug),onClick:n=>{n.preventDefault(),j(t)},className:t.sponsorship?"exhibitor-categories__sponsorship":"exhibitor-categories__cat",children:t.name},t.id))]}),e.description||e.logo?a("div",{className:p("exhibitor-description",{collapsed:o.collapsed&&!o.disableCollapse}),children:[e.logo?i("div",{className:p("exhibitor-description__logo",{"exhibitor-description__logo--left":!e.description}),children:i("img",{src:e.logo,alt:e.name,crossOrigin:"anonymous"})}):null,e.description?i("span",{className:"exhibitor-description__content",dir:"auto",dangerouslySetInnerHTML:{__html:X(e.description)},onClick:b}):null]}):null,(!!e.schedule?.length||!!e.booths[0]?.schedule.length)&&i(he,{events:[...e.schedule||e.booths[0]?.schedule||[]].sort((t,n)=>new Date(t.startDate).getTime()-new Date(n.startDate).getTime())}),!r.kiosk&&e.videoUrl&&navigator.onLine&&i("div",{className:"exhibitor-video",children:i("iframe",{src:e.videoUrl,"data-allow":"encrypted-media; autoplay; fullscreen",title:d("Exhibitor Video"),allowFullScreen:!0})}),e.gallery&&i("div",{className:"exhibitor-slider",onClick:()=>u(h.ViewGallery),children:i(G,{children:i(O,{fallback:null,children:i(z,{className:r.responsiveClass,onOpenGallery:()=>l.openGallery(),onCloseGallery:()=>l.closeGallery(),onImageLoadHeightUpdate:R,images:e.gallery})})})}),!r.kiosk&&e.marketMaterials&&a(C,{children:[i("div",{className:"exhibitor-sep"}),i(se,{list:e.marketMaterials})]}),o.showEdit&&i("div",{className:"exhibitor-sep"}),!r.kiosk&&o.showEdit&&i("div",{className:"exhibitor-edit",children:i(U,{size:"sm",variant:"secondary",onClick:q,children:d("Edit")})}),o.anyAddress&&a("div",{className:"exhibitor-meta",children:[!!(e.address||e.address2)&&a("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-marker-pin-solid"})}),a("div",{className:"exhibitor-meta__content",children:[e.address,!!e.address2&&i("div",{children:e.address2}),!!(e.city||e.state||e.zip)&&a("div",{children:[e.city,!!(e.city&&e.state)&&i("span",{children:" "}),e.state,!!(e.state&&e.zip)&&i("span",{children:"\xA0"})," ",e.zip]}),!!e.country&&i("div",{children:e.country})]})]}),!!e.phone1&&a("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-phone-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{dir:"ltr",href:"tel:"+e.phone1,className:"exhibitor-meta__link",onClick:t=>N(t,h.ClickPhone),children:e.phone1})})]}),!!e.website&&a("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-globe-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{href:e.website,target:"_blank",rel:"noopener noreferrer",className:"exhibitor-meta__link",onClick:t=>N(t,h.ClickWebsite),children:o.websiteTrimmed})})]}),!!e.email&&a("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-mail-at-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{href:"mailto:"+e.email,target:"_blank",rel:"noopener noreferrer",className:"exhibitor-meta__link",onClick:t=>N(t,h.ClickEmail),children:e.email})})]}),o.anySocial&&a("div",{className:"exhibitor-meta__socials",children:[i("a",{href:e.facebook,className:"exhibitor-meta__social",onClick:()=>u(h.ClickFacebook),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-facebook"})}),i("a",{href:e.instagram,className:"exhibitor-meta__social",onClick:()=>u(h.ClickInstagaram),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-instagram"})}),i("a",{href:e.linkedin,className:"exhibitor-meta__social",onClick:()=>u(h.ClickLinkedin),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-linkedin"})}),i("a",{href:e.twitter,className:"exhibitor-meta__social",onClick:()=>u(h.ClickTwitter),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-twitter-x"})}),i("a",{href:e.xing,className:"exhibitor-meta__social",onClick:()=>u(h.ClickXing),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-xing"})}),i("a",{href:e.youtube,className:"exhibitor-meta__social",onClick:()=>u(h.ClickYoutube),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-youtube"})})]})]}),i(W,{exhibitor:e})]}),r.kiosk&&x&&!_?i("div",{className:"show-details-button",children:i("button",{type:"button",onClick:()=>B(!0),children:d("Show More")})}):null]}),r.kiosk&&x&&_?i("button",{type:"button",className:"hide-details-button",onClick:()=>B(!1),children:i("i",{className:"icon-chevron-up-narrow"})}):null]})});function P(){const e=window.navigator,c={title:r.selectedExhibitor.name,url:window.location.href};ne&&e?.canShare&&e.canShare(c)?e.share(c):l.toggleModal("share")}function j(e){l.clickCategory(e)}function q(e){if(r.kiosk)return e.preventDefault();e.target.blur();const c=o.sendLinkEmail;if(!window.confirm(d("Send login instructions to {{email}} to edit profile?",{email:c}))||S.EXPO==="expo")return;const m=new XMLHttpRequest;m.open("POST",f.sendLoginLinkUrl),m.setRequestHeader("Content-Type","application/json");function b(){alert(d("Error sending login instructions"))}m.onload=function(k){if(this.status!==200){b();return}alert(d("A link to edit profile was sent to {{email}}",{email:c}))},m.onerror=function(k){oe.error("Error",k),b()},m.send(JSON.stringify({id:o.exhibitor.id}))}function $(){o.exhibitor.bookmarked=!o.exhibitor.bookmarked,r.onBookmarkClick&&r.onBookmarkClick({name:o.exhibitor.name,bookmarked:o.exhibitor.bookmarked,externalId:o.exhibitor.externalId})}function F(){o.exhibitor.visited=!o.exhibitor.visited,r.onVisitedClick&&r.onVisitedClick({name:o.exhibitor.name,visited:o.exhibitor.visited,externalId:o.exhibitor.externalId})}}export default()=>T(()=>i(C,{children:!r.menu&&r.selectedExhibitor?i(ge,{}):null}));
1
+ import{jsx as i,jsxs as a,Fragment as C}from"react/jsx-runtime";import p from"classnames";import{observer as Z,useLocalStore as ee,useObserver as T}from"mobx-react-lite";import ie,{Suspense as O,useRef as y,useState as I,useEffect as te}from"react";import f from"../data";import l,{uiState as r}from"../store";import{RegularBooth as oe}from"../store/BoothStore";import{GaEventActions as h,sendEventToGa as D}from"../tools/gtag";import re from"../tools/logger";import S from"../tools/settings";import{t as d,getLocale as ne}from"../utils/i18n";import ae from"../utils/is-mobile";import{useReaction as se}from"../utils/mobx";import U from"../ui/Button";import G from"./ErrorBoundary";import"./Exhibitor.scss";import le from"./MarketMaterialList";import ce from"./RebookingNotes";import de,{defaultRebookingOptions as he}from"./RebookingRadioGroup";import me from"./Schedule";import ue from"./SidebarActions";import be from"../utils/useHeatmapOverlay";import ke from"./AlertContainer";import{Transition as ge}from"react-transition-group";const z=ie.lazy(()=>import("./Gallery/Gallery")),fe=Z(function(){const w=y(),o=ee(()=>({collapsed:!0,updateOverlayContent:null,get exhibitor(){return r.selectedExhibitor},get websiteTrimmed(){return this.exhibitor.website?this.exhibitor.website.replace(/^(http(s?):\/\/)([^/]+)(\/)?$/i,"$3"):""},get anySocial(){return r.kiosk?!1:!!["facebook","instagram","linkedin","twitter","googlePlus","xing","youtube"].find(e=>this.exhibitor[e])},get anyAddress(){return!!["address","address2","phone1","website","email"].find(e=>this.exhibitor[e])},get anyMedia(){return!!this.exhibitor.videoUrl||!!(this.exhibitor.gallery&&this.exhibitor.gallery.length)},get anyButtons(){return!!(this.exhibitor.customButtonTitle||this.exhibitor.customButton2Title||this.exhibitor.customButton3Title)},get disableCollapse(){return!this.anySocial&&!this.anyAddress&&!this.anyMedia&&!this.anyButtons||r.overlayPosition==="left"&&(this.exhibitor.description||"").length<800},get showEdit(){return!!(f.sendLoginLinkUrl&&this.sendLinkEmail)},get sendLinkEmail(){return this.exhibitor.privateEmail||this.exhibitor.email}})),{heatmapBar:A}=be(o.exhibitor),[x,M]=I(!1),[_,B]=I(!1),v=y(null);te(()=>((()=>{if(v.current){const c=v.current.offsetHeight;M(c>300)}})(),()=>{l.exhibitorStore.rebookingStateChangeRequested=!1}),[]),se(()=>o.exhibitor,()=>{w.current&&(w.current.parentElement.scrollTop=0),o.collapsed=!0});function N(e,c){if(u(c),r.kiosk)return e.preventDefault()}function H(e,c,m){D(h.ClickCustomButton,o.exhibitor.name);const b={externalId:o.exhibitor.externalId,buttonNumber:e,buttonUrl:c,preventDefault:m.preventDefault.bind(m)};r.onExhibitorCustomButtonClick&&r.onExhibitorCustomButtonClick(b)}function u(e){D(e,o.exhibitor.name)}const E=y(),V={entering:{opacity:1},entered:{opacity:1},exiting:{opacity:0},exited:{opacity:0}},L=150;return T(()=>{const e=o.exhibitor,c=f.isRebooking?(()=>{const t=new Set;for(const s of e.booths)s instanceof oe&&s.size&&t.add(s.size);const n=Array.from(t);return a("div",{children:[n.length>0&&i("div",{className:"booth__infos",style:{padding:"0 15px",marginBottom:"1rem"},children:a("div",{className:"booth__info",children:[i("div",{className:"booth__info-icon",children:i("i",{className:"icon-size"})}),a("div",{className:"booth__info-body",children:[i("div",{className:"booth__info-title",children:d("Size")}),i("div",{className:"booth__info-val",children:n.join(", ")})]})]})}),i(de,{showTitle:!1,options:he,checked:e.rebookingState.toString(),onChange:s=>l.exhibitorStore.setRebookingState(e,parseInt(s.target.value),e.rebookingNote)}),i(ce,{state:"default",value:e.rebookingNote||"",onClickSave:s=>l.exhibitorStore.setRebookingState(e,e.rebookingState,s)}),i(ge,{in:l.exhibitorStore.rebookingStateChangeRequested,nodeRef:E,timeout:L,appear:!0,enter:!0,exit:!0,mountOnEnter:!0,unmountOnExit:!0,children:s=>i("div",{ref:E,style:{position:"fixed",bottom:"1rem",left:"1rem",zIndex:9999,transition:`opacity ${L}ms ease-in-out`,opacity:0,...V[s]},children:i(ke,{title:l.exhibitorStore.rebookingStateSaved?d("Changes saved"):d("Oops! Something went wrong"),variant:l.exhibitorStore.rebookingStateSaved?"success":"error",inline:!0,closable:!0,onClose:()=>{l.exhibitorStore.rebookingStateChangeRequested=!1}})})})]})})():null,m=p({exhibitor:!0,"is-featured":e.featured,bookmarked:e.bookmarked,[r.responsiveClass]:!0}),b=()=>{o.collapsed=!1,setTimeout(o.updateOverlayContent)};function k(t,n,s){return!t||!n||r.kiosk||r.previewMode?null:i("div",{className:"exhibitor-custom-button",children:i(U,{link:n,inline:!0,onClick:g=>{H(s,n,g)},target:"_blank",children:t})},s)}const W=({exhibitor:t})=>{const s=[k(t.customButtonTitle,t.customButtonUrl,1),k(t.customButton2Title,t.customButton2Url,2),k(t.customButton3Title,t.customButton3Url,3)].filter(Boolean);return s.length===0?null:i("div",{className:"exhibitor-custom-buttons",children:s})};function X(t){if(t===null)return"";const n=t.split(RegExp("(?=!\\*\\/\\/\\|\\|\\^\\^[a-z]{2}\\^\\^\\/\\/\\|\\|\\*!)")),s=`!*//||^^${ne()}^^//||*!`,g=n.find(Q=>Q.startsWith(s));return g!=null?g.substring(18):n[0].startsWith("!*//||^^")&&n[0].length>18?n[0].substring(18):n[0]}function K(){return!f.hideShareButton&&!r.kiosk&&window.location.host.endsWith(".expofp.com")&&S.EXPO!=="globalaltsmiami2024"}function R(){o.updateOverlayContent()}const J=t=>/^\d+$/.test(t),Y=t=>f.shortLevelName?t.layer?.shortName:t.layer?.description;return a("div",{className:m,"aria-label":d("Details"),children:[a("div",{className:"exhibitor__header",children:[a("div",{className:"exhibitor__header-name",children:[i("div",{className:"exhibitor__header-icon",children:i("i",{className:"icon-exhibitor-solid"})}),i("span",{dir:"auto",children:e.name}),A]}),i("button",{type:"button",onClick:()=>l.searchStore.handleBackAction(),className:"exhibitor__header-close",children:i("i",{className:"icon-close"})})]}),c||a(C,{children:[i("div",{className:"exhibitor__buttons",children:!r.isGuidedToursActive&&i(ue,{showBookmark:!r.disableBookmarked&&!f.hideBookmarks&&!r.kiosk,showDirections:e.booths.length>0&&S.wayfinding,inBookmark:o.exhibitor.bookmarked,showShare:K(),showVisited:!r.kiosk,visited:o.exhibitor.visited,onClickBookmark:$,onClickShare:P,onClickDirections:()=>{l.routeStore.clickRoute(null,l.routeStore.tempToBooth||e.booths[0])},onClickVisited:F})}),e.leadingImageUrl?i("div",{className:"exhibitor__leading-image-container exhibitor-slider",children:e.leadingImageLinkUrl?i("a",{href:e.leadingImageLinkUrl,target:"_blank",rel:"noopener noreferrer",children:i("img",{src:e.leadingImageUrl,className:"exhibitor__leading-image",alt:"",crossOrigin:"anonymous"})}):i(G,{children:i(O,{fallback:null,children:i(z,{className:r.responsiveClass,onOpenGallery:()=>l.openGallery(),onCloseGallery:()=>l.closeGallery(),onImageLoadHeightUpdate:R,leading:!0,images:[e.leadingImageUrl]})})})}):null,a("div",{className:p("exhibitor__details",{"details-hidden":r.kiosk&&x&&!_}),ref:v,children:[a("div",{className:p("exhibitor-categories",{"is-links-disabled":r.isGuidedToursActive}),children:[e.featured&&i("div",{className:"exhibitor-featured",children:d("Featured")}),e.booths.map(t=>{const n=Y(t),s=g=>{g.preventDefault(),l.toggleMapOverlay(),l.selectBooth(t)};return a("a",{href:`?${t.slug}`,onClick:s,className:"exhibitor-categories__booth",children:[i("div",{className:"exhibitor-categories__booth-name",children:t.name}),n&&a("div",{className:"exhibitor-categories__booth-level",children:[J(n)?d("Level")+" ":"",n]})]},t.id)}),e.categories.map(t=>i("a",{href:"?"+encodeURIComponent(t.slug),onClick:n=>{n.preventDefault(),j(t)},className:t.sponsorship?"exhibitor-categories__sponsorship":"exhibitor-categories__cat",children:t.name},t.id))]}),e.description||e.logo?a("div",{className:p("exhibitor-description",{collapsed:o.collapsed&&!o.disableCollapse}),children:[e.logo?i("div",{className:p("exhibitor-description__logo",{"exhibitor-description__logo--left":!e.description}),children:i("img",{src:e.logo,alt:e.name,crossOrigin:"anonymous"})}):null,e.description?i("span",{className:"exhibitor-description__content",dir:"auto",dangerouslySetInnerHTML:{__html:X(e.description)},onClick:b}):null]}):null,(!!e.schedule?.length||!!e.booths[0]?.schedule.length)&&i(me,{events:[...e.schedule||e.booths[0]?.schedule||[]].sort((t,n)=>new Date(t.startDate).getTime()-new Date(n.startDate).getTime())}),!r.kiosk&&e.videoUrl&&navigator.onLine&&i("div",{className:"exhibitor-video",children:i("iframe",{src:e.videoUrl,"data-allow":"encrypted-media; autoplay; fullscreen",title:d("Exhibitor Video"),allowFullScreen:!0})}),e.gallery&&i("div",{className:"exhibitor-slider",onClick:()=>u(h.ViewGallery),children:i(G,{children:i(O,{fallback:null,children:i(z,{className:r.responsiveClass,onOpenGallery:()=>l.openGallery(),onCloseGallery:()=>l.closeGallery(),onImageLoadHeightUpdate:R,images:e.gallery})})})}),!r.kiosk&&e.marketMaterials&&a(C,{children:[i("div",{className:"exhibitor-sep"}),i(le,{list:e.marketMaterials})]}),o.showEdit&&i("div",{className:"exhibitor-sep"}),!r.kiosk&&o.showEdit&&i("div",{className:"exhibitor-edit",children:i(U,{size:"sm",variant:"secondary",onClick:q,children:d("Edit")})}),o.anyAddress&&a("div",{className:"exhibitor-meta",children:[!!(e.address||e.address2)&&a("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-marker-pin-solid"})}),a("div",{className:"exhibitor-meta__content",children:[e.address,!!e.address2&&i("div",{children:e.address2}),!!(e.city||e.state||e.zip)&&a("div",{children:[e.city,!!(e.city&&e.state)&&i("span",{children:" "}),e.state,!!(e.state&&e.zip)&&i("span",{children:"\xA0"})," ",e.zip]}),!!e.country&&i("div",{children:e.country})]})]}),!!e.phone1&&a("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-phone-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{dir:"ltr",href:"tel:"+e.phone1,className:"exhibitor-meta__link",onClick:t=>N(t,h.ClickPhone),children:e.phone1})})]}),!!e.website&&a("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-globe-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{href:e.website,target:"_blank",rel:"noopener noreferrer",className:"exhibitor-meta__link",onClick:t=>N(t,h.ClickWebsite),children:o.websiteTrimmed})})]}),!!e.email&&a("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-mail-at-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{href:"mailto:"+e.email,target:"_blank",rel:"noopener noreferrer",className:"exhibitor-meta__link",onClick:t=>N(t,h.ClickEmail),children:e.email})})]}),o.anySocial&&a("div",{className:"exhibitor-meta__socials",children:[i("a",{href:e.facebook,className:"exhibitor-meta__social",onClick:()=>u(h.ClickFacebook),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-facebook"})}),i("a",{href:e.instagram,className:"exhibitor-meta__social",onClick:()=>u(h.ClickInstagaram),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-instagram"})}),i("a",{href:e.linkedin,className:"exhibitor-meta__social",onClick:()=>u(h.ClickLinkedin),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-linkedin"})}),i("a",{href:e.twitter,className:"exhibitor-meta__social",onClick:()=>u(h.ClickTwitter),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-twitter-x"})}),i("a",{href:e.xing,className:"exhibitor-meta__social",onClick:()=>u(h.ClickXing),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-xing"})}),i("a",{href:e.youtube,className:"exhibitor-meta__social",onClick:()=>u(h.ClickYoutube),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-youtube"})})]})]}),i(W,{exhibitor:e})]}),r.kiosk&&x&&!_?i("div",{className:"show-details-button",children:i("button",{type:"button",onClick:()=>B(!0),children:d("Show More")})}):null]}),r.kiosk&&x&&_?i("button",{type:"button",className:"hide-details-button",onClick:()=>B(!1),children:i("i",{className:"icon-chevron-up-narrow"})}):null]})});function P(){const e=window.navigator,c={title:r.selectedExhibitor.name,url:window.location.href};ae&&e?.canShare&&e.canShare(c)?e.share(c):l.toggleModal("share")}function j(e){l.clickCategory(e)}function q(e){if(r.kiosk)return e.preventDefault();e.target.blur();const c=o.sendLinkEmail;if(!window.confirm(d("Send login instructions to {{email}} to edit profile?",{email:c}))||S.EXPO==="expo")return;const m=new XMLHttpRequest;m.open("POST",f.sendLoginLinkUrl),m.setRequestHeader("Content-Type","application/json");function b(){alert(d("Error sending login instructions"))}m.onload=function(k){if(this.status!==200){b();return}alert(d("A link to edit profile was sent to {{email}}",{email:c}))},m.onerror=function(k){re.error("Error",k),b()},m.send(JSON.stringify({id:o.exhibitor.id}))}function $(){o.exhibitor.bookmarked=!o.exhibitor.bookmarked,r.onBookmarkClick&&r.onBookmarkClick({name:o.exhibitor.name,bookmarked:o.exhibitor.bookmarked,externalId:o.exhibitor.externalId})}function F(){o.exhibitor.visited=!o.exhibitor.visited,r.onVisitedClick&&r.onVisitedClick({name:o.exhibitor.name,visited:o.exhibitor.visited,externalId:o.exhibitor.externalId})}});export default()=>T(()=>i(C,{children:!r.menu&&r.selectedExhibitor?i(fe,{}):null}));
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ import { HeatmapLegendProps } from "../ui/HeatmapLegend";
3
+ type HeatmapLegendContainerProps = Omit<HeatmapLegendProps, "ariaLabel">;
4
+ declare const HeatmapLegendContainer: React.FunctionComponent<HeatmapLegendContainerProps>;
5
+ export default HeatmapLegendContainer;
6
+ //# sourceMappingURL=HeatmapLegendContainer.d.ts.map
@@ -0,0 +1 @@
1
+ import{jsx as r}from"react/jsx-runtime";import{observer as t}from"mobx-react-lite";import a from"../ui/HeatmapLegend";import{t as o}from"../utils/i18n";const m=t(e=>r(a,{...e,ariaLabel:o("Heatmap intensity scale")}));export default m;
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- declare const HighlightTextContainer: React.FC<{
2
+ declare const HighlightTextContainer: React.FunctionComponent<{
3
3
  text: string;
4
4
  }>;
5
5
  export default HighlightTextContainer;
@@ -1 +1 @@
1
- import{jsx as o,jsxs as i,Fragment as _}from"react/jsx-runtime";import{useState as y}from"react";import{SetKioskForm as L}from"./SetKioskForm";import{InfoMessage as w}from"./Message/InfoMessage";import"./SetKioskComponent.scss";import{Draggable as K}from"../../Draggable";import{ConfirmDialog as N}from"./Confirm/ConfirmDialog";import j from"./SetKioskStatusMessages";import r from"../../../tools/base-runtime-url";import{t as e}from"../../../utils/i18n";export default function I({isSaveDisabled:c,isDeleteDisabled:m,areControlsDisabled:d,confirmOnClose:g,angle:p,uiScale:f,minUiScale:h,maxUiScale:u,uiScaleStep:k,iconSizePercent:b,isInfoVisible:v,statusMessages:S,onClose:D,onDelete:C,onSave:x,onChange:s}){const[t,a]=y(null);return i(K,{className:"efp-set-kiosk-mode",translate:{x:window.innerWidth/2,y:0},children:[i("div",{className:"efp-set-kiosk-mode__header",children:[o("img",{src:`${r}icons/dragdrop-solid.svg`,alt:e("Drag and Drop Icon"),width:"24",height:"24"}),o("span",{className:"efp-no-select",children:t?t.title:e("Set Kiosk")}),o("button",{type:"button",draggable:"false",className:"efp-set-kiosk-mode__close","aria-label":e("Close"),onClick:()=>{const n=()=>{a(null)},l=()=>{D?.(),a(null)};t?n():g?a({title:e("Leave without saving?"),content:i("span",{children:[e("You have changes that "),o("strong",{children:e("haven't been saved.")})]}),confirmLabel:e("Keep editing"),cancelLabel:e("Leave"),onCancel:l,onConfirm:n,confirmVariant:"primary",cancelVariant:"danger"}):l()},children:o("i",{className:"icon-close"})})]}),!t&&o(j,{messages:S}),v?o(w,{list:[{id:"1",image:{src:`${r}icons/tap.svg`,alt:e("Tap to set or move kiosk.")},content:i("span",{children:[e("Tap to "),o("strong",{children:e("set or move")}),e(" kiosk.")]})},{id:"2",image:{src:`${r}icons/rotate.svg`,alt:e("Zoom and rotate the map before saving.")},content:i("span",{children:[o("strong",{children:e("Zoom and rotate")}),e(" the map before saving.")]})}]}):o(_,{children:t?o(N,{...t}):o(L,{isSaveDisabled:c,isDeleteDisabled:m,areControlsDisabled:d,onSave:()=>{x?.(),a(null)},onDelete:()=>{a({title:e("Delete kiosk?"),content:i("span",{children:[e("Are you sure you want to "),o("strong",{children:e("delete this kiosk?")})]}),confirmLabel:e("Cancel"),cancelLabel:e("Delete"),onConfirm:()=>{a(null)},onCancel:()=>{C?.(),a(null)},confirmVariant:"gray",cancelVariant:"danger"})},angle:p,onRotateIcon:n=>s?.({angle:n}),uiScale:f,minUiScale:h,maxUiScale:u,uiScaleStep:k,onUiScaleChange:n=>s?.({scale:n}),iconSizePercent:b,onChangeIconSizePercent:n=>s?.({percent:n})})})]})}
1
+ import{jsx as o,jsxs as i,Fragment as x}from"react/jsx-runtime";import{useState as L}from"react";import{SetKioskForm as N}from"./SetKioskForm";import{InfoMessage as y}from"./Message/InfoMessage";import"./SetKioskComponent.scss";import K from"../../../ui/Draggable";import{ConfirmDialog as j}from"./Confirm/ConfirmDialog";import I from"./SetKioskStatusMessages";import r from"../../../tools/base-runtime-url";import{t as e}from"../../../utils/i18n";export default function U({isSaveDisabled:c,isDeleteDisabled:m,areControlsDisabled:d,confirmOnClose:g,angle:p,uiScale:f,minUiScale:h,maxUiScale:k,uiScaleStep:u,iconSizePercent:v,isInfoVisible:b,statusMessages:S,onClose:D,onDelete:C,onSave:_,onChange:s}){const[t,n]=L(null);return o("div",{className:"efp-set-kiosk-mode-anchor",children:i(K,{className:"efp-set-kiosk-mode",children:[i("div",{className:"efp-set-kiosk-mode__header",children:[o("img",{src:`${r}icons/dragdrop-solid.svg`,alt:e("Drag and Drop Icon"),width:"24",height:"24"}),o("span",{className:"efp-no-select",children:t?t.title:e("Set Kiosk")}),o("button",{type:"button",draggable:"false",className:"efp-set-kiosk-mode__close","aria-label":e("Close"),onClick:()=>{const a=()=>{n(null)},l=()=>{D?.(),n(null)};t?a():g?n({title:e("Leave without saving?"),content:i("span",{children:[e("You have changes that "),o("strong",{children:e("haven't been saved.")})]}),confirmLabel:e("Keep editing"),cancelLabel:e("Leave"),onCancel:l,onConfirm:a,confirmVariant:"primary",cancelVariant:"danger"}):l()},children:o("i",{className:"icon-close"})})]}),!t&&o(I,{messages:S}),b?o(y,{list:[{id:"1",image:{src:`${r}icons/tap.svg`,alt:e("Tap to set or move kiosk.")},content:i("span",{children:[e("Tap to "),o("strong",{children:e("set or move")}),e(" kiosk.")]})},{id:"2",image:{src:`${r}icons/rotate.svg`,alt:e("Zoom and rotate the map before saving.")},content:i("span",{children:[o("strong",{children:e("Zoom and rotate")}),e(" the map before saving.")]})}]}):o(x,{children:t?o(j,{...t}):o(N,{isSaveDisabled:c,isDeleteDisabled:m,areControlsDisabled:d,onSave:()=>{_?.(),n(null)},onDelete:()=>{n({title:e("Delete kiosk?"),content:i("span",{children:[e("Are you sure you want to "),o("strong",{children:e("delete this kiosk?")})]}),confirmLabel:e("Cancel"),cancelLabel:e("Delete"),onConfirm:()=>{n(null)},onCancel:()=>{C?.(),n(null)},confirmVariant:"gray",cancelVariant:"danger"})},angle:p,onRotateIcon:a=>s?.({angle:a}),uiScale:f,minUiScale:h,maxUiScale:k,uiScaleStep:u,onUiScaleChange:a=>s?.({scale:a}),iconSizePercent:v,onChangeIconSizePercent:a=>s?.({percent:a})})})]})})}
@@ -1 +1 @@
1
- import{jsx as o,jsxs as z}from"react/jsx-runtime";import{observer as g}from"mobx-react-lite";import r,{Suspense as a,useEffect as M,useState as E}from"react";import w from"classnames";import t,{layersStore as d,uiState as e}from"../store";import f from"../tools/settings";import{isWebGlSupported as R}from"../utils";import L from"../utils/is-debug";import O from"../utils/is-iframe";import B from"./Controls";import D from"./LevelSelector";import G from"./LargeMessage";import"../styles/main.scss";import"./Layout.scss";import T from"./LogoOverlay";import A from"./SearchBox";import j from"./SearchButtons/SearchButtons";import F from"./MobileToggleButton";import I from"./IntercomLauncher";import{CategoryFilterModal as P}from"./CategoryFilterModal";import V from"./SessionsFiltersModal";import $ from"./SpeakersFiltersModal";import H from"./Map/Map";import{MapLoader as K}from"./Mapbox/MapLoader";import _ from"./OverlayContainer";import N from"./Share";import U from"./Ws";import{LayersMode as y}from"../store/LayerStore";import W from"../ui/Spinner";import{fpGeo as X}from"../data/fpGeo";import{checkUserIsGDPR as q,GaEventActions as s,hasUserConsent as Y,sendEventToGa as l,setConsentSettings as S,setCookieConsent as C}from"../tools/gtag";import J from"./HeatmapLegend";import{useReaction as m}from"../utils/mobx";import Q from"../tools/track-event";import Z from"./GlobalErrorMessage";const ee=r.lazy(()=>import("./Demo")),oe=r.lazy(()=>import("./Free")),te=r.lazy(()=>import("./Debug")),ie=r.lazy(()=>import("./Mapbox/Mapbox")),re=r.lazy(()=>import("./Threejs/ThreeComponent")),ae=r.lazy(()=>import("./Modal")),le=r.lazy(()=>import("./CookieConsent")),ne=r.lazy(()=>import("./GpsLoader")),se=r.lazy(()=>import("./Kiosk/SetKioskMode")),me=r.lazy(()=>import("./Kiosk/ShowKiosk"));export default g(function({offHistory:b,allowConsent:p}){const[u,c]=E(!1);let n=null;e.bannerType==="demo"?n=o(ee,{}):e.bannerType==="free"&&(n=o(oe,{}));const v=()=>{C(!0),S(),t.uiState.hideCookieConsent=!0},x=()=>{C(!1),S(),t.uiState.hideCookieConsent=!0};M(()=>{async function i(){const k=await q();c(!!(k||k===null))}Y(p)?c(!0):i()},[]),m(()=>e.selectedExhibitor,i=>{t.heatmapStore.forceTrack?(l(t.heatmapStore.forceTrack.action,t.heatmapStore.forceTrack.label),t.heatmapStore.forceTrack=null):i&&(Q("exview",i.id),l(s.ViewExhibitor,i.name))}),m(()=>e.selectedBooth,i=>i?.name&&l(s.ViewBooth,i.name)),m(()=>e.selectedCategory,i=>i?.name&&l(s.ViewCategory,i?.name)),m(()=>e.selectedEventItem,i=>i?.name&&l(s.ViewExhibitor,i.name));const h=!e.hideCookieConsent&&!e.kiosk&&u&&p===void 0;return o("div",{id:"efp-layout",className:w("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.noOverlay,"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:z("div",{className:`layout__fixed expo-${f.EXPO} overlay-${t.uiState.overlayPosition}`,children:[(d.mode===y.Radio||d.mode===y.CheckBox)&&!e.floorsControlHidden&&t.initialized&&o(D,{}),!e.noOverlay&&t.initialized&&o(_,{isGDPR:u,allowConsent:p}),t.initialized&&o(T,{}),!e.noOverlay&&t.initialized&&!(e.viewerMode&&e.menu)&&o(A,{}),!e.noOverlay&&t.initialized&&o(j,{}),!e.noOverlay&&t.initialized&&o(F,{}),!e.mapControlsHidden&&t.initialized&&o(B,{}),o(I,{}),!e.hideHeaderLogo&&t.initialized&&o(U,{}),t.routeStore.gpsEnabled&&o(ne,{requestCompassAllowed:!h}),R&&o(H,{}),t.mapboxStore.mapBoxActivated&&t.mapboxStore.mapBoxEnabled&&o(a,{fallback:o(K,{}),children:X?.properties?.mode==="threejs"?o(re,{isMapbox:t.mapboxStore.isMapbox,expo:f.EXPO}):o(ie,{})}),n&&!e.hideFreeOrDemo&&!e.heatmap?o(a,{fallback:null,children:n}):null,h&&o(a,{fallback:null,children:o(le,{link:"https://expofp.com/pages/viewer-cookie-consent",onClickAccept:v,onClickReject:x})}),L?o(a,{fallback:null,children:o(te,{})}):null,O&&o(G,{}),e.modalActive.share?o(a,{fallback:null,children:o(ae,{type:"share",open:e.modalActive.share,onClickClose:()=>t.toggleModal("share"),children:o(N,{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(J,{style:{left:`calc(50% + ${t.uiState.mapVisibleStart/2}px)`},className:e.responsiveClass,max:t.heatmapStore.minAndMaxClicks.max,min:t.heatmapStore.minAndMaxClicks.min,colors:f.heatmapColors}):null,o(W,{active:!d.layersLoaded}),o("div",{id:"fps"}),t.initialized&&o(P,{}),t.initialized&&o(V,{store:t.sessionsFilterStore}),t.initialized&&o($,{store:t.speakerFilterStore}),o(Z,{}),t.initialized&&e.setKioskModeEnabled&&o(a,{fallback:null,children:o(se,{})}),t.initialized&&!e.setKioskModeEnabled&&o(a,{fallback:null,children:o(me,{})})]})})});
1
+ import{jsx as o,jsxs as z}from"react/jsx-runtime";import{observer as M}from"mobx-react-lite";import r,{Suspense as a,useEffect as x,useState as E}from"react";import R from"classnames";import t,{layersStore as c,uiState as e}from"../store";import y from"../tools/settings";import{isWebGlSupported as D}from"../utils";import L from"../utils/is-debug";import O from"../utils/is-iframe";import B from"./Controls";import G from"./LevelSelector";import T from"./LargeMessage";import"../styles/main.scss";import"./Layout.scss";import A from"./LogoOverlay";import F from"./SearchBox";import I from"./SearchButtons/SearchButtons";import j from"./MobileToggleButton";import P from"./IntercomLauncher";import{CategoryFilterModal as V}from"./CategoryFilterModal";import $ from"./SessionsFiltersModal";import H from"./SpeakersFiltersModal";import K from"./Map/Map";import _ from"./OverlayContainer";import N from"./Share";import U from"./Ws";import{LayersMode as S}from"../store/LayerStore";import W from"../ui/Spinner";import{checkUserIsGDPR as q,GaEventActions as s,hasUserConsent as X,sendEventToGa as l,setConsentSettings as v,setCookieConsent as C}from"../tools/gtag";import Y from"./HeatmapLegendContainer";import{useReaction as m}from"../utils/mobx";import J from"../tools/track-event";import Q from"./GlobalErrorMessage";import Z from"./ErrorBoundary";const ee=r.lazy(()=>import("./Demo")),oe=r.lazy(()=>import("./Free")),te=r.lazy(()=>import("./Debug")),ie=r.lazy(()=>import("./Maplibre/MaplibreAdapter")),re=r.lazy(()=>import("./Modal")),ae=r.lazy(()=>import("./CookieConsent")),le=r.lazy(()=>import("./GpsLoader")),ne=r.lazy(()=>import("./Kiosk/SetKioskMode")),se=r.lazy(()=>import("./Kiosk/ShowKiosk"));export default M(function({offHistory:b,allowConsent:p}){const[f,d]=E(!1),u=t.maplibreStore.showMaplibre;let n=null;e.bannerType==="demo"?n=o(ee,{}):e.bannerType==="free"&&(n=o(oe,{}));const g=()=>{C(!0),v(),t.uiState.hideCookieConsent=!0},w=()=>{C(!1),v(),t.uiState.hideCookieConsent=!0};x(()=>{async function i(){const k=await q();d(!!(k||k===null))}X(p)?d(!0):i()},[]),m(()=>e.selectedExhibitor,i=>{t.heatmapStore.forceTrack?(l(t.heatmapStore.forceTrack.action,t.heatmapStore.forceTrack.label),t.heatmapStore.forceTrack=null):i&&(J("exview",i.id),l(s.ViewExhibitor,i.name))}),m(()=>e.selectedBooth,i=>i?.name&&l(s.ViewBooth,i.name)),m(()=>e.selectedCategory,i=>i?.name&&l(s.ViewCategory,i?.name)),m(()=>e.selectedEventItem,i=>i?.name&&l(s.ViewExhibitor,i.name));const h=!e.hideCookieConsent&&!e.kiosk&&f&&p===void 0;return o("div",{id:"efp-layout",className:R("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.noOverlay,"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:z("div",{className:`layout__fixed expo-${y.EXPO} overlay-${t.uiState.overlayPosition}`,children:[(c.mode===S.Radio||c.mode===S.CheckBox)&&!e.floorsControlHidden&&t.initialized&&o(G,{}),!e.noOverlay&&t.initialized&&o(_,{isGDPR:f,allowConsent:p}),t.initialized&&o(A,{}),!e.noOverlay&&t.initialized&&!(e.viewerMode&&e.menu)&&o(F,{}),!e.noOverlay&&t.initialized&&o(I,{}),!e.noOverlay&&t.initialized&&o(j,{}),!e.mapControlsHidden&&t.initialized&&o(B,{}),o(P,{}),!e.hideHeaderLogo&&t.initialized&&o(U,{}),t.routeStore.gpsEnabled&&o(le,{requestCompassAllowed:!h}),D&&!u&&o(K,{}),u&&o(Z,{children:o(a,{fallback:o("div",{}),children:o(ie,{viewMode:t.maplibreStore.mapViewMode})})}),n&&!e.hideFreeOrDemo&&!e.heatmap?o(a,{fallback:null,children:n}):null,h&&o(a,{fallback:null,children:o(ae,{link:"https://expofp.com/pages/viewer-cookie-consent",onAccept:g,onReject:w})}),L?o(a,{fallback:null,children:o(te,{})}):null,O&&o(T,{}),e.modalActive.share?o(a,{fallback:null,children:o(re,{type:"share",open:e.modalActive.share,onClickClose:()=>t.toggleModal("share"),children:o(N,{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(Y,{style:{left:`calc(50% + ${t.uiState.mapVisibleStart/2}px)`},className:e.responsiveClass,max:t.heatmapStore.minAndMaxClicks.max,min:t.heatmapStore.minAndMaxClicks.min,palette:y.heatmapColors}):null,o(W,{active:!c.layersLoaded}),o("div",{id:"fps"}),t.initialized&&o(V,{}),t.initialized&&o($,{store:t.sessionsFilterStore}),t.initialized&&o(H,{store:t.speakerFilterStore}),o(Q,{}),t.initialized&&e.setKioskModeEnabled&&o(a,{fallback:null,children:o(ne,{})}),t.initialized&&!e.setKioskModeEnabled&&o(a,{fallback:null,children:o(se,{})})]})})});
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ import { LevelBadgeProps } from "../ui/LevelBadge";
3
+ type LevelBadgeContainerProps = Omit<LevelBadgeProps, "levelLabel">;
4
+ declare const LevelBadgeContainer: React.FunctionComponent<LevelBadgeContainerProps>;
5
+ export default LevelBadgeContainer;
6
+ //# sourceMappingURL=LevelBadgeContainer.d.ts.map
@@ -0,0 +1 @@
1
+ import{jsx as r}from"react/jsx-runtime";import{observer as o}from"mobx-react-lite";import t from"../ui/LevelBadge";import{t as m}from"../utils/i18n";const l=o(e=>r(t,{...e,levelLabel:m("Level")}));export default l;
@@ -1 +1 @@
1
- import{jsx as s,jsxs as v}from"react/jsx-runtime";import m from"classnames";import{useObserver as F}from"mobx-react-lite";import{useRef as b,useEffect as E,useState as O,useCallback as h,useLayoutEffect as I}from"react";import D from"../core/Rect";import i,{uiState as g}from"../store";import{LayersMode as S}from"../store/LayerStore";import R from"../tools/settings";import{t as p}from"../utils/i18n";import L from"../data";import T from"../utils/useOnClickOutside";import"./LevelSelector.scss";const V=["money2020usa","rodion2","possible2025","2025virtuosotravelweek","zscalerskofy26","gamescom2025"],P=["ice-gaming2026"];function B(l){return P.includes(R.EXPO)?{layout:"compact-list",useShortNames:l}:{layout:l?"compact-list":"dropdown",useShortNames:l}}export default function X(){const l=b(null),x=b(null),d=b(null),[c,y]=O(!1),[_,C]=O("down");T([x,d],()=>y(!1)),E(()=>()=>{l.current&&clearTimeout(l.current)},[]),E(()=>{if(!c)return;const t=r=>{r.key==="Escape"&&(y(!1),d.current?.focus())};return document.addEventListener("keydown",t),()=>document.removeEventListener("keydown",t)},[c]),I(()=>{if(c&&d.current){const t=d.current.getBoundingClientRect(),n=window.innerHeight-t.bottom;C(n<200?"up":"down")}},[c]);const k=h(t=>{if(l.current)return;l.current=setTimeout(()=>l.current=null,500);const r=i.layerStore.layers.find(u=>u.description===t.description);if(i.layerStore.mode===S.Radio){if(i.layerStore.updateVisibility(r,!0),i.mapboxStore.showMapbox)return;if(!!window.__fpSettings?.fpVer||V.includes(R.EXPO)){const o=r.viewbox??r.rect;g.moveToRect=D.fromX1y1x2y2(o.x1,o.y1,o.x2,o.y2)}else{const o=i.layerStore.layers.indexOf(i.layerStore.layers.filter(e=>!e.frozen&&e.visible)[0]),a=i.layerStore.layers.indexOf(r);if(o===a)return;a<o?g.zoomBy=.95:g.zoomBy=1.05}}else i.layerStore.updateVisibility(r,!r.visible);const n=i.toursStore.getTourLayerInfo(r.name)||i.toursStore.getTourLayerInfo(r.description);if(n){i.layerStore.showPathWay(n.id);return}i.toursStore.stopTour()},[]),f=h(t=>{t.disabled||(k(t.layer),y(!1),d.current?.focus())},[k]),N=h((t,r,n)=>{if(t.key==="Enter"||t.key===" "){if(r.disabled)return;t.preventDefault(),f(r);return}if(t.key==="ArrowDown"||t.key==="ArrowUp"){t.preventDefault();const u=n.findIndex(e=>e.layer.description===r.layer.description),o=t.key==="ArrowDown"?1:-1;let a=u+o;for(;a>=0&&a<n.length;){if(!n[a].disabled){t.currentTarget.parentElement?.children?.[a]?.focus();return}a+=o}}t.key==="Escape"&&(y(!1),d.current?.focus())},[f]);return F(()=>{const t=i.layerStore.floors;if(!(i.layerStore.mode===S.Radio||i.layerStore.mode===S.CheckBox)||t.length===0)return null;const{layout:n,useShortNames:u}=B(L.shortLevelName),o=t.find(e=>e.active),a=e=>u?e.shortName:e.description;return n==="compact-list"?s("div",{className:m("efp-level-selector","efp-level-selector--compact-list",{"is-ready":t.length}),role:"radiogroup","aria-label":p("Floor selection"),children:t.map(e=>s("div",{className:m("efp-level-selector__item",{"is-active":e.active,"is-disabled":e.disabled}),role:"radio",title:`${e.active?p("Current Floor"):p("Floor")} ${e.layer.description}`,"aria-label":`${e.active?p("Current Floor"):p("Floor")} ${e.layer.description}`,"aria-checked":e.active,"aria-disabled":e.disabled,tabIndex:e.disabled?-1:0,onClick:()=>!e.disabled&&f(e),onKeyDown:w=>N(w,e,t),dir:"auto",children:s("span",{children:a(e)})},e.layer.description))}):v("div",{className:m("efp-level-selector","efp-level-selector--dropdown",{"is-ready":t.length}),children:[v("button",{ref:d,type:"button",className:m("efp-level-selector__trigger",{"is-open":c}),onClick:()=>y(!c),"aria-haspopup":"listbox","aria-expanded":c,"aria-label":`${p("Current Floor")}: ${o?.description??""}`,children:[v("div",{className:"efp-level-selector__trigger-text",children:[s("i",{className:"icon-layers","aria-hidden":"true"}),s("span",{children:o?.description??""})]}),s("div",{className:"efp-level-selector__trigger-chevron",children:s("i",{className:"icon-chevron-down","aria-hidden":"true"})})]}),c&&s("div",{ref:x,className:m("efp-level-selector__dropdown","efp-level-selector__dropdown--full",{"is-opens-up":_==="up","is-opens-down":_==="down"}),role:"listbox","aria-label":p("Floor selection"),children:t.map(e=>v("div",{className:m("efp-level-selector__dropdown-item",{"is-active":e.active,"is-disabled":e.disabled}),role:"option","aria-selected":e.active,"aria-disabled":e.disabled,tabIndex:e.disabled?-1:0,onClick:()=>f(e),onKeyDown:w=>N(w,e,t),children:[s("span",{className:"efp-level-selector__dropdown-item-icon",children:e.active&&s("i",{className:"icon-checkmark-solid","aria-hidden":"true"})}),s("span",{className:"efp-level-selector__dropdown-item-name",children:e.description})]},e.layer.description))})]})})}
1
+ import{jsx as s,jsxs as v}from"react/jsx-runtime";import m from"classnames";import{useObserver as F}from"mobx-react-lite";import{useRef as b,useEffect as E,useState as O,useCallback as h,useLayoutEffect as I}from"react";import D from"../core/Rect";import i,{uiState as g}from"../store";import{LayersMode as S}from"../store/LayerStore";import R from"../tools/settings";import{t as p}from"../utils/i18n";import L from"../data";import T from"../utils/useOnClickOutside";import"./LevelSelector.scss";const V=["money2020usa","rodion2","possible2025","2025virtuosotravelweek","zscalerskofy26","gamescom2025"],P=["ice-gaming2026"];function B(l){return P.includes(R.EXPO)?{layout:"compact-list",useShortNames:l}:{layout:l?"compact-list":"dropdown",useShortNames:l}}export default function X(){const l=b(null),_=b(null),d=b(null),[c,y]=O(!1),[x,C]=O("down");T([_,d],()=>y(!1)),E(()=>()=>{l.current&&clearTimeout(l.current)},[]),E(()=>{if(!c)return;const t=r=>{r.key==="Escape"&&(y(!1),d.current?.focus())};return document.addEventListener("keydown",t),()=>document.removeEventListener("keydown",t)},[c]),I(()=>{if(c&&d.current){const t=d.current.getBoundingClientRect(),n=window.innerHeight-t.bottom;C(n<200?"up":"down")}},[c]);const k=h(t=>{if(l.current)return;l.current=setTimeout(()=>l.current=null,500);const r=i.layerStore.layers.find(u=>u.description===t.description);if(i.layerStore.mode===S.Radio){if(i.layerStore.updateVisibility(r,!0),i.maplibreStore.showMaplibre)return;if(!!window.__fpSettings?.fpVer||V.includes(R.EXPO)){const o=r.viewbox??r.rect;g.moveToRect=D.fromX1y1x2y2(o.x1,o.y1,o.x2,o.y2)}else{const o=i.layerStore.layers.indexOf(i.layerStore.layers.filter(e=>!e.frozen&&e.visible)[0]),a=i.layerStore.layers.indexOf(r);if(o===a)return;a<o?g.zoomBy=.95:g.zoomBy=1.05}}else i.layerStore.updateVisibility(r,!r.visible);const n=i.toursStore.getTourLayerInfo(r.name)||i.toursStore.getTourLayerInfo(r.description);if(n){i.layerStore.showPathWay(n.id);return}i.toursStore.stopTour()},[]),f=h(t=>{t.disabled||(k(t.layer),y(!1),d.current?.focus())},[k]),N=h((t,r,n)=>{if(t.key==="Enter"||t.key===" "){if(r.disabled)return;t.preventDefault(),f(r);return}if(t.key==="ArrowDown"||t.key==="ArrowUp"){t.preventDefault();const u=n.findIndex(e=>e.layer.description===r.layer.description),o=t.key==="ArrowDown"?1:-1;let a=u+o;for(;a>=0&&a<n.length;){if(!n[a].disabled){t.currentTarget.parentElement?.children?.[a]?.focus();return}a+=o}}t.key==="Escape"&&(y(!1),d.current?.focus())},[f]);return F(()=>{const t=i.layerStore.floors;if(!(i.layerStore.mode===S.Radio||i.layerStore.mode===S.CheckBox)||t.length===0)return null;const{layout:n,useShortNames:u}=B(L.shortLevelName),o=t.find(e=>e.active),a=e=>u?e.shortName:e.description;return n==="compact-list"?s("div",{className:m("efp-level-selector","efp-level-selector--compact-list",{"is-ready":t.length}),role:"radiogroup","aria-label":p("Floor selection"),children:t.map(e=>s("div",{className:m("efp-level-selector__item",{"is-active":e.active,"is-disabled":e.disabled}),role:"radio",title:`${e.active?p("Current Floor"):p("Floor")} ${e.layer.description}`,"aria-label":`${e.active?p("Current Floor"):p("Floor")} ${e.layer.description}`,"aria-checked":e.active,"aria-disabled":e.disabled,tabIndex:e.disabled?-1:0,onClick:()=>!e.disabled&&f(e),onKeyDown:w=>N(w,e,t),dir:"auto",children:s("span",{children:a(e)})},e.layer.description))}):v("div",{className:m("efp-level-selector","efp-level-selector--dropdown",{"is-ready":t.length}),children:[v("button",{ref:d,type:"button",className:m("efp-level-selector__trigger",{"is-open":c}),onClick:()=>y(!c),"aria-haspopup":"listbox","aria-expanded":c,"aria-label":`${p("Current Floor")}: ${o?.description??""}`,children:[v("div",{className:"efp-level-selector__trigger-text",children:[s("i",{className:"icon-layers","aria-hidden":"true"}),s("span",{children:o?.description??""})]}),s("div",{className:"efp-level-selector__trigger-chevron",children:s("i",{className:"icon-chevron-down","aria-hidden":"true"})})]}),c&&s("div",{ref:_,className:m("efp-level-selector__dropdown","efp-level-selector__dropdown--full",{"is-opens-up":x==="up","is-opens-down":x==="down"}),role:"listbox","aria-label":p("Floor selection"),children:t.map(e=>v("div",{className:m("efp-level-selector__dropdown-item",{"is-active":e.active,"is-disabled":e.disabled}),role:"option","aria-selected":e.active,"aria-disabled":e.disabled,tabIndex:e.disabled?-1:0,onClick:()=>f(e),onKeyDown:w=>N(w,e,t),children:[s("span",{className:"efp-level-selector__dropdown-item-icon",children:e.active&&s("i",{className:"icon-checkmark-solid","aria-hidden":"true"})}),s("span",{className:"efp-level-selector__dropdown-item-name",children:e.description})]},e.layer.description))})]})})}
@@ -1 +1 @@
1
- import{jsx as t,jsxs as m}from"react/jsx-runtime";import l from"classnames";import S from"color";import{Suspense as M}from"react";import{useLocalStore as P,useObserver as _}from"mobx-react-lite";import O from"../data";import f,{uiState as o}from"../store";import p from"../tools/settings";import{remsToPixels as a}from"../utils";import{t as r}from"../utils/i18n";import c from"../utils/is-from-designer";import d from"./AlertContainer";import"./LogoOverlay.scss";import{fpGeo as h}from"../data/fpGeo";import C from"../tools/base-runtime-url";import{buildExpofpUrl as R,UTM_CAMPAIGNS as N}from"../tools/expofpUrl";import V from"./QrCode";const g=["info-techlive2025","metstrade-superyacht2023"].includes(p.EXPO),A=p.backgroundColor!=="none"&&S(p.backgroundColor).isDark()||h?.properties?.style?.includes("dark");export default function D(){const b=P(()=>{const s=(i,e,E,k)=>({width:k,opacity:o.wsStarted?1:0}),n=g||o.rtl?"left":"right";return{get style(){const i=a((o.overlayPosition==="left",1));if(o.overlayPosition==="left"){const e=o.mapVisibleBottom+i;return s("bottom",n,e,"5rem")}else{let e=o.mapVisibleTop;return f.mapboxStore.showMapbox&&(e=a(.5)),s("bottom",n,20,"4.5rem")}},get warningStyle(){const i=a(o.overlayPosition==="left"?1:.5);if(o.overlayPosition==="left"){const e=o.mapVisibleBottom+2*i;return s("bottom",n,e,"3rem")}else{let e=o.mapVisibleTop+2*i;return f.mapboxStore.showMapbox&&(e=a(.5)),s("top",n,e,"2rem")}}}}),u=Math.round(window.__fpStat?.dataSize/1024/1024||0),w=c&&u>=10,x=c&&!h&&O.allow3dView&&!o.kiosk&&!o.heatmap,v=o.kiosk&&!o.selectedRoute?.to&&!o.selectedRoute?.from,y=l("efp-qr",{"is-right":g||o.rtl});return _(()=>m("div",{children:[t("a",{href:R(N.SUBDOMAIN_LOGO),target:"_blank",rel:"noopener noreferrer",className:l("logo-overlay",{invert:A}),style:b.style,children:t("img",{src:`${C}expofp-overlay.png`,alt:r("Made with ExpoFP"),crossOrigin:"anonymous"})}),w&&t(d,{title:r("This floor plan is too big"),variant:"warning",showIcon:!0,position:"bottom-right",children:t("a",{rel:"noopener noreferrer",target:"_blank",href:"https://expofp.com/pages/huge-fp-warning",children:r("Read how to optimize it")})}),x&&t(d,{title:r("3D view is hidden"),variant:"warning",showIcon:!0,position:"bottom-right",children:t("a",{rel:"noopener noreferrer",target:"_blank",href:"https://expofp.com/pages/expofp-mapbox-integration",children:r("Setup mapbox first")})}),v&&t(M,{fallback:null,children:m("div",{className:l(y,{"efp-semi-transparent":o.setKioskModeEnabled}),children:[t("div",{children:r("View Map on Phone")}),t(V,{value:o.viewMapOnPhoneQRCodeUrl,size:100})]})})]}))}
1
+ import{jsx as t,jsxs as m}from"react/jsx-runtime";import l from"classnames";import S from"color";import{Suspense as M}from"react";import{useLocalStore as P,useObserver as _}from"mobx-react-lite";import O from"../data";import f,{uiState as o}from"../store";import p from"../tools/settings";import{remsToPixels as a}from"../utils";import{t as r}from"../utils/i18n";import c from"../utils/is-from-designer";import d from"./AlertContainer";import"./LogoOverlay.scss";import{fpGeo as h}from"../data/fpGeo";import C from"../tools/base-runtime-url";import{buildExpofpUrl as R,UTM_CAMPAIGNS as N}from"../tools/expofpUrl";import V from"./QrCode";const g=["info-techlive2025","metstrade-superyacht2023"].includes(p.EXPO),A=p.backgroundColor!=="none"&&S(p.backgroundColor).isDark()||h?.properties?.style?.includes("dark");export default function D(){const b=P(()=>{const s=(i,e,E,k)=>({width:k,opacity:o.wsStarted?1:0}),n=g||o.rtl?"left":"right";return{get style(){const i=a((o.overlayPosition==="left",1));if(o.overlayPosition==="left"){const e=o.mapVisibleBottom+i;return s("bottom",n,e,"5rem")}else{let e=o.mapVisibleTop;return f.maplibreStore.showMaplibre&&(e=a(.5)),s("bottom",n,20,"4.5rem")}},get warningStyle(){const i=a(o.overlayPosition==="left"?1:.5);if(o.overlayPosition==="left"){const e=o.mapVisibleBottom+2*i;return s("bottom",n,e,"3rem")}else{let e=o.mapVisibleTop+2*i;return f.maplibreStore.showMaplibre&&(e=a(.5)),s("top",n,e,"2rem")}}}}),u=Math.round(window.__fpStat?.dataSize/1024/1024||0),w=c&&u>=10,v=c&&!h&&O.allow3dView&&!o.kiosk&&!o.heatmap,y=o.kiosk&&!o.selectedRoute?.to&&!o.selectedRoute?.from,x=l("efp-qr",{"is-right":g||o.rtl});return _(()=>m("div",{children:[t("a",{href:R(N.SUBDOMAIN_LOGO),target:"_blank",rel:"noopener noreferrer",className:l("logo-overlay",{invert:A}),style:b.style,children:t("img",{src:`${C}expofp-overlay.png`,alt:r("Made with ExpoFP"),crossOrigin:"anonymous"})}),w&&t(d,{title:r("This floor plan is too big"),variant:"warning",showIcon:!0,position:"bottom-right",children:t("a",{rel:"noopener noreferrer",target:"_blank",href:"https://expofp.com/pages/huge-fp-warning",children:r("Read how to optimize it")})}),v&&t(d,{title:r("3D view is hidden"),variant:"warning",showIcon:!0,position:"bottom-right",children:t("a",{rel:"noopener noreferrer",target:"_blank",href:"https://expofp.com/pages/expofp-mapbox-integration",children:r("Setup mapbox first")})}),y&&t(M,{fallback:null,children:m("div",{className:l(x,{"efp-semi-transparent":o.setKioskModeEnabled}),children:[t("div",{children:r("View Map on Phone")}),t(V,{value:o.viewMapOnPhoneQRCodeUrl,size:100})]})})]}))}
@@ -1 +1 @@
1
- import{jsx as S,jsxs as I,Fragment as H}from"react/jsx-runtime";import{useObserver as q}from"mobx-react-lite";import J from"classnames";import{useEffect as Q,useMemo as Y,useRef as z,useState as ee}from"react";import{observable as oe}from"mobx";import i,{boothStore as te,layersStore as R,uiState as e}from"../../store";import re from"./drawing/config/config-all";import{useReaction as d}from"../../utils/mobx";import{LayerMode as g}from"../../store/LayerStore";import p from"../../tools/settings";import{Rect as x}from"./drawing/config/Rect";import C from"../../core/Rect";import{Exhibitor as F}from"../../store/ExhibitorStore";import{BoothBase as ne}from"../../store/BoothStore";import{CurrentPosition as ie,Route as ae}from"../../store/RouteStore";import{Category as se}from"../../store/CategoryStore";import T from"../../tools/logger";import{svgArea as D}from"../../data/svg";import{configMarkers as le,getMarkerFromClick as me}from"./drawing/config/config-markers";import ce from"color";import{createWayfinding as fe}from"../../wayfinding/createWayfinding";import{createSceneDef as de}from"../../renderer";import{convertGpsToLocal as ue}from"../../utils/gps";import{fpGeo as pe}from"../../data/fpGeo";import v from"../../utils/is-debug";import{Draggable as he}from"../Draggable";import{useBuildRoute as ve}from"./traffic/useBuildRoute";import{useManageTraffic as be}from"./traffic/useManageTraffic";import{DEBUG_STORAGE_KEY as G}from"../../constants";import{isPathwayLayer as N}from"../../utils/is-pathway-layer";import O from"./booth-by-xy";import{mapRollSetting as X}from"../../renderer";import{loadLayersImages as ye}from"./drawing/config/loadBoothsImages";import{areLayersEnabled as ge}from"../../utils/areLayersEnabled";import{pickDefaultScene as j,pickDefaultScenePoint as xe}from"../../renderer/engine-core/defs";const U=Number.isFinite(p.maxZoom);export default function we(){let k={};const V="#ebebeb",h=z(),b=Y(()=>oe({moving:!1,prevLevel:i.layerStore.layers.find(o=>!o.frozen&&o.visible)}),[]),s=i.rendererService;let l;const L=z(null);let B=null,M=null;const[Z,$]=ee(()=>typeof window<"u"&&window.localStorage?localStorage.getItem(G)!=="false":!0);d(()=>i.routeStore.currentRouteLayer,()=>{if(!s.scene||b.prevLevel===i.routeStore.currentRouteLayer)return;const o=s.scene.rootLayer.children.filter(r=>i.layerStore.floors.some(n=>r.name.includes(n.name)));let t=i.routeStore.currentRouteLayer.name;if(!o.find(r=>r.name===t))return;const a=o?.map(r=>(r.name===t&&(r.hidden=!1),r.name===b.prevLevel?.name&&(r.hidden=!0),r));b.prevLevel=i.routeStore.currentRouteLayer,s.update(...a)}),d(()=>e.centerMap,()=>{!e.centerMap||i.mapboxStore.showMapbox||(l.controls.resetCamera({zoom:!!(e.list.type==="search"&&e.list.text)}),e.centerMap=!1)}),Q(()=>{if(!h.current)return;async function o(){let t={};try{if(v){const r=document.createElement("canvas").getContext("webgl2"),n=r&&r.getExtension("EXT_disjoint_timer_query_webgl2"),m=(await import("stats-gl")).default,f=new m({trackGPU:n,horizontal:!0}),u=L.current;if(!u)throw new Error("memoryInfoPanel not found.");f.dom.style.position="relative",u.style.width=`${90*(n?3:2)}px`,u.style.height="48px",u.appendChild(f.dom),t={stats:f,memoryInfoPanel:u}}}catch(a){console.error(a)}l=s.create({canvas:h.current,ui:t}),e.canvasVisibleRectPx&&(l.visibleRect=x.fromCoreRect(e.canvasVisibleRectPx)),re(s).then(a=>{v&&console.log("Renderer settings",l);const r=ce(p.backgroundColor==="none"?V:p.backgroundColor).string("rgba");k=de(a,x.fromCoreRect(D),r),s.start(k),X(l,i.fp.enableRotation?1:0),U&&l.viewport.setMaxZoom(p.maxZoom),R.layersLoaded=!0,i.fp.onFpConfigured&&i.fp?.onFpConfigured(),B=fe(s),M=le(s),ye(s)}),l.events.addEventListener("pointer:move",({data:a})=>{if(e.setKioskModeEnabled)return;const{point:r,defs:n}=j(a),c=O(r.x,r.y),m=E(n[0]);e.hoveredBooth=c||m}),l.events.addEventListener("pointer:out",()=>{e.setKioskModeEnabled||(e.hoveredBooth=null)}),l.events.addEventListener("pointer:click",({data:a})=>{if(!e?.rootElement)return;window.__resett&&window.__resett(),e.overlayPosition==="bottom"&&e.overlaySize==="full"&&i.showMap();const{point:r,defs:n}=j(a),{x:c,y:m}=r;if(e.onGetCoordsClick){const y=i.layerStore.layers.find(w=>w.visible&&(w.mode===g.TurnedOn||w.mode===g.TurnedOff));e.onGetCoordsClick({x:c,y:m,z:y?.name||null})}if(e.setKioskModeEnabled)return;if(e.onMarkerClick){const y=me(c,m,s.scale);v&&console.log("marker",y),e.onMarkerClick(y)}const f=O(r.x,r.y),u=E(n[0]);v&&console.log("boothIdFromClientXy",f,"boothByShape",u,"pointer:click point",r),i.clickBooth(f||u)}),l.events.addEventListener("navigation:change",()=>window.__resett&&window.__resett())}return o(),i.fp.getCenterCoordinates=K,()=>A()},[]);function A(){B?.(),M?.(),s.dispose()}function K(){const o=h.current;if(!h.current)throw new Error("Canvas not ready");const t=xe(l.viewport.canvasToSvg({x:o.clientWidth/2,y:o.clientHeight/2})),r=i.layerStore.visible.find(n=>n.mode===g.TurnedOff||n.mode===g.TurnedOn)?.name||null;return{...t,z:r}}function E(o){return!o||!o.shape?null:te.booths.find(t=>t.shapes?.find(a=>a.shape==o.shape))}d(()=>e.zoomBy,()=>{if(!e.zoomBy||i.mapboxStore.showMapbox)return;const o=e.zoomBy;l.controls.zoomBy(o),e.zoomBy=null}),d(()=>e.dimmed,o=>{if(!s.scene)return;const t=s.scene.rootLayer;t.dim!==o&&(t.dim=o,s.update(t))}),d(()=>e.details,()=>{if(!e.onDetails)return;if(!e.details){e.onDetails(null);return}var o=e.details;if(p.EXPO==="wineparis"&&(o instanceof F&&(o=o.booths[0]),!o))return;let t=null,a=[];o instanceof F?(t="exhibitor",a=o.booths.map(n=>n.name).sort((n,c)=>n==i.routeStore.tempToBooth?.name?-1:c==i.routeStore.tempToBooth?.name?1:0)):o instanceof ne?(t="booth",a=[o.name]):o instanceof ae?(t="route",a=[o.from?.name,o.to?.name].filter(n=>!!n)):o instanceof se&&(t="category",a=o.exhibitors.map(n=>n.booths.map(c=>c.name)).flat());var r={type:t,name:o?.name,id:o?.id,externalId:o?.externalId,boothsNames:a};e.onDetails({...r,...t==="route"?{routeInfo:i.routeStore.routeInfo}:{}})}),d(()=>e.canvasVisibleRectPx,()=>{s.renderer&&(s.renderer.visibleRect=x.fromCoreRect(e.canvasVisibleRectPx))},{fireImmediately:!0}),d(()=>e.moveToRect,()=>{!e.moveToRect||i.mapboxStore.showMapbox||(e.moveToRect&&e.moveToRect.h!==1/0&&e.moveToRect.w!==1/0&&e.moveToRect.h>0&&e.moveToRect.w>0&&_(e.moveToRect),e.moveToRect=null)}),d(()=>e.rollReset,o=>{o&&(l.controls.resetCamera({roll:!0}),e.rollReset=!1)}),d(()=>e.moveToBooths,()=>{if(T.log("this.moveToBooths",e.moveToBooths),!e.moveToBooths||i.mapboxStore.showMapbox)return;T.log("watched moveToBooths",e.moveToBooths);const o=e.moveToBooths.filter(t=>t.rect).map(t=>t.rect);o.length!==0&&(_(C.fromMultiple(o)),e.moveToBooths=null)}),d(()=>e.mapSettings,({zoomtime:o,center:t,centerxy:a,bearing:r,roll:n,z:c})=>{if(!(i.mapboxStore.showMapbox||!s.renderer))try{o&&o!==e.defaultMapSettings.zoomtime&&s.renderer.controls.configure({zoomTime:o/1e3}),i.fp.enableRotation&&X(l,n);let m;if(t){const f=t.split(",").map(Number),u=new ie(void 0,void 0,void 0,void 0,f[0],f[1]);m=ue(u,pe.properties.config)}else if(a){const f=a.split(",").map(Number);m={x:f[0],y:f[1]}}c&&i.fp.activateFloor({name:c}),(m?.x||m?.y)&&s.renderer.controls.panTo(m.x,m.y),Number.isFinite(r)&&s.renderer.controls.rollTo(r)}catch(m){T.error("Error in mapSettings reaction",m)}}),ve({enabled:R.layersLoaded&&e.buildRoute,rendererService:s});const P="routes-api.expofp.com";be({permission:R.layersLoaded,rendererService:s,dataJsonUrl:`https://${P}/v1/routes?expo=${p.EXPO}`,websocketUrl:`wss://${P}/locations?expo=${p.EXPO}`}),d(()=>i.layerStore.visible,o=>{if(!s.scene)return;const t=o.filter(n=>N(n.name)),r=s.scene.rootLayer.children.filter(n=>N(n.name));r.forEach(n=>{n.hidden=!t.find(c=>c.name===n.name)}),s.update(...r)});function _(o){let t=o;const a=W(o,D);e.kioskData&&(!ge()||i.routeStore.defaultFrom?.layer?.name===i.routeStore.currentRouteLayer?.name)&&(t=C.fromMultiple([o,C.fromXywh(e.kioskData.x,e.kioskData.y,1,1)]));const r=x.fromCoreRect(t),n={paddingPercent:a,maxZoom:U?void 0:10};if(e.shouldShiftMapRect){l.visibleRect.min={...l.visibleRect.min,x:l.visibleRect.min.x+e.overlayWidthPx},l.visibleRect=l.visibleRect;try{l.controls.zoomTo(r,n)}finally{l.visibleRect.min={...l.visibleRect.min,x:l.visibleRect.min.x-e.overlayWidthPx}}}else l.controls.zoomTo(r,n)}function W(o,t){return!o||!t?0:(o.w*o.h/(t.h*t.w)>.1?15:25)/100}return q(()=>I(H,{children:[S("canvas",{style:{width:"100%",height:"100%"},ref:h,className:J({map:!0,moving:b.moving,hidden:i.mapboxStore.showMapbox}),children:"ExpoFP.com"}),v&&Z&&I(he,{className:"debug-fps",children:[S("div",{ref:L}),S("button",{onClick:()=>{typeof window<"u"&&window.localStorage&&localStorage.setItem(G,"false"),$(!1)},style:{padding:"4px 8px",fontSize:"11px",cursor:"pointer",backgroundColor:"#333",color:"#fff",border:"1px solid #555",width:"100%"},children:"Hide debug"})]})]}))}
1
+ import{jsx as k,jsxs as N,Fragment as Y}from"react/jsx-runtime";import{useObserver as ee}from"mobx-react-lite";import oe from"classnames";import{useEffect as te,useMemo as re,useRef as S,useState as ne}from"react";import{observable as ie,reaction as ae}from"mobx";import a,{boothStore as se,layersStore as h,uiState as o}from"../../store";import le from"./drawing/config/config-all";import{useReaction as d}from"../../utils/mobx";import{LayerMode as R}from"../../store/LayerStore";import p from"../../tools/settings";import{Rect as x}from"./drawing/config/Rect";import L from"../../core/Rect";import{Exhibitor as O}from"../../store/ExhibitorStore";import{BoothBase as me}from"../../store/BoothStore";import{CurrentPosition as ce,Route as fe}from"../../store/RouteStore";import{Category as de}from"../../store/CategoryStore";import B from"../../tools/logger";import{svgArea as X}from"../../data/svg";import{configMarkers as ue,getMarkerFromClick as pe}from"./drawing/config/config-markers";import he from"color";import{createWayfinding as ve}from"../../wayfinding/createWayfinding";import{createSceneDef as ye}from"../../renderer";import{convertGpsToLocal as be}from"../../utils/gps";import{fpGeo as ge}from"../../data/fpGeo";import y from"../../utils/is-debug";import we from"../../ui/Draggable";import{useBuildRoute as Se}from"./traffic/useBuildRoute";import{useManageTraffic as Re}from"./traffic/useManageTraffic";import{DEBUG_STORAGE_KEY as A}from"../../constants";import{isPathwayLayer as j}from"../../utils/is-pathway-layer";import U from"./booth-by-xy";import{mapRollSetting as Z}from"../../renderer";import{loadLayersImages as xe}from"./drawing/config/loadBoothsImages";import{areLayersEnabled as Ce}from"../../utils/areLayersEnabled";import{pickDefaultScene as $,pickDefaultScenePoint as Te}from"../../renderer/engine-core/defs";import{applyVenueDimValue as ke,createDimmingAnimator as Le}from"../../utils/dimming";const K=Number.isFinite(p.maxZoom);export default function Be(){let M={};const V="#ebebeb",v=S(),b=re(()=>ie({moving:!1,prevLevel:a.layerStore.layers.find(e=>!e.frozen&&e.visible)}),[]),l=a.rendererService,C=S(Le(e=>ke(l,e)));let s;const g=S(null),E=S(null);let P=null,I=null,_=!1;function z(){h.layers.forEach(e=>{e.configured=!1,e.children=[],e.loaded=!1})}const[W,H]=ne(()=>typeof window<"u"&&window.localStorage?localStorage.getItem(A)!=="false":!0);d(()=>a.routeStore.currentRouteLayer,()=>{if(!l.scene||b.prevLevel===a.routeStore.currentRouteLayer)return;const e=l.scene.rootLayer.children.filter(t=>a.layerStore.floors.some(n=>t.name.includes(n.name)));let r=a.routeStore.currentRouteLayer.name;if(!e.find(t=>t.name===r))return;const i=e?.map(t=>(t.name===r&&(t.hidden=!1),t.name===b.prevLevel?.name&&(t.hidden=!0),t));b.prevLevel=a.routeStore.currentRouteLayer,l.update(...i)}),d(()=>o.centerMap,()=>{!o.centerMap||a.maplibreStore.showMaplibre||(s.controls.resetCamera({zoom:!!(o.list.type==="search"&&o.list.text)}),o.centerMap=!1)}),te(()=>{if(!v.current)return;async function e(){z(),h.layersLoaded=!1;let r={};try{if(y){const t=document.createElement("canvas").getContext("webgl2"),n=t&&t.getExtension("EXT_disjoint_timer_query_webgl2"),m=(await import("stats-gl")).default,f=new m({trackGPU:n,horizontal:!0}),u=E.current;if(!u)throw new Error("memoryInfoPanel not found.");f.dom.style.position="relative",u.style.width=`${90*(n?3:2)}px`,u.style.height="48px",u.appendChild(f.dom),r={stats:f,memoryInfoPanel:u}}}catch(i){console.error(i)}s=l.create({canvas:v.current,ui:r}),g.current=s,ae(()=>o.canvasVisibleRectPx,(i,t)=>{i&&(s.visibleRect=x.fromCoreRect(i)),t.dispose()},{fireImmediately:!0}),le(l).then(i=>{if(_||g.current!==s)return;y&&console.log("Renderer settings",s);const t=he(p.backgroundColor==="none"?V:p.backgroundColor).string();M=ye(i,x.fromCoreRect(X),t),l.start(M),C.current.setTarget(o.dimmed,{immediate:!0}),Z(s,a.fp.enableRotation?1:0),K&&s.viewport.setMaxZoom(p.maxZoom),h.layersLoaded=!0,a.fp.onFpConfigured&&a.fp?.onFpConfigured(),P=ve(l),I=ue(l),xe(l)}),s.events.addEventListener("pointer:move",({data:i})=>{if(o.setKioskModeEnabled)return;const{point:t,defs:n}=$(i),c=U(t.x,t.y),m=D(n[0]);o.hoveredBooth=c||m}),s.events.addEventListener("pointer:out",()=>{o.setKioskModeEnabled||(o.hoveredBooth=null)}),s.events.addEventListener("pointer:click",({data:i})=>{if(!o?.rootElement)return;window.__resett&&window.__resett(),o.overlayPosition==="bottom"&&o.overlaySize==="full"&&a.showMap();const{point:t,defs:n}=$(i),{x:c,y:m}=t;if(o.onGetCoordsClick){const w=a.layerStore.layers.find(T=>T.visible&&(T.mode===R.TurnedOn||T.mode===R.TurnedOff));o.onGetCoordsClick({x:c,y:m,z:w?.name||null})}if(o.setKioskModeEnabled)return;if(o.onMarkerClick){const w=pe(c,m,l.scale);y&&console.log("marker",w),o.onMarkerClick(w)}const f=U(t.x,t.y),u=D(n[0]);y&&console.log("boothIdFromClientXy",f,"boothByShape",u,"pointer:click point",t),a.clickBooth(f||u)}),s.events.addEventListener("navigation:change",()=>window.__resett&&window.__resett())}return e(),a.fp.getCenterCoordinates=J,()=>q()},[]);function q(){_=!0,C.current.stop(),P?.(),I?.(),z(),h.layersLoaded=!1,l.disposeIfCurrent(g.current),g.current=null}function J(){const e=v.current;if(!v.current)throw new Error("Canvas not ready");const r=Te(s.viewport.canvasToSvg({x:e.clientWidth/2,y:e.clientHeight/2})),t=a.layerStore.visible.find(n=>n.mode===R.TurnedOff||n.mode===R.TurnedOn)?.name||null;return{...r,z:t}}function D(e){return!e||!e.shape?null:se.booths.find(r=>r.shapes?.find(i=>i.shape==e.shape))}d(()=>o.zoomBy,()=>{if(!o.zoomBy||a.maplibreStore.showMaplibre)return;const e=o.zoomBy;s.controls.zoomBy(e),o.zoomBy=null}),d(()=>o.dimmed,e=>{C.current.setTarget(e)}),d(()=>o.details,()=>{if(!o.onDetails)return;if(!o.details){o.onDetails(null);return}var e=o.details;if(p.EXPO==="wineparis"&&(e instanceof O&&(e=e.booths[0]),!e))return;let r=null,i=[];e instanceof O?(r="exhibitor",i=e.booths.map(n=>n.name).sort((n,c)=>n==a.routeStore.tempToBooth?.name?-1:c==a.routeStore.tempToBooth?.name?1:0)):e instanceof me?(r="booth",i=[e.name]):e instanceof fe?(r="route",i=[e.from?.name,e.to?.name].filter(n=>!!n)):e instanceof de&&(r="category",i=e.exhibitors.map(n=>n.booths.map(c=>c.name)).flat());var t={type:r,name:e?.name,id:e?.id,externalId:e?.externalId,boothsNames:i};o.onDetails({...t,...r==="route"?{routeInfo:a.routeStore.routeInfo}:{}})}),d(()=>o.canvasVisibleRectPx,e=>{l.renderer&&(l.renderer.visibleRect=x.fromCoreRect(e))},{fireImmediately:!0}),d(()=>o.moveToRect,()=>{!o.moveToRect||a.maplibreStore.showMaplibre||(o.moveToRect&&o.moveToRect.h!==1/0&&o.moveToRect.w!==1/0&&o.moveToRect.h>0&&o.moveToRect.w>0&&G(o.moveToRect),o.moveToRect=null)}),d(()=>o.rollReset,e=>{e&&(s.controls.resetCamera({roll:!0}),o.rollReset=!1)}),d(()=>o.moveToBooths,()=>{if(B.log("this.moveToBooths",o.moveToBooths),!o.moveToBooths||a.maplibreStore.showMaplibre)return;B.log("watched moveToBooths",o.moveToBooths);const e=o.moveToBooths.filter(r=>r.rect).map(r=>r.rect);e.length!==0&&(G(L.fromMultiple(e)),o.moveToBooths=null)}),d(()=>o.mapSettings,({zoomtime:e,center:r,centerxy:i,bearing:t,roll:n,z:c})=>{if(!(a.maplibreStore.showMaplibre||!l.renderer))try{e&&e!==o.defaultMapSettings.zoomtime&&l.renderer.controls.configure({zoomTime:e/1e3}),a.fp.enableRotation&&Z(s,n);let m;if(r){const f=r.split(",").map(Number),u=new ce(void 0,void 0,void 0,void 0,f[0],f[1]);m=be(u,ge.properties.config)}else if(i){const f=i.split(",").map(Number);m={x:f[0],y:f[1]}}c&&a.fp.activateFloor({name:c}),(m?.x||m?.y)&&l.renderer.controls.panTo(m.x,m.y),Number.isFinite(t)&&l.renderer.controls.rollTo(t)}catch(m){B.error("Error in mapSettings reaction",m)}}),Se({enabled:h.layersLoaded&&o.buildRoute,rendererService:l});const F="routes-api.expofp.com";Re({permission:h.layersLoaded,rendererService:l,dataJsonUrl:`https://${F}/v1/routes?expo=${p.EXPO}`,websocketUrl:`wss://${F}/locations?expo=${p.EXPO}`}),d(()=>a.layerStore.visible,e=>{if(!l.scene)return;const r=e.filter(n=>j(n.name)),t=l.scene.rootLayer.children.filter(n=>j(n.name));t.forEach(n=>{n.hidden=!r.find(c=>c.name===n.name)}),l.update(...t)});function G(e){let r=e;const i=Q(e,X);o.kioskData&&(!Ce()||a.routeStore.defaultFrom?.layer?.name===a.routeStore.currentRouteLayer?.name)&&(r=L.fromMultiple([e,L.fromXywh(o.kioskData.x,o.kioskData.y,1,1)]));const t=x.fromCoreRect(r),n={paddingPercent:i,maxZoom:K?void 0:10};if(o.shouldShiftMapRect){s.visibleRect.min={...s.visibleRect.min,x:s.visibleRect.min.x+o.overlayWidthPx},s.visibleRect=s.visibleRect;try{s.controls.zoomTo(t,n)}finally{s.visibleRect.min={...s.visibleRect.min,x:s.visibleRect.min.x-o.overlayWidthPx}}}else s.controls.zoomTo(t,n)}function Q(e,r){return!e||!r?0:(e.w*e.h/(r.h*r.w)>.1?15:25)/100}return ee(()=>N(Y,{children:[k("canvas",{style:{width:"100%",height:"100%"},ref:v,className:oe({map:!0,moving:b.moving,hidden:a.maplibreStore.showMaplibre}),children:"ExpoFP.com"}),y&&W&&N(we,{className:"debug-fps",children:[k("div",{ref:E}),k("button",{onClick:()=>{typeof window<"u"&&window.localStorage&&localStorage.setItem(A,"false"),H(!1)},style:{padding:"4px 8px",fontSize:"11px",cursor:"pointer",backgroundColor:"#333",color:"#fff",border:"1px solid #555",width:"100%"},children:"Hide debug"})]})]}))}
@@ -1,3 +1,4 @@
1
+ import Color from "color";
1
2
  import { Booth } from "../../../../store/BoothStore";
2
3
  import { ColorInput, ShapeDef } from "@expofp/renderer";
3
4
  import { BoothDrawerBaseWithoutPainter } from "./BoothDrawerBase";
@@ -11,10 +12,10 @@ declare class BoothBgDrawer extends BoothDrawerBaseWithoutPainter {
11
12
  constructor(rendererService: RendererService, booth: Booth);
12
13
  getShape(): ShapeBgDef[];
13
14
  update(): void;
14
- getBoothPathColor(defaultColor: ColorInput): any;
15
+ getBoothPathColor(defaultColor: ColorInput): Color<string>;
15
16
  get defaultColor(): string;
16
17
  get selectedColorInterpolateFunc(): (index: number) => string;
17
- getBoothColor(): any;
18
+ getBoothColor(): Color<string>;
18
19
  }
19
20
  export {};
20
21
  //# sourceMappingURL=config-booth-bg.d.ts.map
@@ -1 +1 @@
1
- import{__esDecorate as g,__runInitializers as k}from"tslib";import i from"color";import v from"color-interpolate";import{computed as b,reaction as C}from"mobx";import u from"../../../../data";import p,{boothStore as _,layersStore as S,uiState as f}from"../../../../store";import{RegularBooth as D,SpecialBooth as I}from"../../../../store/BoothStore";import n from"../../../../tools/settings";import{defaultRebookingOptions as B}from"../../../RebookingRadioGroup";import{Rect as w}from"./Rect";import{BoothDrawerBaseWithoutPainter as P}from"./BoothDrawerBase";import{LayersMode as x}from"../../../../store/LayerStore";import{createShapeDef as L}from"../../../../renderer";import{buildPathDef as F}from"./config-bg";export default function R(s,a){return new W(s,a)}function A(s){if(s.length===0)return null;const a=s[0];return s.every(h=>h===a)?a:null}export function pathToShapeDef(s,a){const c=[];for(const h of s){const d=F({index:h.index,color:h.color,unblinking:h.unblinking},a);d&&c.push(d)}return c}let W=(()=>{let s=P,a=[],c,h;return class extends s{static{const o=typeof Symbol=="function"&&Symbol.metadata?Object.create(s[Symbol.metadata]??null):void 0;c=[b({keepAlive:!0})],h=[b],g(this,null,c,{kind:"getter",name:"defaultColor",static:!1,private:!1,access:{has:e=>"defaultColor"in e,get:e=>e.defaultColor},metadata:o},null,a),g(this,null,h,{kind:"getter",name:"selectedColorInterpolateFunc",static:!1,private:!1,access:{has:e=>"selectedColorInterpolateFunc"in e,get:e=>e.selectedColorInterpolateFunc},metadata:o},null,a),o&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:o})}rendererService=k(this,a);constructor(o,e){if(super(e),this.rendererService=o,e.paths){const t=pathToShapeDef(e.paths,p.layerStore.mode!==x.Default?e.layer.name:"");e.shapes=t.map(r=>{const l=f.monochrome?i(r.color).grayscale().rgb().string():this.getBoothColor().string("rgba");return r.color==="transparent"?r.color=l:r.defaultColor=r.color,r})}else{const t=e.borderColor==="none"?0:isNaN(e.borderWidth)?_.borderWidth:e.borderWidth;let r=this.booth.rect.withPadding(t/2,t/2);const l=this.getBoothColor().string("rgba");e.shapes=[L(w.fromCoreRect(r,this.booth.rotate),l)]}C(()=>this.booth.hover,()=>!this.booth.selected&&this.update()),C(()=>[S.layersLoaded,this.booth.skipDim,this.booth.selected,this.boothShape.selectBgAnimationPart],()=>this.update())}getShape(){return this.booth.shapes}update(){if(S.layersLoaded)for(const o of this.booth.shapes){if(o.dim=this.booth.skipDim?!1:void 0,o.color&&!o.unblinking){const e=o.defaultColor?this.getBoothPathColor(o.defaultColor):this.getBoothColor();o.color=e.string("rgba")}this.rendererService.update(o)}}getBoothPathColor(o){const e=this.booth;let t=i(o).hsl();if(e.selected){const r=n.colors.booths.selected;if(window.__fpSettings?.fpVer){let m=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart);return i(m==="none"?r:m)}const l=i(r).hsl(),y=l.lightness()*this.boothShape.selectBgAnimationPart;t=t.hue(l.hue()).lightness(y)}else e.hover&&(t=t.darken(.1));return t}get defaultColor(){const o=this.booth;let e;if(o instanceof I)e=o.color||n.colors.booths.empty;else if(o instanceof D){if(u.isRebooking){if(!o.exhibitors?.length)return B[0].color.primary;const r=A((o.exhibitors??[]).map(l=>l.rebookingState));return r!==null?B[r].color.primary:"#000000"}const t=n.colors.booths;o.onHold?e=o.holdColor||t.defaultHold:o.exhibitors.length||o.reserved?e=o.soldColor||t.defaultSold:e=o.availColor||t.empty}(e==="#666"||e==="#666666")&&(e="rgba(0,0,0,0.172)");try{e==="none"&&(e=n.colors.booths.default),i(e)}catch(t){e=n.colors.booths.default,console.error("Booth: defaultColor",t)}return e}get selectedColorInterpolateFunc(){const o=n.colors.booths.seectedLight||(i(this.booth.labelColor||n.boothLabelColor).isLight()?"#000":"#fff"),e=f.selectedRoute?n?.colors?.booths?.wayfinding?.selected:n?.colors?.booths?.selected;return v([o,e])}getBoothColor(){const o=this.booth;let e;if(f.heatmap){const r=p.heatmapStore.getTotalClicksByBooth(o),l=i(p.heatmapStore.getColorByClicks(r));return o.selected?(e=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart),i(e==="none"?"#f33":e)):o.hover?l.darken(.2).alpha(l.alpha()*1.5):l}o.error?e="#f33":u.isRebooking?e=this.defaultColor:o.selected?e=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart):e=this.defaultColor;let t;try{t=i(e==="none"?"#f33":e)}catch{t=i(this.defaultColor)}return(o.hover&&!o.selected||o.selected&&u.isRebooking)&&(t=t.darken(.2).alpha(t.alpha()*1.5)),(f.monochrome||f.heatmapYah)&&(t=t.grayscale()),t}}})();
1
+ import{__esDecorate as g,__runInitializers as k}from"tslib";import a from"color";import v from"color-interpolate";import{computed as b,reaction as C}from"mobx";import u from"../../../../data";import p,{boothStore as _,layersStore as S,uiState as f}from"../../../../store";import{RegularBooth as D,SpecialBooth as I}from"../../../../store/BoothStore";import n from"../../../../tools/settings";import{defaultRebookingOptions as B}from"../../../RebookingRadioGroup";import{Rect as w}from"./Rect";import{BoothDrawerBaseWithoutPainter as P}from"./BoothDrawerBase";import{LayersMode as x}from"../../../../store/LayerStore";import{createShapeDef as L}from"../../../../renderer";import{buildPathDef as F}from"./config-bg";export default function R(s,i){return new W(s,i)}function A(s){if(s.length===0)return null;const i=s[0];return s.every(h=>h===i)?i:null}export function pathToShapeDef(s,i){const c=[];for(const h of s){const d=F({index:h.index,color:h.color,unblinking:h.unblinking},i);d&&c.push(d)}return c}let W=(()=>{let s=P,i=[],c,h;return class extends s{static{const o=typeof Symbol=="function"&&Symbol.metadata?Object.create(s[Symbol.metadata]??null):void 0;c=[b({keepAlive:!0})],h=[b({keepAlive:!0})],g(this,null,c,{kind:"getter",name:"defaultColor",static:!1,private:!1,access:{has:e=>"defaultColor"in e,get:e=>e.defaultColor},metadata:o},null,i),g(this,null,h,{kind:"getter",name:"selectedColorInterpolateFunc",static:!1,private:!1,access:{has:e=>"selectedColorInterpolateFunc"in e,get:e=>e.selectedColorInterpolateFunc},metadata:o},null,i),o&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:o})}rendererService=k(this,i);constructor(o,e){if(super(e),this.rendererService=o,e.paths){const t=pathToShapeDef(e.paths,p.layerStore.mode!==x.Default?e.layer.name:"");e.shapes=t.map(r=>{const l=f.monochrome?a(r.color).grayscale().rgb().string():this.getBoothColor().string();return r.color==="transparent"?r.color=l:r.defaultColor=r.color,r})}else{const t=e.borderColor==="none"?0:isNaN(e.borderWidth)?_.borderWidth:e.borderWidth;let r=this.booth.rect.withPadding(t/2,t/2);const l=this.getBoothColor().string();e.shapes=[L(w.fromCoreRect(r,this.booth.rotate),l)]}C(()=>this.booth.hover,()=>!this.booth.selected&&this.update()),C(()=>[S.layersLoaded,this.booth.skipDim,this.booth.selected,this.boothShape.selectBgAnimationPart],()=>this.update())}getShape(){return this.booth.shapes}update(){if(S.layersLoaded)for(const o of this.booth.shapes){if(o.dim=this.booth.skipDim?!1:void 0,o.color&&!o.unblinking){const e=o.defaultColor?this.getBoothPathColor(o.defaultColor):this.getBoothColor();o.color=e.string()}this.rendererService.update(o)}}getBoothPathColor(o){const e=this.booth;let t=a(o).hsl();if(e.selected){const r=n.colors.booths.selected;if(window.__fpSettings?.fpVer){let m=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart);return a(m==="none"?r:m)}const l=a(r).hsl(),y=l.lightness()*this.boothShape.selectBgAnimationPart;t=t.hue(l.hue()).lightness(y)}else e.hover&&(t=t.darken(.1));return t}get defaultColor(){const o=this.booth;let e;if(o instanceof I)e=o.color||n.colors.booths.empty;else if(o instanceof D){if(u.isRebooking){if(!o.exhibitors?.length)return B[0].color.primary;const r=A((o.exhibitors??[]).map(l=>l.rebookingState));return r!==null?B[r].color.primary:"#000000"}const t=n.colors.booths;o.onHold?e=o.holdColor||t.defaultHold:o.exhibitors.length||o.reserved?e=o.soldColor||t.defaultSold:e=o.availColor||t.empty}(e==="#666"||e==="#666666")&&(e="rgba(0,0,0,0.172)");try{e==="none"&&(e=n.colors.booths.default),a(e)}catch(t){e=n.colors.booths.default,console.error("Booth: defaultColor",t)}return e}get selectedColorInterpolateFunc(){const o=n.colors.booths.seectedLight||(a(this.booth.labelColor||n.boothLabelColor).isLight()?"#000":"#fff"),e=f.selectedRoute?n?.colors?.booths?.wayfinding?.selected:n?.colors?.booths?.selected;return v([o,e])}getBoothColor(){const o=this.booth;let e;if(f.heatmap){const r=p.heatmapStore.getTotalClicksByBooth(o),l=a(p.heatmapStore.getColorByClicks(r));return o.selected?(e=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart),a(e==="none"?"#f33":e)):o.hover?l.darken(.2).alpha(l.alpha()*1.5):l}o.error?e="#f33":u.isRebooking?e=this.defaultColor:o.selected?e=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart):e=this.defaultColor;let t;try{t=a(e==="none"?"#f33":e)}catch{t=a(this.defaultColor)}return(o.hover&&!o.selected||o.selected&&u.isRebooking)&&(t=t.darken(.2).alpha(t.alpha()*1.5)),(f.monochrome||f.heatmapYah)&&(t=t.grayscale()),t}}})();
@@ -1 +1 @@
1
- import g from"color";import{boothStore as c,layersStore as d}from"../../../../store";import a from"../../../../tools/settings";import{BoothDrawerBaseWithoutPainter as w}from"./BoothDrawerBase";import{Polygon as h}from"@expofp/renderer";import{reaction as B}from"mobx";import P from"../../../../core/Polygon";import W from"../../../../core/Rect";import{createShapeDef as C}from"../../../../renderer";export default function D(r,e){if(a.EXPO!=="confex20"&&!(e.poiType||e.borderColor==="none"||e.borderWidth===0&&!c.borderWidth||e.paths&&!e.pathsWithRect))return new S(r,e)}function b(r){const e=[{x:r.x1,y:r.y1},{x:r.x2,y:r.y2},{x:r.x3,y:r.y3},{x:r.x4,y:r.y4}],s=[[0,1,2],[2,3,0]];return new h(e,s)}class S extends w{shape;constructor(e,s){super(s);const y=g(s.selected?a.colors.booths.selectedBorder:s.borderColor),o=this.booth.rect,t=s.borderWidth||c.borderWidth,n=[],i=(p,f,l,x)=>{const u=b(P.fromRect(W.fromCxcywh(p,f,l,x)).rotate(s.rotate,o.cx,o.cy));n.push(u)};i(o.cx,o.cy-o.h/2,o.w+t,t),i(o.cx,o.cy+o.h/2,o.w+t,t),i(o.cx-o.w/2,o.cy,t,o.h+t),i(o.cx+o.w/2,o.cy,t,o.h+t);const m=h.merge(...n);this.shape=C(m,y.string("rgba")),B(()=>[this.booth.skipDim,d.layersLoaded],()=>{d.layersLoaded&&(this.shape.dim=this.booth.skipDim?!1:void 0,e.update(this.shape))})}getShape(){return this.shape}}
1
+ import g from"color";import{boothStore as c,layersStore as d}from"../../../../store";import h from"../../../../tools/settings";import{BoothDrawerBaseWithoutPainter as w}from"./BoothDrawerBase";import{Polygon as a}from"@expofp/renderer";import{reaction as B}from"mobx";import P from"../../../../core/Polygon";import W from"../../../../core/Rect";import{createShapeDef as C}from"../../../../renderer";export default function D(r,e){if(h.EXPO!=="confex20"&&!(e.poiType||e.borderColor==="none"||e.borderWidth===0&&!c.borderWidth||e.paths&&!e.pathsWithRect))return new b(r,e)}function S(r){const e=[{x:r.x1,y:r.y1},{x:r.x2,y:r.y2},{x:r.x3,y:r.y3},{x:r.x4,y:r.y4}],s=[[0,1,2],[2,3,0]];return new a(e,s)}class b extends w{shape;constructor(e,s){super(s);const y=g(s.selected?h.colors.booths.selectedBorder:s.borderColor),o=this.booth.rect,t=s.borderWidth||c.borderWidth,n=[],i=(p,f,l,x)=>{const u=S(P.fromRect(W.fromCxcywh(p,f,l,x)).rotate(s.rotate,o.cx,o.cy));n.push(u)};i(o.cx,o.cy-o.h/2,o.w+t,t),i(o.cx,o.cy+o.h/2,o.w+t,t),i(o.cx-o.w/2,o.cy,t,o.h+t),i(o.cx+o.w/2,o.cy,t,o.h+t);const m=a.merge(...n);this.shape=C(m,y.string()),B(()=>[this.booth.skipDim,d.layersLoaded],()=>{d.layersLoaded&&(this.shape.dim=this.booth.skipDim?!1:void 0,e.update(this.shape))})}getShape(){return this.shape}}
@@ -1 +1 @@
1
- import E from"./config-booth-bg";import{Rect as f}from"./Rect";import H from"./config-booth-labels";import{SEPARATOR as s}from"../../../../constants";import U from"./config-booth-labels-special";import W from"./config-booth-border";import _ from"./config-booth-bookmark";import K from"../../../../tools/settings";import P,{boothStore as Z,uiState as j}from"../../../../store";import{loadImagesInBatchesById as q}from"../../../../utils/loadImagesInBatches";import{createBoothImg as z,getImageLayerName as F,mapBoothsLogos as G}from"./loadBoothsImages";import{degToRad as J}from"three/src/math/MathUtils";import{createImageDef as M}from"../../../../renderer";export const BOOTHS_CHUNK_SIZE=350;export default function Q(a,I,k){return(h=>{const t=I,p=[],m=[],l=[],g=[],b=[],d=F(t),B={name:d,children:[]};for(const o of h){const r=E(a,o)?.getShape();r&&p.push(...r);const n=H(a,o)?.getShape();n&&m.push(...n);const i=U(a,o)?.getShape();if(i&&l.push(...i),!K.borderless){const e=W(a,o)?.getShape();e&&g.push(e)}const c=_(a,o)?.getShape();c&&b.push(c)}const S=m.filter(o=>o.lines),R=l.filter(o=>o.lines),D=m.filter(o=>o.source),x=l.filter(o=>o.source);if(!j.hideLogoInBooth){const o=G(h);a.onLayerImages(d,async()=>{const r=await q(o,BOOTHS_CHUNK_SIZE),n=[];for(const[i,c]of r){const e=P.boothStore.boothById.get(i);if(!e)continue;const{bounds:{x:L,y:$,height:w,angle:N,width:O},htmlImage:T}=z(e,c),y=M(T,new f({x:L,y:$},{x:L+O,y:$+w},J(N))),A=f.fromCoreRect(e.rect,e.rotate),C=f.inflateRect(A,e.borderWidth||Z.borderWidth);e.shapes.push(y),n.push({shape:y,parentRect:C})}return{layer:B,children:n}})}let u=[];return h.length&&(u=[{name:`${t}${s}boothBackground`,children:p,interactive:!0},{name:`${t}${s}labels`,children:S},{name:`${t}${s}specialLabels`,children:R},{name:`${t}${s}bots`,children:D},{name:`${t}${s}specialDots`,children:x},B,{name:`${t}${s}boothsBookmark`,children:b},{name:`${t}${s}boothBorder`,children:g}]),{name:t,children:u}})(k)}
1
+ import H from"./config-booth-bg";import{Rect as f}from"./Rect";import T from"./config-booth-labels";import{SEPARATOR as s}from"../../../../constants";import U from"./config-booth-labels-special";import W from"./config-booth-border";import _ from"./config-booth-bookmark";import K from"../../../../tools/settings";import P,{boothStore as Z,uiState as j}from"../../../../store";import{toRadians as q}from"../../../../utils/math";import{loadImagesInBatchesById as z}from"../../../../utils/loadImagesInBatches";import{createBoothImg as F,getImageLayerName as G,mapBoothsLogos as J}from"./loadBoothsImages";import{createImageDef as M}from"../../../../renderer";export const BOOTHS_CHUNK_SIZE=350;export default function Q(a,I,k){return(h=>{const t=I,p=[],m=[],l=[],g=[],b=[],d=G(t),B={name:d,children:[]};for(const o of h){const r=H(a,o)?.getShape();r&&p.push(...r);const n=T(a,o)?.getShape();n&&m.push(...n);const i=U(a,o)?.getShape();if(i&&l.push(...i),!K.borderless){const e=W(a,o)?.getShape();e&&g.push(e)}const c=_(a,o)?.getShape();c&&b.push(c)}const S=m.filter(o=>o.lines),R=l.filter(o=>o.lines),D=m.filter(o=>o.source),x=l.filter(o=>o.source);if(!j.hideLogoInBooth){const o=J(h);a.onLayerImages(d,async()=>{const r=await z(o,BOOTHS_CHUNK_SIZE),n=[];for(const[i,c]of r){const e=P.boothStore.boothById.get(i);if(!e)continue;const{bounds:{x:L,y:$,height:w,angle:N,width:O},htmlImage:A}=F(e,c),y=M(A,new f({x:L,y:$},{x:L+O,y:$+w},q(N))),C=f.fromCoreRect(e.rect,e.rotate),E=f.inflateRect(C,e.borderWidth||Z.borderWidth);e.shapes.push(y),n.push({shape:y,parentRect:E})}return{layer:B,children:n}})}let u=[];return h.length&&(u=[{name:`${t}${s}boothBackground`,children:p,interactive:!0},{name:`${t}${s}labels`,children:S},{name:`${t}${s}specialLabels`,children:R},{name:`${t}${s}bots`,children:D},{name:`${t}${s}specialDots`,children:x},B,{name:`${t}${s}boothsBookmark`,children:b},{name:`${t}${s}boothBorder`,children:g}]),{name:t,children:u}})(k)}
@@ -1 +1 @@
1
- import c,{boothStore as C}from"../../../../store";import O from"../../../../store/init/init-booths";import{LayersMode as T}from"../../../../store/LayerStore";import{loadJs as x}from"../../../../tools/loaders";import M,{BOOTHS_CHUNK_SIZE as D}from"./config-booths";import{chunkArray as H}from"../../../../utils";import{BOOTHS_PAINTER_MARKER as k,SEPARATOR as m}from"../../../../constants";import{Rect as G}from"@expofp/renderer";import K,{BG_LAYER_NAME as w,FG_LAYER_NAME as B}from"./config-bg";import{getChildLayers as U}from"../../../../store/init/init-layers";import{createImageDef as Y,createLayerDef as j}from"../../../../renderer";import{getImageLayerName as v,getLayerIcons as F}from"./loadBoothsImages";import{loadIcons as J}from"../../../../utils/imageloader";import{degToRad as Z}from"three/src/math/MathUtils";function q(e){return e.childLayers.length?e.childLayers:U(e,e.basePriority,15).layers}function P(e,t,h){return new Promise(async f=>{let n=[];const s=O(c,t),a=await K(t),i=[],d=H(s,D);C.booths.filter(o=>o.rect&&(!o.layer||o.layer===t||o.layer.childLayers.includes(t))&&o.exhibitors.find(r=>!!r.logoInBooth&&!!r.logo)&&!c.uiState.hideLogoInBooth).forEach(o=>o.noLabels=!0),s.length&&d.forEach((o,r)=>{i.push(M(e,`${t.name}${m}${k}${m}${r}`,o))}),t.loaded=!0;const g=a.children.find(o=>o.name===w),y=a.children.find(o=>o.name===B),u=v(t.name),l=F(t),p={name:u,children:[]};l.length&&e.onLayerImages(u,async()=>{const o=await J(l),r=[];for(const I of o.filter(Boolean)){const{bounds:{x:L,y:$,height:b,angle:E,width:A},htmlImage:R}=I,S=new G({x:L,y:$},{x:L+A,y:$+b},Z(E)),N=Y(R,S);r.push({shape:N})}return{layer:p,children:r}}),g&&n.push({...g,name:`${a.name}${m}${w}`}),i.length&&n.push(...i),y&&n.push({...y,name:`${a.name}${m}${B}`}),l.length&&n.push(p);const _=t.childLayers.sort((o,r)=>o.basePriority-r.basePriority).map(async o=>P(e,o,!0));Promise.all(_).then(o=>{const r=o.flat();r.length&&n.push(...r),f(j(t.name,n,{hidden:!h}))})})}export default async function z(e,t){return e.configured?Promise.resolve({name:e.name,children:e.children}):new Promise(async(h,f)=>{if(c.layerStore.mode!==T.Default&&!window[`__fpPaths${e.name}`]&&!e.rootParent)try{await x(`${window.__dataUrlBase}fp.svg.${e.name}.js`)}catch{return f()}const n=q(e);n.length&&(e.childLayers=n);const{layers:s}=c.layerStore;c.layerStore.layers=[...s,...n.filter(i=>!s.some(d=>d.name===i.name))];const a=await P(t,e,e.visible);h(a)})}
1
+ import c,{boothStore as O}from"../../../../store";import x from"../../../../store/init/init-booths";import{LayersMode as T}from"../../../../store/LayerStore";import{loadJs as D}from"../../../../tools/loaders";import H,{BOOTHS_CHUNK_SIZE as k}from"./config-booths";import{chunkArray as G}from"../../../../utils";import{BOOTHS_PAINTER_MARKER as K,SEPARATOR as m}from"../../../../constants";import{Rect as U}from"@expofp/renderer";import Y,{BG_LAYER_NAME as b,FG_LAYER_NAME as P}from"./config-bg";import{getChildLayers as j}from"../../../../store/init/init-layers";import{createImageDef as v,createLayerDef as F}from"../../../../renderer";import{getImageLayerName as J,getLayerIcons as Z}from"./loadBoothsImages";import{loadIcons as q}from"../../../../utils/imageloader";import{toRadians as z}from"../../../../utils/math";function Q(e){return e.childLayers.length?e.childLayers:j(e,e.basePriority,15).layers}function _(e,t,h){return new Promise(async f=>{let r=[];const s=x(c,t),a=await Y(t),i=[],d=G(s,k),l=O.booths.filter(o=>o.rect&&(!o.layer||o.layer===t||o.layer.childLayers.includes(t))&&o.exhibitors.find(n=>!!n.logoInBooth&&!!n.logo)&&!c.uiState.hideLogoInBooth),B=new Map(l.map(o=>[o.id,o.noLabels]));l.forEach(o=>o.noLabels=!0),s.length&&d.forEach((o,n)=>{i.push(H(e,`${t.name}${m}${K}${m}${n}`,o))}),l.forEach(o=>{o.noLabels=B.get(o.id)}),t.loaded=!0;const u=a.children.find(o=>o.name===b),y=a.children.find(o=>o.name===P),p=J(t.name),g=Z(t),L={name:p,children:[]};g.length&&e.onLayerImages(p,async()=>{const o=await q(g),n=[];for(const I of o.filter(Boolean)){const{bounds:{x:$,y:w,height:A,angle:R,width:S},htmlImage:N}=I,C=new U({x:$,y:w},{x:$+S,y:w+A},z(R)),M=v(N,C);n.push({shape:M})}return{layer:L,children:n}}),u&&r.push({...u,name:`${a.name}${m}${b}`}),i.length&&r.push(...i),y&&r.push({...y,name:`${a.name}${m}${P}`}),g.length&&r.push(L);const E=t.childLayers.sort((o,n)=>o.basePriority-n.basePriority).map(async o=>_(e,o,!0));Promise.all(E).then(o=>{const n=o.flat();n.length&&r.push(...n),t.children=r,t.configured=!0,f(F(t.name,r,{hidden:!h}))})})}export default async function V(e,t){return e.configured?Promise.resolve({name:e.name,children:e.children}):new Promise(async(h,f)=>{if(c.layerStore.mode!==T.Default&&!window[`__fpPaths${e.name}`]&&!e.rootParent)try{await D(`${window.__dataUrlBase}fp.svg.${e.name}.js`)}catch{return f()}const r=Q(e);r.length&&(e.childLayers=r);const{layers:s}=c.layerStore;c.layerStore.layers=[...s,...r.filter(i=>!s.some(d=>d.name===i.name))];const a=await _(t,e,e.visible);h(a)})}