@expofp/floorplan 0.0.0-experimental.cf063fc

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 (1009) hide show
  1. package/README.md +8 -0
  2. package/dist/browser/Button-DT-Jfwrb.js +64 -0
  3. package/dist/browser/CookieConsent-BIsWzAiP.js +38 -0
  4. package/dist/browser/Debug-B5mmo0ZX.js +53 -0
  5. package/dist/browser/DebugTools-Y0aycjKM.js +1931 -0
  6. package/dist/browser/Demo-B2klxORi.js +71 -0
  7. package/dist/browser/Free-suULW-LU.js +69 -0
  8. package/dist/browser/GalleryContainer-BGBNGRKU.js +3355 -0
  9. package/dist/browser/GpsLoader-BbXpnQ98.js +154 -0
  10. package/dist/browser/KioskStore-Dg9jaX5d.js +250 -0
  11. package/dist/browser/LayerStore-CK6wLW56.js +24105 -0
  12. package/dist/browser/MaplibreAdapter-DBnLB-I9.js +36770 -0
  13. package/dist/browser/ModalContainer-DWm8vEaI.js +148 -0
  14. package/dist/browser/PermissionNotice-DaqnuHln.js +54 -0
  15. package/dist/browser/RouteStore-C0QJjRL0.js +3683 -0
  16. package/dist/browser/SetKioskMode-Dwlf5w7q.js +49 -0
  17. package/dist/browser/ShowKiosk-Cr-QmIUT.js +82 -0
  18. package/dist/browser/ViewerMenuPanel-DHCt3s3Z.js +133 -0
  19. package/dist/browser/add-debug-secret-listener-BECnIMzo.js +55 -0
  20. package/dist/browser/adopt-global-settings-U-KbyxMd.js +185 -0
  21. package/dist/browser/boolean-editor-CYMx87em.js +149 -0
  22. package/dist/browser/bootIntercom-BqQsnxII.js +37 -0
  23. package/dist/browser/bundle.json +422 -0
  24. package/dist/browser/camera-events-DSCuSH25.js +18 -0
  25. package/dist/browser/classnames-YcGXWNfg.js +39 -0
  26. package/dist/browser/client-BcPpS_Gj.js +7402 -0
  27. package/dist/browser/compat-helper.js +6 -0
  28. package/dist/browser/components-DIoXSetB.js +7393 -0
  29. package/dist/browser/create-live-plan-DOjNTiqJ.js +4046 -0
  30. package/dist/browser/debounce-BZI0to6V.js +2102 -0
  31. package/dist/browser/debug-context-CNBgUWR8.js +24315 -0
  32. package/dist/browser/debug-overlay-B__pFwQg.js +1455 -0
  33. package/dist/browser/debug-ui-BaE8MZQX.js +86 -0
  34. package/dist/browser/dist-C1NaWqk4.js +2611 -0
  35. package/dist/browser/dist-Cx8u0gjK.js +21 -0
  36. package/dist/browser/dist-wOC6gYFh.js +205 -0
  37. package/dist/browser/efp-debug-init-CozbueIl.js +245 -0
  38. package/dist/browser/enum-editor-CkiQPgZv.js +34 -0
  39. package/dist/browser/es5-B__Ovz45.js +1712 -0
  40. package/dist/browser/event-head-C_inMpbD.js +56 -0
  41. package/dist/browser/event-not-found-Z2mJBZE3.js +31 -0
  42. package/dist/browser/expofp-overlay.png +0 -0
  43. package/dist/browser/expofpUrl-jBUlvkwz.js +19 -0
  44. package/dist/browser/exports-CvUYw1h6.js +1525 -0
  45. package/dist/browser/favicon-BkDrYTmU.js +12 -0
  46. package/dist/browser/fetch-retry.umd-2B2pCUIS.js +78 -0
  47. package/dist/browser/flex-3lSivw8z.js +823 -0
  48. package/dist/browser/floorplan.loader-B9musuUh.js +3282 -0
  49. package/dist/browser/floorplan.ready-BAOU-N0d.js +1448 -0
  50. package/dist/browser/fonts/efp-symbols.woff +0 -0
  51. package/dist/browser/fonts/inter-400.woff2 +0 -0
  52. package/dist/browser/fonts/inter-500.woff2 +0 -0
  53. package/dist/browser/fonts/inter-600.woff2 +0 -0
  54. package/dist/browser/fonts/oswald-v17-cyrillic_latin-300.woff +0 -0
  55. package/dist/browser/fonts/oswald-v17-cyrillic_latin-500.woff +0 -0
  56. package/dist/browser/freeBanner-CnrBc9Tl.js +22 -0
  57. package/dist/browser/fuse-B7V1lkoA.js +1177 -0
  58. package/dist/browser/i18n-BgFBhYOU.js +7205 -0
  59. package/dist/browser/icons/accessible.svg +5 -0
  60. package/dist/browser/icons/arrow-down.svg +3 -0
  61. package/dist/browser/icons/bus-white.svg +3 -0
  62. package/dist/browser/icons/check.svg +3 -0
  63. package/dist/browser/icons/clear.svg +4 -0
  64. package/dist/browser/icons/departure.svg +5 -0
  65. package/dist/browser/icons/departure_inactive.svg +5 -0
  66. package/dist/browser/icons/destination.svg +5 -0
  67. package/dist/browser/icons/direction.svg +54 -0
  68. package/dist/browser/icons/dots.svg +4 -0
  69. package/dist/browser/icons/dragdrop-solid.svg +11 -0
  70. package/dist/browser/icons/facebook.svg +4 -0
  71. package/dist/browser/icons/from.svg +4 -0
  72. package/dist/browser/icons/kiosk.svg +1 -0
  73. package/dist/browser/icons/linkedin.svg +3 -0
  74. package/dist/browser/icons/rotate.svg +5 -0
  75. package/dist/browser/icons/tap.svg +5 -0
  76. package/dist/browser/icons/to.svg +4 -0
  77. package/dist/browser/icons/transition.svg +7 -0
  78. package/dist/browser/icons/transition_down.svg +15 -0
  79. package/dist/browser/icons/transition_up.svg +15 -0
  80. package/dist/browser/icons/twitter.svg +3 -0
  81. package/dist/browser/icons/yah.svg +17 -0
  82. package/dist/browser/index.html +139 -0
  83. package/dist/browser/index.js +254 -0
  84. package/dist/browser/index.module-kJmnWg5B.js +153 -0
  85. package/dist/browser/integrateKiosk-D45vYRsm.js +35 -0
  86. package/dist/browser/is-debug-BRHdrnKr.js +197 -0
  87. package/dist/browser/is-own-domain-DNvxb9Ph.js +26 -0
  88. package/dist/browser/is-webview-cTH4yz8f.js +12 -0
  89. package/dist/browser/journey-plan-BhLIqF8I.js +1865 -0
  90. package/dist/browser/jsx-runtime-DQgnuS-I.js +30 -0
  91. package/dist/browser/kiosk-mode-DfkGlDkT.js +28 -0
  92. package/dist/browser/kiosk-record-JAEq8SV6.js +18 -0
  93. package/dist/browser/kioskUrlParam-CnYhnC_7.js +141 -0
  94. package/dist/browser/lib--J2yQXt6.js +1910 -0
  95. package/dist/browser/loadImage-DzSnRAxX.js +30 -0
  96. package/dist/browser/locales/ar.json +228 -0
  97. package/dist/browser/locales/da.json +229 -0
  98. package/dist/browser/locales/de.json +228 -0
  99. package/dist/browser/locales/es.json +228 -0
  100. package/dist/browser/locales/fr.json +228 -0
  101. package/dist/browser/locales/he.json +228 -0
  102. package/dist/browser/locales/it.json +228 -0
  103. package/dist/browser/locales/kk.json +228 -0
  104. package/dist/browser/locales/ko.json +228 -0
  105. package/dist/browser/locales/mn.json +228 -0
  106. package/dist/browser/locales/nl.json +228 -0
  107. package/dist/browser/locales/pl.json +228 -0
  108. package/dist/browser/locales/pt.json +228 -0
  109. package/dist/browser/locales/ru.json +228 -0
  110. package/dist/browser/locales/sv.json +228 -0
  111. package/dist/browser/locales/th.json +228 -0
  112. package/dist/browser/locales/tr.json +228 -0
  113. package/dist/browser/locales/uk.json +228 -0
  114. package/dist/browser/locales/vi.json +228 -0
  115. package/dist/browser/locales/zh.json +228 -0
  116. package/dist/browser/logDeviceInfo-CN6LnXO4.js +58 -0
  117. package/dist/browser/mobx-C-kcS0zI.js +43 -0
  118. package/dist/browser/mobx.module-BOCLFB5I.js +2064 -0
  119. package/dist/browser/optional-boolean-editor-ZncW2HBw.js +20 -0
  120. package/dist/browser/optional-enum-editor-Dkzs9jDN.js +34 -0
  121. package/dist/browser/optional-string-editor-DC9PMUWB.js +30 -0
  122. package/dist/browser/particles.min-eC5xdOrB.js +133 -0
  123. package/dist/browser/react-DqPP-mkq.js +301 -0
  124. package/dist/browser/react-dom-BkVzoZWO.js +139 -0
  125. package/dist/browser/rolldown-runtime-DUb2xvRc.js +28 -0
  126. package/dist/browser/scheduler-NBuuaWIe.js +212 -0
  127. package/dist/browser/select-Cxf-YiNA.js +1367 -0
  128. package/dist/browser/settings-D74eG9h8.js +9 -0
  129. package/dist/browser/settings-item-DUUbKec_.js +76 -0
  130. package/dist/browser/store-q_CTsixH.js +58 -0
  131. package/dist/browser/string-editor-CINOmY_C.js +30 -0
  132. package/dist/browser/text-field-DORaOVht.js +88 -0
  133. package/dist/browser/theme-DyFm9MGz.js +2803 -0
  134. package/dist/browser/ui-DsCU3FV6.js +43 -0
  135. package/dist/browser/useRenderTarget-RFckzUJM.js +57 -0
  136. package/dist/browser/vendor/perfect-scrollbar/css/perfect-scrollbar.css +1 -0
  137. package/dist/browser/vendor/sanitize-css/sanitize.css +1 -0
  138. package/dist/browser/venue-public-BodpV-7o.js +296 -0
  139. package/dist/browser/venues-DKpIy-87.js +447 -0
  140. package/dist/browser/viewport-B7plho3P.js +48 -0
  141. package/dist/browser/warning.png +0 -0
  142. package/dist/esm/_misc_to_move/initHtmlHead.d.ts +2 -0
  143. package/dist/esm/_misc_to_move/initHtmlHead.js +34 -0
  144. package/dist/esm/_misc_to_move/logBuildInfo.d.ts +2 -0
  145. package/dist/esm/_misc_to_move/logBuildInfo.js +35 -0
  146. package/dist/esm/_misc_to_move/logDeviceInfo.d.ts +10 -0
  147. package/dist/esm/_misc_to_move/logDeviceInfo.js +84 -0
  148. package/dist/esm/components/AlertContainer.d.ts +4 -0
  149. package/dist/esm/components/AlertContainer.js +8 -0
  150. package/dist/esm/components/AutocompleteContainer.d.ts +4 -0
  151. package/dist/esm/components/AutocompleteContainer.js +14 -0
  152. package/dist/esm/components/BaseFilterModal.d.ts +11 -0
  153. package/dist/esm/components/BaseFilterModal.js +73 -0
  154. package/dist/esm/components/Bookmarks.d.ts +3 -0
  155. package/dist/esm/components/Bookmarks.js +26 -0
  156. package/dist/esm/components/Booth/Booth.d.ts +5 -0
  157. package/dist/esm/components/Booth/Booth.js +135 -0
  158. package/dist/esm/components/Booth/BoothOnHold.d.ts +13 -0
  159. package/dist/esm/components/Booth/BoothOnHold.js +11 -0
  160. package/dist/esm/components/Booth/BoothReserved.d.ts +3 -0
  161. package/dist/esm/components/Booth/BoothReserved.js +7 -0
  162. package/dist/esm/components/Booth/BoothSpecial.d.ts +8 -0
  163. package/dist/esm/components/Booth/BoothSpecial.js +4 -0
  164. package/dist/esm/components/Booth/BoothWithoutExhibitor.d.ts +13 -0
  165. package/dist/esm/components/Booth/BoothWithoutExhibitor.js +29 -0
  166. package/dist/esm/components/Category.d.ts +5 -0
  167. package/dist/esm/components/Category.js +25 -0
  168. package/dist/esm/components/CategoryFilterModal.d.ts +3 -0
  169. package/dist/esm/components/CategoryFilterModal.js +63 -0
  170. package/dist/esm/components/CookieConsent.d.ts +9 -0
  171. package/dist/esm/components/CookieConsent.js +9 -0
  172. package/dist/esm/components/Debug.d.ts +5 -0
  173. package/dist/esm/components/Debug.js +15 -0
  174. package/dist/esm/components/Demo.d.ts +4 -0
  175. package/dist/esm/components/Demo.js +37 -0
  176. package/dist/esm/components/DownloadListContainer.d.ts +5 -0
  177. package/dist/esm/components/DownloadListContainer.js +8 -0
  178. package/dist/esm/components/EntityItemContainer.d.ts +28 -0
  179. package/dist/esm/components/EntityItemContainer.js +36 -0
  180. package/dist/esm/components/EntityList.d.ts +9 -0
  181. package/dist/esm/components/EntityList.js +144 -0
  182. package/dist/esm/components/EntityListRow.d.ts +13 -0
  183. package/dist/esm/components/EntityListRow.js +78 -0
  184. package/dist/esm/components/ErrorBoundary.d.ts +15 -0
  185. package/dist/esm/components/ErrorBoundary.js +29 -0
  186. package/dist/esm/components/Event.d.ts +5 -0
  187. package/dist/esm/components/Event.js +167 -0
  188. package/dist/esm/components/EventBadgeContainer.d.ts +8 -0
  189. package/dist/esm/components/EventBadgeContainer.js +29 -0
  190. package/dist/esm/components/Exhibitor.d.ts +5 -0
  191. package/dist/esm/components/Exhibitor.js +299 -0
  192. package/dist/esm/components/Filter.d.ts +4 -0
  193. package/dist/esm/components/Filter.js +24 -0
  194. package/dist/esm/components/Free.d.ts +4 -0
  195. package/dist/esm/components/Free.js +31 -0
  196. package/dist/esm/components/GalleryContainer.d.ts +6 -0
  197. package/dist/esm/components/GalleryContainer.js +55 -0
  198. package/dist/esm/components/GlobalErrorMessage.d.ts +4 -0
  199. package/dist/esm/components/GlobalErrorMessage.js +9 -0
  200. package/dist/esm/components/GpsLoader.d.ts +5 -0
  201. package/dist/esm/components/GpsLoader.js +29 -0
  202. package/dist/esm/components/HeatmapLegendContainer.d.ts +5 -0
  203. package/dist/esm/components/HeatmapLegendContainer.js +13 -0
  204. package/dist/esm/components/HighlightTextContainer.d.ts +6 -0
  205. package/dist/esm/components/HighlightTextContainer.js +10 -0
  206. package/dist/esm/components/IntercomLauncher.d.ts +5 -0
  207. package/dist/esm/components/IntercomLauncher.js +20 -0
  208. package/dist/esm/components/JourneyPanel.d.ts +35 -0
  209. package/dist/esm/components/JourneyPanel.js +68 -0
  210. package/dist/esm/components/Kiosk/KioskStore.d.ts +60 -0
  211. package/dist/esm/components/Kiosk/KioskStore.js +411 -0
  212. package/dist/esm/components/Kiosk/SetKiosk/Confirm/ConfirmDialog.d.ts +5 -0
  213. package/dist/esm/components/Kiosk/SetKiosk/Confirm/ConfirmDialog.js +8 -0
  214. package/dist/esm/components/Kiosk/SetKiosk/FormInput/RangeInput.d.ts +5 -0
  215. package/dist/esm/components/Kiosk/SetKiosk/FormInput/RangeInput.js +24 -0
  216. package/dist/esm/components/Kiosk/SetKiosk/Message/InfoMessage.d.ts +5 -0
  217. package/dist/esm/components/Kiosk/SetKiosk/Message/InfoMessage.js +7 -0
  218. package/dist/esm/components/Kiosk/SetKiosk/SetKioskComponent.d.ts +5 -0
  219. package/dist/esm/components/Kiosk/SetKiosk/SetKioskComponent.js +78 -0
  220. package/dist/esm/components/Kiosk/SetKiosk/SetKioskForm.d.ts +5 -0
  221. package/dist/esm/components/Kiosk/SetKiosk/SetKioskForm.js +10 -0
  222. package/dist/esm/components/Kiosk/SetKiosk/SetKioskStatusMessages.d.ts +5 -0
  223. package/dist/esm/components/Kiosk/SetKiosk/SetKioskStatusMessages.js +15 -0
  224. package/dist/esm/components/Kiosk/SetKiosk/constants.d.ts +6 -0
  225. package/dist/esm/components/Kiosk/SetKiosk/constants.js +6 -0
  226. package/dist/esm/components/Kiosk/SetKiosk/getKioskUrlParamKey.d.ts +2 -0
  227. package/dist/esm/components/Kiosk/SetKiosk/getKioskUrlParamKey.js +4 -0
  228. package/dist/esm/components/Kiosk/SetKiosk/getName.d.ts +2 -0
  229. package/dist/esm/components/Kiosk/SetKiosk/getName.js +2 -0
  230. package/dist/esm/components/Kiosk/SetKiosk/getSlug.d.ts +2 -0
  231. package/dist/esm/components/Kiosk/SetKiosk/getSlug.js +2 -0
  232. package/dist/esm/components/Kiosk/SetKiosk/index.d.ts +7 -0
  233. package/dist/esm/components/Kiosk/SetKiosk/index.js +6 -0
  234. package/dist/esm/components/Kiosk/SetKiosk/storage.d.ts +5 -0
  235. package/dist/esm/components/Kiosk/SetKiosk/storage.js +21 -0
  236. package/dist/esm/components/Kiosk/SetKiosk/types.d.ts +109 -0
  237. package/dist/esm/components/Kiosk/SetKiosk/types.js +1 -0
  238. package/dist/esm/components/Kiosk/SetKioskMode.d.ts +3 -0
  239. package/dist/esm/components/Kiosk/SetKioskMode.js +35 -0
  240. package/dist/esm/components/Kiosk/ShowKiosk.d.ts +3 -0
  241. package/dist/esm/components/Kiosk/ShowKiosk.js +72 -0
  242. package/dist/esm/components/Kiosk/integrateKiosk.d.ts +10 -0
  243. package/dist/esm/components/Kiosk/integrateKiosk.js +68 -0
  244. package/dist/esm/components/Kiosk/kiosk-mode.d.ts +26 -0
  245. package/dist/esm/components/Kiosk/kiosk-mode.js +56 -0
  246. package/dist/esm/components/Kiosk/kiosk-record.d.ts +23 -0
  247. package/dist/esm/components/Kiosk/kiosk-record.js +29 -0
  248. package/dist/esm/components/Kiosk/kioskApi.d.ts +4 -0
  249. package/dist/esm/components/Kiosk/kioskApi.js +47 -0
  250. package/dist/esm/components/Kiosk/kioskUrlParam.d.ts +8 -0
  251. package/dist/esm/components/Kiosk/kioskUrlParam.js +46 -0
  252. package/dist/esm/components/Kiosk/recoverKioskFromUrlPrams.d.ts +2 -0
  253. package/dist/esm/components/Kiosk/recoverKioskFromUrlPrams.js +9 -0
  254. package/dist/esm/components/Language.d.ts +4 -0
  255. package/dist/esm/components/Language.js +15 -0
  256. package/dist/esm/components/LanguageRowContainer.d.ts +7 -0
  257. package/dist/esm/components/LanguageRowContainer.js +9 -0
  258. package/dist/esm/components/Layout.d.ts +11 -0
  259. package/dist/esm/components/Layout.js +160 -0
  260. package/dist/esm/components/LevelBadgeContainer.d.ts +6 -0
  261. package/dist/esm/components/LevelBadgeContainer.js +10 -0
  262. package/dist/esm/components/List.d.ts +9 -0
  263. package/dist/esm/components/List.js +77 -0
  264. package/dist/esm/components/LogoOverlay.d.ts +3 -0
  265. package/dist/esm/components/LogoOverlay.js +78 -0
  266. package/dist/esm/components/Map/Map.d.ts +2 -0
  267. package/dist/esm/components/Map/Map.js +242 -0
  268. package/dist/esm/components/Map/MapCamera.d.ts +17 -0
  269. package/dist/esm/components/Map/MapCamera.js +194 -0
  270. package/dist/esm/components/Map/MapCursorCoords.d.ts +13 -0
  271. package/dist/esm/components/Map/MapCursorCoords.js +61 -0
  272. package/dist/esm/components/Map/MapViewport.d.ts +12 -0
  273. package/dist/esm/components/Map/MapViewport.js +29 -0
  274. package/dist/esm/components/Map/booth-by-xy.d.ts +14 -0
  275. package/dist/esm/components/Map/booth-by-xy.js +128 -0
  276. package/dist/esm/components/Map/camera-events.d.ts +19 -0
  277. package/dist/esm/components/Map/camera-events.js +26 -0
  278. package/dist/esm/components/Map/camera.d.ts +48 -0
  279. package/dist/esm/components/Map/camera.js +43 -0
  280. package/dist/esm/components/Map/drawing/config/BoothDrawerBase.d.ts +8 -0
  281. package/dist/esm/components/Map/drawing/config/BoothDrawerBase.js +8 -0
  282. package/dist/esm/components/Map/drawing/config/BoothShape.d.ts +7 -0
  283. package/dist/esm/components/Map/drawing/config/BoothShape.js +76 -0
  284. package/dist/esm/components/Map/drawing/config/TextFitter.d.ts +11 -0
  285. package/dist/esm/components/Map/drawing/config/TextFitter.js +174 -0
  286. package/dist/esm/components/Map/drawing/config/booth-badge-anchor.d.ts +130 -0
  287. package/dist/esm/components/Map/drawing/config/booth-badge-anchor.js +306 -0
  288. package/dist/esm/components/Map/drawing/config/booth-logos.d.ts +38 -0
  289. package/dist/esm/components/Map/drawing/config/booth-logos.js +94 -0
  290. package/dist/esm/components/Map/drawing/config/canvases.d.ts +96 -0
  291. package/dist/esm/components/Map/drawing/config/canvases.js +434 -0
  292. package/dist/esm/components/Map/drawing/config/config-all.d.ts +6 -0
  293. package/dist/esm/components/Map/drawing/config/config-all.js +92 -0
  294. package/dist/esm/components/Map/drawing/config/config-bg.d.ts +8 -0
  295. package/dist/esm/components/Map/drawing/config/config-bg.js +54 -0
  296. package/dist/esm/components/Map/drawing/config/config-booth-badge-eligibility.d.ts +28 -0
  297. package/dist/esm/components/Map/drawing/config/config-booth-badge-eligibility.js +7 -0
  298. package/dist/esm/components/Map/drawing/config/config-booth-badge-scale.d.ts +20 -0
  299. package/dist/esm/components/Map/drawing/config/config-booth-badge-scale.js +11 -0
  300. package/dist/esm/components/Map/drawing/config/config-booth-badge-visibility.d.ts +37 -0
  301. package/dist/esm/components/Map/drawing/config/config-booth-badge-visibility.js +3 -0
  302. package/dist/esm/components/Map/drawing/config/config-booth-badge.d.ts +90 -0
  303. package/dist/esm/components/Map/drawing/config/config-booth-badge.js +326 -0
  304. package/dist/esm/components/Map/drawing/config/config-booth-bg.d.ts +33 -0
  305. package/dist/esm/components/Map/drawing/config/config-booth-bg.js +240 -0
  306. package/dist/esm/components/Map/drawing/config/config-booth-bookmark.d.ts +24 -0
  307. package/dist/esm/components/Map/drawing/config/config-booth-bookmark.js +65 -0
  308. package/dist/esm/components/Map/drawing/config/config-booth-border.d.ts +12 -0
  309. package/dist/esm/components/Map/drawing/config/config-booth-border.js +92 -0
  310. package/dist/esm/components/Map/drawing/config/config-booth-labels-special.d.ts +28 -0
  311. package/dist/esm/components/Map/drawing/config/config-booth-labels-special.js +147 -0
  312. package/dist/esm/components/Map/drawing/config/config-booth-labels.d.ts +63 -0
  313. package/dist/esm/components/Map/drawing/config/config-booth-labels.js +380 -0
  314. package/dist/esm/components/Map/drawing/config/config-booths.d.ts +5 -0
  315. package/dist/esm/components/Map/drawing/config/config-booths.js +152 -0
  316. package/dist/esm/components/Map/drawing/config/config-load-layer.d.ts +4 -0
  317. package/dist/esm/components/Map/drawing/config/config-load-layer.js +119 -0
  318. package/dist/esm/components/Map/drawing/config/config-markers.d.ts +42 -0
  319. package/dist/esm/components/Map/drawing/config/config-markers.js +278 -0
  320. package/dist/esm/components/Map/drawing/config/config-outdoor-poi.d.ts +19 -0
  321. package/dist/esm/components/Map/drawing/config/config-outdoor-poi.js +96 -0
  322. package/dist/esm/components/Map/drawing/config/config-pins.d.ts +40 -0
  323. package/dist/esm/components/Map/drawing/config/config-pins.js +533 -0
  324. package/dist/esm/components/Map/drawing/config/label-inset.d.ts +26 -0
  325. package/dist/esm/components/Map/drawing/config/label-inset.js +26 -0
  326. package/dist/esm/components/Map/drawing/config/layer-images.d.ts +24 -0
  327. package/dist/esm/components/Map/drawing/config/layer-images.js +32 -0
  328. package/dist/esm/components/Map/drawing/config/layer-models.d.ts +31 -0
  329. package/dist/esm/components/Map/drawing/config/layer-models.js +38 -0
  330. package/dist/esm/components/Map/drawing/config/loadBoothsImages.d.ts +45 -0
  331. package/dist/esm/components/Map/drawing/config/loadBoothsImages.js +99 -0
  332. package/dist/esm/components/Map/drawing/config/pin-geometry.d.ts +65 -0
  333. package/dist/esm/components/Map/drawing/config/pin-geometry.js +75 -0
  334. package/dist/esm/components/Map/drawing/config/poi-pin-shape.d.ts +100 -0
  335. package/dist/esm/components/Map/drawing/config/poi-pin-shape.js +51 -0
  336. package/dist/esm/components/Map/drawing/config/poi-pin.d.ts +10 -0
  337. package/dist/esm/components/Map/drawing/config/poi-pin.js +88 -0
  338. package/dist/esm/components/Map/drawing/config/selection-style.d.ts +12 -0
  339. package/dist/esm/components/Map/drawing/config/selection-style.js +18 -0
  340. package/dist/esm/components/Map/framing-rect.d.ts +16 -0
  341. package/dist/esm/components/Map/framing-rect.js +24 -0
  342. package/dist/esm/components/Map/pointer.d.ts +79 -0
  343. package/dist/esm/components/Map/pointer.js +181 -0
  344. package/dist/esm/components/Map/scene.d.ts +20 -0
  345. package/dist/esm/components/Map/scene.js +24 -0
  346. package/dist/esm/components/Map/traffic/UpdateQueue.d.ts +13 -0
  347. package/dist/esm/components/Map/traffic/UpdateQueue.js +82 -0
  348. package/dist/esm/components/Map/traffic/trafficLayers.d.ts +12 -0
  349. package/dist/esm/components/Map/traffic/trafficLayers.js +29 -0
  350. package/dist/esm/components/Map/traffic/useBuildRoute.d.ts +9 -0
  351. package/dist/esm/components/Map/traffic/useBuildRoute.js +359 -0
  352. package/dist/esm/components/Map/traffic/useManageTraffic.d.ts +10 -0
  353. package/dist/esm/components/Map/traffic/useManageTraffic.js +643 -0
  354. package/dist/esm/components/Map/viewport.d.ts +63 -0
  355. package/dist/esm/components/Map/viewport.js +82 -0
  356. package/dist/esm/components/Map/with-kiosk.d.ts +11 -0
  357. package/dist/esm/components/Map/with-kiosk.js +25 -0
  358. package/dist/esm/components/MapControlsContainer.d.ts +3 -0
  359. package/dist/esm/components/MapControlsContainer.js +58 -0
  360. package/dist/esm/components/Maplibre/CollapsedAttributionControl.d.ts +12 -0
  361. package/dist/esm/components/Maplibre/CollapsedAttributionControl.js +19 -0
  362. package/dist/esm/components/Maplibre/ExpofpLogoControl.d.ts +20 -0
  363. package/dist/esm/components/Maplibre/ExpofpLogoControl.js +39 -0
  364. package/dist/esm/components/Maplibre/MaplibreAdapter.d.ts +18 -0
  365. package/dist/esm/components/Maplibre/MaplibreAdapter.js +354 -0
  366. package/dist/esm/components/Maplibre/MaplibreWrapper.d.ts +111 -0
  367. package/dist/esm/components/Maplibre/MaplibreWrapper.js +310 -0
  368. package/dist/esm/components/Maplibre/maplibre-recovery.d.ts +4 -0
  369. package/dist/esm/components/Maplibre/maplibre-recovery.js +4 -0
  370. package/dist/esm/components/Maplibre/styles/mapbox-streets-bright.d.ts +3 -0
  371. package/dist/esm/components/Maplibre/styles/mapbox-streets-bright.js +7048 -0
  372. package/dist/esm/components/Maplibre/styles/mapbox-streets.d.ts +3 -0
  373. package/dist/esm/components/Maplibre/styles/mapbox-streets.js +6132 -0
  374. package/dist/esm/components/Maplibre/useCameraReactions.d.ts +14 -0
  375. package/dist/esm/components/Maplibre/useCameraReactions.js +256 -0
  376. package/dist/esm/components/Maplibre/useDimming.d.ts +25 -0
  377. package/dist/esm/components/Maplibre/useDimming.js +61 -0
  378. package/dist/esm/components/Maplibre/useJourneyConnector.d.ts +16 -0
  379. package/dist/esm/components/Maplibre/useJourneyConnector.js +175 -0
  380. package/dist/esm/components/Maplibre/useKioskCameraEvents.d.ts +20 -0
  381. package/dist/esm/components/Maplibre/useKioskCameraEvents.js +52 -0
  382. package/dist/esm/components/Maplibre/useLayerVisibilitySync.d.ts +25 -0
  383. package/dist/esm/components/Maplibre/useLayerVisibilitySync.js +85 -0
  384. package/dist/esm/components/Maplibre/usePoiMarkers.d.ts +25 -0
  385. package/dist/esm/components/Maplibre/usePoiMarkers.js +368 -0
  386. package/dist/esm/components/Maplibre/useVenueCameraTracking.d.ts +6 -0
  387. package/dist/esm/components/Maplibre/useVenueCameraTracking.js +115 -0
  388. package/dist/esm/components/Maplibre/useVenueLayers.d.ts +15 -0
  389. package/dist/esm/components/Maplibre/useVenueLayers.js +463 -0
  390. package/dist/esm/components/Maplibre/useWayfindingAndMarkers.d.ts +11 -0
  391. package/dist/esm/components/Maplibre/useWayfindingAndMarkers.js +23 -0
  392. package/dist/esm/components/Maplibre/utils/basemap-palette.d.ts +19 -0
  393. package/dist/esm/components/Maplibre/utils/basemap-palette.js +125 -0
  394. package/dist/esm/components/Maplibre/utils/geo-config.d.ts +92 -0
  395. package/dist/esm/components/Maplibre/utils/geo-config.js +305 -0
  396. package/dist/esm/components/Maplibre/utils/hit-test-registry.d.ts +18 -0
  397. package/dist/esm/components/Maplibre/utils/hit-test-registry.js +17 -0
  398. package/dist/esm/components/Maplibre/utils/layer-defs.d.ts +9 -0
  399. package/dist/esm/components/Maplibre/utils/layer-defs.js +19 -0
  400. package/dist/esm/components/Maplibre/utils/local-viewport.d.ts +13 -0
  401. package/dist/esm/components/Maplibre/utils/local-viewport.js +31 -0
  402. package/dist/esm/components/Maplibre/utils/map-helpers.d.ts +21 -0
  403. package/dist/esm/components/Maplibre/utils/map-helpers.js +85 -0
  404. package/dist/esm/components/Maplibre/utils/map-theme.d.ts +20 -0
  405. package/dist/esm/components/Maplibre/utils/map-theme.js +44 -0
  406. package/dist/esm/components/Maplibre/utils/marker-layer-order.d.ts +22 -0
  407. package/dist/esm/components/Maplibre/utils/marker-layer-order.js +20 -0
  408. package/dist/esm/components/Maplibre/utils/pmtiles-range-fallback.d.ts +53 -0
  409. package/dist/esm/components/Maplibre/utils/pmtiles-range-fallback.js +110 -0
  410. package/dist/esm/components/Maplibre/utils/poi-marker-hit-test.d.ts +8 -0
  411. package/dist/esm/components/Maplibre/utils/poi-marker-hit-test.js +8 -0
  412. package/dist/esm/components/Maplibre/utils/resolve-map-style.d.ts +19 -0
  413. package/dist/esm/components/Maplibre/utils/resolve-map-style.js +73 -0
  414. package/dist/esm/components/Maplibre/utils/solver.d.ts +23 -0
  415. package/dist/esm/components/Maplibre/utils/solver.js +238 -0
  416. package/dist/esm/components/Maplibre/utils/style-fonts.d.ts +10 -0
  417. package/dist/esm/components/Maplibre/utils/style-fonts.js +24 -0
  418. package/dist/esm/components/Maplibre/utils/venue-calibration-console.d.ts +10 -0
  419. package/dist/esm/components/Maplibre/utils/venue-calibration-console.js +130 -0
  420. package/dist/esm/components/Maplibre/utils/venue-calibration.d.ts +127 -0
  421. package/dist/esm/components/Maplibre/utils/venue-calibration.js +144 -0
  422. package/dist/esm/components/Maplibre/utils/venue-camera-target.d.ts +15 -0
  423. package/dist/esm/components/Maplibre/utils/venue-camera-target.js +19 -0
  424. package/dist/esm/components/Maplibre/utils/venue-contour.d.ts +50 -0
  425. package/dist/esm/components/Maplibre/utils/venue-contour.fixture.d.ts +18 -0
  426. package/dist/esm/components/Maplibre/utils/venue-contour.fixture.js +69 -0
  427. package/dist/esm/components/Maplibre/utils/venue-contour.js +188 -0
  428. package/dist/esm/components/Maplibre/utils/venue-focus.d.ts +26 -0
  429. package/dist/esm/components/Maplibre/utils/venue-focus.js +106 -0
  430. package/dist/esm/components/Maplibre/utils/venue-legibility.d.ts +30 -0
  431. package/dist/esm/components/Maplibre/utils/venue-legibility.js +52 -0
  432. package/dist/esm/components/Maplibre/utils/venue-pin-rasterize.d.ts +88 -0
  433. package/dist/esm/components/Maplibre/utils/venue-pin-rasterize.js +220 -0
  434. package/dist/esm/components/Maplibre/utils/venue-projection.d.ts +37 -0
  435. package/dist/esm/components/Maplibre/utils/venue-projection.js +88 -0
  436. package/dist/esm/components/Maplibre/utils/venue-tap-hit-test.d.ts +9 -0
  437. package/dist/esm/components/Maplibre/utils/venue-tap-hit-test.js +9 -0
  438. package/dist/esm/components/Maplibre/utils/venue-viewport-detail.d.ts +19 -0
  439. package/dist/esm/components/Maplibre/utils/venue-viewport-detail.js +24 -0
  440. package/dist/esm/components/Maplibre/utils/venue-zoom.d.ts +23 -0
  441. package/dist/esm/components/Maplibre/utils/venue-zoom.js +62 -0
  442. package/dist/esm/components/Menu.d.ts +11 -0
  443. package/dist/esm/components/Menu.js +94 -0
  444. package/dist/esm/components/MobileToggleButtonContainer.d.ts +3 -0
  445. package/dist/esm/components/MobileToggleButtonContainer.js +24 -0
  446. package/dist/esm/components/ModalContainer.d.ts +41 -0
  447. package/dist/esm/components/ModalContainer.js +10 -0
  448. package/dist/esm/components/MultiSelectGroupsContainer.d.ts +5 -0
  449. package/dist/esm/components/MultiSelectGroupsContainer.js +8 -0
  450. package/dist/esm/components/OverlayContainer.d.ts +8 -0
  451. package/dist/esm/components/OverlayContainer.js +82 -0
  452. package/dist/esm/components/OverlayGripContainer.d.ts +4 -0
  453. package/dist/esm/components/OverlayGripContainer.js +11 -0
  454. package/dist/esm/components/OverlayParticles.d.ts +5 -0
  455. package/dist/esm/components/OverlayParticles.js +54 -0
  456. package/dist/esm/components/PlanSelectorContainer.d.ts +3 -0
  457. package/dist/esm/components/PlanSelectorContainer.js +79 -0
  458. package/dist/esm/components/RebookingNotesContainer.d.ts +4 -0
  459. package/dist/esm/components/RebookingNotesContainer.js +8 -0
  460. package/dist/esm/components/RebookingRadioGroupContainer.d.ts +6 -0
  461. package/dist/esm/components/RebookingRadioGroupContainer.js +23 -0
  462. package/dist/esm/components/RoutePlanner/RoutePlanner.d.ts +5 -0
  463. package/dist/esm/components/RoutePlanner/RoutePlanner.js +25 -0
  464. package/dist/esm/components/RoutePlanner/RoutePlannerHeader.d.ts +4 -0
  465. package/dist/esm/components/RoutePlanner/RoutePlannerHeader.js +11 -0
  466. package/dist/esm/components/RoutePlanner/RoutePlannerStartPoint.d.ts +9 -0
  467. package/dist/esm/components/RoutePlanner/RoutePlannerStartPoint.js +21 -0
  468. package/dist/esm/components/RoutePlanner/RoutePlannerStopItem.d.ts +9 -0
  469. package/dist/esm/components/RoutePlanner/RoutePlannerStopItem.js +41 -0
  470. package/dist/esm/components/RouteQR.d.ts +12 -0
  471. package/dist/esm/components/RouteQR.js +10 -0
  472. package/dist/esm/components/Schedule.d.ts +13 -0
  473. package/dist/esm/components/Schedule.js +109 -0
  474. package/dist/esm/components/ScrollableRowContainer.d.ts +6 -0
  475. package/dist/esm/components/ScrollableRowContainer.js +11 -0
  476. package/dist/esm/components/Search.d.ts +5 -0
  477. package/dist/esm/components/Search.js +45 -0
  478. package/dist/esm/components/SearchBox.d.ts +7 -0
  479. package/dist/esm/components/SearchBox.js +171 -0
  480. package/dist/esm/components/SearchButtons/SearchButton.d.ts +20 -0
  481. package/dist/esm/components/SearchButtons/SearchButton.js +30 -0
  482. package/dist/esm/components/SearchButtons/SearchButtons.d.ts +4 -0
  483. package/dist/esm/components/SearchButtons/SearchButtons.js +24 -0
  484. package/dist/esm/components/SearchButtons/SearchSubButton.d.ts +14 -0
  485. package/dist/esm/components/SearchButtons/SearchSubButton.js +12 -0
  486. package/dist/esm/components/SearchButtons/SearchSubButtons.d.ts +5 -0
  487. package/dist/esm/components/SearchButtons/SearchSubButtons.js +43 -0
  488. package/dist/esm/components/SearchButtons/index.d.ts +7 -0
  489. package/dist/esm/components/SearchButtons/index.js +5 -0
  490. package/dist/esm/components/Sessions.d.ts +8 -0
  491. package/dist/esm/components/Sessions.js +128 -0
  492. package/dist/esm/components/SessionsFiltersModal.d.ts +11 -0
  493. package/dist/esm/components/SessionsFiltersModal.js +105 -0
  494. package/dist/esm/components/SessionsList.d.ts +12 -0
  495. package/dist/esm/components/SessionsList.js +212 -0
  496. package/dist/esm/components/ShareContainer.d.ts +7 -0
  497. package/dist/esm/components/ShareContainer.js +29 -0
  498. package/dist/esm/components/Shortcuts/ShortcutButton.d.ts +9 -0
  499. package/dist/esm/components/Shortcuts/ShortcutButton.js +25 -0
  500. package/dist/esm/components/Shortcuts/ShortcutsFiltersButton.d.ts +9 -0
  501. package/dist/esm/components/Shortcuts/ShortcutsFiltersButton.js +41 -0
  502. package/dist/esm/components/Shortcuts/ShortcutsToolbar.d.ts +10 -0
  503. package/dist/esm/components/Shortcuts/ShortcutsToolbar.js +22 -0
  504. package/dist/esm/components/Shortcuts/index.d.ts +4 -0
  505. package/dist/esm/components/Shortcuts/index.js +4 -0
  506. package/dist/esm/components/ShowMoreButtonContainer.d.ts +5 -0
  507. package/dist/esm/components/ShowMoreButtonContainer.js +8 -0
  508. package/dist/esm/components/SidebarActionsContainer.d.ts +5 -0
  509. package/dist/esm/components/SidebarActionsContainer.js +8 -0
  510. package/dist/esm/components/SimpleRowContainer.d.ts +8 -0
  511. package/dist/esm/components/SimpleRowContainer.js +8 -0
  512. package/dist/esm/components/Speaker.d.ts +5 -0
  513. package/dist/esm/components/Speaker.js +72 -0
  514. package/dist/esm/components/Speakers.d.ts +8 -0
  515. package/dist/esm/components/Speakers.js +63 -0
  516. package/dist/esm/components/SpeakersFiltersModal.d.ts +11 -0
  517. package/dist/esm/components/SpeakersFiltersModal.js +77 -0
  518. package/dist/esm/components/TourPoints.d.ts +4 -0
  519. package/dist/esm/components/TourPoints.js +20 -0
  520. package/dist/esm/components/Tours.d.ts +7 -0
  521. package/dist/esm/components/Tours.js +54 -0
  522. package/dist/esm/components/ToursList.d.ts +10 -0
  523. package/dist/esm/components/ToursList.js +22 -0
  524. package/dist/esm/components/ViewerMenuPanel.d.ts +5 -0
  525. package/dist/esm/components/ViewerMenuPanel.js +61 -0
  526. package/dist/esm/components/Visited.d.ts +4 -0
  527. package/dist/esm/components/Visited.js +13 -0
  528. package/dist/esm/components/WayInformation.d.ts +14 -0
  529. package/dist/esm/components/WayInformation.js +8 -0
  530. package/dist/esm/components/Wayfinding.d.ts +4 -0
  531. package/dist/esm/components/Wayfinding.js +285 -0
  532. package/dist/esm/components/WayfindingFloorSelectorContainer.d.ts +5 -0
  533. package/dist/esm/components/WayfindingFloorSelectorContainer.js +12 -0
  534. package/dist/esm/components/WayfindingTemplate.d.ts +66 -0
  535. package/dist/esm/components/WayfindingTemplate.js +14 -0
  536. package/dist/esm/components/Ws.d.ts +5 -0
  537. package/dist/esm/components/Ws.js +131 -0
  538. package/dist/esm/components/YahRow.d.ts +8 -0
  539. package/dist/esm/components/YahRow.js +25 -0
  540. package/dist/esm/components/gps/GpsManager.d.ts +13 -0
  541. package/dist/esm/components/gps/GpsManager.js +60 -0
  542. package/dist/esm/components/gps/GpsPermissionRequest.d.ts +8 -0
  543. package/dist/esm/components/gps/GpsPermissionRequest.js +10 -0
  544. package/dist/esm/components/gps/index.d.ts +5 -0
  545. package/dist/esm/components/gps/index.js +3 -0
  546. package/dist/esm/components/gps/types.d.ts +7 -0
  547. package/dist/esm/components/gps/types.js +1 -0
  548. package/dist/esm/components/gps/useUserLocationAndHeading.d.ts +8 -0
  549. package/dist/esm/components/gps/useUserLocationAndHeading.js +122 -0
  550. package/dist/esm/components/gps/utils.d.ts +5 -0
  551. package/dist/esm/components/gps/utils.js +11 -0
  552. package/dist/esm/components/heatmap-legend-ticks.d.ts +11 -0
  553. package/dist/esm/components/heatmap-legend-ticks.js +18 -0
  554. package/dist/esm/components/index.d.ts +114 -0
  555. package/dist/esm/components/index.js +76 -0
  556. package/dist/esm/components/utils/entity-venue-grouping.d.ts +32 -0
  557. package/dist/esm/components/utils/entity-venue-grouping.js +43 -0
  558. package/dist/esm/components/utils/getDescription.d.ts +19 -0
  559. package/dist/esm/components/utils/getDescription.js +35 -0
  560. package/dist/esm/constants.d.ts +44 -0
  561. package/dist/esm/constants.js +66 -0
  562. package/dist/esm/data/fp-payloads.d.ts +27 -0
  563. package/dist/esm/data/fp-payloads.js +53 -0
  564. package/dist/esm/data/fpGeo.d.ts +45 -0
  565. package/dist/esm/data/fpGeo.js +9 -0
  566. package/dist/esm/data/index.d.ts +15 -0
  567. package/dist/esm/data/index.js +15 -0
  568. package/dist/esm/data/layer-viewbox.d.ts +10 -0
  569. package/dist/esm/data/layer-viewbox.js +20 -0
  570. package/dist/esm/data/svg.d.ts +43 -0
  571. package/dist/esm/data/svg.js +210 -0
  572. package/dist/esm/data/tours.json +280 -0
  573. package/dist/esm/data/venue-scene-preload.d.ts +34 -0
  574. package/dist/esm/data/venue-scene-preload.js +205 -0
  575. package/dist/esm/data/venues.d.ts +145 -0
  576. package/dist/esm/data/venues.js +955 -0
  577. package/dist/esm/engine/defs.d.ts +38 -0
  578. package/dist/esm/engine/defs.js +85 -0
  579. package/dist/esm/engine/fonts.d.ts +9 -0
  580. package/dist/esm/engine/fonts.js +12 -0
  581. package/dist/esm/engine/update-def.d.ts +55 -0
  582. package/dist/esm/engine/update-def.js +127 -0
  583. package/dist/esm/engine/utils/rotation.d.ts +13 -0
  584. package/dist/esm/engine/utils/rotation.js +73 -0
  585. package/dist/esm/floorplan.loader.d.ts +164 -0
  586. package/dist/esm/floorplan.loader.js +540 -0
  587. package/dist/esm/floorplan.ready.d.ts +149 -0
  588. package/dist/esm/floorplan.ready.js +1083 -0
  589. package/dist/esm/hooks/useURLFilters.d.ts +15 -0
  590. package/dist/esm/hooks/useURLFilters.js +44 -0
  591. package/dist/esm/index.d.ts +3 -0
  592. package/dist/esm/index.js +12 -0
  593. package/dist/esm/intercom/bootIntercom.d.ts +3 -0
  594. package/dist/esm/intercom/bootIntercom.js +47 -0
  595. package/dist/esm/intercom/index.d.ts +3 -0
  596. package/dist/esm/intercom/index.js +1 -0
  597. package/dist/esm/intercom/shouldLoad.d.ts +4 -0
  598. package/dist/esm/intercom/shouldLoad.js +74 -0
  599. package/dist/esm/intercom/types.d.ts +6 -0
  600. package/dist/esm/intercom/types.js +1 -0
  601. package/dist/esm/internal-settings.d.ts +13 -0
  602. package/dist/esm/internal-settings.js +6 -0
  603. package/dist/esm/journey/external-navigation.d.ts +30 -0
  604. package/dist/esm/journey/external-navigation.js +38 -0
  605. package/dist/esm/journey/format-distance.d.ts +14 -0
  606. package/dist/esm/journey/format-distance.js +38 -0
  607. package/dist/esm/journey/index.d.ts +16 -0
  608. package/dist/esm/journey/index.js +15 -0
  609. package/dist/esm/journey/journey-context.d.ts +140 -0
  610. package/dist/esm/journey/journey-context.js +137 -0
  611. package/dist/esm/journey/journey-link.d.ts +49 -0
  612. package/dist/esm/journey/journey-link.js +35 -0
  613. package/dist/esm/journey/journey-stage.d.ts +35 -0
  614. package/dist/esm/journey/journey-stage.js +28 -0
  615. package/dist/esm/journey/maps-provider.d.ts +36 -0
  616. package/dist/esm/journey/maps-provider.js +58 -0
  617. package/dist/esm/journey/plan-journey.d.ts +37 -0
  618. package/dist/esm/journey/plan-journey.js +176 -0
  619. package/dist/esm/journey/types.d.ts +294 -0
  620. package/dist/esm/journey/types.js +1 -0
  621. package/dist/esm/load-dev.d.ts +44 -0
  622. package/dist/esm/load-dev.js +60 -0
  623. package/dist/esm/load.d.ts +17 -0
  624. package/dist/esm/load.js +244 -0
  625. package/dist/esm/locales.d.ts +25 -0
  626. package/dist/esm/locales.js +23 -0
  627. package/dist/esm/offline/constants.d.ts +5 -0
  628. package/dist/esm/offline/constants.js +4 -0
  629. package/dist/esm/offline/offlineManager.d.ts +2 -0
  630. package/dist/esm/offline/offlineManager.js +78 -0
  631. package/dist/esm/plan-lifecycle.d.ts +65 -0
  632. package/dist/esm/plan-lifecycle.js +97 -0
  633. package/dist/esm/schemas/sdk.schemas.d.ts +25 -0
  634. package/dist/esm/schemas/sdk.schemas.js +24 -0
  635. package/dist/esm/services/URLFilterManager.d.ts +39 -0
  636. package/dist/esm/services/URLFilterManager.js +379 -0
  637. package/dist/esm/services/multi-slug.d.ts +20 -0
  638. package/dist/esm/services/multi-slug.js +30 -0
  639. package/dist/esm/services/url-dispatch.d.ts +22 -0
  640. package/dist/esm/services/url-dispatch.js +707 -0
  641. package/dist/esm/services/url-sync.d.ts +40 -0
  642. package/dist/esm/services/url-sync.js +185 -0
  643. package/dist/esm/store/BaseFilterStore.d.ts +17 -0
  644. package/dist/esm/store/BaseFilterStore.js +63 -0
  645. package/dist/esm/store/BookmarksStore.d.ts +9 -0
  646. package/dist/esm/store/BookmarksStore.js +28 -0
  647. package/dist/esm/store/BoothStore.d.ts +105 -0
  648. package/dist/esm/store/BoothStore.js +194 -0
  649. package/dist/esm/store/CategoryFilterStore.d.ts +13 -0
  650. package/dist/esm/store/CategoryFilterStore.js +60 -0
  651. package/dist/esm/store/CategoryStore.d.ts +21 -0
  652. package/dist/esm/store/CategoryStore.js +30 -0
  653. package/dist/esm/store/EventStore.d.ts +56 -0
  654. package/dist/esm/store/EventStore.js +188 -0
  655. package/dist/esm/store/ExhibitorStore.d.ts +86 -0
  656. package/dist/esm/store/ExhibitorStore.js +175 -0
  657. package/dist/esm/store/FuzzySearchEngineStore.d.ts +15 -0
  658. package/dist/esm/store/FuzzySearchEngineStore.js +45 -0
  659. package/dist/esm/store/HeatmapStore.d.ts +51 -0
  660. package/dist/esm/store/HeatmapStore.js +100 -0
  661. package/dist/esm/store/IntercomStore.d.ts +7 -0
  662. package/dist/esm/store/IntercomStore.js +26 -0
  663. package/dist/esm/store/LayerStore.d.ts +70 -0
  664. package/dist/esm/store/LayerStore.js +399 -0
  665. package/dist/esm/store/MaplibreStore.d.ts +71 -0
  666. package/dist/esm/store/MaplibreStore.js +137 -0
  667. package/dist/esm/store/OverlayStore.d.ts +32 -0
  668. package/dist/esm/store/OverlayStore.js +68 -0
  669. package/dist/esm/store/PoiMarkerStore.d.ts +76 -0
  670. package/dist/esm/store/PoiMarkerStore.js +97 -0
  671. package/dist/esm/store/PoiTypeStore.d.ts +8 -0
  672. package/dist/esm/store/PoiTypeStore.js +6 -0
  673. package/dist/esm/store/RootStore.d.ts +118 -0
  674. package/dist/esm/store/RootStore.js +666 -0
  675. package/dist/esm/store/RoutePlannerStore.d.ts +56 -0
  676. package/dist/esm/store/RoutePlannerStore.js +322 -0
  677. package/dist/esm/store/RouteStore.d.ts +138 -0
  678. package/dist/esm/store/RouteStore.js +692 -0
  679. package/dist/esm/store/SearchButtonsStore.d.ts +2 -0
  680. package/dist/esm/store/SearchButtonsStore.js +2 -0
  681. package/dist/esm/store/SearchStore.d.ts +81 -0
  682. package/dist/esm/store/SearchStore.js +612 -0
  683. package/dist/esm/store/SessionsFilterStore.d.ts +53 -0
  684. package/dist/esm/store/SessionsFilterStore.js +169 -0
  685. package/dist/esm/store/ShortcutProvider.d.ts +26 -0
  686. package/dist/esm/store/ShortcutProvider.js +5 -0
  687. package/dist/esm/store/ShortcutRegistry.d.ts +33 -0
  688. package/dist/esm/store/ShortcutRegistry.js +130 -0
  689. package/dist/esm/store/SpeakerFilterStore.d.ts +39 -0
  690. package/dist/esm/store/SpeakerFilterStore.js +152 -0
  691. package/dist/esm/store/SpeakerStore.d.ts +45 -0
  692. package/dist/esm/store/SpeakerStore.js +142 -0
  693. package/dist/esm/store/SubButtonProvider.d.ts +16 -0
  694. package/dist/esm/store/SubButtonProvider.js +6 -0
  695. package/dist/esm/store/SubButtonRegistry.d.ts +16 -0
  696. package/dist/esm/store/SubButtonRegistry.js +58 -0
  697. package/dist/esm/store/ToursStore.d.ts +30 -0
  698. package/dist/esm/store/ToursStore.js +184 -0
  699. package/dist/esm/store/UIState.d.ts +329 -0
  700. package/dist/esm/store/UIState.js +2138 -0
  701. package/dist/esm/store/VenueStore.d.ts +254 -0
  702. package/dist/esm/store/VenueStore.js +650 -0
  703. package/dist/esm/store/create-live-plan.d.ts +13 -0
  704. package/dist/esm/store/create-live-plan.js +25 -0
  705. package/dist/esm/store/details-events.d.ts +11 -0
  706. package/dist/esm/store/details-events.js +76 -0
  707. package/dist/esm/store/floor-activated-notifier.d.ts +18 -0
  708. package/dist/esm/store/floor-activated-notifier.js +22 -0
  709. package/dist/esm/store/index.d.ts +3 -0
  710. package/dist/esm/store/index.js +14 -0
  711. package/dist/esm/store/init/index.d.ts +3 -0
  712. package/dist/esm/store/init/index.js +20 -0
  713. package/dist/esm/store/init/init-booths.d.ts +6 -0
  714. package/dist/esm/store/init/init-booths.js +306 -0
  715. package/dist/esm/store/init/init-categories.d.ts +3 -0
  716. package/dist/esm/store/init/init-categories.js +28 -0
  717. package/dist/esm/store/init/init-events.d.ts +3 -0
  718. package/dist/esm/store/init/init-events.js +45 -0
  719. package/dist/esm/store/init/init-exhibitors.d.ts +3 -0
  720. package/dist/esm/store/init/init-exhibitors.js +71 -0
  721. package/dist/esm/store/init/init-heatmap.d.ts +3 -0
  722. package/dist/esm/store/init/init-heatmap.js +37 -0
  723. package/dist/esm/store/init/init-layers.d.ts +8 -0
  724. package/dist/esm/store/init/init-layers.js +151 -0
  725. package/dist/esm/store/init/init-poiTypes.d.ts +3 -0
  726. package/dist/esm/store/init/init-poiTypes.js +6 -0
  727. package/dist/esm/store/init/init-speakers.d.ts +3 -0
  728. package/dist/esm/store/init/init-speakers.js +20 -0
  729. package/dist/esm/store/init/init-ui.d.ts +13 -0
  730. package/dist/esm/store/init/init-ui.js +155 -0
  731. package/dist/esm/store/journey-plan.d.ts +89 -0
  732. package/dist/esm/store/journey-plan.js +291 -0
  733. package/dist/esm/store/live-store.d.ts +19 -0
  734. package/dist/esm/store/live-store.js +26 -0
  735. package/dist/esm/store/outdoor-poi-filter.d.ts +21 -0
  736. package/dist/esm/store/outdoor-poi-filter.js +33 -0
  737. package/dist/esm/store/providers/SearchShortcutProvider.d.ts +13 -0
  738. package/dist/esm/store/providers/SearchShortcutProvider.js +59 -0
  739. package/dist/esm/store/providers/SessionsShortcutProvider.d.ts +17 -0
  740. package/dist/esm/store/providers/SessionsShortcutProvider.js +221 -0
  741. package/dist/esm/store/providers/SessionsSubButtonProvider.d.ts +33 -0
  742. package/dist/esm/store/providers/SessionsSubButtonProvider.js +100 -0
  743. package/dist/esm/store/providers/SpeakerShortcutProvider.d.ts +12 -0
  744. package/dist/esm/store/providers/SpeakerShortcutProvider.js +73 -0
  745. package/dist/esm/store/reveal-layer.d.ts +29 -0
  746. package/dist/esm/store/reveal-layer.js +25 -0
  747. package/dist/esm/store/search-buttons/SearchButtonsActions.d.ts +55 -0
  748. package/dist/esm/store/search-buttons/SearchButtonsActions.js +363 -0
  749. package/dist/esm/store/search-buttons/SearchButtonsFactory.d.ts +37 -0
  750. package/dist/esm/store/search-buttons/SearchButtonsFactory.js +291 -0
  751. package/dist/esm/store/search-buttons/SearchButtonsFilters.d.ts +20 -0
  752. package/dist/esm/store/search-buttons/SearchButtonsFilters.js +157 -0
  753. package/dist/esm/store/search-buttons/SearchButtonsState.d.ts +24 -0
  754. package/dist/esm/store/search-buttons/SearchButtonsState.js +125 -0
  755. package/dist/esm/store/search-buttons/SearchButtonsStore.d.ts +73 -0
  756. package/dist/esm/store/search-buttons/SearchButtonsStore.js +364 -0
  757. package/dist/esm/store/search-buttons/constants.d.ts +24 -0
  758. package/dist/esm/store/search-buttons/constants.js +24 -0
  759. package/dist/esm/store/search-buttons/index.d.ts +8 -0
  760. package/dist/esm/store/search-buttons/index.js +7 -0
  761. package/dist/esm/store/search-buttons/utils.d.ts +6 -0
  762. package/dist/esm/store/search-buttons/utils.js +34 -0
  763. package/dist/esm/store/types.d.ts +213 -0
  764. package/dist/esm/store/types.js +1 -0
  765. package/dist/esm/store/venue-public.d.ts +10 -0
  766. package/dist/esm/store/venue-public.js +14 -0
  767. package/dist/esm/store/venue-selection.d.ts +45 -0
  768. package/dist/esm/store/venue-selection.js +101 -0
  769. package/dist/esm/test/store-harness.d.ts +32 -0
  770. package/dist/esm/test/store-harness.js +116 -0
  771. package/dist/esm/tools/base-runtime-url.d.ts +3 -0
  772. package/dist/esm/tools/base-runtime-url.js +23 -0
  773. package/dist/esm/tools/debounce.d.ts +2 -0
  774. package/dist/esm/tools/debounce.js +10 -0
  775. package/dist/esm/tools/debugCanvases.d.ts +3 -0
  776. package/dist/esm/tools/debugCanvases.js +3 -0
  777. package/dist/esm/tools/event-not-found.d.ts +18 -0
  778. package/dist/esm/tools/event-not-found.js +50 -0
  779. package/dist/esm/tools/event-scoped-cache.d.ts +13 -0
  780. package/dist/esm/tools/event-scoped-cache.js +47 -0
  781. package/dist/esm/tools/expofpUrl.d.ts +7 -0
  782. package/dist/esm/tools/expofpUrl.js +10 -0
  783. package/dist/esm/tools/freeBanner.d.ts +5 -0
  784. package/dist/esm/tools/freeBanner.js +11 -0
  785. package/dist/esm/tools/gtag.d.ts +66 -0
  786. package/dist/esm/tools/gtag.js +287 -0
  787. package/dist/esm/tools/handleDebugMode.d.ts +19 -0
  788. package/dist/esm/tools/handleDebugMode.js +61 -0
  789. package/dist/esm/tools/has-html-tags.d.ts +2 -0
  790. package/dist/esm/tools/has-html-tags.js +3 -0
  791. package/dist/esm/tools/id.d.ts +2 -0
  792. package/dist/esm/tools/id.js +5 -0
  793. package/dist/esm/tools/loaders.d.ts +5 -0
  794. package/dist/esm/tools/loaders.js +67 -0
  795. package/dist/esm/tools/logger.d.ts +38 -0
  796. package/dist/esm/tools/logger.js +87 -0
  797. package/dist/esm/tools/rebooking-config.d.ts +10 -0
  798. package/dist/esm/tools/rebooking-config.js +19 -0
  799. package/dist/esm/tools/rebookingUrl.d.ts +11 -0
  800. package/dist/esm/tools/rebookingUrl.js +27 -0
  801. package/dist/esm/tools/report-error.d.ts +2 -0
  802. package/dist/esm/tools/report-error.js +134 -0
  803. package/dist/esm/tools/reset.d.ts +2 -0
  804. package/dist/esm/tools/reset.js +35 -0
  805. package/dist/esm/tools/sentry.d.ts +7 -0
  806. package/dist/esm/tools/sentry.js +166 -0
  807. package/dist/esm/tools/settings.d.ts +36 -0
  808. package/dist/esm/tools/settings.js +110 -0
  809. package/dist/esm/tools/slug.d.ts +2 -0
  810. package/dist/esm/tools/slug.js +27 -0
  811. package/dist/esm/tools/strip-html.d.ts +2 -0
  812. package/dist/esm/tools/strip-html.js +7 -0
  813. package/dist/esm/tools/style-registry.d.ts +28 -0
  814. package/dist/esm/tools/style-registry.js +46 -0
  815. package/dist/esm/tools/telemetry.d.ts +37 -0
  816. package/dist/esm/tools/telemetry.js +266 -0
  817. package/dist/esm/tools/track-event.d.ts +28 -0
  818. package/dist/esm/tools/track-event.js +196 -0
  819. package/dist/esm/tools/webgl-logger.d.ts +2 -0
  820. package/dist/esm/tools/webgl-logger.js +31 -0
  821. package/dist/esm/types/drawing.types.d.ts +18 -0
  822. package/dist/esm/types/drawing.types.js +1 -0
  823. package/dist/esm/types/sdk.types.d.ts +49 -0
  824. package/dist/esm/types/sdk.types.js +6 -0
  825. package/dist/esm/types.d.ts +593 -0
  826. package/dist/esm/types.js +1 -0
  827. package/dist/esm/utils/_OLD_gpu-info.d.ts +6 -0
  828. package/dist/esm/utils/_OLD_gpu-info.js +23 -0
  829. package/dist/esm/utils/_OLD_should-use-backdrop.d.ts +3 -0
  830. package/dist/esm/utils/_OLD_should-use-backdrop.js +4 -0
  831. package/dist/esm/utils/areLayersEnabled.d.ts +2 -0
  832. package/dist/esm/utils/areLayersEnabled.js +4 -0
  833. package/dist/esm/utils/blob-image-size.d.ts +27 -0
  834. package/dist/esm/utils/blob-image-size.js +37 -0
  835. package/dist/esm/utils/brand.d.ts +18 -0
  836. package/dist/esm/utils/brand.js +19 -0
  837. package/dist/esm/utils/browser.d.ts +4 -0
  838. package/dist/esm/utils/browser.js +4 -0
  839. package/dist/esm/utils/calcSpeed.d.ts +2 -0
  840. package/dist/esm/utils/calcSpeed.js +5 -0
  841. package/dist/esm/utils/calcTravelTime.d.ts +2 -0
  842. package/dist/esm/utils/calcTravelTime.js +3 -0
  843. package/dist/esm/utils/camera-map-settings.d.ts +26 -0
  844. package/dist/esm/utils/camera-map-settings.js +86 -0
  845. package/dist/esm/utils/color-gradient.d.ts +2 -0
  846. package/dist/esm/utils/color-gradient.js +14 -0
  847. package/dist/esm/utils/customCommands.d.ts +2 -0
  848. package/dist/esm/utils/customCommands.js +33 -0
  849. package/dist/esm/utils/detectLimitedModeViaImage.d.ts +2 -0
  850. package/dist/esm/utils/detectLimitedModeViaImage.js +33 -0
  851. package/dist/esm/utils/dimming.d.ts +27 -0
  852. package/dist/esm/utils/dimming.js +88 -0
  853. package/dist/esm/utils/entity-storage.d.ts +14 -0
  854. package/dist/esm/utils/entity-storage.js +122 -0
  855. package/dist/esm/utils/event-head.d.ts +38 -0
  856. package/dist/esm/utils/event-head.js +90 -0
  857. package/dist/esm/utils/event-now.d.ts +11 -0
  858. package/dist/esm/utils/event-now.js +40 -0
  859. package/dist/esm/utils/event-title.d.ts +19 -0
  860. package/dist/esm/utils/event-title.js +20 -0
  861. package/dist/esm/utils/eventFullBadge.d.ts +3 -0
  862. package/dist/esm/utils/eventFullBadge.js +7 -0
  863. package/dist/esm/utils/eventTime.d.ts +15 -0
  864. package/dist/esm/utils/eventTime.js +82 -0
  865. package/dist/esm/utils/extractMetaFromString.d.ts +5 -0
  866. package/dist/esm/utils/extractMetaFromString.js +16 -0
  867. package/dist/esm/utils/geo-anchors.d.ts +10 -0
  868. package/dist/esm/utils/geo-anchors.js +12 -0
  869. package/dist/esm/utils/geometry.d.ts +2 -0
  870. package/dist/esm/utils/geometry.js +12 -0
  871. package/dist/esm/utils/getContrastTextColor.d.ts +2 -0
  872. package/dist/esm/utils/getContrastTextColor.js +26 -0
  873. package/dist/esm/utils/getLogoUrl.d.ts +9 -0
  874. package/dist/esm/utils/getLogoUrl.js +26 -0
  875. package/dist/esm/utils/getMostFrequent.d.ts +2 -0
  876. package/dist/esm/utils/getMostFrequent.js +14 -0
  877. package/dist/esm/utils/getRenderTargetFromRoot.d.ts +2 -0
  878. package/dist/esm/utils/getRenderTargetFromRoot.js +19 -0
  879. package/dist/esm/utils/gps.d.ts +40 -0
  880. package/dist/esm/utils/gps.js +66 -0
  881. package/dist/esm/utils/heatmap-enabled.d.ts +13 -0
  882. package/dist/esm/utils/heatmap-enabled.js +13 -0
  883. package/dist/esm/utils/i18n.d.ts +18 -0
  884. package/dist/esm/utils/i18n.js +117 -0
  885. package/dist/esm/utils/index.d.ts +10 -0
  886. package/dist/esm/utils/index.js +60 -0
  887. package/dist/esm/utils/is-debug.d.ts +3 -0
  888. package/dist/esm/utils/is-debug.js +9 -0
  889. package/dist/esm/utils/is-from-designer.d.ts +3 -0
  890. package/dist/esm/utils/is-from-designer.js +4 -0
  891. package/dist/esm/utils/is-iframe.d.ts +3 -0
  892. package/dist/esm/utils/is-iframe.js +13 -0
  893. package/dist/esm/utils/is-localhost.d.ts +3 -0
  894. package/dist/esm/utils/is-localhost.js +11 -0
  895. package/dist/esm/utils/is-mac.d.ts +3 -0
  896. package/dist/esm/utils/is-mac.js +2 -0
  897. package/dist/esm/utils/is-mobile.d.ts +3 -0
  898. package/dist/esm/utils/is-mobile.js +2 -0
  899. package/dist/esm/utils/is-own-domain.d.ts +12 -0
  900. package/dist/esm/utils/is-own-domain.js +23 -0
  901. package/dist/esm/utils/is-pathway-layer.d.ts +2 -0
  902. package/dist/esm/utils/is-pathway-layer.js +4 -0
  903. package/dist/esm/utils/is-phone.d.ts +9 -0
  904. package/dist/esm/utils/is-phone.js +17 -0
  905. package/dist/esm/utils/is-scroll-ugly.d.ts +3 -0
  906. package/dist/esm/utils/is-scroll-ugly.js +13 -0
  907. package/dist/esm/utils/is-webview.d.ts +3 -0
  908. package/dist/esm/utils/is-webview.js +2 -0
  909. package/dist/esm/utils/isNumericLevel.d.ts +2 -0
  910. package/dist/esm/utils/isNumericLevel.js +3 -0
  911. package/dist/esm/utils/lazy-qr-code.d.ts +5 -0
  912. package/dist/esm/utils/lazy-qr-code.js +6 -0
  913. package/dist/esm/utils/legacy-storage-keys.d.ts +16 -0
  914. package/dist/esm/utils/legacy-storage-keys.js +38 -0
  915. package/dist/esm/utils/loadBlob.d.ts +16 -0
  916. package/dist/esm/utils/loadBlob.js +40 -0
  917. package/dist/esm/utils/loadCustomCss.d.ts +3 -0
  918. package/dist/esm/utils/loadCustomCss.js +19 -0
  919. package/dist/esm/utils/loadIcons.d.ts +3 -0
  920. package/dist/esm/utils/loadIcons.js +24 -0
  921. package/dist/esm/utils/loadImage.d.ts +2 -0
  922. package/dist/esm/utils/loadImage.js +11 -0
  923. package/dist/esm/utils/loadImagesInBatches.d.ts +22 -0
  924. package/dist/esm/utils/loadImagesInBatches.js +82 -0
  925. package/dist/esm/utils/loadLayerImages.d.ts +41 -0
  926. package/dist/esm/utils/loadLayerImages.js +107 -0
  927. package/dist/esm/utils/localStorage.d.ts +2 -0
  928. package/dist/esm/utils/localStorage.js +11 -0
  929. package/dist/esm/utils/lz-utils.d.ts +8 -0
  930. package/dist/esm/utils/lz-utils.js +16 -0
  931. package/dist/esm/utils/mapEntity.d.ts +3 -0
  932. package/dist/esm/utils/mapEntity.js +82 -0
  933. package/dist/esm/utils/math.d.ts +6 -0
  934. package/dist/esm/utils/math.js +7 -0
  935. package/dist/esm/utils/mobx.d.ts +35 -0
  936. package/dist/esm/utils/mobx.js +74 -0
  937. package/dist/esm/utils/outdoor-poi.d.ts +32 -0
  938. package/dist/esm/utils/outdoor-poi.js +28 -0
  939. package/dist/esm/utils/plan-reactions.d.ts +20 -0
  940. package/dist/esm/utils/plan-reactions.js +26 -0
  941. package/dist/esm/utils/planBearing.d.ts +14 -0
  942. package/dist/esm/utils/planBearing.js +15 -0
  943. package/dist/esm/utils/preview-exhibitor.d.ts +11 -0
  944. package/dist/esm/utils/preview-exhibitor.js +19 -0
  945. package/dist/esm/utils/rasterize-svg.d.ts +32 -0
  946. package/dist/esm/utils/rasterize-svg.js +78 -0
  947. package/dist/esm/utils/responsiveClass.d.ts +2 -0
  948. package/dist/esm/utils/responsiveClass.js +25 -0
  949. package/dist/esm/utils/rtl.d.ts +2 -0
  950. package/dist/esm/utils/rtl.js +4 -0
  951. package/dist/esm/utils/sanitizeHtml.d.ts +3 -0
  952. package/dist/esm/utils/sanitizeHtml.js +21 -0
  953. package/dist/esm/utils/sanitizeText.d.ts +9 -0
  954. package/dist/esm/utils/sanitizeText.js +19 -0
  955. package/dist/esm/utils/scene-bounds.d.ts +64 -0
  956. package/dist/esm/utils/scene-bounds.js +127 -0
  957. package/dist/esm/utils/shortenName.d.ts +2 -0
  958. package/dist/esm/utils/shortenName.js +19 -0
  959. package/dist/esm/utils/silence-mobx-react-lite-warning.d.ts +2 -0
  960. package/dist/esm/utils/silence-mobx-react-lite-warning.js +24 -0
  961. package/dist/esm/utils/strEqual.d.ts +2 -0
  962. package/dist/esm/utils/strEqual.js +3 -0
  963. package/dist/esm/utils/swappable-proxy.d.ts +28 -0
  964. package/dist/esm/utils/swappable-proxy.js +71 -0
  965. package/dist/esm/utils/trackingParams.d.ts +3 -0
  966. package/dist/esm/utils/trackingParams.js +24 -0
  967. package/dist/esm/utils/urlEncoding.d.ts +7 -0
  968. package/dist/esm/utils/urlEncoding.js +62 -0
  969. package/dist/esm/utils/use-shadow.d.ts +3 -0
  970. package/dist/esm/utils/use-shadow.js +10 -0
  971. package/dist/esm/utils/useHeatmapData.d.ts +10 -0
  972. package/dist/esm/utils/useHeatmapData.js +8 -0
  973. package/dist/esm/utils/useHeatmapOverlay.d.ts +9 -0
  974. package/dist/esm/utils/useHeatmapOverlay.js +56 -0
  975. package/dist/esm/utils/useRenderTarget.d.ts +2 -0
  976. package/dist/esm/utils/useRenderTarget.js +35 -0
  977. package/dist/esm/utils/yah_icon.d.ts +6 -0
  978. package/dist/esm/utils/yah_icon.js +457 -0
  979. package/dist/esm/wayfinding/adapters/arbitraryPoint.d.ts +32 -0
  980. package/dist/esm/wayfinding/adapters/arbitraryPoint.js +25 -0
  981. package/dist/esm/wayfinding/adapters/boothToEndpoint.d.ts +19 -0
  982. package/dist/esm/wayfinding/adapters/boothToEndpoint.js +32 -0
  983. package/dist/esm/wayfinding/adapters/canvasIconProvider.d.ts +20 -0
  984. package/dist/esm/wayfinding/adapters/canvasIconProvider.js +73 -0
  985. package/dist/esm/wayfinding/adapters/floorContext.d.ts +20 -0
  986. package/dist/esm/wayfinding/adapters/floorContext.js +43 -0
  987. package/dist/esm/wayfinding/adapters/graphDataSource.d.ts +42 -0
  988. package/dist/esm/wayfinding/adapters/graphDataSource.js +73 -0
  989. package/dist/esm/wayfinding/adapters/index.d.ts +9 -0
  990. package/dist/esm/wayfinding/adapters/index.js +7 -0
  991. package/dist/esm/wayfinding/adapters/kioskCanvas.d.ts +7 -0
  992. package/dist/esm/wayfinding/adapters/kioskCanvas.js +22 -0
  993. package/dist/esm/wayfinding/adapters/positionInput.d.ts +12 -0
  994. package/dist/esm/wayfinding/adapters/positionInput.js +16 -0
  995. package/dist/esm/wayfinding/bindMobxReactions.d.ts +28 -0
  996. package/dist/esm/wayfinding/bindMobxReactions.js +171 -0
  997. package/dist/esm/wayfinding/createWayfinding.d.ts +34 -0
  998. package/dist/esm/wayfinding/createWayfinding.js +183 -0
  999. package/dist/esm/wayfinding/handlers/kioskHandler.d.ts +26 -0
  1000. package/dist/esm/wayfinding/handlers/kioskHandler.js +52 -0
  1001. package/dist/esm/wayfinding/handlers/yahHandler.d.ts +21 -0
  1002. package/dist/esm/wayfinding/handlers/yahHandler.js +42 -0
  1003. package/dist/esm/wayfinding/index.d.ts +12 -0
  1004. package/dist/esm/wayfinding/index.js +9 -0
  1005. package/dist/esm/wayfinding/routeSteps.d.ts +15 -0
  1006. package/dist/esm/wayfinding/routeSteps.js +29 -0
  1007. package/dist/esm/wayfinding/storePorts.d.ts +67 -0
  1008. package/dist/esm/wayfinding/storePorts.js +1 -0
  1009. package/package.json +146 -0
@@ -0,0 +1,4046 @@
1
+ (function() {
2
+ try {
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.45.6" };
5
+ var t = new e.Error().stack;
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "241d640d-b9b3-49be-bc5e-3a9f2e809a90", e._sentryDebugIdIdentifier = "sentry-dbid-241d640d-b9b3-49be-bc5e-3a9f2e809a90");
7
+ } catch {}
8
+ })();
9
+ import { At as e, O as t, a as n, c as r, s as i } from "./i18n-BgFBhYOU.js";
10
+ import { a, c as o, m as s, s as c } from "./is-debug-BRHdrnKr.js";
11
+ import { a as l, c as u, l as ee, n as d, u as f } from "./mobx.module-BOCLFB5I.js";
12
+ import { t as te } from "./is-webview-cTH4yz8f.js";
13
+ import { _ as ne, a as re, c as ie, d as ae, f as oe, g as se, h as ce, o as le, p as ue, r as de, t as fe, u as pe, v as me } from "./debounce-BZI0to6V.js";
14
+ import { $ as he, A as ge, B as _e, D as ve, E as ye, F as be, H as xe, N as p, P as Se, R as Ce, U as we, Ut as Te, V as Ee, W as De, Wt as Oe, Xt as m, a as ke, et as Ae, g as je, h as Me, i as Ne, j as Pe, k as Fe, kt as Ie, m as Le, n as Re, r as ze, tt as Be, un as Ve, wt as He, z as Ue } from "./LayerStore-CK6wLW56.js";
15
+ import { c as We, l as Ge } from "./store-q_CTsixH.js";
16
+ import { B as Ke, F as qe, M as Je, O as Ye, R as Xe, a as Ze, n as Qe, r as $e, w as et } from "./RouteStore-C0QJjRL0.js";
17
+ import { o as tt } from "./kioskUrlParam-CnYhnC_7.js";
18
+ import { r as nt, t as rt } from "./venues-DKpIy-87.js";
19
+ import { i as it, r as at, t as ot } from "./venue-public-BodpV-7o.js";
20
+ //#region src/store/init/init-categories.ts
21
+ function st(e) {
22
+ let { categoryStore: t, exhibitorStore: n } = e;
23
+ for (let e of m.categories || []) {
24
+ let r = new ne();
25
+ Object.assign(r, e), r.exhibitors = [], r.slug = De(r.name);
26
+ for (let t of m.exhibitors || []) if (t.categories.filter((t) => t === e.id)[0]) {
27
+ let e = n.exhibitorById.get(t.id);
28
+ e.categories.push(r), r.exhibitors.push(e);
29
+ }
30
+ r.store = t, t.categories.push(r);
31
+ }
32
+ s.log("initCategories", t.categories.length);
33
+ }
34
+ //#endregion
35
+ //#region src/store/init/init-events.ts
36
+ function ct(e) {
37
+ var t;
38
+ (t = m.events) == null || t.forEach((t) => {
39
+ let n = (t.speakers || []).map((t) => e.speakerStore.addSpeaker({ ...t })), r = new ce(t.id, t.externalId || t.id.toString(), t.boothId, t.name || `Event ${t.id}`, t.description || "", t.startDate, t.endDate, t.logoFile, n, t.tracks || []);
40
+ e.eventStore.eventItems.push(r);
41
+ }), s.log("initEvents", e.eventStore.eventItems.length), s.log("initSpeakers", e.speakerStore.speakersMap.size), ut(e.eventStore), lt(e.eventStore);
42
+ }
43
+ function lt(e) {
44
+ let t = p("visited");
45
+ e.replaceVisited(t.events), ge(() => {
46
+ Se("visited", {
47
+ exhibitors: p("visited").exhibitors,
48
+ events: e.visited.map((e) => e.id)
49
+ });
50
+ });
51
+ }
52
+ function ut(e) {
53
+ let t = p("bookmarked");
54
+ e.replaceBookmarked(t.events), ge(() => {
55
+ var t;
56
+ let n = p("bookmarked");
57
+ Se("bookmarked", {
58
+ exhibitors: n.exhibitors,
59
+ events: (t = e.bookmarked) == null ? void 0 : t.map((e) => e.id),
60
+ speakers: n.speakers,
61
+ booths: n.booths
62
+ });
63
+ });
64
+ }
65
+ //#endregion
66
+ //#region src/store/init/init-exhibitors.ts
67
+ function dt(e) {
68
+ let { exhibitorStore: t } = e, n = [...m.exhibitors || []], r = it();
69
+ if (r) {
70
+ let e = n.findIndex((e) => e.id === r.id);
71
+ e === -1 ? n.push(r) : n.splice(e, 1, r);
72
+ }
73
+ n.sort((e, t) => Number(t.featured) - Number(e.featured));
74
+ for (let e of n) {
75
+ let n = new Le();
76
+ Object.assign(n, e), n.slug = De(n.name), n.rebookingState = n.rebookingState || je.Unasked, n.categories = [], n.booths = [], n.store = t, t.exhibitors.push(n), n.schedule = null;
77
+ }
78
+ s.log("initExhibitors", t.exhibitors.length), ft(t), pt(t);
79
+ }
80
+ function ft(e) {
81
+ let t = p("bookmarked");
82
+ e.replaceBookmarked(t.exhibitors), ge(() => {
83
+ var t;
84
+ let n = p("bookmarked");
85
+ Se("bookmarked", {
86
+ exhibitors: (t = e.bookmarked) == null ? void 0 : t.map((e) => e.id),
87
+ events: n.events,
88
+ speakers: n.speakers,
89
+ booths: n.booths
90
+ });
91
+ });
92
+ }
93
+ function pt(e) {
94
+ let t = p("visited");
95
+ e.replaceVisited(t.exhibitors), ge(() => {
96
+ let t = p("visited");
97
+ Se("visited", {
98
+ exhibitors: e.visited.map((e) => e.id),
99
+ events: t.events
100
+ });
101
+ });
102
+ }
103
+ //#endregion
104
+ //#region src/store/init/init-heatmap.ts
105
+ function mt(e) {
106
+ if (window.__heatmapData) e.heatmapStore.heatmapData = window.__heatmapData;
107
+ else if (window.__heatmapDataYah) {
108
+ e.heatmapStore.heatmapData.yah = window.__heatmapDataYah.yah.map((e) => new ue(e.id, e.name, e.viewCount, e.x, e.y, e.z));
109
+ let t = e.heatmapStore.heatmapData.yah.map((t) => {
110
+ let n = e.heatmapStore.getColorByClicks(t.viewCount), r = e.uiState.devicePixelRatio, i = He(r, n, void 0, 95, 120, t.viewCount.toString()), a = i.toDataURL();
111
+ return {
112
+ name: t.id.toString(),
113
+ scale: 1,
114
+ ...Ie(i),
115
+ content: a
116
+ };
117
+ }), n = e.heatmapStore.heatmapData.yah.map((e) => ({
118
+ id: e.id.toString(),
119
+ x: e.x,
120
+ y: e.y,
121
+ z: e.z,
122
+ position: "lefttop",
123
+ icon: e.id.toString(),
124
+ selectedIcon: e.id.toString()
125
+ }));
126
+ e.routeStore.setMarkers({
127
+ markers: n,
128
+ icons: t
129
+ }), e.selectSearch(" ");
130
+ }
131
+ }
132
+ //#endregion
133
+ //#region src/store/init/init-poiTypes.ts
134
+ function ht(e) {
135
+ var t;
136
+ ((t = m.poiTypes) == null ? [] : t).forEach((t) => {
137
+ e.poiTypeStore.poiTypes.push(t);
138
+ });
139
+ }
140
+ //#endregion
141
+ //#region src/store/init/init-speakers.ts
142
+ function gt(e) {
143
+ _t(e.speakerStore);
144
+ }
145
+ function _t(e) {
146
+ let t = p("bookmarked");
147
+ e.replaceBookmarked(t.speakers), ge(() => {
148
+ var t;
149
+ let n = p("bookmarked");
150
+ Se("bookmarked", {
151
+ exhibitors: n.exhibitors,
152
+ events: n.events,
153
+ speakers: (t = e.bookmarked) == null ? void 0 : t.map((e) => e.id),
154
+ booths: n.booths
155
+ });
156
+ });
157
+ }
158
+ //#endregion
159
+ //#region src/store/init/index.ts
160
+ function vt(e) {
161
+ ve(e), ct(e), gt(e), dt(e), st(e), ht(e), Fe(e), mt(e), at(e);
162
+ }
163
+ //#endregion
164
+ //#region src/store/search-buttons/constants.ts
165
+ var h = /*#__PURE__*/ function(e) {
166
+ return e.BOOKMARKS = "bookmarks", e.VISITED = "visited", e.SESSIONS = "sessions", e.TOURS = "guided_tours", e.CATEGORIES = "categories", e.POI_TYPE = "poi_type", e.POI_TYPES = "poi_types", e.LINK = "link", e.EXHIBITORS = "exhibitors", e;
167
+ }({}), g = {
168
+ POI_TYPE: "poiType_",
169
+ CATEGORIES: "categories_",
170
+ POI_TYPES: "poi_types_",
171
+ LINK: "link_"
172
+ }, yt = {
173
+ BOOKMARKS: "icon-bookmark",
174
+ VISITED: "icon-checkmark",
175
+ SESSIONS: "icon-schedule",
176
+ EXHIBITORS: "icon-exhibitors"
177
+ }, _, bt, xt;
178
+ function St(e, t, n, r) {
179
+ n && Object.defineProperty(e, t, {
180
+ enumerable: n.enumerable,
181
+ configurable: n.configurable,
182
+ writable: n.writable,
183
+ value: n.initializer ? n.initializer.call(r) : void 0
184
+ });
185
+ }
186
+ function v(e, t, n, r, i) {
187
+ var a = {};
188
+ return Object.keys(r).forEach(function(e) {
189
+ a[e] = r[e];
190
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
191
+ return r(e, t, n) || n;
192
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
193
+ }
194
+ var y = {
195
+ CATEGORIES: "categories",
196
+ POI_TYPE: "poiType",
197
+ POI_TYPES: "poiTypes",
198
+ EXHIBITORS: "exhibitors"
199
+ }, Ct = (_ = class {
200
+ constructor(e) {
201
+ this.rootStore = e, St(this, "currentFilters", bt, this), St(this, "isInitialized", xt, this), this.setupReactions();
202
+ }
203
+ initialize() {
204
+ this.parseURLFilters(), this.applyFiltersToStore(), this.isInitialized = !0, s.log("URLFilterManager initialized with filters:", this.currentFilters);
205
+ }
206
+ parseURLFilters() {
207
+ let { categories: e, poiType: t, poiTypes: n, exhibitors: r } = this.readRawFilters(), i = n.filter((e) => {
208
+ if (!e) return !1;
209
+ let t = this.rootStore.poiTypeStore.poiTypes.some((t) => t.name.toLowerCase() === e.toLowerCase());
210
+ return t || s.warn(`POI type not found in data: ${e}`), t;
211
+ });
212
+ e.length > 0 && (t || i.length > 0) ? (s.warn("URL contains both categories and POI types. Clearing POI types."), this.currentFilters = {
213
+ categories: e,
214
+ poiType: null,
215
+ poiTypes: [],
216
+ exhibitors: r
217
+ }) : this.currentFilters = {
218
+ categories: e,
219
+ poiType: t,
220
+ poiTypes: i,
221
+ exhibitors: r
222
+ }, s.log("URLFilterManager parsed filters:", {
223
+ categories: e,
224
+ poiType: t,
225
+ poiTypes: n,
226
+ exhibitors: r
227
+ }), this.validateFilters(this.currentFilters);
228
+ }
229
+ readRawFilters() {
230
+ let t = e().filters;
231
+ if (Object.keys(t).length > 0) {
232
+ var n, r, i, a;
233
+ return {
234
+ categories: [...(n = t.categories) == null ? [] : n],
235
+ poiType: (r = t.poiType) == null ? null : r,
236
+ poiTypes: [...(i = t.poiTypes) == null ? [] : i],
237
+ exhibitors: (a = t.exhibitors) != null && a
238
+ };
239
+ }
240
+ let o = new URLSearchParams(window.location.search), s = o.get(y.CATEGORIES), c = s ? Ue(s) : [], l = o.get(y.POI_TYPE), u = l ? Ce(l) : null, ee = o.get(y.POI_TYPES), d = ee ? Ue(ee) : [], f = o.get(y.EXHIBITORS);
241
+ return {
242
+ categories: c,
243
+ poiType: u,
244
+ poiTypes: d,
245
+ exhibitors: f === "true" || f === ""
246
+ };
247
+ }
248
+ applyFiltersToStore() {
249
+ let { uiState: e, categoryFilterStore: t, searchButtonsStore: n } = this.rootStore;
250
+ if (this.currentFilters.categories.length > 0) {
251
+ let n = this.currentFilters.categories.map((e) => this.rootStore.categoryStore.categories.find((t) => t.name.toLowerCase() === e.toLowerCase())).filter((e) => e !== void 0);
252
+ n.length > 0 ? (e.selectedCategoryFilters = n, t.state.selectedItems = n.map((e) => ({
253
+ id: e.id,
254
+ name: e.name
255
+ })), e.categoryFilterOpen = !0, s.log("URLFilterManager applied categories:", n.map((e) => e.name)), setTimeout(() => {
256
+ this.focusOnFilteredBooths(), this.rootStore.searchStore.setFocused(!0);
257
+ }, 100)) : s.warn("URLFilterManager: no categories found for names:", this.currentFilters.categories);
258
+ }
259
+ if (this.currentFilters.poiType) {
260
+ let t = this.rootStore.poiTypeStore.poiTypes.find((e) => e.name.toLowerCase() === this.currentFilters.poiType.toLowerCase());
261
+ t ? (e.selectedPoiTypeFilters = [t], n.setPoiFilterId(`${g.POI_TYPE}${t.id}`), s.log("URLFilterManager applied POI type:", t.name), setTimeout(() => {
262
+ this.focusOnFilteredBooths(), this.rootStore.searchStore.setFocused(!0);
263
+ }, 100)) : s.warn("URLFilterManager: no POI type found for name:", this.currentFilters.poiType);
264
+ }
265
+ if (this.currentFilters.poiTypes.length > 0) {
266
+ let t = this.currentFilters.poiTypes.map((e) => e ? this.rootStore.poiTypeStore.poiTypes.find((t) => t.name.toLowerCase() === e.toLowerCase()) : null).filter((e) => e != null);
267
+ t.length > 0 ? (e.selectedPoiTypeFilters = t, s.log("URLFilterManager applied POI types:", t.map((e) => e.name)), setTimeout(() => {
268
+ this.focusOnFilteredBooths(), this.rootStore.searchStore.setFocused(!0);
269
+ }, 100)) : (s.warn("URLFilterManager: no POI types found for names:", this.currentFilters.poiTypes), this.currentFilters.poiTypes = []);
270
+ }
271
+ this.currentFilters.exhibitors && this.openExhibitorsList();
272
+ }
273
+ filterSearch() {
274
+ let { uiState: e } = this.rootStore, t = new URLSearchParams();
275
+ if (e.selectedCategoryFilters.length > 0) {
276
+ let n = Ee(e.selectedCategoryFilters.map((e) => e.name.toLowerCase()));
277
+ n && t.set(y.CATEGORIES, n);
278
+ }
279
+ if (e.selectedPoiTypeFilters.length > 0 && e.selectedCategoryFilters.length === 0) if (e.selectedPoiTypeFilters.length === 1) {
280
+ let n = e.selectedPoiTypeFilters[0].name.toLowerCase();
281
+ if (n) {
282
+ let e = _e(n);
283
+ e && t.set(y.POI_TYPE, e);
284
+ }
285
+ } else {
286
+ let n = Ee(e.selectedPoiTypeFilters.map((e) => e.name.toLowerCase()));
287
+ n && t.set(y.POI_TYPES, n);
288
+ }
289
+ return this.currentFilters.exhibitors && e.selectedCategoryFilters.length === 0 && e.selectedPoiTypeFilters.length === 0 && t.set(y.EXHIBITORS, "true"), t.toString() ? `?${t.toString()}` : "";
290
+ }
291
+ updateURLFromFilters() {
292
+ let { uiState: e } = this.rootStore;
293
+ Xe(this.filterSearch()), this.currentFilters = {
294
+ categories: e.selectedCategoryFilters.length > 0 ? e.selectedCategoryFilters.map((e) => e.name) : [],
295
+ poiType: e.selectedPoiTypeFilters.length === 1 && e.selectedCategoryFilters.length === 0 ? e.selectedPoiTypeFilters[0].name : null,
296
+ poiTypes: e.selectedPoiTypeFilters.length > 1 && e.selectedCategoryFilters.length === 0 ? e.selectedPoiTypeFilters.map((e) => e.name) : [],
297
+ exhibitors: this.currentFilters.exhibitors
298
+ };
299
+ }
300
+ setCategories(e) {
301
+ this.currentFilters.categories = xe(e), this.currentFilters.poiType = null, this.isInitialized && this.updateURLFromFilters();
302
+ }
303
+ setPoiType(e) {
304
+ this.currentFilters.poiType = we(e), this.currentFilters.poiTypes = [], this.currentFilters.categories = [], this.isInitialized && this.updateURLFromFilters();
305
+ }
306
+ setPoiTypes(e) {
307
+ this.currentFilters.poiTypes = xe(e), this.currentFilters.poiType = null, this.currentFilters.categories = [], this.isInitialized && this.updateURLFromFilters();
308
+ }
309
+ clearAllFilters() {
310
+ this.currentFilters = {
311
+ categories: [],
312
+ poiType: null,
313
+ poiTypes: [],
314
+ exhibitors: !1
315
+ };
316
+ let { uiState: e } = this.rootStore;
317
+ e.categoryFilterOpen = !1, this.updateURLFromFilters();
318
+ }
319
+ getCurrentFilters() {
320
+ return { ...this.currentFilters };
321
+ }
322
+ setupReactions() {
323
+ Pe(() => this.rootStore.uiState.selectedCategoryFilters, (e) => {
324
+ if (this.isInitialized && e.length > 0) {
325
+ let t = xe(e.map((e) => e.name));
326
+ this.setCategories(t);
327
+ }
328
+ }), Pe(() => this.rootStore.uiState.selectedPoiTypeFilters, (e) => {
329
+ if (this.isInitialized && e.length > 0) if (e.length === 1) {
330
+ let t = we(e[0].name);
331
+ t && this.setPoiType(t);
332
+ } else {
333
+ let t = xe(e.map((e) => e.name));
334
+ this.setPoiTypes(t);
335
+ }
336
+ });
337
+ }
338
+ validateFilters(e) {
339
+ if (e.categories.length > 0 && (e.poiType || e.poiTypes.length > 0)) return s.warn("Categories and POI types cannot be active simultaneously"), !1;
340
+ if (e.poiType && e.poiTypes.length > 0) return s.warn("Both single POI type and multiple POI types cannot be active simultaneously"), !1;
341
+ for (let t of e.categories) if (!this.getCategoryIdByName(t)) return s.warn(`Category not found: ${t}`), !1;
342
+ if (e.poiType && !this.getPoiTypeIdByName(e.poiType)) return s.warn(`POI type not found: ${e.poiType}`), !1;
343
+ for (let t of e.poiTypes) if (!this.getPoiTypeIdByName(t)) return s.warn(`POI type not found: ${t}`), !1;
344
+ return !0;
345
+ }
346
+ getCategoryIdByName(e) {
347
+ let t = this.rootStore.categoryStore.categories.find((t) => t.name.toLowerCase() === e.toLowerCase());
348
+ return t ? t.id : null;
349
+ }
350
+ getPoiTypeIdByName(e) {
351
+ let t = this.rootStore.poiTypeStore.poiTypes.find((t) => t.name.toLowerCase() === e.toLowerCase());
352
+ return t ? t.id : null;
353
+ }
354
+ focusOnFilteredBooths() {
355
+ if (!this.rootStore.layerStore.layersLoaded) {
356
+ Pe(() => this.rootStore.layerStore.layersLoaded, () => {
357
+ this.focusOnFilteredBooths();
358
+ }, { fireImmediately: !1 });
359
+ return;
360
+ }
361
+ let { uiState: e, exhibitorStore: t, boothStore: n } = this.rootStore, r = [];
362
+ if (e.selectedCategoryFilters.length > 0) {
363
+ let i = t.exhibitors.filter((t) => e.selectedCategoryFilters.some((e) => t.categories.some((t) => t.id === e.id)));
364
+ r = n.booths.filter((e) => i.some((t) => {
365
+ var n;
366
+ return t.id === ((n = e.exhibitors[0]) == null ? void 0 : n.id);
367
+ }));
368
+ }
369
+ if (e.selectedPoiTypeFilters.length > 0) {
370
+ let t = n.booths.filter((t) => e.selectedPoiTypeFilters.some((e) => t.poiTypeId === e.id));
371
+ r = r.length > 0 ? r.filter((e) => t.some((t) => t.id === e.id)) : t;
372
+ }
373
+ let i = r.filter((e) => e.visible);
374
+ i.length > 0 ? (e.moveToBooths = i, this.rootStore.moveToList(i)) : r.length > 0 && (this.rootStore.showMap(), this.rootStore.moveToList(r));
375
+ }
376
+ openExhibitorsList() {
377
+ let { uiState: e } = this.rootStore;
378
+ e.list = {
379
+ type: "exhibitors",
380
+ text: "",
381
+ focused: !1
382
+ }, setTimeout(() => {
383
+ this.rootStore.searchStore.setFocused(!0);
384
+ }, 100), s.log("URLFilterManager opened exhibitors list");
385
+ }
386
+ }, bt = v(_.prototype, "currentFilters", [u], {
387
+ configurable: !0,
388
+ enumerable: !0,
389
+ writable: !0,
390
+ initializer: function() {
391
+ return {
392
+ categories: [],
393
+ poiType: null,
394
+ poiTypes: [],
395
+ exhibitors: !1
396
+ };
397
+ }
398
+ }), xt = v(_.prototype, "isInitialized", [u], {
399
+ configurable: !0,
400
+ enumerable: !0,
401
+ writable: !0,
402
+ initializer: function() {
403
+ return !1;
404
+ }
405
+ }), v(_.prototype, "initialize", [d], Object.getOwnPropertyDescriptor(_.prototype, "initialize"), _.prototype), v(_.prototype, "parseURLFilters", [d], Object.getOwnPropertyDescriptor(_.prototype, "parseURLFilters"), _.prototype), v(_.prototype, "applyFiltersToStore", [d], Object.getOwnPropertyDescriptor(_.prototype, "applyFiltersToStore"), _.prototype), v(_.prototype, "updateURLFromFilters", [d], Object.getOwnPropertyDescriptor(_.prototype, "updateURLFromFilters"), _.prototype), v(_.prototype, "setCategories", [d], Object.getOwnPropertyDescriptor(_.prototype, "setCategories"), _.prototype), v(_.prototype, "setPoiType", [d], Object.getOwnPropertyDescriptor(_.prototype, "setPoiType"), _.prototype), v(_.prototype, "setPoiTypes", [d], Object.getOwnPropertyDescriptor(_.prototype, "setPoiTypes"), _.prototype), v(_.prototype, "clearAllFilters", [d], Object.getOwnPropertyDescriptor(_.prototype, "clearAllFilters"), _.prototype), v(_.prototype, "focusOnFilteredBooths", [d], Object.getOwnPropertyDescriptor(_.prototype, "focusOnFilteredBooths"), _.prototype), v(_.prototype, "openExhibitorsList", [d], Object.getOwnPropertyDescriptor(_.prototype, "openExhibitorsList"), _.prototype), _), b;
406
+ function wt(e, t, n, r, i) {
407
+ var a = {};
408
+ return Object.keys(r).forEach(function(e) {
409
+ a[e] = r[e];
410
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
411
+ return r(e, t, n) || n;
412
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
413
+ }
414
+ var Tt = (b = class {
415
+ constructor(e) {
416
+ this.rootStore = void 0, this.rootStore = e;
417
+ }
418
+ get bookmarkedBooths() {
419
+ return this.rootStore.boothStore.booths.filter((e) => e.exhibitors.length === 0 && e.bookmarkedDirectly);
420
+ }
421
+ get total() {
422
+ return this.rootStore.exhibitorStore.bookmarked.length + this.rootStore.eventStore.bookmarked.length + this.rootStore.speakerStore.bookmarked.length + this.bookmarkedBooths.length;
423
+ }
424
+ get hasRoutableBookmarks() {
425
+ return this.rootStore.exhibitorStore.bookmarked.length > 0 || this.bookmarkedBooths.length > 0;
426
+ }
427
+ }, wt(b.prototype, "bookmarkedBooths", [l], Object.getOwnPropertyDescriptor(b.prototype, "bookmarkedBooths"), b.prototype), wt(b.prototype, "total", [l], Object.getOwnPropertyDescriptor(b.prototype, "total"), b.prototype), wt(b.prototype, "hasRoutableBookmarks", [l], Object.getOwnPropertyDescriptor(b.prototype, "hasRoutableBookmarks"), b.prototype), b), x, Et;
428
+ function Dt(e, t, n, r) {
429
+ n && Object.defineProperty(e, t, {
430
+ enumerable: n.enumerable,
431
+ configurable: n.configurable,
432
+ writable: n.writable,
433
+ value: n.initializer ? n.initializer.call(r) : void 0
434
+ });
435
+ }
436
+ function S(e, t, n, r, i) {
437
+ var a = {};
438
+ return Object.keys(r).forEach(function(e) {
439
+ a[e] = r[e];
440
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
441
+ return r(e, t, n) || n;
442
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
443
+ }
444
+ var Ot = (x = class {
445
+ get publicRootStore() {
446
+ return this.rootStore;
447
+ }
448
+ constructor(e) {
449
+ this.rootStore = void 0, Dt(this, "state", Et, this), this.rootStore = e;
450
+ }
451
+ openFilter() {
452
+ this.state.isOpen = !0, this.state.pendingItems = [...this.state.selectedItems];
453
+ }
454
+ closeFilter() {
455
+ this.state.isOpen = !1, this.state.pendingItems = [], this.rootStore.urlFilterManager && this.rootStore.urlFilterManager.isInitialized && this.rootStore.urlFilterManager.clearAllFilters();
456
+ }
457
+ applyFilter() {
458
+ this.state.selectedItems = [...this.state.pendingItems], this.closeFilter(), this.updateUIState();
459
+ }
460
+ resetFilter() {
461
+ this.state.pendingItems = [];
462
+ }
463
+ clearPendingItems() {
464
+ this.state.pendingItems = [];
465
+ }
466
+ setPendingItems(e) {
467
+ this.state.pendingItems = e;
468
+ }
469
+ }, Et = S(x.prototype, "state", [u], {
470
+ configurable: !0,
471
+ enumerable: !0,
472
+ writable: !0,
473
+ initializer: function() {
474
+ return {
475
+ isOpen: !1,
476
+ selectedItems: [],
477
+ pendingItems: []
478
+ };
479
+ }
480
+ }), S(x.prototype, "openFilter", [d], Object.getOwnPropertyDescriptor(x.prototype, "openFilter"), x.prototype), S(x.prototype, "closeFilter", [d], Object.getOwnPropertyDescriptor(x.prototype, "closeFilter"), x.prototype), S(x.prototype, "applyFilter", [d], Object.getOwnPropertyDescriptor(x.prototype, "applyFilter"), x.prototype), S(x.prototype, "resetFilter", [d], Object.getOwnPropertyDescriptor(x.prototype, "resetFilter"), x.prototype), S(x.prototype, "clearPendingItems", [d], Object.getOwnPropertyDescriptor(x.prototype, "clearPendingItems"), x.prototype), S(x.prototype, "setPendingItems", [d], Object.getOwnPropertyDescriptor(x.prototype, "setPendingItems"), x.prototype), x), C;
481
+ function kt(e, t, n, r, i) {
482
+ var a = {};
483
+ return Object.keys(r).forEach(function(e) {
484
+ a[e] = r[e];
485
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
486
+ return r(e, t, n) || n;
487
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
488
+ }
489
+ var At = (C = class extends Ot {
490
+ get filteredExhibitors() {
491
+ return this.state.selectedItems.length === 0 ? this.rootStore.exhibitorStore.exhibitors : this.rootStore.exhibitorStore.exhibitors.filter((e) => this.state.selectedItems.some((t) => e.categories.some((e) => e.id === t.id)));
492
+ }
493
+ get filteredBooths() {
494
+ return this.rootStore.boothStore.booths.filter((e) => this.filteredExhibitors.some((t) => {
495
+ var n;
496
+ return t.id === ((n = e.exhibitors[0]) == null ? void 0 : n.id);
497
+ }));
498
+ }
499
+ get publicRootStore() {
500
+ return this.rootStore;
501
+ }
502
+ updateUIState() {
503
+ this.rootStore.uiState.menu = !1;
504
+ let e = this.state.selectedItems.map((e) => this.rootStore.categoryStore.categories.find((t) => t.id === e.id)).filter(Boolean);
505
+ this.rootStore.uiState.selectedCategoryFilters = e, this.rootStore.uiState.categoryFilterOpen = !0, this.rootStore.searchStore.setFocused(!0), this.rootStore.moveToList(), this.rootStore.showMap();
506
+ let t = e.map((e) => e.name);
507
+ this.rootStore.urlFilterManager.setCategories(t);
508
+ }
509
+ getFilteredItems() {
510
+ return this.rootStore.exhibitorStore.exhibitors.map((e) => ({
511
+ id: e.id,
512
+ name: e.name
513
+ }));
514
+ }
515
+ getMatchingExhibitorsCount() {
516
+ return this.state.pendingItems.length === 0 ? this.rootStore.exhibitorStore.exhibitors.length : this.rootStore.exhibitorStore.exhibitors.filter((e) => e.categories.some((e) => this.state.pendingItems.some((t) => t.id === e.id))).length;
517
+ }
518
+ resetFilter() {
519
+ this.state.pendingItems = [], this.state.selectedItems = [], this.rootStore.uiState.selectedCategoryFilters = [], this.rootStore.uiState.categoryFilterOpen = !1, this.rootStore.uiState.list = {
520
+ type: "search",
521
+ text: "",
522
+ focused: !1
523
+ }, this.rootStore.urlFilterManager.setCategories([]);
524
+ }
525
+ }, kt(C.prototype, "filteredExhibitors", [l], Object.getOwnPropertyDescriptor(C.prototype, "filteredExhibitors"), C.prototype), kt(C.prototype, "filteredBooths", [l], Object.getOwnPropertyDescriptor(C.prototype, "filteredBooths"), C.prototype), kt(C.prototype, "resetFilter", [d], Object.getOwnPropertyDescriptor(C.prototype, "resetFilter"), C.prototype), C), jt, Mt;
526
+ function Nt(e, t, n, r) {
527
+ n && Object.defineProperty(e, t, {
528
+ enumerable: n.enumerable,
529
+ configurable: n.configurable,
530
+ writable: n.writable,
531
+ value: n.initializer ? n.initializer.call(r) : void 0
532
+ });
533
+ }
534
+ function Pt(e, t, n, r, i) {
535
+ var a = {};
536
+ return Object.keys(r).forEach(function(e) {
537
+ a[e] = r[e];
538
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
539
+ return r(e, t, n) || n;
540
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
541
+ }
542
+ var Ft = (jt = class {
543
+ constructor(e) {
544
+ this.keys = e, Nt(this, "engine", Mt, this), this.enginePromise = null, this.lastCollection = null;
545
+ }
546
+ loadEngine() {
547
+ return this.enginePromise || (this.enginePromise = this.buildEngine()), this.enginePromise;
548
+ }
549
+ async buildEngine() {
550
+ try {
551
+ let { default: e } = await import("./fuse-B7V1lkoA.js").then((e) => e.n);
552
+ f(() => {
553
+ this.engine = new e([], {
554
+ keys: this.keys,
555
+ ignoreFieldNorm: !0,
556
+ includeScore: !0,
557
+ threshold: .3,
558
+ ignoreLocation: !0
559
+ });
560
+ });
561
+ } catch (e) {
562
+ console.error(e), this.enginePromise = null;
563
+ }
564
+ }
565
+ search(e, t) {
566
+ return !this.engine || !(e != null && e.length) || !t ? [] : (this.lastCollection !== e && (this.engine.setCollection(e), this.lastCollection = e), this.engine.search(t));
567
+ }
568
+ }, Mt = Pt(jt.prototype, "engine", [u], {
569
+ configurable: !0,
570
+ enumerable: !0,
571
+ writable: !0,
572
+ initializer: null
573
+ }), jt), w, It, Lt;
574
+ function Rt(e, t, n, r) {
575
+ n && Object.defineProperty(e, t, {
576
+ enumerable: n.enumerable,
577
+ configurable: n.configurable,
578
+ writable: n.writable,
579
+ value: n.initializer ? n.initializer.call(r) : void 0
580
+ });
581
+ }
582
+ function zt(e, t, n, r, i) {
583
+ var a = {};
584
+ return Object.keys(r).forEach(function(e) {
585
+ a[e] = r[e];
586
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
587
+ return r(e, t, n) || n;
588
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
589
+ }
590
+ var Bt = (w = class {
591
+ constructor() {
592
+ Rt(this, "enabled", It, this), Rt(this, "unreadCount", Lt, this);
593
+ }
594
+ setEnabled(e) {
595
+ this.enabled = e;
596
+ }
597
+ setUnreadCount(e) {
598
+ this.unreadCount = e;
599
+ }
600
+ }, It = zt(w.prototype, "enabled", [u], {
601
+ configurable: !0,
602
+ enumerable: !0,
603
+ writable: !0,
604
+ initializer: function() {
605
+ return !1;
606
+ }
607
+ }), Lt = zt(w.prototype, "unreadCount", [u], {
608
+ configurable: !0,
609
+ enumerable: !0,
610
+ writable: !0,
611
+ initializer: function() {
612
+ return 0;
613
+ }
614
+ }), zt(w.prototype, "setEnabled", [d], Object.getOwnPropertyDescriptor(w.prototype, "setEnabled"), w.prototype), zt(w.prototype, "setUnreadCount", [d], Object.getOwnPropertyDescriptor(w.prototype, "setUnreadCount"), w.prototype), w), Vt, Ht, Ut, Wt, Gt, T, Kt, qt, Jt;
615
+ function Yt(e, t, n, r) {
616
+ n && Object.defineProperty(e, t, {
617
+ enumerable: n.enumerable,
618
+ configurable: n.configurable,
619
+ writable: n.writable,
620
+ value: n.initializer ? n.initializer.call(r) : void 0
621
+ });
622
+ }
623
+ function E(e, t, n, r, i) {
624
+ var a = {};
625
+ return Object.keys(r).forEach(function(e) {
626
+ a[e] = r[e];
627
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
628
+ return r(e, t, n) || n;
629
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
630
+ }
631
+ var Xt = !0;
632
+ function Zt() {
633
+ return typeof window > "u" || window.navigator.onLine;
634
+ }
635
+ function Qt(e, t) {
636
+ t ? e.venueStore.applyInitialVisibility() : e.venueStore.applyFallbackVisibility();
637
+ }
638
+ var $t = (Vt = l({ keepAlive: !0 }), Ht = l({ keepAlive: !0 }), Ut = l({ keepAlive: !0 }), Wt = l({ keepAlive: !0 }), Gt = l({ keepAlive: !0 }), T = class {
639
+ constructor(e) {
640
+ this.rootStore = void 0, Yt(this, "mapViewMode", Kt, this), Yt(this, "maplibreSelected", qt, this), Yt(this, "isOnline", Jt, this), this.cameraPortBox = u.box(null, { deep: !1 }), this.handleOnline = () => this.setOnline(!0), this.handleOffline = () => this.setOnline(!1), this.disposeMultiVenueSync = void 0, this.rootStore = e, this.mapViewMode = this.getInitialViewMode(), this.maplibreSelected = this.mapViewMode !== "floorplan", this.disposeMultiVenueSync = ee(() => this.showMaplibre, (e) => Qt(this.rootStore, e)), typeof window < "u" && (window.addEventListener("online", this.handleOnline), window.addEventListener("offline", this.handleOffline));
641
+ }
642
+ dispose() {
643
+ this.disposeMultiVenueSync(), !(typeof window > "u") && (window.removeEventListener("online", this.handleOnline), window.removeEventListener("offline", this.handleOffline));
644
+ }
645
+ setOnline(e) {
646
+ this.isOnline = e;
647
+ }
648
+ get cameraPort() {
649
+ return this.cameraPortBox.get();
650
+ }
651
+ setCameraPort(e) {
652
+ this.cameraPortBox.set(e);
653
+ }
654
+ clearCameraPortIfCurrent(e) {
655
+ this.cameraPortBox.get() === e && this.cameraPortBox.set(null);
656
+ }
657
+ activateMaplibre() {
658
+ this.maplibreEnabled && (this.mapViewMode = m.allow3dView && this.mapViewMode !== "map3d" ? "map3d" : "map2d", this.maplibreSelected = !0);
659
+ }
660
+ deactivateMaplibre() {
661
+ this.mapViewMode = "floorplan", this.maplibreSelected = !1;
662
+ }
663
+ get hideModeSwitchButton() {
664
+ return !this.maplibreEnabled || !m.allow3dView || Xt;
665
+ }
666
+ get maplibreEnabled() {
667
+ var e, t, n;
668
+ let r = (e = (t = this.rootStore.fp) == null ? void 0 : t.maplibre) == null ? window.__efpMaplibre : e, i = !!(r != null && r.offline) && (!!r.style || !!r.styleUrl);
669
+ return this.useMaplibreMap && !!(!((n = Ke()) == null || (n = n.properties) == null) && n.config) && (this.isOnline || i);
670
+ }
671
+ get useMaplibreMap() {
672
+ var e, t;
673
+ return (e = m.enableExperimentalMaplibre) == null ? ((t = Ke()) == null || (t = t.properties) == null || (t = t.config) == null ? void 0 : t.type) === "maplibre" : e;
674
+ }
675
+ get showMaplibre() {
676
+ return this.maplibreEnabled && (this.mapViewMode === "map2d" || this.mapViewMode === "map3d");
677
+ }
678
+ get isMap3d() {
679
+ return this.maplibreEnabled && this.mapViewMode === "map3d";
680
+ }
681
+ getInitialViewMode() {
682
+ return this.maplibreEnabled ? this.rootStore.uiState.is3DView ? "map3d" : "map2d" : "floorplan";
683
+ }
684
+ }, Kt = E(T.prototype, "mapViewMode", [u], {
685
+ configurable: !0,
686
+ enumerable: !0,
687
+ writable: !0,
688
+ initializer: function() {
689
+ return "floorplan";
690
+ }
691
+ }), qt = E(T.prototype, "maplibreSelected", [u], {
692
+ configurable: !0,
693
+ enumerable: !0,
694
+ writable: !0,
695
+ initializer: function() {
696
+ return !1;
697
+ }
698
+ }), Jt = E(T.prototype, "isOnline", [u], {
699
+ configurable: !0,
700
+ enumerable: !0,
701
+ writable: !0,
702
+ initializer: function() {
703
+ return Zt();
704
+ }
705
+ }), E(T.prototype, "setOnline", [d], Object.getOwnPropertyDescriptor(T.prototype, "setOnline"), T.prototype), E(T.prototype, "setCameraPort", [d], Object.getOwnPropertyDescriptor(T.prototype, "setCameraPort"), T.prototype), E(T.prototype, "clearCameraPortIfCurrent", [d], Object.getOwnPropertyDescriptor(T.prototype, "clearCameraPortIfCurrent"), T.prototype), E(T.prototype, "activateMaplibre", [d], Object.getOwnPropertyDescriptor(T.prototype, "activateMaplibre"), T.prototype), E(T.prototype, "deactivateMaplibre", [d], Object.getOwnPropertyDescriptor(T.prototype, "deactivateMaplibre"), T.prototype), E(T.prototype, "hideModeSwitchButton", [Vt], Object.getOwnPropertyDescriptor(T.prototype, "hideModeSwitchButton"), T.prototype), E(T.prototype, "maplibreEnabled", [Ht], Object.getOwnPropertyDescriptor(T.prototype, "maplibreEnabled"), T.prototype), E(T.prototype, "useMaplibreMap", [Ut], Object.getOwnPropertyDescriptor(T.prototype, "useMaplibreMap"), T.prototype), E(T.prototype, "showMaplibre", [Wt], Object.getOwnPropertyDescriptor(T.prototype, "showMaplibre"), T.prototype), E(T.prototype, "isMap3d", [Gt], Object.getOwnPropertyDescriptor(T.prototype, "isMap3d"), T.prototype), T), D;
706
+ function en(e, t, n, r, i) {
707
+ var a = {};
708
+ return Object.keys(r).forEach(function(e) {
709
+ a[e] = r[e];
710
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
711
+ return r(e, t, n) || n;
712
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
713
+ }
714
+ var tn = (D = class {
715
+ constructor(e) {
716
+ this.rootStore = e;
717
+ }
718
+ get ui() {
719
+ return this.rootStore.uiState;
720
+ }
721
+ get isRouteActive() {
722
+ let e = this.ui.selectedRoute;
723
+ return !!(e != null && e.from && e != null && e.to);
724
+ }
725
+ get isSearchListOpen() {
726
+ let { list: e } = this.ui;
727
+ return e.type === "search" || m.isRebooking && e.type === "exhibitors";
728
+ }
729
+ get mediumSizeMultiplier() {
730
+ return this.isRouteActive ? 7 : this.ui.details ? 3 : this.isSearchListOpen ? 9 : 3;
731
+ }
732
+ get fullSizeOffset() {
733
+ let e = this.ui, t = e.wsShown ? 54 : 0, n = e.bannerType === "free" && !e.freeBannerDismissed ? 40 : 0;
734
+ if (e.details && !(e.details instanceof Qe)) return t + n + 20;
735
+ let r = e.shouldShowSearchButtons ? 54 : 0;
736
+ return t + n + 54 + 20 + r;
737
+ }
738
+ }, en(D.prototype, "mediumSizeMultiplier", [l], Object.getOwnPropertyDescriptor(D.prototype, "mediumSizeMultiplier"), D.prototype), en(D.prototype, "fullSizeOffset", [l], Object.getOwnPropertyDescriptor(D.prototype, "fullSizeOffset"), D.prototype), D), nn = {
739
+ active: !1,
740
+ key: "",
741
+ matchingMarkers: []
742
+ };
743
+ function rn(e, t, n, r) {
744
+ if (!e.length || t) return nn;
745
+ let i = new Set(e), a = new Map(r.map((e) => [e.boothId, e])), o = [];
746
+ for (let e of n) {
747
+ if (e.poiTypeId == null || !i.has(e.poiTypeId)) continue;
748
+ let t = a.get(e.id);
749
+ t && o.push(t);
750
+ }
751
+ return o.length ? {
752
+ active: !0,
753
+ key: [...new Set(o.map((e) => e.boothId))].sort((e, t) => e - t).join(","),
754
+ matchingMarkers: o
755
+ } : nn;
756
+ }
757
+ //#endregion
758
+ //#region src/store/PoiMarkerStore.ts
759
+ var an, on, sn, cn, O;
760
+ function ln(e, t, n, r, i) {
761
+ var a = {};
762
+ return Object.keys(r).forEach(function(e) {
763
+ a[e] = r[e];
764
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
765
+ return r(e, t, n) || n;
766
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
767
+ }
768
+ var un = (an = l({ keepAlive: !0 }), on = l({ keepAlive: !0 }), sn = l({ keepAlive: !0 }), cn = l({ keepAlive: !0 }), O = class {
769
+ constructor(e) {
770
+ this.rootStore = void 0, this.markersBox = u.box([], { deep: !1 }), this.generation = 0, this.rootStore = e;
771
+ }
772
+ get markers() {
773
+ return this.markersBox.get();
774
+ }
775
+ addMany(e) {
776
+ e.length && this.markersBox.set([...this.markers, ...e]);
777
+ }
778
+ clear() {
779
+ this.generation += 1, this.markersBox.set([]);
780
+ }
781
+ get selectedMarkerId() {
782
+ let e = [...this.rootStore.uiState.selectedBooths], t = e.length === 1 ? e[0] : void 0;
783
+ return t && this.markers.some((e) => e.boothId === t.id) ? t.id : null;
784
+ }
785
+ get selectionActive() {
786
+ return this.selectedMarkerId !== null;
787
+ }
788
+ get outdoorFilter() {
789
+ let { uiState: e, boothStore: t } = this.rootStore;
790
+ return rn(e.selectedPoiTypeFilters.map((e) => e.id), e.selectedCategoryFilters.length > 0, t.booths, this.markers);
791
+ }
792
+ get dimSuppressed() {
793
+ return this.outdoorFilter.active || this.selectionActive;
794
+ }
795
+ }, ln(O.prototype, "addMany", [d], Object.getOwnPropertyDescriptor(O.prototype, "addMany"), O.prototype), ln(O.prototype, "clear", [d], Object.getOwnPropertyDescriptor(O.prototype, "clear"), O.prototype), ln(O.prototype, "selectedMarkerId", [an], Object.getOwnPropertyDescriptor(O.prototype, "selectedMarkerId"), O.prototype), ln(O.prototype, "selectionActive", [on], Object.getOwnPropertyDescriptor(O.prototype, "selectionActive"), O.prototype), ln(O.prototype, "outdoorFilter", [sn], Object.getOwnPropertyDescriptor(O.prototype, "outdoorFilter"), O.prototype), ln(O.prototype, "dimSuppressed", [cn], Object.getOwnPropertyDescriptor(O.prototype, "dimSuppressed"), O.prototype), O), dn = class {
796
+ constructor(e) {
797
+ this.rootStore = void 0, this.poiTypes = [], this.rootStore = e;
798
+ }
799
+ }, fn = class {
800
+ constructor() {
801
+ this.id = void 0;
802
+ }
803
+ shouldShowShortcuts() {
804
+ return !0;
805
+ }
806
+ }, pn;
807
+ function mn(e, t, n, r, i) {
808
+ var a = {};
809
+ return Object.keys(r).forEach(function(e) {
810
+ a[e] = r[e];
811
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
812
+ return r(e, t, n) || n;
813
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
814
+ }
815
+ var hn = (pn = class extends fn {
816
+ constructor(e) {
817
+ super(), this.rootStore = e, this.id = "search";
818
+ }
819
+ createShortcuts() {
820
+ let { searchButtonsStore: e } = this.rootStore, t = [], n = e.getActiveParent();
821
+ if (n && n.children) {
822
+ let r = n.children.filter((e) => e.visible);
823
+ if (n.type === "poi_types" && r.length === 1) return t;
824
+ r.forEach((r) => {
825
+ if (r.type === "poi_types" || r.type === "categories") {
826
+ var i;
827
+ let a = ((i = r.id) == null ? void 0 : i.toString()) || r.name, o = e.isChildActive(a);
828
+ t.push({
829
+ id: a,
830
+ label: r.name,
831
+ enabled: !0,
832
+ active: o,
833
+ tooltip: o ? `Remove ${r.name} from filter (show all ${n.name})` : `Filter only by ${r.name}`,
834
+ variant: "default",
835
+ action: "toggle",
836
+ showResetButton: !1
837
+ });
838
+ }
839
+ });
840
+ }
841
+ return t;
842
+ }
843
+ get shortcuts() {
844
+ return this.createShortcuts();
845
+ }
846
+ shouldShowShortcuts() {
847
+ let { searchButtonsStore: e } = this.rootStore;
848
+ return e.hasActiveParentWithChildren;
849
+ }
850
+ handleShortcutClick(e) {
851
+ let { searchButtonsStore: t } = this.rootStore;
852
+ t.toggleChildFilter(e);
853
+ }
854
+ handleShortcutReset() {
855
+ let { searchButtonsStore: e } = this.rootStore;
856
+ e.clearAllChildFilters();
857
+ }
858
+ }, mn(pn.prototype, "shortcuts", [l], Object.getOwnPropertyDescriptor(pn.prototype, "shortcuts"), pn.prototype), pn), gn;
859
+ function _n(e, t, n, r, i) {
860
+ var a = {};
861
+ return Object.keys(r).forEach(function(e) {
862
+ a[e] = r[e];
863
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
864
+ return r(e, t, n) || n;
865
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
866
+ }
867
+ var vn = (gn = class extends fn {
868
+ constructor(e) {
869
+ super(), this.rootStore = e, this.id = "sessions";
870
+ }
871
+ get computedShortcuts() {
872
+ let { sessionsFilterStore: e, eventStore: t } = this.rootStore, { filters: n } = e.state, r = [];
873
+ return r.push({
874
+ id: "bookmarks",
875
+ icon: "icon-bookmark",
876
+ enabled: !0,
877
+ active: n.showBookmarksOnly.value,
878
+ tooltip: "Show bookmarked events only",
879
+ variant: "default",
880
+ action: "toggle",
881
+ showResetButton: !1
882
+ }), t.tracks.length > 0 && r.push({
883
+ id: "tracks",
884
+ label: "Tracks",
885
+ badge: n.selectedTracks.value.length > 0 ? n.selectedTracks.value.length : void 0,
886
+ enabled: !0,
887
+ active: n.selectedTracks.value.length > 0,
888
+ tooltip: "Show events by tracks",
889
+ variant: "default",
890
+ action: "custom",
891
+ showResetButton: !0
892
+ }), this.rootStore.speakerStore.speakers.length > 0 && r.push({
893
+ id: "speakers",
894
+ label: "Speakers",
895
+ enabled: !0,
896
+ active: !1,
897
+ tooltip: "Open speakers list",
898
+ variant: "default",
899
+ action: "custom",
900
+ showResetButton: !1
901
+ }), (t.liveEvents.length > 0 || n.showLiveOnly.value) && r.push({
902
+ id: "live",
903
+ label: "Live",
904
+ enabled: !0,
905
+ active: n.showLiveOnly.value,
906
+ tooltip: "Show events happening now",
907
+ variant: "default",
908
+ action: "toggle",
909
+ showResetButton: !1
910
+ }), t.todayEvents.length > 0 && r.push({
911
+ id: "today",
912
+ label: "Today",
913
+ enabled: !0,
914
+ active: n.date.value === "today",
915
+ tooltip: "Show today's events",
916
+ variant: "default",
917
+ action: "toggle",
918
+ showResetButton: !1
919
+ }), t.tomorrowEvents.length > 0 && r.push({
920
+ id: "tomorrow",
921
+ label: "Tomorrow",
922
+ enabled: !0,
923
+ active: n.date.value === "tomorrow",
924
+ tooltip: "Show tomorrow's events",
925
+ variant: "default",
926
+ action: "toggle",
927
+ showResetButton: !1
928
+ }), t.pastEvents.length > 0 && r.push({
929
+ id: "past",
930
+ label: "Past",
931
+ enabled: !0,
932
+ active: n.date.value === "past",
933
+ tooltip: "Show past events",
934
+ variant: "default",
935
+ action: "toggle",
936
+ showResetButton: !1
937
+ }), t.venues.length > 0 && r.push({
938
+ id: "venues",
939
+ label: "Venues",
940
+ badge: n.selectedVenues.value.length > 0 ? n.selectedVenues.value.length : void 0,
941
+ enabled: !0,
942
+ active: n.selectedVenues.value.length > 0,
943
+ tooltip: "Show events by venues",
944
+ variant: "default",
945
+ action: "custom",
946
+ showResetButton: !0
947
+ }), r;
948
+ }
949
+ createShortcuts() {
950
+ return this.computedShortcuts;
951
+ }
952
+ handleShortcutClick(e) {
953
+ switch (e) {
954
+ case "live":
955
+ this.toggleLiveFilter();
956
+ break;
957
+ case "bookmarks":
958
+ this.toggleBookmarksFilter();
959
+ break;
960
+ case "tracks":
961
+ this.rootStore.sessionsFilterStore.openFilterWithSections(["tracks"]);
962
+ break;
963
+ case "venues":
964
+ this.rootStore.sessionsFilterStore.openFilterWithSections(["venues"]);
965
+ break;
966
+ case "speakers":
967
+ this.rootStore.selectSpeakers();
968
+ break;
969
+ case "today":
970
+ this.toggleDateFilter("today");
971
+ break;
972
+ case "tomorrow":
973
+ this.toggleDateFilter("tomorrow");
974
+ break;
975
+ case "past":
976
+ this.toggleDateFilter("past");
977
+ break;
978
+ case "earliest":
979
+ this.toggleSortOrder();
980
+ break;
981
+ default: console.warn(`Unknown shortcut ID: ${e}`);
982
+ }
983
+ }
984
+ handleShortcutReset(e) {
985
+ let { sessionsFilterStore: t } = this.rootStore;
986
+ switch (e) {
987
+ case "live":
988
+ t.setPending("showLiveOnly", !1), t.applyFilters();
989
+ break;
990
+ case "tracks":
991
+ t.setPending("selectedTracks", []), t.applyFilters();
992
+ break;
993
+ case "venues":
994
+ t.setPending("selectedVenues", []), t.applyFilters();
995
+ break;
996
+ case "bookmarks":
997
+ t.setPending("showBookmarksOnly", !1), t.applyFilters();
998
+ break;
999
+ case "today":
1000
+ t.setPending("date", "all"), t.applyFilters();
1001
+ break;
1002
+ case "tomorrow":
1003
+ t.setPending("date", "all"), t.applyFilters();
1004
+ break;
1005
+ case "past":
1006
+ t.setPending("date", "all"), t.applyFilters();
1007
+ break;
1008
+ default: console.warn(`Unknown shortcut reset ID: ${e}`);
1009
+ }
1010
+ }
1011
+ shouldShowShortcuts() {
1012
+ return this.rootStore.uiState.list.type === "sessions" && this.rootStore.uiState.details === null;
1013
+ }
1014
+ toggleBookmarksFilter() {
1015
+ let { sessionsFilterStore: e } = this.rootStore, t = !e.state.filters.showBookmarksOnly.value;
1016
+ e.setPending("showBookmarksOnly", t), e.applyFilters();
1017
+ }
1018
+ toggleLiveFilter() {
1019
+ let { sessionsFilterStore: e } = this.rootStore, t = !e.state.filters.showLiveOnly.value;
1020
+ e.setPending("showLiveOnly", t), e.applyFilters();
1021
+ }
1022
+ toggleDateFilter(e) {
1023
+ let { sessionsFilterStore: t } = this.rootStore;
1024
+ t.state.filters.date.value === e ? t.setPending("date", "all") : t.setPending("date", e), t.applyFilters();
1025
+ }
1026
+ toggleSortOrder() {
1027
+ let { sessionsFilterStore: e } = this.rootStore, t = e.state.filters.sortOrder.value === "asc" ? "desc" : "asc";
1028
+ e.setPending("sortOrder", t), e.applyFilters();
1029
+ }
1030
+ }, _n(gn.prototype, "computedShortcuts", [l], Object.getOwnPropertyDescriptor(gn.prototype, "computedShortcuts"), gn.prototype), gn), yn;
1031
+ function bn(e, t, n, r, i) {
1032
+ var a = {};
1033
+ return Object.keys(r).forEach(function(e) {
1034
+ a[e] = r[e];
1035
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
1036
+ return r(e, t, n) || n;
1037
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
1038
+ }
1039
+ var xn = (yn = class extends fn {
1040
+ constructor(e) {
1041
+ super(), this.rootStore = e, this.id = "speakers";
1042
+ }
1043
+ get computedShortcuts() {
1044
+ let { speakerFilterStore: e } = this.rootStore, { filters: t } = e.state;
1045
+ return [];
1046
+ }
1047
+ createShortcuts() {
1048
+ return this.computedShortcuts;
1049
+ }
1050
+ handleShortcutClick(e) {
1051
+ switch (e) {
1052
+ case "companies":
1053
+ this.rootStore.speakerFilterStore.openFilterWithSections(["companies"]);
1054
+ break;
1055
+ case "jobTitles":
1056
+ this.rootStore.speakerFilterStore.openFilterWithSections(["jobTitles"]);
1057
+ break;
1058
+ default: console.warn(`Unknown shortcut ID: ${e}`);
1059
+ }
1060
+ }
1061
+ handleShortcutReset(e) {
1062
+ let { speakerFilterStore: t } = this.rootStore;
1063
+ switch (e) {
1064
+ case "companies":
1065
+ t.setPending("selectedCompanies", []), t.applyFilters();
1066
+ break;
1067
+ case "jobTitles":
1068
+ t.setPending("selectedJobTitles", []), t.applyFilters();
1069
+ break;
1070
+ default: console.warn(`Unknown shortcut ID for reset: ${e}`);
1071
+ }
1072
+ }
1073
+ }, bn(yn.prototype, "computedShortcuts", [l], Object.getOwnPropertyDescriptor(yn.prototype, "computedShortcuts"), yn.prototype), yn), k, Sn, Cn, wn, Tn;
1074
+ function En(e, t, n, r) {
1075
+ n && Object.defineProperty(e, t, {
1076
+ enumerable: n.enumerable,
1077
+ configurable: n.configurable,
1078
+ writable: n.writable,
1079
+ value: n.initializer ? n.initializer.call(r) : void 0
1080
+ });
1081
+ }
1082
+ function A(e, t, n, r, i) {
1083
+ var a = {};
1084
+ return Object.keys(r).forEach(function(e) {
1085
+ a[e] = r[e];
1086
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
1087
+ return r(e, t, n) || n;
1088
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
1089
+ }
1090
+ var Dn = (k = class {
1091
+ constructor(e) {
1092
+ this.rootStore = void 0, En(this, "items", Sn, this), En(this, "startPoint", Cn, this), En(this, "source", wn, this), En(this, "excludedVisitedCount", Tn, this), this.rootStore = e;
1093
+ }
1094
+ get resolvedBooths() {
1095
+ let e = /* @__PURE__ */ new Map();
1096
+ return this.startPoint && e.set(this.startPoint.id, this.startPoint), this.items.forEach((t) => {
1097
+ t.booth && e.set(t.booth.id, t.booth);
1098
+ }), Array.from(e.values());
1099
+ }
1100
+ get stopsCount() {
1101
+ return this.items.length;
1102
+ }
1103
+ get startPointBoothOptions() {
1104
+ return this.rootStore.boothStore.booths;
1105
+ }
1106
+ get startPointAutocompleteOptions() {
1107
+ let { exhibitorStore: e } = this.rootStore, t = this.startPointBoothOptions, n = [], r = /* @__PURE__ */ new Set();
1108
+ return e.exhibitors.forEach((e) => {
1109
+ e.booths.forEach((t) => {
1110
+ r.add(t.id), n.push({
1111
+ value: t.id.toString(),
1112
+ label: `${e.name} - ${t.name}`,
1113
+ exhibitorId: e.id
1114
+ });
1115
+ });
1116
+ }), t.filter((e) => !r.has(e.id)).forEach((e) => {
1117
+ n.push({
1118
+ value: e.id.toString(),
1119
+ label: e.name
1120
+ });
1121
+ }), n.sort((e, t) => e.label.localeCompare(t.label, void 0, { sensitivity: "base" }));
1122
+ }
1123
+ get title() {
1124
+ return this.source === "bookmarks" ? i("Bookmarks route") : "";
1125
+ }
1126
+ get subtitleParts() {
1127
+ let { routeInfo: e } = this.rootStore.routeStore, t;
1128
+ if (e != null && e.time) {
1129
+ let n = e.time;
1130
+ t = n < 60 ? i("< 1 min") : i("~ {{n}} min", { n: Math.round(n / 60) });
1131
+ }
1132
+ return {
1133
+ stops: i("{{count}} stops", { count: this.stopsCount }),
1134
+ from: this.startPoint ? i("From {{name}}", { name: this.startPoint.name }) : void 0,
1135
+ distance: e ? e.distance : void 0,
1136
+ travelTime: t
1137
+ };
1138
+ }
1139
+ get routeFloors() {
1140
+ let e = this.rootStore.routeStore.pathLayers;
1141
+ return e.map((t, n) => {
1142
+ var r, i, a, o, s, c;
1143
+ let l = e[n + 1], u = (r = (i = t.layer) == null ? void 0 : i.basePriority) == null ? 0 : r, ee = (a = l == null || (o = l.layer) == null ? void 0 : o.basePriority) == null ? 0 : a, d = l ? ee < u ? "up" : "down" : void 0;
1144
+ return {
1145
+ id: t.id,
1146
+ name: (s = t.layer) == null ? void 0 : s.shortName,
1147
+ description: (c = t.layer) == null ? void 0 : c.description,
1148
+ directionToNext: d
1149
+ };
1150
+ });
1151
+ }
1152
+ get currentRouteFloor() {
1153
+ let e = this.routeFloors, t = this.rootStore.routeStore.currentRouteLayer;
1154
+ if (!e.length) return;
1155
+ if (!t) return e[0] ? {
1156
+ id: e[0].id,
1157
+ name: e[0].name
1158
+ } : void 0;
1159
+ let n = e.find((e) => {
1160
+ var n, r;
1161
+ return ((n = e.description) == null ? void 0 : n.toLowerCase()) === ((r = t.description) == null ? void 0 : r.toLowerCase());
1162
+ });
1163
+ return n ? {
1164
+ id: n.id,
1165
+ name: n.name
1166
+ } : {
1167
+ id: e[0].id,
1168
+ name: e[0].name
1169
+ };
1170
+ }
1171
+ setRouteFloor(e) {
1172
+ let t = this.rootStore.routeStore.pathLayers.find((t) => t.id === e.id);
1173
+ t != null && t.layer && this.rootStore.layerStore.updateVisibility(t.layer, !0);
1174
+ }
1175
+ launch(e, t = "custom", n) {
1176
+ this.excludedVisitedCount = e.filter((e) => e.type === "exhibitor" && e.entity.visited).length, this.items = e.filter((e) => e.type !== "exhibitor" || !e.entity.visited), this.source = t, this.startPoint = n === void 0 ? this.detectStartPoint() : n;
1177
+ let { uiState: r } = this.rootStore;
1178
+ r.list = {
1179
+ type: "route-planner",
1180
+ source: t
1181
+ }, r.details = null, r.menu = !1, this.buildRoute();
1182
+ }
1183
+ launchFromBookmarks(e) {
1184
+ let { exhibitorStore: t, eventStore: n, boothStore: r } = this.rootStore, i = [];
1185
+ t.bookmarked.forEach((e) => {
1186
+ i.push({
1187
+ type: "exhibitor",
1188
+ entity: e,
1189
+ booth: e.booths[0] || null
1190
+ });
1191
+ }), r.booths.filter((e) => e.exhibitors.length === 0 && e.bookmarkedDirectly).forEach((e) => {
1192
+ i.push({
1193
+ type: "booth",
1194
+ entity: e,
1195
+ booth: e
1196
+ });
1197
+ }), this.launch(i, "bookmarks", e);
1198
+ }
1199
+ launchFromSlugs(e, t) {
1200
+ let n = this.resolveSlugs(e);
1201
+ this.launch(n, "custom", t);
1202
+ }
1203
+ resolveSlugs(e) {
1204
+ let { exhibitorStore: t, eventStore: n, boothStore: r } = this.rootStore;
1205
+ return e.filter(Boolean).map((e) => {
1206
+ let n = e.toLowerCase(), r = t.exhibitors.find((e) => {
1207
+ var t, r;
1208
+ return ((t = e.slug) == null ? void 0 : t.toLowerCase()) === n || ((r = e.externalId) == null ? void 0 : r.toLowerCase()) === n;
1209
+ });
1210
+ if (r) return {
1211
+ type: "exhibitor",
1212
+ entity: r,
1213
+ booth: r.booths[0] || null
1214
+ };
1215
+ let i = Ze(e);
1216
+ return i ? {
1217
+ type: "booth",
1218
+ entity: i,
1219
+ booth: i
1220
+ } : null;
1221
+ }).filter((e) => e !== null);
1222
+ }
1223
+ buildRoute() {
1224
+ let e = [];
1225
+ if (this.startPoint && this.startPoint.name && e.push(this.startPoint.name), this.items.forEach((t) => {
1226
+ t.booth && t.booth.name && e.push(t.booth.name);
1227
+ }), e.length < 2) {
1228
+ this.rootStore.routeStore.updateRoute([]);
1229
+ return;
1230
+ }
1231
+ let t;
1232
+ try {
1233
+ var n, r;
1234
+ let i = (n = this.rootStore.fp) == null || (r = n.getOptimizedRoutes) == null ? void 0 : r.call(n, e);
1235
+ t = Array.isArray(i) ? i.flatMap((e) => {
1236
+ var t;
1237
+ return (t = e == null ? void 0 : e.waypoints) == null ? [] : t;
1238
+ }) : [];
1239
+ } catch {
1240
+ t = [];
1241
+ }
1242
+ let i = new Set(e), a = new Set(t), o = e.length > 0 && [...i].every((e) => a.has(e));
1243
+ (!t.length || !o) && (t = e.slice()), this.reorderItemsByNames(t);
1244
+ let s = this.resolvedBooths;
1245
+ if (s.length < 2) {
1246
+ this.rootStore.routeStore.updateRoute([]);
1247
+ return;
1248
+ }
1249
+ let c = s[0], l = s[s.length - 1], u = s.slice(1, -1), ee = new Qe(c, l, u);
1250
+ this.rootStore.routeStore.selectRoute(ee, !1), this.rootStore.uiState.setIsMultiPointRoute(u.length > 0);
1251
+ }
1252
+ reorderItemsByNames(e) {
1253
+ let t = this.startPoint ? this.startPoint.name : null, n = /* @__PURE__ */ new Map();
1254
+ this.items.forEach((e) => {
1255
+ let t = e.booth ? e.booth.name : null;
1256
+ t && (n.has(t) || n.set(t, []), n.get(t).push(e));
1257
+ });
1258
+ let r = [];
1259
+ e.forEach((e) => {
1260
+ if (e !== t) {
1261
+ let t = n.get(e);
1262
+ t && t.length > 0 && r.push(...t.splice(0));
1263
+ }
1264
+ }), this.items = r;
1265
+ }
1266
+ detectStartPoint() {
1267
+ let { boothStore: e, poiTypeStore: t } = this.rootStore, n = ["entrance", "entrances"], r = t.poiTypes.find((e) => n.includes(e.name.toLowerCase()));
1268
+ return r && e.booths.find((e) => e.poiTypeId === r.id) || null;
1269
+ }
1270
+ setStartPoint(e) {
1271
+ this.startPoint = e, this.buildRoute();
1272
+ }
1273
+ removeItem(e) {
1274
+ this.items.splice(e, 1), this.buildRoute();
1275
+ }
1276
+ reorderItems(e, t) {
1277
+ let [n] = this.items.splice(e, 1);
1278
+ this.items.splice(t, 0, n), this.buildRoute();
1279
+ }
1280
+ close() {
1281
+ this.items = [], this.startPoint = null, this.source = null, this.excludedVisitedCount = 0, this.rootStore.uiState.details = null, this.rootStore.uiState.list = {
1282
+ type: "search",
1283
+ text: "",
1284
+ focused: !1
1285
+ }, this.rootStore.routeStore.selectRoute(null, !1);
1286
+ }
1287
+ }, Sn = A(k.prototype, "items", [u], {
1288
+ configurable: !0,
1289
+ enumerable: !0,
1290
+ writable: !0,
1291
+ initializer: function() {
1292
+ return [];
1293
+ }
1294
+ }), Cn = A(k.prototype, "startPoint", [u], {
1295
+ configurable: !0,
1296
+ enumerable: !0,
1297
+ writable: !0,
1298
+ initializer: function() {
1299
+ return null;
1300
+ }
1301
+ }), wn = A(k.prototype, "source", [u], {
1302
+ configurable: !0,
1303
+ enumerable: !0,
1304
+ writable: !0,
1305
+ initializer: function() {
1306
+ return null;
1307
+ }
1308
+ }), Tn = A(k.prototype, "excludedVisitedCount", [u], {
1309
+ configurable: !0,
1310
+ enumerable: !0,
1311
+ writable: !0,
1312
+ initializer: function() {
1313
+ return 0;
1314
+ }
1315
+ }), A(k.prototype, "resolvedBooths", [l], Object.getOwnPropertyDescriptor(k.prototype, "resolvedBooths"), k.prototype), A(k.prototype, "stopsCount", [l], Object.getOwnPropertyDescriptor(k.prototype, "stopsCount"), k.prototype), A(k.prototype, "startPointBoothOptions", [l], Object.getOwnPropertyDescriptor(k.prototype, "startPointBoothOptions"), k.prototype), A(k.prototype, "startPointAutocompleteOptions", [l], Object.getOwnPropertyDescriptor(k.prototype, "startPointAutocompleteOptions"), k.prototype), A(k.prototype, "title", [l], Object.getOwnPropertyDescriptor(k.prototype, "title"), k.prototype), A(k.prototype, "subtitleParts", [l], Object.getOwnPropertyDescriptor(k.prototype, "subtitleParts"), k.prototype), A(k.prototype, "routeFloors", [l], Object.getOwnPropertyDescriptor(k.prototype, "routeFloors"), k.prototype), A(k.prototype, "currentRouteFloor", [l], Object.getOwnPropertyDescriptor(k.prototype, "currentRouteFloor"), k.prototype), A(k.prototype, "setRouteFloor", [d], Object.getOwnPropertyDescriptor(k.prototype, "setRouteFloor"), k.prototype), A(k.prototype, "launch", [d], Object.getOwnPropertyDescriptor(k.prototype, "launch"), k.prototype), A(k.prototype, "launchFromBookmarks", [d], Object.getOwnPropertyDescriptor(k.prototype, "launchFromBookmarks"), k.prototype), A(k.prototype, "launchFromSlugs", [d], Object.getOwnPropertyDescriptor(k.prototype, "launchFromSlugs"), k.prototype), A(k.prototype, "buildRoute", [d], Object.getOwnPropertyDescriptor(k.prototype, "buildRoute"), k.prototype), A(k.prototype, "setStartPoint", [d], Object.getOwnPropertyDescriptor(k.prototype, "setStartPoint"), k.prototype), A(k.prototype, "removeItem", [d], Object.getOwnPropertyDescriptor(k.prototype, "removeItem"), k.prototype), A(k.prototype, "reorderItems", [d], Object.getOwnPropertyDescriptor(k.prototype, "reorderItems"), k.prototype), A(k.prototype, "close", [d], Object.getOwnPropertyDescriptor(k.prototype, "close"), k.prototype), k), On = class {
1316
+ constructor() {
1317
+ this.id = void 0;
1318
+ }
1319
+ invalidateCache() {}
1320
+ shouldShowSubButtons() {
1321
+ return !0;
1322
+ }
1323
+ }, kn;
1324
+ function An(e, t, n, r, i) {
1325
+ var a = {};
1326
+ return Object.keys(r).forEach(function(e) {
1327
+ a[e] = r[e];
1328
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
1329
+ return r(e, t, n) || n;
1330
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
1331
+ }
1332
+ var jn = (kn = class extends On {
1333
+ constructor(e) {
1334
+ super(), this.rootStore = e, this.id = "sessions";
1335
+ }
1336
+ get computedSubButtons() {
1337
+ let e = [];
1338
+ return e.push({
1339
+ id: "sessions_show_all",
1340
+ label: "All Tracks",
1341
+ text: "All Tracks",
1342
+ enabled: !0,
1343
+ active: this.rootStore.searchButtonsStore.activeSubButtonId === "sessions_show_all" || !this.rootStore.searchButtonsStore.activeSubButtonId && !this.rootStore.uiState.selectedTrack,
1344
+ parentButtonId: "sessions",
1345
+ type: "show_all",
1346
+ onClick: () => this.handleSessionsShowAllClick()
1347
+ }), this.rootStore.eventStore.tracks.forEach((t) => {
1348
+ let n = this.rootStore.eventStore.getEventsByTrack(t.id).length;
1349
+ e.push({
1350
+ id: `sessions_track_${t.id}`,
1351
+ label: t.name,
1352
+ text: t.name,
1353
+ enabled: !0,
1354
+ active: this.rootStore.searchButtonsStore.activeSubButtonId === `sessions_track_${t.id}`,
1355
+ parentButtonId: "sessions",
1356
+ type: "track",
1357
+ data: t,
1358
+ count: n,
1359
+ onClick: () => this.handleSessionsTrackClick(t)
1360
+ });
1361
+ }), e;
1362
+ }
1363
+ createSubButtons() {
1364
+ return this.computedSubButtons;
1365
+ }
1366
+ handleSubButtonClick(e) {
1367
+ if (e === "sessions_show_all") this.handleSessionsShowAllClick();
1368
+ else if (e.startsWith("sessions_track_")) {
1369
+ let t = parseInt(e.replace("sessions_track_", "")), n = this.rootStore.eventStore.tracks.find((e) => e.id === t);
1370
+ n && this.handleSessionsTrackClick(n);
1371
+ }
1372
+ }
1373
+ shouldShowSubButtons() {
1374
+ return this.rootStore.eventStore.tracks.length > 0;
1375
+ }
1376
+ reportActivation(e) {
1377
+ if (this.rootStore.searchButtonsStore.activeSubButtonId === e) return;
1378
+ let t = this.computedSubButtons.find((t) => t.id === e);
1379
+ !t || !t.label || Je("sbtnview", t.label, "subbutton");
1380
+ }
1381
+ handleSessionsShowAllClick() {
1382
+ this.reportActivation("sessions_show_all"), this.rootStore.uiState.list = {
1383
+ type: "sessions",
1384
+ text: "",
1385
+ focused: !1
1386
+ }, this.rootStore.uiState.selectedTrack = null, this.rootStore.searchButtonsStore.setSubButtonId("sessions_show_all");
1387
+ }
1388
+ handleSessionsTrackClick(e) {
1389
+ this.reportActivation(`sessions_track_${e.id}`), this.rootStore.uiState.list = {
1390
+ type: "sessions",
1391
+ text: "",
1392
+ focused: !1
1393
+ }, this.rootStore.uiState.selectedTrack = e, this.rootStore.searchButtonsStore.setSubButtonId(`sessions_track_${e.id}`);
1394
+ }
1395
+ }, An(kn.prototype, "computedSubButtons", [l], Object.getOwnPropertyDescriptor(kn.prototype, "computedSubButtons"), kn.prototype), kn), Mn = class {
1396
+ constructor() {
1397
+ this.providers = /* @__PURE__ */ new Map(), this.cache = /* @__PURE__ */ new Map();
1398
+ }
1399
+ register(e) {
1400
+ this.providers.set(e.id, e), this.cache.delete(e.id);
1401
+ }
1402
+ unregister(e) {
1403
+ this.providers.delete(e), this.cache.delete(e);
1404
+ }
1405
+ getSubButtons(e) {
1406
+ let t = this.providers.get(e);
1407
+ return t ? t.createSubButtons() : [];
1408
+ }
1409
+ handleSubButtonClick(e, t) {
1410
+ let n = this.providers.get(e);
1411
+ n && n.handleSubButtonClick(t);
1412
+ }
1413
+ shouldShowSubButtons(e) {
1414
+ let t = this.providers.get(e);
1415
+ return t ? !t.shouldShowSubButtons || t.shouldShowSubButtons() : !1;
1416
+ }
1417
+ invalidateCache(e) {
1418
+ this.cache.delete(e);
1419
+ let t = this.providers.get(e);
1420
+ t != null && t.invalidateCache && t.invalidateCache();
1421
+ }
1422
+ invalidateAllCache() {
1423
+ this.cache.clear(), this.providers.forEach((e) => {
1424
+ e.invalidateCache && e.invalidateCache();
1425
+ });
1426
+ }
1427
+ getRegisteredProviders() {
1428
+ return Array.from(this.providers.keys());
1429
+ }
1430
+ isProviderRegistered(e) {
1431
+ return this.providers.has(e);
1432
+ }
1433
+ };
1434
+ //#endregion
1435
+ //#region src/store/search-buttons/utils.ts
1436
+ function Nn(e) {
1437
+ try {
1438
+ let t = e.replace(g.POI_TYPE, ""), n = parseInt(t, 10);
1439
+ return isNaN(n) ? null : n;
1440
+ } catch {
1441
+ return null;
1442
+ }
1443
+ }
1444
+ function j(e) {
1445
+ let t = m.filterButtonsConfig;
1446
+ return !(t != null && t.searchButtons) || !Array.isArray(t.searchButtons) ? null : t.searchButtons.find((t) => t.id === e) || null;
1447
+ }
1448
+ function Pn(e) {
1449
+ let t = 0;
1450
+ for (let n of e.values()) t += n;
1451
+ return t;
1452
+ }
1453
+ function Fn(e) {
1454
+ return e && typeof e == "object" && Array.isArray(e.searchButtons) && e.searchButtons.length > 0;
1455
+ }
1456
+ //#endregion
1457
+ //#region src/store/search-buttons/SearchButtonsActions.ts
1458
+ var M;
1459
+ function N(e, t, n, r, i) {
1460
+ var a = {};
1461
+ return Object.keys(r).forEach(function(e) {
1462
+ a[e] = r[e];
1463
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
1464
+ return r(e, t, n) || n;
1465
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
1466
+ }
1467
+ var In = (M = class {
1468
+ constructor(e, t, n) {
1469
+ this.rootStore = e, this.state = t, this.filters = n;
1470
+ }
1471
+ reportActivation(e) {
1472
+ e && Je("sbtnview", e);
1473
+ }
1474
+ handleSearchButtonClick(e, t) {
1475
+ let n = {
1476
+ [h.BOOKMARKS]: () => this.handleBookmarksClick(t),
1477
+ [h.VISITED]: () => this.handleVisitedClick(t),
1478
+ [h.SESSIONS]: () => this.handleSessionsClick(t),
1479
+ [h.TOURS]: () => this.handleToursClick(t),
1480
+ [h.CATEGORIES]: () => this.handleCategoriesClick(t),
1481
+ [h.EXHIBITORS]: () => this.handleExhibitorsClick(t)
1482
+ }[e];
1483
+ if (n) {
1484
+ n();
1485
+ return;
1486
+ }
1487
+ e.startsWith(g.POI_TYPE) && this.handlePoiTypeClick(e, t);
1488
+ }
1489
+ handleExtendedSearchButtonClick(e) {
1490
+ var t;
1491
+ let n = j(e);
1492
+ if (!n) return;
1493
+ let r = n.name;
1494
+ if (n.type === "link") {
1495
+ this.handleLinkClick(n, r);
1496
+ return;
1497
+ }
1498
+ let i = ((t = n.children) == null ? void 0 : t.filter((e) => e.visible)) || [];
1499
+ if (i.length === 1 && i[0].type === "poi_types" && i[0].name === n.name) {
1500
+ this.handleSearchButtonClick(e, r);
1501
+ return;
1502
+ }
1503
+ n.children && i.length > 0 ? this.handleParentButton(e, n, r) : this.handleSearchButtonClick(e, r);
1504
+ }
1505
+ handleMainButtonClick(e) {
1506
+ this.handleSearchButtonClick(e);
1507
+ }
1508
+ handleSessionsClick(e) {
1509
+ let { uiState: t } = this.rootStore;
1510
+ t.list.type === "sessions" ? this.switchToSearch() : (this.reportActivation(e), this.resetAllFilters(), t.details = null, t.menu = !1, t.list = {
1511
+ type: "sessions",
1512
+ text: "",
1513
+ focused: !1
1514
+ }, this.state.setSubButton(null), t.selectedTrack = null, this.state.subButtonsEnabled && this.showSubButtons("sessions"), this.isMobile && (t.desiredOverlaySize = "full"));
1515
+ }
1516
+ togglePoiType(e) {
1517
+ this.handleSearchButtonClick(`${g.POI_TYPE}${e}`);
1518
+ }
1519
+ clearAllFilters() {
1520
+ this.switchToSearch();
1521
+ }
1522
+ deactivateForNavigation() {
1523
+ let { uiState: e } = this.rootStore;
1524
+ (this.state.activePoiFilterId !== null || this.state.searchShortcutState.activeParentId !== null || e.hasAppliedFilters) && this.clearActiveFilters();
1525
+ }
1526
+ showSubButtons(e) {
1527
+ this.state.subButtonsEnabled && (this.state.setSubButtonParent(e), this.state.setSubButton(null), this.rootStore.uiState.subButtonsVisible = !0);
1528
+ }
1529
+ hideSubButtons() {
1530
+ this.state.setSubButtonParent(null), this.state.setSubButton(null), this.rootStore.uiState.subButtonsVisible = !1;
1531
+ }
1532
+ handleSubButtonClick(e) {
1533
+ this.state.activeSubButtonId !== e && this.state.setSubButton(e);
1534
+ }
1535
+ toggleListView(e, t, n) {
1536
+ this.rootStore.uiState.list.type === e ? this.switchToSearch() : (this.reportActivation(n), this.resetAllFilters(), t());
1537
+ }
1538
+ handleBookmarksClick(e) {
1539
+ this.toggleListView("bookmarks", () => {
1540
+ this.rootStore.clickBookmarks();
1541
+ }, e);
1542
+ }
1543
+ handleVisitedClick(e) {
1544
+ this.toggleListView("visited", () => {
1545
+ this.rootStore.clickVisited();
1546
+ }, e);
1547
+ }
1548
+ handleToursClick(e) {
1549
+ let { uiState: t } = this.rootStore;
1550
+ t.list.type === "tours" ? this.switchToSearch() : (this.reportActivation(e), this.resetAllFilters(), t.details = null, t.menu = !1, t.list = {
1551
+ type: "tours",
1552
+ text: "",
1553
+ focused: !1
1554
+ }, this.isMobile && (t.desiredOverlaySize = "full"));
1555
+ }
1556
+ handleCategoriesClick(e) {
1557
+ let { uiState: t } = this.rootStore;
1558
+ this.reportActivation(e), t.list.type === "search" ? this.state.activePoiFilterId && this.filters.clearPoiTypeFilters() : this.switchToSearch(), this.state.searchShortcutState.activeParentId && (this.state.setActiveParentId(null), this.state.clearChildren(), this.state.showShortcuts(!1), this.filters.clearAllChildFilters()), this.rootStore.categoryFilterStore.openFilter();
1559
+ }
1560
+ handleExhibitorsClick(e) {
1561
+ let { uiState: t } = this.rootStore;
1562
+ t.list.type === "exhibitors" ? this.switchToSearch() : (this.reportActivation(e), this.resetAllFilters(), t.details = null, t.menu = !1, t.list = {
1563
+ type: "exhibitors",
1564
+ text: "",
1565
+ focused: !1
1566
+ }, this.isMobile && (t.desiredOverlaySize = "full"));
1567
+ }
1568
+ handlePoiTypeClick(e, t) {
1569
+ let { uiState: n } = this.rootStore, r = this.state.activePoiFilterId !== e;
1570
+ r && this.reportActivation(t);
1571
+ let i = n.list.type === "search" && n.list.text || "";
1572
+ n.list.type === "search" ? n.selectedCategoryFilters.length > 0 && this.filters.clearCategoryFilters() : this.switchToSearch(!0), this.state.searchShortcutState.activeParentId && (this.state.setActiveParentId(null), this.state.clearChildren(), this.state.showShortcuts(!1), this.filters.clearAllChildFilters()), r ? this.setPoiFilterFromString(e) : this.filters.clearPoiTypeFilters(), i && n.list.type === "search" && (n.list = {
1573
+ type: "search",
1574
+ text: i,
1575
+ focused: !1
1576
+ }), this.rootStore.searchStore.selectSearchAndFocus(i);
1577
+ }
1578
+ handleLinkClick(e, t) {
1579
+ var n;
1580
+ let r = (n = e.children) == null ? void 0 : n.find((e) => e.type === "link");
1581
+ r && "linkUrl" in r && (this.reportActivation(t), window.open(r.linkUrl, "_blank"));
1582
+ }
1583
+ handleParentButton(e, t, n) {
1584
+ let { uiState: r } = this.rootStore;
1585
+ if (this.state.searchShortcutState.activeParentId === e) {
1586
+ this.state.setActiveParentId(null), this.state.clearChildren(), this.state.showShortcuts(!1), this.filters.clearAllChildFilters(), this.rootStore.urlFilterManager.clearAllFilters(), r.centerMap = !0, r.overlaySize === "full" && r.searchFocused && this.rootStore.searchStore.setFocused(!1);
1587
+ return;
1588
+ }
1589
+ this.reportActivation(n), r.list.type !== "search" && this.switchToSearch(), this.state.activePoiFilterId && this.state.setPoiFilter(null), this.state.setActiveParentId(e), this.state.showShortcuts(!0), this.state.clearChildren(), this.filters.applyAllChildrenFilters(t), this.rootStore.searchStore.selectSearchAndFocus();
1590
+ }
1591
+ preserveSearchText(e) {
1592
+ let { uiState: t } = this.rootStore, n = t.list.type === "search" && t.list.text || "";
1593
+ e(), t.list.type === "search" && n && (t.list = {
1594
+ type: "search",
1595
+ text: n,
1596
+ focused: !1
1597
+ });
1598
+ }
1599
+ switchToSearch(e = !1) {
1600
+ let t = () => {
1601
+ this.resetAllFilters(), this.rootStore.uiState.details = null, this.rootStore.uiState.menu = !1, this.rootStore.uiState.list = {
1602
+ type: "search",
1603
+ text: "",
1604
+ focused: !1
1605
+ };
1606
+ };
1607
+ e ? this.preserveSearchText(t) : t();
1608
+ }
1609
+ resetAllFilters() {
1610
+ this.clearActiveFilters(), this.rootStore.fp.hidePathways();
1611
+ }
1612
+ clearActiveFilters() {
1613
+ this.state.reset(), this.rootStore.uiState.selectedPoiTypeFilters = [], this.rootStore.uiState.selectedCategoryFilters = [], this.rootStore.uiState.categoryFilterOpen = !1, this.rootStore.categoryFilterStore.state.selectedItems = [], this.rootStore.categoryFilterStore.state.pendingItems = [], this.rootStore.urlFilterManager.clearAllFilters();
1614
+ }
1615
+ setPoiFilterFromString(e) {
1616
+ this.state.setPoiFilter(e);
1617
+ let t = Nn(e);
1618
+ if (t !== null) {
1619
+ let e = this.rootStore.poiTypeStore.poiTypes.find((e) => e.id === t);
1620
+ e && (this.rootStore.uiState.selectedPoiTypeFilters = [e], this.rootStore.urlFilterManager.setPoiType(e.name));
1621
+ }
1622
+ }
1623
+ get isMobile() {
1624
+ return typeof window < "u" && window.innerWidth <= 768;
1625
+ }
1626
+ }, N(M.prototype, "handleSearchButtonClick", [d], Object.getOwnPropertyDescriptor(M.prototype, "handleSearchButtonClick"), M.prototype), N(M.prototype, "handleExtendedSearchButtonClick", [d], Object.getOwnPropertyDescriptor(M.prototype, "handleExtendedSearchButtonClick"), M.prototype), N(M.prototype, "handleMainButtonClick", [d], Object.getOwnPropertyDescriptor(M.prototype, "handleMainButtonClick"), M.prototype), N(M.prototype, "handleSessionsClick", [d], Object.getOwnPropertyDescriptor(M.prototype, "handleSessionsClick"), M.prototype), N(M.prototype, "togglePoiType", [d], Object.getOwnPropertyDescriptor(M.prototype, "togglePoiType"), M.prototype), N(M.prototype, "clearAllFilters", [d], Object.getOwnPropertyDescriptor(M.prototype, "clearAllFilters"), M.prototype), N(M.prototype, "deactivateForNavigation", [d], Object.getOwnPropertyDescriptor(M.prototype, "deactivateForNavigation"), M.prototype), N(M.prototype, "showSubButtons", [d], Object.getOwnPropertyDescriptor(M.prototype, "showSubButtons"), M.prototype), N(M.prototype, "hideSubButtons", [d], Object.getOwnPropertyDescriptor(M.prototype, "hideSubButtons"), M.prototype), N(M.prototype, "handleSubButtonClick", [d], Object.getOwnPropertyDescriptor(M.prototype, "handleSubButtonClick"), M.prototype), M), Ln = class {
1627
+ constructor(e, t, n) {
1628
+ this.rootStore = e, this.state = t, this.actions = n, this.buttonFactories = void 0, this.buttonFactories = {
1629
+ [h.BOOKMARKS]: (e) => this.createBookmarksButton(e),
1630
+ [h.VISITED]: (e) => this.createVisitedButton(e),
1631
+ [h.CATEGORIES]: (e) => this.createCategoriesButton(e),
1632
+ [h.SESSIONS]: (e) => this.createSessionsButton(e),
1633
+ [h.TOURS]: (e) => this.createGuidedToursButton(e),
1634
+ [h.POI_TYPE]: (e) => this.createPoiTypeButton(e),
1635
+ [h.POI_TYPES]: (e) => this.createPoiTypesButton(e),
1636
+ [h.LINK]: (e) => this.createLinkButton(e),
1637
+ [h.EXHIBITORS]: (e) => this.createExhibitorsButton(e)
1638
+ };
1639
+ }
1640
+ createButtons(e) {
1641
+ return this.dedupeButtons(e).filter((e) => e.visible).map((e) => {
1642
+ var t;
1643
+ return {
1644
+ button: this.createButton(e),
1645
+ order: (t = e.order) == null ? 2 ** 53 - 1 : t
1646
+ };
1647
+ }).filter((e) => e.button !== null).sort((e, t) => e.order - t.order).map((e) => e.button);
1648
+ }
1649
+ createButton(e) {
1650
+ let t = this.buttonFactories[e.type];
1651
+ return t ? t(e) : null;
1652
+ }
1653
+ createBaseButton(e) {
1654
+ let t = e.color && e.color.toUpperCase() !== "#FFFFFF", n = r(e.name);
1655
+ return {
1656
+ id: e.id || `${e.type}_${e.name}`,
1657
+ label: n,
1658
+ text: n,
1659
+ enabled: !0,
1660
+ isDimmed: !1,
1661
+ isClickable: !0,
1662
+ backgroundColor: t ? e.color : void 0,
1663
+ textColor: t && e.color ? tt(e.color) : void 0
1664
+ };
1665
+ }
1666
+ createButtonId(e, t) {
1667
+ return t.id || `${e}${t.name}`;
1668
+ }
1669
+ createBookmarksButton(e) {
1670
+ let { uiState: t } = this.rootStore;
1671
+ return t.kiosk || t.disableBookmarked || m.hideBookmarks ? null : {
1672
+ ...this.createBaseButton(e),
1673
+ id: h.BOOKMARKS,
1674
+ icon: yt.BOOKMARKS,
1675
+ active: t.list.type === "bookmarks",
1676
+ count: this.countBookmarks(),
1677
+ onClick: () => this.actions.handleSearchButtonClick(h.BOOKMARKS, e.name)
1678
+ };
1679
+ }
1680
+ createVisitedButton(e) {
1681
+ let { uiState: t } = this.rootStore;
1682
+ return t.kiosk ? null : {
1683
+ ...this.createBaseButton(e),
1684
+ id: h.VISITED,
1685
+ icon: yt.VISITED,
1686
+ active: t.list.type === "visited",
1687
+ count: this.countVisited(),
1688
+ onClick: () => this.actions.handleSearchButtonClick(h.VISITED, e.name)
1689
+ };
1690
+ }
1691
+ createCategoriesButton(e) {
1692
+ var t;
1693
+ if (!((t = e.children) != null && t.length)) {
1694
+ let t = this.getCategoriesTotalCount();
1695
+ return t > 0 ? this.createSimpleCategoriesButton(e, t) : null;
1696
+ }
1697
+ let n = (e.children || []).filter((e) => e.visible);
1698
+ if (n.length === 0) return null;
1699
+ let r = this.createButtonId(g.CATEGORIES, e), i = n.filter((e) => e.type === "categories"), a = this.countCategories(i);
1700
+ return {
1701
+ ...this.createBaseButton(e),
1702
+ id: r,
1703
+ active: this.state.searchShortcutState.activeParentId === r,
1704
+ count: a,
1705
+ showZeroCount: !0,
1706
+ onClick: () => this.actions.handleExtendedSearchButtonClick(r)
1707
+ };
1708
+ }
1709
+ createSimpleCategoriesButton(e, t) {
1710
+ let { uiState: n } = this.rootStore, r = n.selectedCategoryFilters.length > 0 ? n.selectedCategoryFilters.length : t;
1711
+ return {
1712
+ ...this.createBaseButton(e),
1713
+ id: h.CATEGORIES,
1714
+ active: n.selectedCategoryFilters.length > 0 && !this.state.searchShortcutState.activeParentId,
1715
+ count: r,
1716
+ showZeroCount: !0,
1717
+ onClick: () => this.actions.handleSearchButtonClick(h.CATEGORIES, e.name)
1718
+ };
1719
+ }
1720
+ createSessionsButton(e) {
1721
+ let { uiState: t } = this.rootStore, n = this.getSessionsTotalCount();
1722
+ return n === 0 ? null : {
1723
+ ...this.createBaseButton(e),
1724
+ id: h.SESSIONS,
1725
+ icon: yt.SESSIONS,
1726
+ active: t.list.type === "sessions",
1727
+ count: n,
1728
+ showZeroCount: !0,
1729
+ hasSubButtons: !0,
1730
+ onClick: () => this.actions.handleSessionsClick(e.name)
1731
+ };
1732
+ }
1733
+ createGuidedToursButton(e) {
1734
+ let { uiState: t } = this.rootStore, n = this.getGuidedToursTotalCount();
1735
+ return n === 0 ? null : {
1736
+ ...this.createBaseButton(e),
1737
+ id: "guided_tours",
1738
+ active: t.list.type === "tours" || t.list.type === "multi-point-tour",
1739
+ count: n,
1740
+ showZeroCount: !0,
1741
+ onClick: () => this.actions.handleSearchButtonClick("guided_tours", e.name)
1742
+ };
1743
+ }
1744
+ createPoiTypeButton(e) {
1745
+ let t = this.rootStore.poiTypeStore.poiTypes.find((t) => t.name === e.name);
1746
+ if (!t) return null;
1747
+ let n = `${g.POI_TYPE}${t.id}`, r = this.getPoiTypeTotalCount(t.id);
1748
+ return r === 0 ? null : {
1749
+ ...this.createBaseButton(e),
1750
+ id: n,
1751
+ active: this.state.activePoiFilterId === n,
1752
+ count: r,
1753
+ showZeroCount: !0,
1754
+ onClick: () => this.actions.handleSearchButtonClick(n, e.name)
1755
+ };
1756
+ }
1757
+ createPoiTypesButton(e) {
1758
+ var t;
1759
+ if (!((t = e.children) != null && t.length)) return this.createPoiTypeButton(e);
1760
+ let n = e.children.filter((e) => e.visible);
1761
+ if (n.length === 0) return null;
1762
+ if (this.shouldFlattenToSinglePoiType(n, e)) return this.createPoiTypeButton(e);
1763
+ let r = n.filter((e) => e.type !== "link"), i = this.countPoiTypes(r), a = this.createButtonId(g.POI_TYPES, e);
1764
+ return {
1765
+ ...this.createBaseButton(e),
1766
+ id: a,
1767
+ active: this.state.searchShortcutState.activeParentId === a,
1768
+ count: i,
1769
+ showZeroCount: !0,
1770
+ onClick: () => this.actions.handleExtendedSearchButtonClick(a)
1771
+ };
1772
+ }
1773
+ shouldFlattenToSinglePoiType(e, t) {
1774
+ return e.length === 1 && e[0].type === "poi_types" && e[0].name === t.name;
1775
+ }
1776
+ createLinkButton(e) {
1777
+ let t = this.createButtonId(g.LINK, e);
1778
+ return {
1779
+ ...this.createBaseButton(e),
1780
+ id: t,
1781
+ active: !1,
1782
+ onClick: () => this.actions.handleExtendedSearchButtonClick(t)
1783
+ };
1784
+ }
1785
+ createExhibitorsButton(e) {
1786
+ let { uiState: t } = this.rootStore, n = this.getExhibitorsTotalCount();
1787
+ return n === 0 ? null : {
1788
+ ...this.createBaseButton(e),
1789
+ id: h.EXHIBITORS,
1790
+ icon: yt.EXHIBITORS,
1791
+ active: t.list.type === "exhibitors",
1792
+ count: n,
1793
+ showZeroCount: !0,
1794
+ onClick: () => this.actions.handleSearchButtonClick(h.EXHIBITORS, e.name)
1795
+ };
1796
+ }
1797
+ countCategories(e) {
1798
+ let { categoryById: t } = this.rootStore.categoryStore, n = /* @__PURE__ */ new Set();
1799
+ return e.forEach((e) => {
1800
+ if (e.type !== "categories") return;
1801
+ let r = t.get(Number(e.id));
1802
+ r && r.exhibitors.forEach((e) => n.add(e.id));
1803
+ }), n.size;
1804
+ }
1805
+ countPoiTypes(e) {
1806
+ return e.reduce((e, t) => {
1807
+ if (t.type !== "poi_types") return e;
1808
+ if (t.count !== void 0) return e + t.count;
1809
+ let n = Number(t.id), r = this.rootStore.poiTypeStore.poiTypes.find((e) => e.id === n);
1810
+ return r ? e + this.rootStore.boothStore.booths.filter((e) => e.poiTypeId === r.id).length : e;
1811
+ }, 0);
1812
+ }
1813
+ dedupeButtons(e) {
1814
+ let t = /* @__PURE__ */ new Set();
1815
+ return e.filter((e) => {
1816
+ let n = `${e.type}_${e.name}`;
1817
+ return t.has(n) ? !1 : (t.add(n), !0);
1818
+ });
1819
+ }
1820
+ countBookmarks() {
1821
+ return this.rootStore.exhibitorStore.bookmarked.length + this.rootStore.eventStore.bookmarked.length + this.rootStore.speakerStore.bookmarked.length + this.rootStore.boothStore.booths.filter((e) => e.exhibitors.length === 0 && e.bookmarkedDirectly).length;
1822
+ }
1823
+ countVisited() {
1824
+ return this.rootStore.exhibitorStore.visited.length + this.rootStore.eventStore.visited.length;
1825
+ }
1826
+ getSessionsTotalCount() {
1827
+ return this.rootStore.eventStore.eventItems.length;
1828
+ }
1829
+ getGuidedToursTotalCount() {
1830
+ return this.rootStore.toursStore.hasTours ? this.rootStore.toursStore.tourItems.length : 0;
1831
+ }
1832
+ getCategoriesTotalCount() {
1833
+ return this.rootStore.categoryStore.categories.filter((e) => e.exhibitors.length > 0).length;
1834
+ }
1835
+ getPoiTypeTotalCount(e) {
1836
+ return this.rootStore.boothStore.booths.filter((t) => t.poiTypeId === e).length;
1837
+ }
1838
+ getExhibitorsTotalCount() {
1839
+ return this.rootStore.exhibitorStore.exhibitors.length;
1840
+ }
1841
+ }, P;
1842
+ function Rn(e, t, n, r, i) {
1843
+ var a = {};
1844
+ return Object.keys(r).forEach(function(e) {
1845
+ a[e] = r[e];
1846
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
1847
+ return r(e, t, n) || n;
1848
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
1849
+ }
1850
+ var zn = (P = class {
1851
+ constructor(e, t) {
1852
+ this.rootStore = e, this.state = t;
1853
+ }
1854
+ applyAllChildrenFilters(e) {
1855
+ if (!e.children) return;
1856
+ let { uiState: t } = this.rootStore, n = e.children.filter((e) => e.visible), { categories: r, poiTypes: i } = this.collectFilters(n);
1857
+ t.selectedCategoryFilters = r, t.selectedPoiTypeFilters = i, t.categoryFilterOpen = r.length > 0;
1858
+ }
1859
+ applyChildFilters() {
1860
+ let { uiState: e } = this.rootStore, t = Array.from(this.state.searchShortcutState.activeChildren);
1861
+ if (e.selectedCategoryFilters = [], e.selectedPoiTypeFilters = [], e.categoryFilterOpen = !1, t.length === 0) return;
1862
+ let n = j(this.state.searchShortcutState.activeParentId);
1863
+ if (!(n != null && n.children)) return;
1864
+ let r = n.children.filter((e) => e.visible), { categories: i, poiTypes: a } = this.collectSelectedFilters(r, t);
1865
+ e.selectedCategoryFilters = i, e.selectedPoiTypeFilters = a, e.categoryFilterOpen = i.length > 0;
1866
+ }
1867
+ clearAllChildFilters() {
1868
+ this.state.clearChildren(), this.rootStore.uiState.selectedCategoryFilters = [], this.rootStore.uiState.selectedPoiTypeFilters = [], this.rootStore.uiState.categoryFilterOpen = !1;
1869
+ }
1870
+ clearCategoryFilters() {
1871
+ let { uiState: e } = this.rootStore;
1872
+ e.selectedCategoryFilters = [], this.rootStore.categoryFilterStore.state.selectedItems = [], this.rootStore.categoryFilterStore.state.pendingItems = [], this.rootStore.urlFilterManager.setCategories([]);
1873
+ }
1874
+ clearPoiTypeFilters() {
1875
+ this.state.setPoiFilter(null), this.rootStore.uiState.selectedPoiTypeFilters = [], this.rootStore.urlFilterManager.setPoiType(null);
1876
+ }
1877
+ toggleChildFilter(e) {
1878
+ let t = j(this.state.searchShortcutState.activeParentId);
1879
+ t != null && t.children && (this.state.toggleChild(e), this.state.hasActiveChildren ? this.applyChildFilters() : this.applyAllChildrenFilters(t));
1880
+ }
1881
+ getActiveParent() {
1882
+ return this.state.searchShortcutState.activeParentId ? j(this.state.searchShortcutState.activeParentId) : null;
1883
+ }
1884
+ areAllSelected() {
1885
+ if (!this.state.searchShortcutState.activeParentId) return !1;
1886
+ let e = j(this.state.searchShortcutState.activeParentId);
1887
+ if (!(e != null && e.children)) return !1;
1888
+ let t = e.children.filter((e) => e.visible).filter((e) => e.type !== "link");
1889
+ return t.length > 0 && t.every((e) => {
1890
+ var t;
1891
+ let n = ((t = e.id) == null ? void 0 : t.toString()) || e.name;
1892
+ return this.state.isChildActive(n);
1893
+ });
1894
+ }
1895
+ getChildrenCount() {
1896
+ if (!this.state.searchShortcutState.activeParentId) return 0;
1897
+ let e = j(this.state.searchShortcutState.activeParentId);
1898
+ return e != null && e.children ? e.children.filter((e) => e.visible).filter((e) => e.type !== "link").length : 0;
1899
+ }
1900
+ collectFilters(e) {
1901
+ let t = [], n = [];
1902
+ return e.forEach((e) => {
1903
+ let r = Number(e.id);
1904
+ if (e.type === "categories") {
1905
+ let e = this.rootStore.categoryStore.categories.find((e) => e.id === r);
1906
+ e && t.push(e);
1907
+ } else if (e.type === "poi_types") {
1908
+ let e = this.rootStore.poiTypeStore.poiTypes.find((e) => e.id === r);
1909
+ e && n.push(e);
1910
+ }
1911
+ }), {
1912
+ categories: t,
1913
+ poiTypes: n
1914
+ };
1915
+ }
1916
+ collectSelectedFilters(e, t) {
1917
+ let n = [], r = [];
1918
+ return t.forEach((t) => {
1919
+ let i = e.find((e) => {
1920
+ var n;
1921
+ return e.type !== "link" && (((n = e.id) == null ? void 0 : n.toString()) || e.name) === t;
1922
+ });
1923
+ if (!i) return;
1924
+ let a = Number(i.id);
1925
+ if (i.type === "categories") {
1926
+ let e = this.rootStore.categoryStore.categories.find((e) => e.id === a);
1927
+ e && n.push(e);
1928
+ } else if (i.type === "poi_types") {
1929
+ let e = this.rootStore.poiTypeStore.poiTypes.find((e) => e.id === a);
1930
+ e && r.push(e);
1931
+ }
1932
+ }), {
1933
+ categories: n,
1934
+ poiTypes: r
1935
+ };
1936
+ }
1937
+ }, Rn(P.prototype, "applyAllChildrenFilters", [d], Object.getOwnPropertyDescriptor(P.prototype, "applyAllChildrenFilters"), P.prototype), Rn(P.prototype, "applyChildFilters", [d], Object.getOwnPropertyDescriptor(P.prototype, "applyChildFilters"), P.prototype), Rn(P.prototype, "clearAllChildFilters", [d], Object.getOwnPropertyDescriptor(P.prototype, "clearAllChildFilters"), P.prototype), Rn(P.prototype, "clearCategoryFilters", [d], Object.getOwnPropertyDescriptor(P.prototype, "clearCategoryFilters"), P.prototype), Rn(P.prototype, "clearPoiTypeFilters", [d], Object.getOwnPropertyDescriptor(P.prototype, "clearPoiTypeFilters"), P.prototype), Rn(P.prototype, "toggleChildFilter", [d], Object.getOwnPropertyDescriptor(P.prototype, "toggleChildFilter"), P.prototype), P), F, Bn, Vn, Hn, Un, Wn, Gn;
1938
+ function Kn(e, t, n, r) {
1939
+ n && Object.defineProperty(e, t, {
1940
+ enumerable: n.enumerable,
1941
+ configurable: n.configurable,
1942
+ writable: n.writable,
1943
+ value: n.initializer ? n.initializer.call(r) : void 0
1944
+ });
1945
+ }
1946
+ function I(e, t, n, r, i) {
1947
+ var a = {};
1948
+ return Object.keys(r).forEach(function(e) {
1949
+ a[e] = r[e];
1950
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
1951
+ return r(e, t, n) || n;
1952
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
1953
+ }
1954
+ var qn = (F = class {
1955
+ constructor() {
1956
+ Kn(this, "isVisible", Bn, this), Kn(this, "activePoiFilterId", Vn, this), Kn(this, "activeSubButtonsParentId", Hn, this), Kn(this, "activeSubButtonId", Un, this), Kn(this, "subButtonsEnabled", Wn, this), Kn(this, "searchShortcutState", Gn, this);
1957
+ }
1958
+ setVisible(e) {
1959
+ this.isVisible = e;
1960
+ }
1961
+ setSubButtonParent(e) {
1962
+ this.activeSubButtonsParentId = e;
1963
+ }
1964
+ setPoiFilter(e) {
1965
+ this.activePoiFilterId = e;
1966
+ }
1967
+ setSubButton(e) {
1968
+ this.activeSubButtonId = e;
1969
+ }
1970
+ setSubButtonsEnabled(e) {
1971
+ this.subButtonsEnabled = e;
1972
+ }
1973
+ setActiveParentId(e) {
1974
+ this.searchShortcutState.activeParentId = e;
1975
+ }
1976
+ showShortcuts(e) {
1977
+ this.searchShortcutState.isShortcutsVisible = e;
1978
+ }
1979
+ clearChildren() {
1980
+ this.searchShortcutState.activeChildren.clear();
1981
+ }
1982
+ toggleChild(e) {
1983
+ this.searchShortcutState.activeChildren.has(e) ? this.searchShortcutState.activeChildren.delete(e) : this.searchShortcutState.activeChildren.add(e);
1984
+ }
1985
+ reset() {
1986
+ this.activePoiFilterId = null, this.searchShortcutState.activeParentId = null, this.searchShortcutState.activeChildren.clear(), this.searchShortcutState.isShortcutsVisible = !1;
1987
+ }
1988
+ get hasActiveChildren() {
1989
+ return this.searchShortcutState.activeChildren.size > 0;
1990
+ }
1991
+ get activeChildrenCount() {
1992
+ return this.searchShortcutState.activeChildren.size;
1993
+ }
1994
+ get hasActiveParentWithChildren() {
1995
+ return this.searchShortcutState.isShortcutsVisible && this.searchShortcutState.activeParentId !== null;
1996
+ }
1997
+ isChildActive(e) {
1998
+ return this.searchShortcutState.activeChildren.has(e);
1999
+ }
2000
+ }, Bn = I(F.prototype, "isVisible", [u], {
2001
+ configurable: !0,
2002
+ enumerable: !0,
2003
+ writable: !0,
2004
+ initializer: function() {
2005
+ return !0;
2006
+ }
2007
+ }), Vn = I(F.prototype, "activePoiFilterId", [u], {
2008
+ configurable: !0,
2009
+ enumerable: !0,
2010
+ writable: !0,
2011
+ initializer: function() {
2012
+ return null;
2013
+ }
2014
+ }), Hn = I(F.prototype, "activeSubButtonsParentId", [u], {
2015
+ configurable: !0,
2016
+ enumerable: !0,
2017
+ writable: !0,
2018
+ initializer: function() {
2019
+ return null;
2020
+ }
2021
+ }), Un = I(F.prototype, "activeSubButtonId", [u], {
2022
+ configurable: !0,
2023
+ enumerable: !0,
2024
+ writable: !0,
2025
+ initializer: function() {
2026
+ return null;
2027
+ }
2028
+ }), Wn = I(F.prototype, "subButtonsEnabled", [u], {
2029
+ configurable: !0,
2030
+ enumerable: !0,
2031
+ writable: !0,
2032
+ initializer: function() {
2033
+ return !1;
2034
+ }
2035
+ }), Gn = I(F.prototype, "searchShortcutState", [u], {
2036
+ configurable: !0,
2037
+ enumerable: !0,
2038
+ writable: !0,
2039
+ initializer: function() {
2040
+ return {
2041
+ activeParentId: null,
2042
+ activeChildren: /* @__PURE__ */ new Set(),
2043
+ isShortcutsVisible: !1
2044
+ };
2045
+ }
2046
+ }), I(F.prototype, "setVisible", [d], Object.getOwnPropertyDescriptor(F.prototype, "setVisible"), F.prototype), I(F.prototype, "setSubButtonParent", [d], Object.getOwnPropertyDescriptor(F.prototype, "setSubButtonParent"), F.prototype), I(F.prototype, "setPoiFilter", [d], Object.getOwnPropertyDescriptor(F.prototype, "setPoiFilter"), F.prototype), I(F.prototype, "setSubButton", [d], Object.getOwnPropertyDescriptor(F.prototype, "setSubButton"), F.prototype), I(F.prototype, "setSubButtonsEnabled", [d], Object.getOwnPropertyDescriptor(F.prototype, "setSubButtonsEnabled"), F.prototype), I(F.prototype, "setActiveParentId", [d], Object.getOwnPropertyDescriptor(F.prototype, "setActiveParentId"), F.prototype), I(F.prototype, "showShortcuts", [d], Object.getOwnPropertyDescriptor(F.prototype, "showShortcuts"), F.prototype), I(F.prototype, "clearChildren", [d], Object.getOwnPropertyDescriptor(F.prototype, "clearChildren"), F.prototype), I(F.prototype, "toggleChild", [d], Object.getOwnPropertyDescriptor(F.prototype, "toggleChild"), F.prototype), I(F.prototype, "reset", [d], Object.getOwnPropertyDescriptor(F.prototype, "reset"), F.prototype), I(F.prototype, "hasActiveChildren", [l], Object.getOwnPropertyDescriptor(F.prototype, "hasActiveChildren"), F.prototype), I(F.prototype, "activeChildrenCount", [l], Object.getOwnPropertyDescriptor(F.prototype, "activeChildrenCount"), F.prototype), I(F.prototype, "hasActiveParentWithChildren", [l], Object.getOwnPropertyDescriptor(F.prototype, "hasActiveParentWithChildren"), F.prototype), F), L;
2047
+ function R(e, t, n, r, i) {
2048
+ var a = {};
2049
+ return Object.keys(r).forEach(function(e) {
2050
+ a[e] = r[e];
2051
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
2052
+ return r(e, t, n) || n;
2053
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
2054
+ }
2055
+ var Jn = (L = class {
2056
+ constructor(e) {
2057
+ this.rootStore = void 0, this._subButtonRegistry = void 0, this.state = void 0, this.filters = void 0, this.actions = void 0, this.factory = void 0, this.poiTypeCountsCache = /* @__PURE__ */ new Map(), this.keepFiltersOnNextEntry = !1, this.lastPoiTypeCountUpdate = 0, this.rootStore = e, this.state = new qn(), this.filters = new zn(e, this.state), this.actions = new In(e, this.state, this.filters), this.factory = new Ln(e, this.state, this.actions), this.setupReactions();
2058
+ }
2059
+ setupReactions() {
2060
+ Pe(() => this.rootStore.boothStore.booths.length, () => this.invalidatePoiTypeCounts()), Pe(() => this.isNavigationOpen, (e) => {
2061
+ if (e) {
2062
+ if (this.keepFiltersOnNextEntry) {
2063
+ this.keepFiltersOnNextEntry = !1;
2064
+ return;
2065
+ }
2066
+ this.actions.deactivateForNavigation();
2067
+ }
2068
+ });
2069
+ }
2070
+ keepFiltersOnNextNavigation() {
2071
+ this.keepFiltersOnNextEntry = !0;
2072
+ }
2073
+ get isNavigationOpen() {
2074
+ let { uiState: e } = this.rootStore;
2075
+ return e.selectedRoute !== null || e.list.type === "route-planner";
2076
+ }
2077
+ get subButtonRegistry() {
2078
+ return this._subButtonRegistry || (this._subButtonRegistry = new Mn(), this.registerSubButtonProviders()), this._subButtonRegistry;
2079
+ }
2080
+ registerSubButtonProviders() {
2081
+ this.subButtonRegistry.register(new jn(this.rootStore));
2082
+ }
2083
+ invalidatePoiTypeCounts() {
2084
+ this.poiTypeCountsCache.clear(), this.lastPoiTypeCountUpdate = 0;
2085
+ }
2086
+ get isVisible() {
2087
+ return this.state.isVisible;
2088
+ }
2089
+ get shouldShow() {
2090
+ let { uiState: e } = this.rootStore;
2091
+ if (e.screenSize.width >= 768) return this.state.isVisible;
2092
+ let t = !!(e.selectedExhibitor || e.selectedBooth || e.selectedEventItem || e.selectedRoute || e.menu || e.list.type === "language");
2093
+ return this.state.isVisible && !t;
2094
+ }
2095
+ get activePoiFilterId() {
2096
+ return this.state.activePoiFilterId;
2097
+ }
2098
+ get activeSubButtonsParentId() {
2099
+ return this.state.activeSubButtonsParentId;
2100
+ }
2101
+ get activeSubButtonId() {
2102
+ return this.state.activeSubButtonId;
2103
+ }
2104
+ get subButtonsEnabled() {
2105
+ return this.state.subButtonsEnabled;
2106
+ }
2107
+ get searchShortcutState() {
2108
+ return this.state.searchShortcutState;
2109
+ }
2110
+ get searchButtons() {
2111
+ let e = m.filterButtonsConfig;
2112
+ if (!Fn(e)) return console.warn("[SearchButtonsStore] Invalid filterButtonsConfig detected"), [];
2113
+ let t = e.searchButtons;
2114
+ return this.factory.createButtons(t);
2115
+ }
2116
+ get hasAnySearchButtons() {
2117
+ return this.searchButtons.length > 0;
2118
+ }
2119
+ get hasActiveSearchButton() {
2120
+ return this.state.activePoiFilterId !== null || this.rootStore.uiState.selectedCategoryFilters.length > 0;
2121
+ }
2122
+ get activeSearchButtonLabel() {
2123
+ if (this.state.activePoiFilterId) {
2124
+ let e = this.searchButtons.find((e) => e.id === this.state.activePoiFilterId);
2125
+ return (e == null ? void 0 : e.label) || null;
2126
+ }
2127
+ return this.rootStore.uiState.selectedCategoryFilters.length > 0 ? "Categories" : null;
2128
+ }
2129
+ get activeSubButtons() {
2130
+ return this.state.activeSubButtonsParentId ? this.subButtonRegistry.getSubButtons(this.state.activeSubButtonsParentId) : [];
2131
+ }
2132
+ get shouldShowSubButtons() {
2133
+ if (!this.state.subButtonsEnabled || !this.state.activeSubButtonsParentId) return !1;
2134
+ let e = this.searchButtons.find((e) => e.id === this.state.activeSubButtonsParentId);
2135
+ return !e || !e.active ? !1 : this.subButtonRegistry.shouldShowSubButtons(this.state.activeSubButtonsParentId) && this.activeSubButtons.length > 0;
2136
+ }
2137
+ get hasActiveParentWithChildren() {
2138
+ return this.state.hasActiveParentWithChildren;
2139
+ }
2140
+ get areAllSelected() {
2141
+ return this.filters.areAllSelected();
2142
+ }
2143
+ get activeChildrenCount() {
2144
+ return this.state.activeChildrenCount;
2145
+ }
2146
+ get totalChildrenCount() {
2147
+ return this.filters.getChildrenCount();
2148
+ }
2149
+ get poiTypeCounts() {
2150
+ let e = Date.now();
2151
+ if (e - this.lastPoiTypeCountUpdate < 1e3 && this.poiTypeCountsCache.size > 0) return this.poiTypeCountsCache;
2152
+ let t = /* @__PURE__ */ new Map();
2153
+ return this.rootStore.boothStore.booths.forEach((e) => {
2154
+ e.poiTypeId && t.set(e.poiTypeId, (t.get(e.poiTypeId) || 0) + 1);
2155
+ }), this.poiTypeCountsCache = t, this.lastPoiTypeCountUpdate = e, t;
2156
+ }
2157
+ get totalPoiTypeCount() {
2158
+ return Pn(this.poiTypeCounts);
2159
+ }
2160
+ get activePoiTypeId() {
2161
+ var e;
2162
+ return (e = this.state.activePoiFilterId) != null && e.startsWith(g.POI_TYPE) ? Nn(this.state.activePoiFilterId) : null;
2163
+ }
2164
+ handleSearchButtonClick(e, t) {
2165
+ this.actions.handleSearchButtonClick(e, t);
2166
+ }
2167
+ handleExtendedSearchButtonClick(e) {
2168
+ this.actions.handleExtendedSearchButtonClick(e);
2169
+ }
2170
+ handleMainButtonClick(e) {
2171
+ this.actions.handleMainButtonClick(e);
2172
+ }
2173
+ handleSessionsClick(e) {
2174
+ this.actions.handleSessionsClick(e);
2175
+ }
2176
+ togglePoiType(e) {
2177
+ this.actions.togglePoiType(e);
2178
+ }
2179
+ clearAllFilters() {
2180
+ this.actions.clearAllFilters();
2181
+ }
2182
+ showSubButtons(e) {
2183
+ this.actions.showSubButtons(e);
2184
+ }
2185
+ hideSubButtons() {
2186
+ this.actions.hideSubButtons();
2187
+ }
2188
+ handleSubButtonClick(e) {
2189
+ this.state.activeSubButtonId !== e && (this.state.setSubButton(e), this.state.activeSubButtonsParentId && this.subButtonRegistry.handleSubButtonClick(this.state.activeSubButtonsParentId, e));
2190
+ }
2191
+ toggleChildFilter(e) {
2192
+ this.filters.toggleChildFilter(e);
2193
+ }
2194
+ clearPoiTypeFilters() {
2195
+ this.filters.clearPoiTypeFilters();
2196
+ }
2197
+ clearAllChildFilters() {
2198
+ this.filters.clearAllChildFilters();
2199
+ }
2200
+ setActiveParentId(e) {
2201
+ this.state.setActiveParentId(e);
2202
+ }
2203
+ showShortcuts(e) {
2204
+ this.state.showShortcuts(e);
2205
+ }
2206
+ clearChildren() {
2207
+ this.state.clearChildren();
2208
+ }
2209
+ setSubButtonId(e) {
2210
+ this.state.setSubButton(e);
2211
+ }
2212
+ setPoiFilterId(e) {
2213
+ this.state.setPoiFilter(e);
2214
+ }
2215
+ getPoiTypeTotalCount(e) {
2216
+ return this.poiTypeCounts.get(e) || 0;
2217
+ }
2218
+ isChildActive(e) {
2219
+ return this.state.isChildActive(e);
2220
+ }
2221
+ getActiveParent() {
2222
+ return this.filters.getActiveParent();
2223
+ }
2224
+ }, R(L.prototype, "invalidatePoiTypeCounts", [d], Object.getOwnPropertyDescriptor(L.prototype, "invalidatePoiTypeCounts"), L.prototype), R(L.prototype, "isVisible", [l], Object.getOwnPropertyDescriptor(L.prototype, "isVisible"), L.prototype), R(L.prototype, "shouldShow", [l], Object.getOwnPropertyDescriptor(L.prototype, "shouldShow"), L.prototype), R(L.prototype, "activePoiFilterId", [l], Object.getOwnPropertyDescriptor(L.prototype, "activePoiFilterId"), L.prototype), R(L.prototype, "activeSubButtonsParentId", [l], Object.getOwnPropertyDescriptor(L.prototype, "activeSubButtonsParentId"), L.prototype), R(L.prototype, "activeSubButtonId", [l], Object.getOwnPropertyDescriptor(L.prototype, "activeSubButtonId"), L.prototype), R(L.prototype, "subButtonsEnabled", [l], Object.getOwnPropertyDescriptor(L.prototype, "subButtonsEnabled"), L.prototype), R(L.prototype, "searchShortcutState", [l], Object.getOwnPropertyDescriptor(L.prototype, "searchShortcutState"), L.prototype), R(L.prototype, "searchButtons", [l], Object.getOwnPropertyDescriptor(L.prototype, "searchButtons"), L.prototype), R(L.prototype, "hasAnySearchButtons", [l], Object.getOwnPropertyDescriptor(L.prototype, "hasAnySearchButtons"), L.prototype), R(L.prototype, "hasActiveSearchButton", [l], Object.getOwnPropertyDescriptor(L.prototype, "hasActiveSearchButton"), L.prototype), R(L.prototype, "activeSearchButtonLabel", [l], Object.getOwnPropertyDescriptor(L.prototype, "activeSearchButtonLabel"), L.prototype), R(L.prototype, "activeSubButtons", [l], Object.getOwnPropertyDescriptor(L.prototype, "activeSubButtons"), L.prototype), R(L.prototype, "shouldShowSubButtons", [l], Object.getOwnPropertyDescriptor(L.prototype, "shouldShowSubButtons"), L.prototype), R(L.prototype, "hasActiveParentWithChildren", [l], Object.getOwnPropertyDescriptor(L.prototype, "hasActiveParentWithChildren"), L.prototype), R(L.prototype, "areAllSelected", [l], Object.getOwnPropertyDescriptor(L.prototype, "areAllSelected"), L.prototype), R(L.prototype, "activeChildrenCount", [l], Object.getOwnPropertyDescriptor(L.prototype, "activeChildrenCount"), L.prototype), R(L.prototype, "totalChildrenCount", [l], Object.getOwnPropertyDescriptor(L.prototype, "totalChildrenCount"), L.prototype), R(L.prototype, "poiTypeCounts", [l], Object.getOwnPropertyDescriptor(L.prototype, "poiTypeCounts"), L.prototype), R(L.prototype, "totalPoiTypeCount", [l], Object.getOwnPropertyDescriptor(L.prototype, "totalPoiTypeCount"), L.prototype), R(L.prototype, "activePoiTypeId", [l], Object.getOwnPropertyDescriptor(L.prototype, "activePoiTypeId"), L.prototype), R(L.prototype, "handleSearchButtonClick", [d], Object.getOwnPropertyDescriptor(L.prototype, "handleSearchButtonClick"), L.prototype), R(L.prototype, "handleExtendedSearchButtonClick", [d], Object.getOwnPropertyDescriptor(L.prototype, "handleExtendedSearchButtonClick"), L.prototype), R(L.prototype, "handleMainButtonClick", [d], Object.getOwnPropertyDescriptor(L.prototype, "handleMainButtonClick"), L.prototype), R(L.prototype, "handleSessionsClick", [d], Object.getOwnPropertyDescriptor(L.prototype, "handleSessionsClick"), L.prototype), R(L.prototype, "togglePoiType", [d], Object.getOwnPropertyDescriptor(L.prototype, "togglePoiType"), L.prototype), R(L.prototype, "clearAllFilters", [d], Object.getOwnPropertyDescriptor(L.prototype, "clearAllFilters"), L.prototype), R(L.prototype, "showSubButtons", [d], Object.getOwnPropertyDescriptor(L.prototype, "showSubButtons"), L.prototype), R(L.prototype, "hideSubButtons", [d], Object.getOwnPropertyDescriptor(L.prototype, "hideSubButtons"), L.prototype), R(L.prototype, "handleSubButtonClick", [d], Object.getOwnPropertyDescriptor(L.prototype, "handleSubButtonClick"), L.prototype), R(L.prototype, "toggleChildFilter", [d], Object.getOwnPropertyDescriptor(L.prototype, "toggleChildFilter"), L.prototype), R(L.prototype, "clearPoiTypeFilters", [d], Object.getOwnPropertyDescriptor(L.prototype, "clearPoiTypeFilters"), L.prototype), R(L.prototype, "clearAllChildFilters", [d], Object.getOwnPropertyDescriptor(L.prototype, "clearAllChildFilters"), L.prototype), R(L.prototype, "setActiveParentId", [d], Object.getOwnPropertyDescriptor(L.prototype, "setActiveParentId"), L.prototype), R(L.prototype, "showShortcuts", [d], Object.getOwnPropertyDescriptor(L.prototype, "showShortcuts"), L.prototype), R(L.prototype, "clearChildren", [d], Object.getOwnPropertyDescriptor(L.prototype, "clearChildren"), L.prototype), R(L.prototype, "setSubButtonId", [d], Object.getOwnPropertyDescriptor(L.prototype, "setSubButtonId"), L.prototype), R(L.prototype, "setPoiFilterId", [d], Object.getOwnPropertyDescriptor(L.prototype, "setPoiFilterId"), L.prototype), L), z, Yn, Xn, Zn, Qn;
2225
+ function $n(e, t, n, r) {
2226
+ n && Object.defineProperty(e, t, {
2227
+ enumerable: n.enumerable,
2228
+ configurable: n.configurable,
2229
+ writable: n.writable,
2230
+ value: n.initializer ? n.initializer.call(r) : void 0
2231
+ });
2232
+ }
2233
+ function B(e, t, n, r, i) {
2234
+ var a = {};
2235
+ return Object.keys(r).forEach(function(e) {
2236
+ a[e] = r[e];
2237
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
2238
+ return r(e, t, n) || n;
2239
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
2240
+ }
2241
+ var V = class {
2242
+ static closeDetails(e) {
2243
+ return e.details ? (e.details = null, !0) : !1;
2244
+ }
2245
+ static closeMultiPointTour(e) {
2246
+ return e.rootStore.fp.hidePathways(), !0;
2247
+ }
2248
+ static clearSearchAndFocus(e) {
2249
+ return e.searchText ? (e.setSearchText(""), e.setFocused(!0), !0) : !1;
2250
+ }
2251
+ static returnToSearch(e, t = !1) {
2252
+ e.list = {
2253
+ type: "search",
2254
+ text: "",
2255
+ focused: t
2256
+ };
2257
+ }
2258
+ static returnToSessions(e, t = !1) {
2259
+ e.list = {
2260
+ type: "sessions",
2261
+ text: "",
2262
+ focused: t
2263
+ };
2264
+ }
2265
+ static returnToTours(e, t = !1) {
2266
+ e.list = {
2267
+ type: "tours",
2268
+ text: "",
2269
+ focused: t
2270
+ };
2271
+ }
2272
+ static openMenu(e) {
2273
+ e.menu = !0;
2274
+ }
2275
+ static closeMenu(e) {
2276
+ e.menu = !1;
2277
+ }
2278
+ static clearListScroll(e, t) {
2279
+ e.clearListScroll(t);
2280
+ }
2281
+ static resetActiveListIndex(e) {
2282
+ e.activeListIndex = -1;
2283
+ }
2284
+ }, er = 600, tr = [
2285
+ "sessions",
2286
+ "tours",
2287
+ "speakers",
2288
+ "exhibitors"
2289
+ ], nr = (z = class {
2290
+ constructor(e) {
2291
+ this.rootStore = void 0, this.searchCameraTimer = void 0, $n(this, "searchText", Yn, this), $n(this, "isFocused", Xn, this), $n(this, "isClearMode", Zn, this), $n(this, "skipInputFocus", Qn, this), this.rootStore = e;
2292
+ }
2293
+ get uiState() {
2294
+ return this.rootStore.uiState;
2295
+ }
2296
+ get searchBoxConfig() {
2297
+ return this.uiState.searchBoxConfig;
2298
+ }
2299
+ get searchBoxMode() {
2300
+ return this.searchBoxConfig.mode;
2301
+ }
2302
+ get searchBoxTitle() {
2303
+ var e;
2304
+ return (e = this.searchBoxConfig.title) == null ? "" : e;
2305
+ }
2306
+ get searchBoxSubtitle() {
2307
+ return this.searchBoxConfig.subtitle;
2308
+ }
2309
+ get searchBoxBadge() {
2310
+ return this.searchBoxConfig.badge;
2311
+ }
2312
+ get searchBoxIcon() {
2313
+ return this.searchBoxConfig.icon;
2314
+ }
2315
+ get searchBoxActions() {
2316
+ return this.uiState.searchBoxActions;
2317
+ }
2318
+ get shouldShowSearchInput() {
2319
+ return this.searchBoxMode === "search";
2320
+ }
2321
+ get shouldShowCloseButton() {
2322
+ let { menu: e, details: t, list: n } = this.uiState, r = m.isRebooking && n.type === "exhibitors";
2323
+ return !this.shouldShowSearchInput || n.type === "sessions" || n.type === "tours" || n.type === "speakers" || n.type === "exhibitors" && !r || e || t !== null || !!this.searchText || this.isClearMode || this.isFocused;
2324
+ }
2325
+ get closeButtonAction() {
2326
+ return !this.shouldShowSearchInput || this.searchBoxMode === "details" || this.uiState.list.type === "sessions" || this.uiState.list.type === "speakers" || this.uiState.list.type === "exhibitors" && !m.isRebooking ? "close" : this.searchText ? "clear" : "close";
2327
+ }
2328
+ get shouldShowShadow() {
2329
+ let { menu: e, details: t, list: n } = this.uiState, r = n.type === "search" && !!n.text;
2330
+ return !(this.rootStore.fp.alwaysShowSidebar || e || t !== null || n.type !== "search" || r || this.isFocused || this.uiState.heatmap);
2331
+ }
2332
+ get placeholder() {
2333
+ let { list: e, heatmapYah: t } = this.uiState;
2334
+ return e.type === "sessions" ? i("Search sessions") : e.type === "tours" ? i("Search Guided Tours") : e.type === "exhibitors" ? i("Search exhibitors") : e.type === "speakers" ? i("Search speakers") : Te.EXPO.startsWith("lenzerheidemotorclassics") ? "SUCHE" : Te.EXPO.startsWith("jetlag") ? "Search location or artist" : t ? i("Find values greater than") : this.uiState.hasAppliedFilters ? i("Search") : m.searchText || i("Search");
2335
+ }
2336
+ get searchBoxClass() {
2337
+ return {
2338
+ "is-details": this.searchBoxMode === "details" && !(this.uiState.details instanceof Qe),
2339
+ "is-interface": this.searchBoxMode === "interface",
2340
+ "has-shadow": this.shouldShowShadow,
2341
+ "has-subtitle": !!this.searchBoxConfig.subtitle,
2342
+ "has-badge": !!this.searchBoxConfig.badge,
2343
+ "has-icon": !!this.searchBoxConfig.icon,
2344
+ "is-overlay-full": this.uiState.isOverlayOpen && this.uiState.overlaySize === "full",
2345
+ "is-featured-exhibitor": this.uiState.isFeaturedExhibitorActive,
2346
+ "is-route": this.uiState.details instanceof Qe,
2347
+ "is-guided-tours": this.uiState.isGuidedToursActive,
2348
+ "is-overlay-scrolled": this.uiState.isOverlayScrolled,
2349
+ "overlay-pulse": this.uiState.kiosk && this.uiState.inIdle && !this.uiState.setKioskModeEnabled
2350
+ };
2351
+ }
2352
+ get ariaLabel() {
2353
+ return !this.shouldShowSearchInput || this.searchBoxMode === "details" ? i("Close") : this.searchText ? i("Clear search") : i("Close");
2354
+ }
2355
+ selectSearch(e) {
2356
+ window.__resett && window.__resett(), this.uiState.details = null;
2357
+ let t = ie(e || "", Object.keys(this.uiState.mapSettings).map((e) => `${e}=`));
2358
+ this.setSearchText(t), this.uiState.activeListIndex = -1;
2359
+ }
2360
+ selectSearchAndFocus(e) {
2361
+ this.selectSearch(e), this.setFocused(!0);
2362
+ }
2363
+ setSearchText(e) {
2364
+ this.searchText = e, clearTimeout(this.searchCameraTimer);
2365
+ let t = !tr.includes(this.uiState.list.type);
2366
+ this.uiState.hasAppliedFilters ? this.rootStore.moveToList() : e && t && m.searchCameraFollow ? this.searchCameraTimer = setTimeout(() => this.followSearchResults(e), er) : this.uiState.centerMap = !0, this.uiState.activeListIndex = e ? 0 : -1, this.uiState.list.type !== "sessions" && this.uiState.list.type !== "tours" && this.uiState.list.type !== "speakers" && this.uiState.list.type !== "exhibitors" ? this.uiState.list = {
2367
+ type: "search",
2368
+ text: e,
2369
+ focused: this.isFocused
2370
+ } : this.uiState.list.type === "exhibitors" && (this.uiState.list = {
2371
+ type: "exhibitors",
2372
+ text: e,
2373
+ focused: this.isFocused
2374
+ }), this.uiState.searchClearMode = this.isClearMode;
2375
+ }
2376
+ followSearchResults(e) {
2377
+ let t = () => this.searchText === e && this.uiState.list.type === "search" && !this.uiState.details;
2378
+ if (!t()) return;
2379
+ let { venueStore: n } = this.rootStore, r = re(n, this.uiState.listItems.flatMap((e) => e instanceof Le ? e.booths : e instanceof he ? [e] : []));
2380
+ if (!r) return;
2381
+ let i = r.every((e) => e.visible) ? void 0 : de(n, r);
2382
+ if (!i) {
2383
+ this.rootStore.moveToList(r);
2384
+ return;
2385
+ }
2386
+ i.then(d(() => {
2387
+ t() && this.rootStore.moveToList(r, !0);
2388
+ }));
2389
+ }
2390
+ setFocused(e) {
2391
+ this.isFocused = e, this.isClearMode = !1, this.skipInputFocus = !1, this.uiState.searchFocused = e, this.uiState.searchClearMode = !1, this.uiState.desiredOverlaySize = "full";
2392
+ }
2393
+ handleBackAction() {
2394
+ let { uiState: e } = this, { list: n } = e;
2395
+ if (e.desiredOverlaySize = "full", this.backMode === "menu") {
2396
+ this.resetSearchButtonState(), V.openMenu(e);
2397
+ return;
2398
+ }
2399
+ if (n.type === "route-planner") {
2400
+ this.rootStore.routePlannerStore.close(), this.rootStore.selectBookmarks(), qe();
2401
+ return;
2402
+ }
2403
+ if (n.type === "multi-point-tour" && !e.details) {
2404
+ V.returnToTours(e, !1), this.rootStore.fp.hidePathways();
2405
+ return;
2406
+ }
2407
+ if (e.details) {
2408
+ e.details = null, qe();
2409
+ return;
2410
+ }
2411
+ if (e.menu) {
2412
+ n.type === "sessions" ? e.list = {
2413
+ type: "sessions",
2414
+ text: "",
2415
+ focused: !0
2416
+ } : n.type === "exhibitors" ? e.list = {
2417
+ type: "exhibitors",
2418
+ text: "",
2419
+ focused: !0
2420
+ } : e.list = {
2421
+ type: "search",
2422
+ text: "",
2423
+ focused: !0
2424
+ }, this.setFocused(!0), this.isClearMode = !0, V.closeMenu(e);
2425
+ return;
2426
+ }
2427
+ if (n.type === "sessions" || n.type === "tours" || n.type === "exhibitors") {
2428
+ if (V.closeDetails(e)) return;
2429
+ this.clearActiveFilters(), V.returnToSearch(e, !1), this.selectSearchAndFocus();
2430
+ return;
2431
+ }
2432
+ switch (n.type) {
2433
+ case "filter":
2434
+ e.details = null;
2435
+ return;
2436
+ case "multi-point-tour":
2437
+ this.rootStore.fp.hidePathways(), V.closeDetails(e) ? V.returnToTours(e, !1) : qe();
2438
+ return;
2439
+ case "category":
2440
+ this.rootStore.selectCategory(n.category);
2441
+ return;
2442
+ case "speakers":
2443
+ if (V.closeDetails(e)) return;
2444
+ V.returnToSessions(e, !1);
2445
+ return;
2446
+ case "bookmarks":
2447
+ case "visited":
2448
+ if (V.closeDetails(e)) return;
2449
+ this.selectSearchAndFocus();
2450
+ return;
2451
+ case t:
2452
+ V.returnToSearch(e, !1), V.openMenu(e);
2453
+ return;
2454
+ }
2455
+ V.closeDetails(e) || V.clearSearchAndFocus(this) || V.openMenu(e);
2456
+ }
2457
+ closeSearch() {
2458
+ let { uiState: e } = this, { list: t } = e;
2459
+ if (t.type === "route-planner") {
2460
+ this.rootStore.routePlannerStore.close(), V.returnToSearch(e, !1), this.resetSearchBox();
2461
+ return;
2462
+ }
2463
+ if (V.closeDetails(e), V.clearListScroll(e, t.type), V.closeMultiPointTour(e), t.type === "bookmarks") {
2464
+ V.returnToSearch(e, !1), this.resetSearchBox();
2465
+ return;
2466
+ }
2467
+ if (e.selectedCategory) {
2468
+ V.returnToSearch(e, !1), this.resetSearchBox();
2469
+ return;
2470
+ }
2471
+ if (t.type === "sessions") {
2472
+ this.closeSessions();
2473
+ return;
2474
+ }
2475
+ if (t.type === "exhibitors") {
2476
+ if (m.isRebooking) {
2477
+ this.searchBoxMode === "search" && this.searchText ? (this.setSearchText(""), this.isClearMode = !0, this.clearActiveFilters()) : this.resetSearchBox();
2478
+ return;
2479
+ }
2480
+ this.closeExhibitors();
2481
+ return;
2482
+ }
2483
+ if (e.menu) {
2484
+ V.closeMenu(e), this.resetSearchBox();
2485
+ return;
2486
+ }
2487
+ if (this.searchBoxMode === "search" && !e.details && this.searchText) {
2488
+ this.setSearchText(""), this.isClearMode = !0, this.clearActiveFilters();
2489
+ return;
2490
+ }
2491
+ V.returnToSearch(e, !1), this.searchText = "", this.resetSearchBox(), e.details = null, this.clearActiveFilters();
2492
+ }
2493
+ clearActiveFilters() {
2494
+ this.rootStore.searchButtonsStore.setPoiFilterId(null), this.rootStore.uiState.selectedPoiTypeFilters = [], this.rootStore.uiState.selectedCategoryFilters = [], this.rootStore.categoryFilterStore.state.selectedItems = [], this.rootStore.categoryFilterStore.state.pendingItems = [], this.rootStore.searchButtonsStore.searchShortcutState.activeParentId = null, this.rootStore.searchButtonsStore.searchShortcutState.activeChildren.clear(), this.rootStore.searchButtonsStore.searchShortcutState.isShortcutsVisible = !1, this.rootStore.urlFilterManager && this.rootStore.urlFilterManager.isInitialized && this.rootStore.urlFilterManager.clearAllFilters();
2495
+ }
2496
+ resetSearchButtonState() {
2497
+ let { uiState: e } = this;
2498
+ this.rootStore.searchButtonsStore.clearAllFilters(), this.rootStore.searchButtonsStore.setSubButtonId(null), this.rootStore.searchButtonsStore.hideSubButtons(), e.selectedTrack = null, this.searchText = "", this.isClearMode = !1;
2499
+ }
2500
+ handleSearchAction() {
2501
+ this.isFocused || this.setFocused(!0);
2502
+ }
2503
+ openOverlayWithoutInputFocus() {
2504
+ this.skipInputFocus = !0, this.isFocused = !0, this.isClearMode = !1, this.uiState.searchFocused = !0, this.uiState.searchClearMode = !1, this.uiState.desiredOverlaySize = "full";
2505
+ }
2506
+ closeSessions() {
2507
+ this.searchText = "", V.returnToSearch(this.uiState, !1), this.uiState.details = null, V.resetActiveListIndex(this.uiState), this.uiState.selectedTrack = null, this.rootStore.searchButtonsStore.setSubButtonId(null), this.rootStore.searchButtonsStore.hideSubButtons();
2508
+ }
2509
+ closeExhibitors() {
2510
+ this.searchText = "", V.returnToSearch(this.uiState, !1), this.uiState.details = null, V.resetActiveListIndex(this.uiState);
2511
+ }
2512
+ resetSearchBox() {
2513
+ this.setFocused(!1), this.isClearMode = !1, this.syncWithUIState();
2514
+ }
2515
+ syncWithUIState() {
2516
+ this.searchText = (this.uiState.list.type === "search" || this.uiState.list.type === "exhibitors") && this.uiState.list.text || "", this.isFocused = this.uiState.searchFocused, this.isClearMode = this.uiState.searchClearMode;
2517
+ }
2518
+ get actionButtonIcon() {
2519
+ return this.shouldShowSearchInput ? this.shouldShowCloseButton ? "icon-close" : "icon-search" : "icon-close";
2520
+ }
2521
+ clearAndSelectSearch() {
2522
+ this.selectSearch(""), this.setFocused(!1);
2523
+ }
2524
+ get backMode() {
2525
+ let e = this.uiState.list.type;
2526
+ return (e === "bookmarks" || e === "visited") && !this.uiState.details && !this.uiState.menu || this.shouldShowSearchInput && !this.searchText ? "menu" : "back";
2527
+ }
2528
+ get isMobileDetailsMode() {
2529
+ return window.innerWidth < 768 && this.uiState.details !== null && this.uiState.overlaySize === "full" && !(this.uiState.details instanceof Qe);
2530
+ }
2531
+ get shouldShowTitle() {
2532
+ return !this.shouldShowSearchInput;
2533
+ }
2534
+ get searchState() {
2535
+ return {
2536
+ text: this.searchText,
2537
+ isFocused: this.isFocused,
2538
+ isClearMode: this.isClearMode,
2539
+ mode: this.searchBoxMode,
2540
+ title: this.searchBoxConfig.title,
2541
+ subtitle: this.searchBoxConfig.subtitle,
2542
+ badge: this.searchBoxConfig.badge,
2543
+ icon: this.searchBoxConfig.icon
2544
+ };
2545
+ }
2546
+ }, Yn = B(z.prototype, "searchText", [u], {
2547
+ configurable: !0,
2548
+ enumerable: !0,
2549
+ writable: !0,
2550
+ initializer: function() {
2551
+ return "";
2552
+ }
2553
+ }), Xn = B(z.prototype, "isFocused", [u], {
2554
+ configurable: !0,
2555
+ enumerable: !0,
2556
+ writable: !0,
2557
+ initializer: function() {
2558
+ return !1;
2559
+ }
2560
+ }), Zn = B(z.prototype, "isClearMode", [u], {
2561
+ configurable: !0,
2562
+ enumerable: !0,
2563
+ writable: !0,
2564
+ initializer: function() {
2565
+ return !1;
2566
+ }
2567
+ }), Qn = B(z.prototype, "skipInputFocus", [u], {
2568
+ configurable: !0,
2569
+ enumerable: !0,
2570
+ writable: !0,
2571
+ initializer: function() {
2572
+ return !1;
2573
+ }
2574
+ }), B(z.prototype, "searchBoxConfig", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchBoxConfig"), z.prototype), B(z.prototype, "searchBoxMode", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchBoxMode"), z.prototype), B(z.prototype, "searchBoxTitle", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchBoxTitle"), z.prototype), B(z.prototype, "searchBoxSubtitle", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchBoxSubtitle"), z.prototype), B(z.prototype, "searchBoxBadge", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchBoxBadge"), z.prototype), B(z.prototype, "searchBoxIcon", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchBoxIcon"), z.prototype), B(z.prototype, "searchBoxActions", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchBoxActions"), z.prototype), B(z.prototype, "shouldShowSearchInput", [l], Object.getOwnPropertyDescriptor(z.prototype, "shouldShowSearchInput"), z.prototype), B(z.prototype, "shouldShowCloseButton", [l], Object.getOwnPropertyDescriptor(z.prototype, "shouldShowCloseButton"), z.prototype), B(z.prototype, "closeButtonAction", [l], Object.getOwnPropertyDescriptor(z.prototype, "closeButtonAction"), z.prototype), B(z.prototype, "shouldShowShadow", [l], Object.getOwnPropertyDescriptor(z.prototype, "shouldShowShadow"), z.prototype), B(z.prototype, "placeholder", [l], Object.getOwnPropertyDescriptor(z.prototype, "placeholder"), z.prototype), B(z.prototype, "searchBoxClass", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchBoxClass"), z.prototype), B(z.prototype, "ariaLabel", [l], Object.getOwnPropertyDescriptor(z.prototype, "ariaLabel"), z.prototype), B(z.prototype, "selectSearch", [d], Object.getOwnPropertyDescriptor(z.prototype, "selectSearch"), z.prototype), B(z.prototype, "selectSearchAndFocus", [d], Object.getOwnPropertyDescriptor(z.prototype, "selectSearchAndFocus"), z.prototype), B(z.prototype, "setSearchText", [d], Object.getOwnPropertyDescriptor(z.prototype, "setSearchText"), z.prototype), B(z.prototype, "followSearchResults", [d], Object.getOwnPropertyDescriptor(z.prototype, "followSearchResults"), z.prototype), B(z.prototype, "setFocused", [d], Object.getOwnPropertyDescriptor(z.prototype, "setFocused"), z.prototype), B(z.prototype, "handleBackAction", [d], Object.getOwnPropertyDescriptor(z.prototype, "handleBackAction"), z.prototype), B(z.prototype, "closeSearch", [d], Object.getOwnPropertyDescriptor(z.prototype, "closeSearch"), z.prototype), B(z.prototype, "clearActiveFilters", [d], Object.getOwnPropertyDescriptor(z.prototype, "clearActiveFilters"), z.prototype), B(z.prototype, "resetSearchButtonState", [d], Object.getOwnPropertyDescriptor(z.prototype, "resetSearchButtonState"), z.prototype), B(z.prototype, "handleSearchAction", [d], Object.getOwnPropertyDescriptor(z.prototype, "handleSearchAction"), z.prototype), B(z.prototype, "openOverlayWithoutInputFocus", [d], Object.getOwnPropertyDescriptor(z.prototype, "openOverlayWithoutInputFocus"), z.prototype), B(z.prototype, "closeSessions", [d], Object.getOwnPropertyDescriptor(z.prototype, "closeSessions"), z.prototype), B(z.prototype, "closeExhibitors", [d], Object.getOwnPropertyDescriptor(z.prototype, "closeExhibitors"), z.prototype), B(z.prototype, "resetSearchBox", [d], Object.getOwnPropertyDescriptor(z.prototype, "resetSearchBox"), z.prototype), B(z.prototype, "syncWithUIState", [d], Object.getOwnPropertyDescriptor(z.prototype, "syncWithUIState"), z.prototype), B(z.prototype, "actionButtonIcon", [l], Object.getOwnPropertyDescriptor(z.prototype, "actionButtonIcon"), z.prototype), B(z.prototype, "clearAndSelectSearch", [d], Object.getOwnPropertyDescriptor(z.prototype, "clearAndSelectSearch"), z.prototype), B(z.prototype, "backMode", [l], Object.getOwnPropertyDescriptor(z.prototype, "backMode"), z.prototype), B(z.prototype, "isMobileDetailsMode", [l], Object.getOwnPropertyDescriptor(z.prototype, "isMobileDetailsMode"), z.prototype), B(z.prototype, "shouldShowTitle", [l], Object.getOwnPropertyDescriptor(z.prototype, "shouldShowTitle"), z.prototype), B(z.prototype, "searchState", [l], Object.getOwnPropertyDescriptor(z.prototype, "searchState"), z.prototype), z), H, rr;
2575
+ function ir(e, t, n, r) {
2576
+ n && Object.defineProperty(e, t, {
2577
+ enumerable: n.enumerable,
2578
+ configurable: n.configurable,
2579
+ writable: n.writable,
2580
+ value: n.initializer ? n.initializer.call(r) : void 0
2581
+ });
2582
+ }
2583
+ function U(e, t, n, r, i) {
2584
+ var a = {};
2585
+ return Object.keys(r).forEach(function(e) {
2586
+ a[e] = r[e];
2587
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
2588
+ return r(e, t, n) || n;
2589
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
2590
+ }
2591
+ var W = {
2592
+ selectedTracks: [],
2593
+ selectedVenues: [],
2594
+ selectedSpeakers: [],
2595
+ date: "all",
2596
+ timeOfDay: "all",
2597
+ sortOrder: "desc",
2598
+ use24hFormat: !1,
2599
+ showBookmarksOnly: !1,
2600
+ showLiveOnly: !1
2601
+ }, ar = (H = class extends Ot {
2602
+ constructor(e) {
2603
+ super(e), ir(this, "state", rr, this);
2604
+ }
2605
+ createInitialFilters() {
2606
+ let e = {};
2607
+ return Object.keys(W).forEach((t) => {
2608
+ e[t] = {
2609
+ value: W[t],
2610
+ pending: W[t]
2611
+ };
2612
+ }), e;
2613
+ }
2614
+ setSearchText(e) {
2615
+ this.state.searchText = e;
2616
+ }
2617
+ setPending(e, t) {
2618
+ this.state.filters[e].pending = t;
2619
+ }
2620
+ applyFilters() {
2621
+ this.commitFilters(), this.updateUIState();
2622
+ }
2623
+ commitFilters() {
2624
+ let { filters: e } = this.state, t = e.selectedTracks.value.length > 0, n = e.selectedVenues.value.length > 0;
2625
+ Object.keys(e).forEach((t) => {
2626
+ e[t].value = e[t].pending;
2627
+ });
2628
+ let r = e.selectedTracks.value.length > 0, i = e.selectedVenues.value.length > 0;
2629
+ t !== r && this.rootStore.shortcutRegistry.updateActivationOrderFromState("sessions", "tracks", t, r), n !== i && this.rootStore.shortcutRegistry.updateActivationOrderFromState("sessions", "venues", n, i), this.state.selectedItems = [...this.state.pendingItems], this.state.isOpen = !1;
2630
+ }
2631
+ resetFilters() {
2632
+ let { filters: e } = this.state;
2633
+ Object.keys(W).forEach((t) => {
2634
+ e[t].pending = W[t];
2635
+ }), this.state.pendingItems = [], this.state.searchText = "";
2636
+ }
2637
+ resetAndApplyFilters() {
2638
+ let { filters: e } = this.state, t = e.selectedTracks.value.length > 0, n = e.selectedVenues.value.length > 0;
2639
+ this.resetFilters(), Object.keys(e).forEach((t) => {
2640
+ e[t].value = e[t].pending;
2641
+ }), t !== !1 && this.rootStore.shortcutRegistry.updateActivationOrderFromState("sessions", "tracks", t, !1), n !== !1 && this.rootStore.shortcutRegistry.updateActivationOrderFromState("sessions", "venues", n, !1), this.state.selectedItems = [], this.state.isOpen = !1, this.rootStore.uiState.list = {
2642
+ type: "sessions",
2643
+ text: "",
2644
+ focused: !1
2645
+ };
2646
+ }
2647
+ openFilter() {
2648
+ this.state.isOpen = !0, this.state.pendingItems = [...this.state.selectedItems];
2649
+ let { filters: e } = this.state;
2650
+ Object.keys(e).forEach((t) => {
2651
+ e[t].pending = e[t].value;
2652
+ });
2653
+ }
2654
+ closeFilter() {
2655
+ this.state.isOpen = !1, this.state.pendingItems = [...this.state.selectedItems];
2656
+ let { filters: e } = this.state;
2657
+ Object.keys(e).forEach((t) => {
2658
+ e[t].pending = e[t].value;
2659
+ });
2660
+ }
2661
+ openFilterWithSections(e) {
2662
+ this.state.visibleSections = e, this.openFilter();
2663
+ }
2664
+ get activeFiltersCount() {
2665
+ let { filters: e } = this.state, t = 0;
2666
+ return Object.keys(W).forEach((n) => {
2667
+ let r = e[n].value, i = W[n];
2668
+ Array.isArray(i) && Array.isArray(r) ? r.length > 0 && t++ : r !== i && t++;
2669
+ }), t;
2670
+ }
2671
+ updateUIState() {
2672
+ this.rootStore.uiState.list = {
2673
+ type: "sessions",
2674
+ text: "",
2675
+ focused: !1
2676
+ }, this.rootStore.searchStore.setFocused(!0);
2677
+ }
2678
+ getFilteredItems() {
2679
+ return [];
2680
+ }
2681
+ }, rr = U(H.prototype, "state", [u], {
2682
+ configurable: !0,
2683
+ enumerable: !0,
2684
+ writable: !0,
2685
+ initializer: function() {
2686
+ return {
2687
+ isOpen: !1,
2688
+ selectedItems: [],
2689
+ pendingItems: [],
2690
+ searchText: "",
2691
+ visibleSections: [
2692
+ "tracks",
2693
+ "venues",
2694
+ "speakers",
2695
+ "date",
2696
+ "time",
2697
+ "sort",
2698
+ "settings"
2699
+ ],
2700
+ filters: this.createInitialFilters()
2701
+ };
2702
+ }
2703
+ }), U(H.prototype, "setSearchText", [d], Object.getOwnPropertyDescriptor(H.prototype, "setSearchText"), H.prototype), U(H.prototype, "setPending", [d], Object.getOwnPropertyDescriptor(H.prototype, "setPending"), H.prototype), U(H.prototype, "applyFilters", [d], Object.getOwnPropertyDescriptor(H.prototype, "applyFilters"), H.prototype), U(H.prototype, "commitFilters", [d], Object.getOwnPropertyDescriptor(H.prototype, "commitFilters"), H.prototype), U(H.prototype, "resetFilters", [d], Object.getOwnPropertyDescriptor(H.prototype, "resetFilters"), H.prototype), U(H.prototype, "resetAndApplyFilters", [d], Object.getOwnPropertyDescriptor(H.prototype, "resetAndApplyFilters"), H.prototype), U(H.prototype, "openFilter", [d], Object.getOwnPropertyDescriptor(H.prototype, "openFilter"), H.prototype), U(H.prototype, "closeFilter", [d], Object.getOwnPropertyDescriptor(H.prototype, "closeFilter"), H.prototype), U(H.prototype, "openFilterWithSections", [d], Object.getOwnPropertyDescriptor(H.prototype, "openFilterWithSections"), H.prototype), U(H.prototype, "activeFiltersCount", [l], Object.getOwnPropertyDescriptor(H.prototype, "activeFiltersCount"), H.prototype), H), or = class {
2704
+ constructor() {
2705
+ this.providers = /* @__PURE__ */ new Map(), this.activationOrder = /* @__PURE__ */ new Map();
2706
+ }
2707
+ register(e) {
2708
+ if (!(e != null && e.id)) throw Error("Provider must have a valid id");
2709
+ this.providers.set(e.id, e);
2710
+ }
2711
+ unregister(e) {
2712
+ this.providers.delete(e), this.activationOrder.delete(e);
2713
+ }
2714
+ getShortcuts(e) {
2715
+ let t = this.providers.get(e);
2716
+ if (!t) return [];
2717
+ let n = t.createShortcuts(), r = this.activationOrder.get(e);
2718
+ return r ? this.sortShortcuts(n, r) : n;
2719
+ }
2720
+ sortShortcuts(e, t) {
2721
+ let n = new Map(t.map((e, t) => [e, t]));
2722
+ return e.sort((e, t) => {
2723
+ if (e.active !== t.active) return e.active ? -1 : 1;
2724
+ if (e.active && t.active) {
2725
+ let r = n.get(e.id), i = n.get(t.id);
2726
+ return r !== void 0 && i !== void 0 ? r - i : (r === void 0 ? 0 : -1) - (i === void 0 ? 0 : -1);
2727
+ }
2728
+ return 0;
2729
+ });
2730
+ }
2731
+ handleShortcutClick(e, t) {
2732
+ var n;
2733
+ let r = this.providers.get(e);
2734
+ if (!r) return;
2735
+ let i = r.createShortcuts().find((e) => e.id === t), a = (n = i == null ? void 0 : i.active) != null && n;
2736
+ r.handleShortcutClick(t);
2737
+ let o = this.isShortcutActive(r, t);
2738
+ this.reportClick(i, a, o), a !== o && this.updateActivationOrder(e, t, a, o);
2739
+ }
2740
+ reportClick(e, t, n) {
2741
+ if (!e || !(e.action === "custom" || !t && n)) return;
2742
+ let r = e.label || e.id;
2743
+ r && Je("sbtnview", r, "shortcut");
2744
+ }
2745
+ isShortcutActive(e, t) {
2746
+ var n, r;
2747
+ return (n = (r = e.createShortcuts().find((e) => e.id === t)) == null ? void 0 : r.active) != null && n;
2748
+ }
2749
+ handleShortcutReset(e, t) {
2750
+ let n = this.providers.get(e);
2751
+ if (!(n != null && n.handleShortcutReset)) return;
2752
+ n.handleShortcutReset(t);
2753
+ let r = this.activationOrder.get(e);
2754
+ r != null && r.includes(t) && this.updateActivationOrder(e, t, !0, !1);
2755
+ }
2756
+ updateActivationOrder(e, t, n, r) {
2757
+ let i = this.activationOrder.get(e) || [], a;
2758
+ if (!n && r) a = i.includes(t) ? i : [...i, t];
2759
+ else if (n && !r) a = i.filter((e) => e !== t);
2760
+ else return;
2761
+ a.length > 0 ? this.activationOrder.set(e, a) : this.activationOrder.delete(e);
2762
+ }
2763
+ updateActivationOrderFromState(e, t, n, r) {
2764
+ this.updateActivationOrder(e, t, n, r);
2765
+ }
2766
+ shouldShowShortcuts(e) {
2767
+ var t, n;
2768
+ let r = this.providers.get(e);
2769
+ return (t = r == null || (n = r.shouldShowShortcuts) == null ? void 0 : n.call(r)) == null || t;
2770
+ }
2771
+ getRegisteredProviders() {
2772
+ return Array.from(this.providers.keys());
2773
+ }
2774
+ isProviderRegistered(e) {
2775
+ return this.providers.has(e);
2776
+ }
2777
+ clear() {
2778
+ this.providers.clear(), this.activationOrder.clear();
2779
+ }
2780
+ }, G, sr, cr, K, lr;
2781
+ function ur(e, t, n, r) {
2782
+ n && Object.defineProperty(e, t, {
2783
+ enumerable: n.enumerable,
2784
+ configurable: n.configurable,
2785
+ writable: n.writable,
2786
+ value: n.initializer ? n.initializer.call(r) : void 0
2787
+ });
2788
+ }
2789
+ function q(e, t, n, r, i) {
2790
+ var a = {};
2791
+ return Object.keys(r).forEach(function(e) {
2792
+ a[e] = r[e];
2793
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
2794
+ return r(e, t, n) || n;
2795
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
2796
+ }
2797
+ var dr = (G = class {
2798
+ constructor(e) {
2799
+ ur(this, "value", sr, this), ur(this, "pending", cr, this), this.value = e, this.pending = e;
2800
+ }
2801
+ setValue(e) {
2802
+ this.pending = e;
2803
+ }
2804
+ apply() {
2805
+ this.value = this.pending;
2806
+ }
2807
+ reset() {
2808
+ this.pending = this.value;
2809
+ }
2810
+ }, sr = q(G.prototype, "value", [u], {
2811
+ configurable: !0,
2812
+ enumerable: !0,
2813
+ writable: !0,
2814
+ initializer: null
2815
+ }), cr = q(G.prototype, "pending", [u], {
2816
+ configurable: !0,
2817
+ enumerable: !0,
2818
+ writable: !0,
2819
+ initializer: null
2820
+ }), q(G.prototype, "setValue", [d], Object.getOwnPropertyDescriptor(G.prototype, "setValue"), G.prototype), q(G.prototype, "apply", [d], Object.getOwnPropertyDescriptor(G.prototype, "apply"), G.prototype), q(G.prototype, "reset", [d], Object.getOwnPropertyDescriptor(G.prototype, "reset"), G.prototype), G), fr = (K = class {
2821
+ constructor(e) {
2822
+ this.rootStore = void 0, ur(this, "state", lr, this), this.rootStore = e;
2823
+ }
2824
+ get activeFiltersCount() {
2825
+ let e = 0, { filters: t } = this.state;
2826
+ return t.selectedCompanies.value.length > 0 && e++, t.selectedJobTitles.value.length > 0 && e++, e;
2827
+ }
2828
+ applyFilters() {
2829
+ let { filters: e } = this.state;
2830
+ e.selectedCompanies.apply(), e.selectedJobTitles.apply(), this.closeFilter();
2831
+ }
2832
+ resetFilters() {
2833
+ let { filters: e } = this.state;
2834
+ e.selectedCompanies.pending = [], e.selectedJobTitles.pending = [];
2835
+ }
2836
+ resetAndApplyFilters() {
2837
+ this.resetFilters(), this.applyFilters();
2838
+ }
2839
+ clearAllFilters() {
2840
+ let { filters: e } = this.state;
2841
+ e.selectedCompanies.pending = [], e.selectedJobTitles.pending = [], e.selectedCompanies.value = [], e.selectedJobTitles.value = [];
2842
+ }
2843
+ openFilter() {
2844
+ this.state.isOpen = !0;
2845
+ }
2846
+ closeFilter() {
2847
+ this.state.isOpen = !1;
2848
+ }
2849
+ openFilterWithSections(e) {
2850
+ this.state.visibleSections = e, this.openFilter();
2851
+ }
2852
+ setPending(e, t) {
2853
+ this.state.filters[e].setValue(t);
2854
+ }
2855
+ toggleCompanyFilter(e) {
2856
+ let { selectedCompanies: t } = this.state.filters, n = t.value;
2857
+ n.includes(e) ? t.setValue(n.filter((t) => t !== e)) : t.setValue([...n, e]);
2858
+ }
2859
+ toggleJobTitleFilter(e) {
2860
+ let { selectedJobTitles: t } = this.state.filters, n = t.value;
2861
+ n.includes(e) ? t.setValue(n.filter((t) => t !== e)) : t.setValue([...n, e]);
2862
+ }
2863
+ getDefaultValues() {
2864
+ return {
2865
+ selectedCompanies: [],
2866
+ selectedJobTitles: []
2867
+ };
2868
+ }
2869
+ }, lr = q(K.prototype, "state", [u], {
2870
+ configurable: !0,
2871
+ enumerable: !0,
2872
+ writable: !0,
2873
+ initializer: function() {
2874
+ return {
2875
+ isOpen: !1,
2876
+ filters: {
2877
+ selectedCompanies: new dr([]),
2878
+ selectedJobTitles: new dr([])
2879
+ },
2880
+ visibleSections: ["companies", "jobTitles"]
2881
+ };
2882
+ }
2883
+ }), q(K.prototype, "activeFiltersCount", [l], Object.getOwnPropertyDescriptor(K.prototype, "activeFiltersCount"), K.prototype), q(K.prototype, "applyFilters", [d], Object.getOwnPropertyDescriptor(K.prototype, "applyFilters"), K.prototype), q(K.prototype, "resetFilters", [d], Object.getOwnPropertyDescriptor(K.prototype, "resetFilters"), K.prototype), q(K.prototype, "resetAndApplyFilters", [d], Object.getOwnPropertyDescriptor(K.prototype, "resetAndApplyFilters"), K.prototype), q(K.prototype, "clearAllFilters", [d], Object.getOwnPropertyDescriptor(K.prototype, "clearAllFilters"), K.prototype), q(K.prototype, "openFilter", [d], Object.getOwnPropertyDescriptor(K.prototype, "openFilter"), K.prototype), q(K.prototype, "closeFilter", [d], Object.getOwnPropertyDescriptor(K.prototype, "closeFilter"), K.prototype), q(K.prototype, "openFilterWithSections", [d], Object.getOwnPropertyDescriptor(K.prototype, "openFilterWithSections"), K.prototype), q(K.prototype, "setPending", [d], Object.getOwnPropertyDescriptor(K.prototype, "setPending"), K.prototype), q(K.prototype, "toggleCompanyFilter", [d], Object.getOwnPropertyDescriptor(K.prototype, "toggleCompanyFilter"), K.prototype), q(K.prototype, "toggleJobTitleFilter", [d], Object.getOwnPropertyDescriptor(K.prototype, "toggleJobTitleFilter"), K.prototype), K), pr = {
2884
+ uitestdemo: [{
2885
+ id: "connected-business-tour",
2886
+ layers: [{
2887
+ floor: "1",
2888
+ id: "Pathway_1"
2889
+ }, {
2890
+ floor: "2",
2891
+ id: "Pathway_2"
2892
+ }],
2893
+ name: "Connected Business Tour",
2894
+ points: [
2895
+ "2345",
2896
+ "coffee-or-2119",
2897
+ "11-or-1289"
2898
+ ]
2899
+ }],
2900
+ uitest2026: [
2901
+ {
2902
+ id: "knowledge-trail",
2903
+ layers: [{
2904
+ floor: "1",
2905
+ id: "Pathway_1"
2906
+ }],
2907
+ name: "Knowledge Trail",
2908
+ description: "Designed for attendees focused on learning sessions and hands-on workshops, this route provides a clear path through the main educational areas of the event. It ensures quick access to conference rooms, interactive workshops, and the Innovation Lab, allowing participants to maximize their time, gain new knowledge, and engage directly with practical demonstrations.",
2909
+ points: [
2910
+ "2345",
2911
+ "coffee-or-2119",
2912
+ "11-or-1289",
2913
+ "255",
2914
+ "729"
2915
+ ]
2916
+ },
2917
+ {
2918
+ id: "vip-express",
2919
+ layers: [{
2920
+ floor: "1",
2921
+ id: "Pathway_2"
2922
+ }],
2923
+ name: "VIP Express",
2924
+ description: "A reserved route created specifically for VIP guests, allowing them to move efficiently between exclusive areas without interruptions. It connects the VIP Lounge with private meeting rooms and a dedicated exit, ensuring comfort, privacy, and quick access to high-priority zones throughout the event.",
2925
+ points: [
2926
+ "365",
2927
+ "burger-point",
2928
+ "backyard-or-1813",
2929
+ "2122",
2930
+ "2164",
2931
+ "mp12",
2932
+ "11-or-1289"
2933
+ ]
2934
+ },
2935
+ {
2936
+ id: "startup-discovery-walk",
2937
+ layers: [{
2938
+ floor: "1",
2939
+ id: "Pathway_3"
2940
+ }],
2941
+ name: "Startup Discovery Walk",
2942
+ description: "A route designed for attendees interested in exploring the newest and most innovative companies. It guides visitors through the Innovation Hub and Startup Pavilion, finishing at the Pitch Stage where emerging businesses showcase their ideas. This path helps attendees quickly discover fresh solutions and connect with founders shaping the future of logistics and supply chain.",
2943
+ points: [
2944
+ "mc7",
2945
+ "1895",
2946
+ "coffee-or-2183",
2947
+ "2345",
2948
+ "innovation-stage-or-1303",
2949
+ "biergarten-or-620",
2950
+ "spa-or-573"
2951
+ ]
2952
+ },
2953
+ {
2954
+ id: "global-networking-path",
2955
+ layers: [{
2956
+ floor: "1",
2957
+ id: "Pathway_4"
2958
+ }],
2959
+ name: "Global Networking Path",
2960
+ description: "Created for participants who want to expand their global connections. This route leads from the Main Hall to the International Pavilion, highlighting exhibitors from around the world, and continues to the Networking Lounge. It ensures a smooth flow for meeting international partners, discovering global solutions, and engaging in meaningful business conversations.",
2961
+ points: [
2962
+ "puppy-park-or-184",
2963
+ "ocado-intelligent-automation",
2964
+ "533",
2965
+ "mocktails-or-941",
2966
+ "infios",
2967
+ "slip-robotics",
2968
+ "penske-transportation-solutions",
2969
+ "headshot-studio-or-1988",
2970
+ "coffee-or-2183"
2971
+ ]
2972
+ }
2973
+ ],
2974
+ uitestimex: [{
2975
+ id: "startup-discovery-walk",
2976
+ layers: [{
2977
+ floor: "1",
2978
+ id: "Pathway_1"
2979
+ }],
2980
+ name: "Startup Discovery Walk",
2981
+ description: "Designed for attendees focused on learning sessions and hands-on workshops, this route provides a clear path through the main educational areas of the event. It ensures quick access to conference rooms, interactive workshops, and the Innovation Lab, allowing participants to maximize their time, gain new knowledge, and engage directly with practical demonstrations.",
2982
+ points: [
2983
+ "84624",
2984
+ "E1235",
2985
+ "E1817",
2986
+ "E2105"
2987
+ ]
2988
+ }, {
2989
+ id: "tech-innovation-trail",
2990
+ layers: [{
2991
+ floor: "1",
2992
+ id: "Pathway_2"
2993
+ }],
2994
+ name: "Tech Innovation Trail",
2995
+ description: "Focuses on technology exhibitors — mapping a route through companies offering event management software, AI tools, and digital signage solutions. Great for testing longer routes with multiple stops.",
2996
+ points: [
2997
+ "84628",
2998
+ "95111",
2999
+ "E1905",
3000
+ "39440",
3001
+ "91811",
3002
+ "40760",
3003
+ "10651"
3004
+ ]
3005
+ }],
3006
+ ifaberlin2025clone: [{
3007
+ id: "knowledge-trail",
3008
+ layers: [{
3009
+ floor: "1",
3010
+ id: "Pathway_2"
3011
+ }],
3012
+ name: "Knowledge Trail",
3013
+ description: "Designed for attendees focused on learning sessions and hands-on workshops, this route provides a clear path through the main educational areas of the event. It ensures quick access to conference rooms, interactive workshops, and the Innovation Lab, allowing participants to maximize their time, gain new knowledge, and engage directly with practical demonstrations.",
3014
+ points: [
3015
+ "gr-ocg-107",
3016
+ "gr-ocg-109",
3017
+ "gr-ocg-102",
3018
+ "gr-ocg-104",
3019
+ "gr-ocg-106",
3020
+ "gr-ocg-111",
3021
+ "gr-ocg-110",
3022
+ "Seating Lounge | Outdoor 1"
3023
+ ]
3024
+ }],
3025
+ demo: [{
3026
+ id: "the-green-journey",
3027
+ layers: [{
3028
+ floor: "1",
3029
+ id: "Pathway_1"
3030
+ }],
3031
+ name: "The Green Journey — From Idea to Implementation",
3032
+ description: "Embark on a curated journey through the exhibition’s most innovative sustainability zones. This tour highlights how modern industries rethink construction, manufacturing, and waste transformation to create a cleaner future. You’ll explore cutting-edge eco-materials, smart production methods, and next-generation recycling technologies — with a few pleasant stops along the way. The route ends in a relaxing lounge area, perfect for unwinding and reflecting on the ideas you’ve discovered.",
3033
+ points: [
3034
+ "RXhoaWJpdG9yXzE4OTc5ODY=",
3035
+ "RXhoaWJpdG9yXzE4OTc5NTg=",
3036
+ "RXhoaWJpdG9yXzE4OTc5Mzk=",
3037
+ "RXhoaWJpdG9yXzE4OTc5Mjc=",
3038
+ "Coffe Bar | Hall 5.1"
3039
+ ]
3040
+ }],
3041
+ wcc2026: [
3042
+ {
3043
+ id: "learning-on-show-floor",
3044
+ layers: [{
3045
+ floor: "L",
3046
+ id: "Pathway_1"
3047
+ }],
3048
+ name: "Learning on show floor",
3049
+ points: [
3050
+ "Space Domain Theater | 723",
3051
+ "3307",
3052
+ "Unveiled Theater | 2241"
3053
+ ]
3054
+ },
3055
+ {
3056
+ id: "networking-on-show-floor",
3057
+ layers: [{
3058
+ floor: "L",
3059
+ id: "Pathway_2"
3060
+ }],
3061
+ name: "Networking on show floor",
3062
+ points: [
3063
+ "Restaurant | 406",
3064
+ "Meeting Hub | 636",
3065
+ "Brew Lounge | 1163"
3066
+ ]
3067
+ },
3068
+ {
3069
+ id: "welcome-and-information-journey",
3070
+ layers: [
3071
+ {
3072
+ floor: "1",
3073
+ id: "Pathway_5"
3074
+ },
3075
+ {
3076
+ floor: "3",
3077
+ id: "Pathway_3"
3078
+ },
3079
+ {
3080
+ floor: "2",
3081
+ id: "Pathway_4"
3082
+ },
3083
+ {
3084
+ floor: "C",
3085
+ id: "Pathway_6"
3086
+ }
3087
+ ],
3088
+ name: "Welcome and Information Journey",
3089
+ description: "Follow this route to get oriented, find visitor services, complete registration, and enter the exhibition hall."
3090
+ }
3091
+ ],
3092
+ lamma2026: [{
3093
+ id: "innovation-trail",
3094
+ layers: [{
3095
+ floor: "1",
3096
+ id: "Pathway_1"
3097
+ }],
3098
+ name: "Innovation Trail",
3099
+ points: [
3100
+ "12120485",
3101
+ "12120827",
3102
+ "12120497",
3103
+ "15552598",
3104
+ "15552695",
3105
+ "15552538",
3106
+ "12120220",
3107
+ "15552729",
3108
+ "15784756",
3109
+ "15552462",
3110
+ "12120351",
3111
+ "15552470"
3112
+ ]
3113
+ }],
3114
+ fdhw2026: [
3115
+ {
3116
+ id: "association-of-convenience-stores-trail",
3117
+ layers: [{
3118
+ floor: "1",
3119
+ id: "Pathway_1"
3120
+ }],
3121
+ name: "Association of Convenience Stores Trail",
3122
+ description: "Show: IFE.\nData Types Allowed to View: IFE Visitors / IFE Suppliers / IFE Press / IFEM Visitors / IFEM Suppliers / IFEM Press.",
3123
+ points: [
3124
+ "16282530",
3125
+ "16282664",
3126
+ "16572191",
3127
+ "16282882",
3128
+ "16572254",
3129
+ "16282294",
3130
+ "16282527",
3131
+ "16282319",
3132
+ "16445163"
3133
+ ]
3134
+ },
3135
+ {
3136
+ id: "newbies-at-the-pub-show",
3137
+ layers: [{
3138
+ floor: "1",
3139
+ id: "Pathway_2"
3140
+ }],
3141
+ name: "Newbies at The Pub Show",
3142
+ description: "Show: The Pub Show.\nData Types Allowed to View: Pub Visitor / Pub Supplier / Pub Press / HRC Visitor / HRC Supplier / HRC Press.",
3143
+ points: [
3144
+ "16282289",
3145
+ "16282507",
3146
+ "16282613",
3147
+ "16282283",
3148
+ "16282382",
3149
+ "16282792",
3150
+ "16830654",
3151
+ "16282656",
3152
+ "16282309",
3153
+ "16282902",
3154
+ "16282450",
3155
+ "16283034",
3156
+ "16282743",
3157
+ "16572201",
3158
+ "16282279",
3159
+ "16369552",
3160
+ "16282392",
3161
+ "16282603"
3162
+ ]
3163
+ },
3164
+ {
3165
+ id: "chef-steve-munkley-mbe-s-top-picks",
3166
+ layers: [{
3167
+ floor: "1",
3168
+ id: "Pathway_3"
3169
+ }],
3170
+ name: "Chef Steve Munkley MBE's Top Picks",
3171
+ description: "Show: HRC.\nData Types Allowed to View: Pub Visitor / Pub Supplier / Pub Press / HRC Visitor / HRC Supplier / HRC Press.",
3172
+ points: [
3173
+ "16282438",
3174
+ "16282525",
3175
+ "16282753",
3176
+ "16282554",
3177
+ "16282784",
3178
+ "16282440",
3179
+ "16282479",
3180
+ "16282833",
3181
+ "PastryHQ | S1290",
3182
+ "16282914",
3183
+ "16282776"
3184
+ ]
3185
+ },
3186
+ {
3187
+ id: "radford-chancellor-s-must-see-exhibitors",
3188
+ layers: [{
3189
+ floor: "1",
3190
+ id: "Pathway_4"
3191
+ }],
3192
+ name: "Radford Chancellor's Must See Exhibitors",
3193
+ description: "Show: HRC.\nData Types Allowed to View: Pub Visitor / Pub Supplier / Pub Press / HRC Visitor / HRC Supplier / HRC Press.",
3194
+ points: [
3195
+ "16282429",
3196
+ "16283073",
3197
+ "16600529"
3198
+ ]
3199
+ },
3200
+ {
3201
+ id: "anna-sebastian-s-top-tipples",
3202
+ layers: [{
3203
+ floor: "1",
3204
+ id: "Pathway_5"
3205
+ }],
3206
+ name: "Anna Sebastian's Top Tipples",
3207
+ description: "Show: HRC & The Pub Show.\nData Types Allowed to View: Pub Visitor / Pub Supplier / Pub Press / HRC Visitor / HRC Supplier / HRC Press.",
3208
+ points: [
3209
+ "16282311",
3210
+ "16445141",
3211
+ "16837929",
3212
+ "16369552",
3213
+ "16282279",
3214
+ "16282289",
3215
+ "16282603"
3216
+ ]
3217
+ },
3218
+ {
3219
+ id: "fcsi-members-trail",
3220
+ layers: [{
3221
+ floor: "1",
3222
+ id: "Pathway_6"
3223
+ }],
3224
+ name: "\xA0FCSI Members Trail",
3225
+ points: [
3226
+ "16282429",
3227
+ "16600529",
3228
+ "16282606",
3229
+ "16282806",
3230
+ "16282745",
3231
+ "16282964"
3232
+ ]
3233
+ }
3234
+ ],
3235
+ retailtechnologyshow2026: [{
3236
+ id: "innovation-awards-finalists",
3237
+ layers: [{
3238
+ floor: "1",
3239
+ id: "Pathway_1"
3240
+ }],
3241
+ name: "Innovation Awards Finalists",
3242
+ points: [
3243
+ "Business France | K10",
3244
+ "16528837",
3245
+ "16528943",
3246
+ "16528881",
3247
+ "16528816",
3248
+ "16529021",
3249
+ "16529050",
3250
+ "16528953",
3251
+ "16528893",
3252
+ "16529071"
3253
+ ]
3254
+ }, {
3255
+ id: "zebra-partners-scavenger-hunt",
3256
+ layers: [{
3257
+ floor: "1",
3258
+ id: "Pathway_2"
3259
+ }],
3260
+ name: "Zebra Partners Scavenger Hunt",
3261
+ points: [
3262
+ "16528708",
3263
+ "16528793",
3264
+ "16529002",
3265
+ "16529036",
3266
+ "16529030",
3267
+ "16529038",
3268
+ "16528903",
3269
+ "16528855",
3270
+ "16528716",
3271
+ "16528967",
3272
+ "16528895",
3273
+ "16529088",
3274
+ "16529055",
3275
+ "16529024"
3276
+ ]
3277
+ }]
3278
+ }, J, mr, hr, gr, _r;
3279
+ function vr(e, t, n, r) {
3280
+ n && Object.defineProperty(e, t, {
3281
+ enumerable: n.enumerable,
3282
+ configurable: n.configurable,
3283
+ writable: n.writable,
3284
+ value: n.initializer ? n.initializer.call(r) : void 0
3285
+ });
3286
+ }
3287
+ function Y(e, t, n, r, i) {
3288
+ var a = {};
3289
+ return Object.keys(r).forEach(function(e) {
3290
+ a[e] = r[e];
3291
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
3292
+ return r(e, t, n) || n;
3293
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
3294
+ }
3295
+ var yr = 1, br = (J = class {
3296
+ constructor(e) {
3297
+ this.rootStore = void 0, vr(this, "tours", mr, this), vr(this, "currentExpo", hr, this), vr(this, "hasTours", gr, this), vr(this, "toursLoadError", _r, this), this.rootStore = e, this.loadTours();
3298
+ }
3299
+ loadTours() {
3300
+ try {
3301
+ if (this.currentExpo = Te.EXPO || "default", this.toursLoadError = null, !this.isValidToursData(pr)) {
3302
+ this.toursLoadError = "Invalid tours data format", this.resetTours();
3303
+ return;
3304
+ }
3305
+ let e = pr[this.currentExpo] || [];
3306
+ if (!this.validateToursStructure(e)) {
3307
+ this.toursLoadError = "Invalid tour items structure", this.resetTours();
3308
+ return;
3309
+ }
3310
+ this.tours = e, this.hasTours = e.length > 0;
3311
+ } catch (e) {
3312
+ console.error("Error loading tours:", e), this.toursLoadError = e instanceof Error ? e.message : "Failed to load tours", this.resetTours();
3313
+ }
3314
+ }
3315
+ resetTours() {
3316
+ this.tours = [], this.hasTours = !1;
3317
+ }
3318
+ isValidToursData(e) {
3319
+ return typeof e == "object" && !!e && !Array.isArray(e);
3320
+ }
3321
+ validateToursStructure(e) {
3322
+ return Array.isArray(e) ? e.every((e) => e && typeof e == "object" && typeof e.id == "string" && Array.isArray(e.layers) && e.layers.length >= yr && (e.points === void 0 || Array.isArray(e.points))) : !1;
3323
+ }
3324
+ get tourItems() {
3325
+ return this.tours;
3326
+ }
3327
+ getTourById(e) {
3328
+ return this.tours.find((t) => t.id === e);
3329
+ }
3330
+ getToursByPoint(e) {
3331
+ return this.tours.filter((t) => {
3332
+ var n;
3333
+ return (n = t.points) == null ? void 0 : n.includes(e);
3334
+ });
3335
+ }
3336
+ getToursForExpo(e) {
3337
+ return this.isValidToursData(pr) && pr[e] || [];
3338
+ }
3339
+ get currentTour() {
3340
+ let { list: e } = this.rootStore.uiState;
3341
+ return e.type !== "multi-point-tour" || !this.isMultiPointTourList(e) ? null : this.getTourById(e.tourId) || null;
3342
+ }
3343
+ isMultiPointTourList(e) {
3344
+ return e.type === "multi-point-tour" && typeof e.tourId == "string";
3345
+ }
3346
+ get isActive() {
3347
+ return this.rootStore.uiState.list.type === "multi-point-tour";
3348
+ }
3349
+ get tourLayers() {
3350
+ let e = this.currentTour;
3351
+ return e ? e.layers.map((e) => this.rootStore.layerStore.findLayer(e.floor)).filter((e) => e != null) : [];
3352
+ }
3353
+ getTourLayerInfo(e) {
3354
+ let t = this.currentTour;
3355
+ if (t) return t.layers.find((t) => {
3356
+ let n = this.rootStore.layerStore.findLayer(t.floor);
3357
+ return n && (n.name === e || n.description === e);
3358
+ });
3359
+ }
3360
+ launchTour(e, t, n) {
3361
+ let r = this.validateTourForLaunch(e);
3362
+ if (r) return console.warn(`Cannot launch tour: ${r}`), !1;
3363
+ let i = e.layers[0].id, a = e.layers[0].floor;
3364
+ return e.points && e.points.length > 0 ? this.rootStore.fp.showPathway(i, e.points) : this.rootStore.fp.showPathwayOnly(i, a), this.rootStore.uiState.setTourTitle(t), this.rootStore.uiState.setTourDescription(n), this.rootStore.uiState.setIsMultiPointTour(!0), this.rootStore.uiState.setMultiPointTourList(e.id), window.setTimeout(() => {
3365
+ this.rootStore.showMap();
3366
+ }, navigator.userAgent.toLowerCase().indexOf("android") > -1 ? 400 : 50), !0;
3367
+ }
3368
+ validateTourForLaunch(e) {
3369
+ return e.layers.length < yr ? `Tour must have at least ${yr} layer` : null;
3370
+ }
3371
+ stopTour() {
3372
+ this.rootStore.uiState.setIsMultiPointTour(!1), this.rootStore.uiState.setPathwayOnlyMode(!1);
3373
+ let e = this.rootStore.uiState.list.type;
3374
+ (e === "tours" || e === "multi-point-tour") && (this.rootStore.uiState.list = {
3375
+ type: "search",
3376
+ text: "",
3377
+ focused: !1
3378
+ }), this.rootStore.fp.hidePathways();
3379
+ }
3380
+ }, mr = Y(J.prototype, "tours", [u], {
3381
+ configurable: !0,
3382
+ enumerable: !0,
3383
+ writable: !0,
3384
+ initializer: function() {
3385
+ return [];
3386
+ }
3387
+ }), hr = Y(J.prototype, "currentExpo", [u], {
3388
+ configurable: !0,
3389
+ enumerable: !0,
3390
+ writable: !0,
3391
+ initializer: function() {
3392
+ return "";
3393
+ }
3394
+ }), gr = Y(J.prototype, "hasTours", [u], {
3395
+ configurable: !0,
3396
+ enumerable: !0,
3397
+ writable: !0,
3398
+ initializer: function() {
3399
+ return !1;
3400
+ }
3401
+ }), _r = Y(J.prototype, "toursLoadError", [u], {
3402
+ configurable: !0,
3403
+ enumerable: !0,
3404
+ writable: !0,
3405
+ initializer: function() {
3406
+ return null;
3407
+ }
3408
+ }), Y(J.prototype, "loadTours", [d], Object.getOwnPropertyDescriptor(J.prototype, "loadTours"), J.prototype), Y(J.prototype, "resetTours", [d], Object.getOwnPropertyDescriptor(J.prototype, "resetTours"), J.prototype), Y(J.prototype, "tourItems", [l], Object.getOwnPropertyDescriptor(J.prototype, "tourItems"), J.prototype), Y(J.prototype, "currentTour", [l], Object.getOwnPropertyDescriptor(J.prototype, "currentTour"), J.prototype), Y(J.prototype, "isActive", [l], Object.getOwnPropertyDescriptor(J.prototype, "isActive"), J.prototype), Y(J.prototype, "tourLayers", [l], Object.getOwnPropertyDescriptor(J.prototype, "tourLayers"), J.prototype), Y(J.prototype, "launchTour", [d], Object.getOwnPropertyDescriptor(J.prototype, "launchTour"), J.prototype), Y(J.prototype, "stopTour", [d], Object.getOwnPropertyDescriptor(J.prototype, "stopTour"), J.prototype), J), xr, Sr, Cr, wr, Tr, Er, Dr, Or, kr, Ar, jr, Mr, X, Nr, Pr, Fr, Ir, Lr, Rr;
3409
+ function zr(e, t, n, r) {
3410
+ n && Object.defineProperty(e, t, {
3411
+ enumerable: n.enumerable,
3412
+ configurable: n.configurable,
3413
+ writable: n.writable,
3414
+ value: n.initializer ? n.initializer.call(r) : void 0
3415
+ });
3416
+ }
3417
+ function Z(e, t, n, r, i) {
3418
+ var a = {};
3419
+ return Object.keys(r).forEach(function(e) {
3420
+ a[e] = r[e];
3421
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
3422
+ return r(e, t, n) || n;
3423
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
3424
+ }
3425
+ function Br(e) {
3426
+ let { viewbox: t, rect: n } = e;
3427
+ return !t || !n ? t == null ? n : t : t.intersects(n) ? Ve.fromUnion(t, n) : n;
3428
+ }
3429
+ var Vr = class {
3430
+ constructor(e, t, n) {
3431
+ this.id = void 0, this.name = void 0, this.order = void 0, this.contour = void 0, this.markerPoint = void 0, this.bounds = void 0, this.levels = void 0, this.initialLevel = void 0, this.detailMinSizePx = void 0, this.markerMaxSizePx = void 0, this.auxLayers = void 0, this.entrances = void 0, this._activeLevelName = void 0, this._lastUserActivatedLevelName = u.box(null), this._presentationState = u.box(null), this.id = e.id, this.name = e.name, this.order = e.order, this.contour = e.contour, this.markerPoint = e.markerPoint, this.bounds = e.bounds, this.detailMinSizePx = e.detailMinSizePx, this.markerMaxSizePx = e.markerMaxSizePx, this.auxLayers = e.auxLayers.map((e) => ({ ...e })), this.levels = t, this.initialLevel = n, this.entrances = e.entrances.flatMap((e) => {
3432
+ let n = t.find((t) => t.layer.name === e.layer);
3433
+ return n ? [{
3434
+ level: n,
3435
+ point: { ...e.point },
3436
+ name: e.name
3437
+ }] : [];
3438
+ }), this._activeLevelName = u.box(n.layer.name);
3439
+ }
3440
+ get frame() {
3441
+ let e = this.levels.map((e) => Br(e.layer)).filter((e) => !!e);
3442
+ return e.length && Ve.fromUnion(...e) || this.bounds;
3443
+ }
3444
+ get activeLevel() {
3445
+ var e;
3446
+ return (e = this.levels.find((e) => e.layer.name === this._activeLevelName.get())) == null ? this.initialLevel : e;
3447
+ }
3448
+ get lastUserActivatedLevel() {
3449
+ var e;
3450
+ let t = this._lastUserActivatedLevelName.get();
3451
+ return t ? (e = this.levels.find((e) => e.layer.name === t)) == null ? null : e : null;
3452
+ }
3453
+ setActiveLevel(e, t) {
3454
+ this._activeLevelName.set(e.layer.name), t && this._lastUserActivatedLevelName.set(e.layer.name);
3455
+ }
3456
+ get presentationState() {
3457
+ return this._presentationState.get();
3458
+ }
3459
+ set presentationState(e) {
3460
+ this._presentationState.set(e);
3461
+ }
3462
+ get detailVisible() {
3463
+ var e, t;
3464
+ return (e = (t = this._presentationState.get()) == null ? void 0 : t.detailVisible) == null || e;
3465
+ }
3466
+ }, Hr = (xr = l({ keepAlive: !0 }), Sr = l({ keepAlive: !0 }), Cr = l({ keepAlive: !0 }), wr = l({ keepAlive: !0 }), Tr = l({ keepAlive: !0 }), Er = l({ keepAlive: !0 }), Dr = l({ keepAlive: !0 }), Or = l({ keepAlive: !0 }), kr = l({ keepAlive: !0 }), Ar = l({ keepAlive: !0 }), jr = l({ keepAlive: !0 }), Mr = l({ keepAlive: !0 }), X = class {
3467
+ constructor(e) {
3468
+ this.rootStore = void 0, zr(this, "venues", Nr, this), zr(this, "diagnostics", Pr, this), this.campusViewbox = u.box(null, { deep: !1 }), zr(this, "automaticContextVenueId", Fr, this), zr(this, "destinationVenueId", Ir, this), zr(this, "cameraRequest", Lr, this), zr(this, "focusedVenueId", Rr, this), this.levelActivationRequests = /* @__PURE__ */ new Map(), this.cameraIntentId = 0, this.floorActivatedNotifier = Ne(), this.venueActivatedNotifier = fe((e) => this.rootStore.fp.onVenueActivated(ot(e, !0)), 0), this.rootStore = e;
3469
+ }
3470
+ get hasVenueModel() {
3471
+ return this.venues.length > 0;
3472
+ }
3473
+ get isCampusMode() {
3474
+ var e;
3475
+ return this.hasVenueModel && !!((e = this.rootStore) != null && e.maplibreStore.showMaplibre);
3476
+ }
3477
+ get orderedVenues() {
3478
+ return [...this.venues].sort((e, t) => e.order - t.order || rt(e.id, t.id));
3479
+ }
3480
+ get focusedVenue() {
3481
+ var e;
3482
+ return (e = this.venues.find((e) => e.id === this.focusedVenueId)) == null ? null : e;
3483
+ }
3484
+ get defaultVenue() {
3485
+ var e;
3486
+ return (e = this.orderedVenues[0]) == null ? null : e;
3487
+ }
3488
+ get campusBounds() {
3489
+ var e;
3490
+ return this.venues.length ? (e = this.campusViewbox.get()) == null ? Ve.fromUnion(...this.venues.map((e) => e.bounds)) || null : e : null;
3491
+ }
3492
+ get campusBoundsAuthored() {
3493
+ return this.hasVenueModel && this.campusViewbox.get() !== null;
3494
+ }
3495
+ get fallbackVenue() {
3496
+ var e;
3497
+ return (e = this.focusedVenue) == null ? this.defaultVenue : e;
3498
+ }
3499
+ get activeVenue() {
3500
+ return this.isCampusMode ? this.focusedVenue : this.fallbackVenue;
3501
+ }
3502
+ get auxVenuesByLayerName() {
3503
+ let e = /* @__PURE__ */ new Map();
3504
+ for (let t of this.venues) for (let n of t.auxLayers) {
3505
+ let r = e.get(n.layer);
3506
+ r ? r.includes(t) || r.push(t) : e.set(n.layer, [t]);
3507
+ }
3508
+ return e;
3509
+ }
3510
+ get selectorMode() {
3511
+ var e;
3512
+ return (e = this.focusedVenue) != null && e.detailVisible ? "levels" : "venues";
3513
+ }
3514
+ get venuesByLevelLayerName() {
3515
+ let e = /* @__PURE__ */ new Map();
3516
+ for (let t of this.venues) for (let n of t.levels) e.set(n.layer.name, t);
3517
+ return e;
3518
+ }
3519
+ venueOfLayer(e) {
3520
+ var t;
3521
+ let n = typeof e == "string" ? e : e == null ? void 0 : e.name;
3522
+ return n ? (t = this.venuesByLevelLayerName.get(n)) == null ? null : t : null;
3523
+ }
3524
+ findVenue(e) {
3525
+ var t;
3526
+ let n = e.toLowerCase();
3527
+ return (t = this.venues.find((e) => e.id === n)) == null ? null : t;
3528
+ }
3529
+ venueAt(e) {
3530
+ let t = null;
3531
+ for (let n of this.venues) !n.bounds.containsPoint(e) || !Ur(n.contour, e) || (!t || n.bounds.area < t.bounds.area) && (t = n);
3532
+ return t;
3533
+ }
3534
+ init() {
3535
+ let e = this.rootStore.layerStore, t = new Map(e.layers.filter((e) => e && !e.rootParent).map((e) => [e.name, e])), n = new Map(Array.from(t, ([e, t]) => [e, {
3536
+ rect: t.rect,
3537
+ viewbox: t.viewbox
3538
+ }])), r = typeof m == "object" && m && (m.venuesVersion === void 0 || m.venuesVersion === 1) && Array.isArray(m.venues) ? m.venues : [], i = c(), a = nt(m, n, r.map((e) => {
3539
+ let t = new Set(o(e));
3540
+ return i.filter((e) => t.has(e)).map((e) => {
3541
+ try {
3542
+ return {
3543
+ layer: e,
3544
+ extraction: Oe(e)
3545
+ };
3546
+ } catch {
3547
+ return {
3548
+ layer: e,
3549
+ extraction: {
3550
+ ring: null,
3551
+ unusableElementKinds: []
3552
+ }
3553
+ };
3554
+ }
3555
+ });
3556
+ })), s = a.venues;
3557
+ this.diagnostics = a.diagnostics, this.campusViewbox.set(a.campusViewbox), e.setQuarantinedLayerNames(a.quarantinedLayerNames), this.venues = s.map((e) => {
3558
+ var n;
3559
+ let r = e.levels.flatMap((e) => {
3560
+ var n;
3561
+ let r = t.get(e.layer);
3562
+ return r ? [{
3563
+ layer: r,
3564
+ ordinal: e.ordinal,
3565
+ displayName: (n = e.name) == null ? r.description : n,
3566
+ initial: e.initial
3567
+ }] : [];
3568
+ });
3569
+ return new Vr(e, r, (n = r.find((e) => e.initial)) == null ? r[0] : n);
3570
+ }), this.automaticContextVenueId = null, this.destinationVenueId = null, this.focusedVenueId = null, this.cameraRequest = null, this.levelActivationRequests.clear(), this.cameraIntentId++, this.isCampusMode ? this.applyInitialVisibility() : this.hasVenueModel && this.applyFallbackVisibility();
3571
+ }
3572
+ applyInitialVisibility() {
3573
+ if (this.isCampusMode) for (let e of this.venues) {
3574
+ e.presentationState = null;
3575
+ for (let t of e.levels) this.rootStore.layerStore.setLayerVisibility(t.layer, t === e.activeLevel);
3576
+ }
3577
+ }
3578
+ applyFallbackVisibility() {
3579
+ if (!this.hasVenueModel) return;
3580
+ let e = this.fallbackVenue;
3581
+ for (let t of this.venues) for (let n of t.levels) this.rootStore.layerStore.setLayerVisibility(n.layer, t === e && n === t.activeLevel);
3582
+ }
3583
+ setAutomaticContext(e) {
3584
+ var t, n;
3585
+ let r = e === null ? null : typeof e == "string" ? (t = this.venues.find((t) => t.id === e)) == null ? null : t : e;
3586
+ this.automaticContextVenueId = (n = r == null ? void 0 : r.id) == null ? null : n, this.destinationVenueId === null && this.setEffectiveContext(r);
3587
+ }
3588
+ enterVenue(e, { fly: t = !0, level: n } = {}) {
3589
+ var r, i;
3590
+ let a = typeof e == "string" ? this.venues.find((t) => t.id === e) : e;
3591
+ if (!a) return Promise.resolve();
3592
+ let o = this.activeVenue, s = ++this.cameraIntentId;
3593
+ this.cameraRequest = null, this.destinationVenueId = a.id, this.setEffectiveContext(a);
3594
+ let c = this.resolveVenueLevel(a, n), l = (r = (i = c == null ? a.levels.find((e) => e.ordinal === (o == null ? void 0 : o.activeLevel.ordinal)) : c) == null ? a.lastUserActivatedLevel : i) == null ? a.initialLevel : r, u = this.activateLayer(l.layer, {
3595
+ fly: !!c && t,
3596
+ establishDestination: !1,
3597
+ cameraIntentId: s,
3598
+ userActivated: !!c
3599
+ });
3600
+ return c || !t || this.requestVenueCamera(a, l, s), u;
3601
+ }
3602
+ focusVenue(e, t = {}) {
3603
+ return this.enterVenue(e, t);
3604
+ }
3605
+ releaseDestinationOverride() {
3606
+ var e;
3607
+ if (this.destinationVenueId === null) return;
3608
+ this.destinationVenueId = null;
3609
+ let t = (e = this.venues.find((e) => e.id === this.automaticContextVenueId)) == null ? null : e;
3610
+ this.setEffectiveContext(t);
3611
+ }
3612
+ clearCameraRequest(e) {
3613
+ this.cameraRequest === e && (this.cameraRequest = null);
3614
+ }
3615
+ viewAllVenues() {
3616
+ let e = this.campusBounds;
3617
+ if (!e) return;
3618
+ let t = ++this.cameraIntentId;
3619
+ this.rootStore.maplibreStore.showMaplibre ? this.cameraRequest = {
3620
+ kind: "campus",
3621
+ intentId: t,
3622
+ rect: e
3623
+ } : (this.rootStore.uiState.moveToRect = e, this.completeCampusView());
3624
+ }
3625
+ frameActiveVenue() {
3626
+ let e = this.activeVenue;
3627
+ return e ? (this.requestVenueCamera(e, e.activeLevel), !0) : !1;
3628
+ }
3629
+ completeCampusView(e) {
3630
+ e && (e.kind !== "campus" || e.intentId !== this.cameraIntentId) || this.releaseDestinationOverride();
3631
+ }
3632
+ clearFocus() {
3633
+ this.automaticContextVenueId = null, this.destinationVenueId = null, this.setEffectiveContext(null);
3634
+ }
3635
+ activateLayer(e, { fly: t = !0, establishDestination: n = !0, cameraIntentId: r, userActivated: i = !0 } = {}) {
3636
+ let a = this.venueOfLayer(e);
3637
+ if (!a) return Promise.resolve();
3638
+ if (n) return this.enterVenue(a, {
3639
+ fly: t,
3640
+ level: e
3641
+ });
3642
+ let o = a.levels.find((t) => t.layer === e);
3643
+ if (!o) return Promise.resolve();
3644
+ let s = this.nextLevelActivationRequest(a.id), c = r == null ? this.cameraIntentId : r;
3645
+ return this.rootStore.routeStore.currentRouteLayer !== e && (this.rootStore.routeStore.currentRouteLayer = e), a.activeLevel === o && e.visible ? (a.setActiveLevel(o, i), t && this.requestVenueCamera(a, o), Promise.resolve()) : ke(e).then(() => {
3646
+ f(() => {
3647
+ if (s === this.levelActivationRequests.get(a.id)) {
3648
+ for (let e of a.levels) e !== o && e.layer.visible && this.rootStore.layerStore.setLayerVisibility(e.layer, !1);
3649
+ this.rootStore.layerStore.setLayerVisibility(e, !0), a.setActiveLevel(o, i), t && this.destinationVenueId === a.id && c === this.cameraIntentId && this.requestVenueCamera(a, o, c), this.destinationVenueId === a.id && this.notifyFloorActivated(e);
3650
+ }
3651
+ });
3652
+ });
3653
+ }
3654
+ notifyVenueActivated(e) {
3655
+ var t;
3656
+ typeof ((t = this.rootStore.fp) == null ? void 0 : t.onVenueActivated) == "function" && this.venueActivatedNotifier(e);
3657
+ }
3658
+ setEffectiveContext(e) {
3659
+ var t;
3660
+ let n = this.focusedVenueId !== (e == null ? void 0 : e.id);
3661
+ this.focusedVenueId = (t = e == null ? void 0 : e.id) == null ? null : t, n && (this.rootStore.maplibreStore.showMaplibre || this.applyFallbackVisibility(), e && this.notifyVenueActivated(e));
3662
+ }
3663
+ requestVenueCamera(e, t, n = this.cameraIntentId) {
3664
+ var r;
3665
+ let i = m.enableExperimentalVenueFraming === !0 || (r = Br(t.layer)) == null ? e.bounds : r;
3666
+ if (!this.rootStore.maplibreStore.showMaplibre) {
3667
+ this.rootStore.uiState.moveToRect = i;
3668
+ return;
3669
+ }
3670
+ this.cameraRequest = {
3671
+ kind: "venue",
3672
+ intentId: n,
3673
+ venueId: e.id,
3674
+ layer: t.layer.name,
3675
+ rect: i
3676
+ };
3677
+ }
3678
+ nextLevelActivationRequest(e) {
3679
+ var t;
3680
+ let n = ((t = this.levelActivationRequests.get(e)) == null ? 0 : t) + 1;
3681
+ return this.levelActivationRequests.set(e, n), n;
3682
+ }
3683
+ resolveVenueLevel(e, t) {
3684
+ if (typeof t == "string") return e.levels.find((e) => e.layer.name === t);
3685
+ if (t) return e.levels.find((e) => e === t || e.layer === t);
3686
+ }
3687
+ notifyFloorActivated(e) {
3688
+ this.floorActivatedNotifier(this.rootStore.fp, e.name);
3689
+ }
3690
+ }, Nr = Z(X.prototype, "venues", [u], {
3691
+ configurable: !0,
3692
+ enumerable: !0,
3693
+ writable: !0,
3694
+ initializer: function() {
3695
+ return [];
3696
+ }
3697
+ }), Pr = Z(X.prototype, "diagnostics", [u], {
3698
+ configurable: !0,
3699
+ enumerable: !0,
3700
+ writable: !0,
3701
+ initializer: function() {
3702
+ return [];
3703
+ }
3704
+ }), Fr = Z(X.prototype, "automaticContextVenueId", [u], {
3705
+ configurable: !0,
3706
+ enumerable: !0,
3707
+ writable: !0,
3708
+ initializer: function() {
3709
+ return null;
3710
+ }
3711
+ }), Ir = Z(X.prototype, "destinationVenueId", [u], {
3712
+ configurable: !0,
3713
+ enumerable: !0,
3714
+ writable: !0,
3715
+ initializer: function() {
3716
+ return null;
3717
+ }
3718
+ }), Lr = Z(X.prototype, "cameraRequest", [u], {
3719
+ configurable: !0,
3720
+ enumerable: !0,
3721
+ writable: !0,
3722
+ initializer: function() {
3723
+ return null;
3724
+ }
3725
+ }), Rr = Z(X.prototype, "focusedVenueId", [u], {
3726
+ configurable: !0,
3727
+ enumerable: !0,
3728
+ writable: !0,
3729
+ initializer: function() {
3730
+ return null;
3731
+ }
3732
+ }), Z(X.prototype, "hasVenueModel", [xr], Object.getOwnPropertyDescriptor(X.prototype, "hasVenueModel"), X.prototype), Z(X.prototype, "isCampusMode", [Sr], Object.getOwnPropertyDescriptor(X.prototype, "isCampusMode"), X.prototype), Z(X.prototype, "orderedVenues", [Cr], Object.getOwnPropertyDescriptor(X.prototype, "orderedVenues"), X.prototype), Z(X.prototype, "focusedVenue", [wr], Object.getOwnPropertyDescriptor(X.prototype, "focusedVenue"), X.prototype), Z(X.prototype, "defaultVenue", [Tr], Object.getOwnPropertyDescriptor(X.prototype, "defaultVenue"), X.prototype), Z(X.prototype, "campusBounds", [Er], Object.getOwnPropertyDescriptor(X.prototype, "campusBounds"), X.prototype), Z(X.prototype, "campusBoundsAuthored", [Dr], Object.getOwnPropertyDescriptor(X.prototype, "campusBoundsAuthored"), X.prototype), Z(X.prototype, "fallbackVenue", [Or], Object.getOwnPropertyDescriptor(X.prototype, "fallbackVenue"), X.prototype), Z(X.prototype, "activeVenue", [kr], Object.getOwnPropertyDescriptor(X.prototype, "activeVenue"), X.prototype), Z(X.prototype, "auxVenuesByLayerName", [Ar], Object.getOwnPropertyDescriptor(X.prototype, "auxVenuesByLayerName"), X.prototype), Z(X.prototype, "selectorMode", [jr], Object.getOwnPropertyDescriptor(X.prototype, "selectorMode"), X.prototype), Z(X.prototype, "venuesByLevelLayerName", [Mr], Object.getOwnPropertyDescriptor(X.prototype, "venuesByLevelLayerName"), X.prototype), Z(X.prototype, "init", [d], Object.getOwnPropertyDescriptor(X.prototype, "init"), X.prototype), Z(X.prototype, "applyInitialVisibility", [d], Object.getOwnPropertyDescriptor(X.prototype, "applyInitialVisibility"), X.prototype), Z(X.prototype, "applyFallbackVisibility", [d], Object.getOwnPropertyDescriptor(X.prototype, "applyFallbackVisibility"), X.prototype), Z(X.prototype, "setAutomaticContext", [d], Object.getOwnPropertyDescriptor(X.prototype, "setAutomaticContext"), X.prototype), Z(X.prototype, "enterVenue", [d], Object.getOwnPropertyDescriptor(X.prototype, "enterVenue"), X.prototype), Z(X.prototype, "focusVenue", [d], Object.getOwnPropertyDescriptor(X.prototype, "focusVenue"), X.prototype), Z(X.prototype, "releaseDestinationOverride", [d], Object.getOwnPropertyDescriptor(X.prototype, "releaseDestinationOverride"), X.prototype), Z(X.prototype, "clearCameraRequest", [d], Object.getOwnPropertyDescriptor(X.prototype, "clearCameraRequest"), X.prototype), Z(X.prototype, "viewAllVenues", [d], Object.getOwnPropertyDescriptor(X.prototype, "viewAllVenues"), X.prototype), Z(X.prototype, "frameActiveVenue", [d], Object.getOwnPropertyDescriptor(X.prototype, "frameActiveVenue"), X.prototype), Z(X.prototype, "completeCampusView", [d], Object.getOwnPropertyDescriptor(X.prototype, "completeCampusView"), X.prototype), Z(X.prototype, "clearFocus", [d], Object.getOwnPropertyDescriptor(X.prototype, "clearFocus"), X.prototype), Z(X.prototype, "activateLayer", [d], Object.getOwnPropertyDescriptor(X.prototype, "activateLayer"), X.prototype), X);
3733
+ function Ur(e, t) {
3734
+ let n = !1;
3735
+ for (let r = 0, i = e.length - 1; r < e.length; i = r++) {
3736
+ let a = e[r], o = e[i];
3737
+ if (a.y > t.y != o.y > t.y) {
3738
+ let e = a.x + (t.y - a.y) * (o.x - a.x) / (o.y - a.y);
3739
+ t.x < e && (n = !n);
3740
+ }
3741
+ }
3742
+ return n;
3743
+ }
3744
+ //#endregion
3745
+ //#region src/store/RootStore.ts
3746
+ var Q, Wr, Gr;
3747
+ function Kr(e, t, n, r) {
3748
+ n && Object.defineProperty(e, t, {
3749
+ enumerable: n.enumerable,
3750
+ configurable: n.configurable,
3751
+ writable: n.writable,
3752
+ value: n.initializer ? n.initializer.call(r) : void 0
3753
+ });
3754
+ }
3755
+ function $(e, t, n, r, i) {
3756
+ var a = {};
3757
+ return Object.keys(r).forEach(function(e) {
3758
+ a[e] = r[e];
3759
+ }), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = !0), a = n.slice().reverse().reduce(function(n, r) {
3760
+ return r(e, t, n) || n;
3761
+ }, a), i && a.initializer !== void 0 && (a.value = a.initializer ? a.initializer.call(i) : void 0, a.initializer = void 0), a.initializer === void 0 ? (Object.defineProperty(e, t, a), null) : a;
3762
+ }
3763
+ var qr = (Q = class {
3764
+ setResetCameraFn(e) {
3765
+ this.resetCameraFn = e;
3766
+ }
3767
+ constructor() {
3768
+ this.categoryStore = void 0, this.exhibitorStore = void 0, this.boothStore = void 0, this.uiState = void 0, this.overlayStore = void 0, this.routeStore = void 0, this.routePlannerStore = void 0, this.toursStore = void 0, this.maplibreStore = void 0, this.layerStore = void 0, this.venueStore = void 0, this.intercomStore = void 0, this.eventStore = void 0, this.poiTypeStore = void 0, this.poiMarkerStore = void 0, this.heatmapStore = void 0, this.fuzzySearchEngineStore = void 0, this.categoryFilterStore = void 0, this.sessionsFilterStore = void 0, this.speakerStore = void 0, this.speakerFilterStore = void 0, this.searchStore = void 0, this.searchButtonsStore = void 0, this.bookmarksStore = void 0, this.urlFilterManager = void 0, this.shortcutRegistry = void 0, this.selectionCameraRequest = 0, this.fp = void 0, Kr(this, "initialized", Wr, this), Kr(this, "resetCameraFn", Gr, this), this.categoryStore = new me(this), this.exhibitorStore = new Me(this), this.boothStore = new Ae(this), this.routeStore = new $e(this), this.routePlannerStore = new Dn(this), this.toursStore = new br(this), this.uiState = new le(this), this.overlayStore = new tn(this), this.maplibreStore = new $t(this), this.layerStore = new Re(this), this.venueStore = new Hr(this), this.intercomStore = new Bt(), this.eventStore = new se(this), this.heatmapStore = new oe(), this.poiTypeStore = new dn(this), this.poiMarkerStore = new un(this), this.fuzzySearchEngineStore = new Ft([
3769
+ "name",
3770
+ "title",
3771
+ "fullName",
3772
+ "booths.name"
3773
+ ]), this.categoryFilterStore = new At(this), this.sessionsFilterStore = new ar(this), this.speakerStore = new ae(this), this.speakerFilterStore = new fr(this), this.searchStore = new nr(this), this.searchButtonsStore = new Jn(this), this.bookmarksStore = new Tt(this), this.urlFilterManager = new Ct(this), this.shortcutRegistry = new or(), this.registerShortcutProviders();
3774
+ }
3775
+ scheduleSelectionCamera(e, t, n) {
3776
+ setTimeout(() => {
3777
+ let r = n();
3778
+ r && (t ? t.then(() => this.moveToList(r, !0, e)) : this.moveToList(r, !1, e));
3779
+ }, te || ye ? 500 : 50);
3780
+ }
3781
+ selectExhibitor(e, t = !0) {
3782
+ var n;
3783
+ let r = ++this.selectionCameraRequest;
3784
+ this.uiState.hoveredExhibitor = null, this.uiState.details = e;
3785
+ var i = e.booths.filter((e) => e.visible), a = e.booths.filter((e) => !e.visible);
3786
+ let o;
3787
+ if (!i.length && a.length && (this.venueStore.hasVenueModel ? o = de(this.venueStore, [a[0]]) : this.layerStore.updateVisibility(a[0].layer, !0)), !t) return;
3788
+ let s = (n = a[0]) == null || (n = n.layer) == null ? void 0 : n.name, c = i.length ? i : a.filter((e) => {
3789
+ var t;
3790
+ return ((t = e.layer) == null ? void 0 : t.name) === s;
3791
+ });
3792
+ this.scheduleSelectionCamera(r, o, () => c);
3793
+ }
3794
+ selectBooth(e, t = !0) {
3795
+ var n;
3796
+ let r = ++this.selectionCameraRequest, i = Array.isArray(e) ? e : [e];
3797
+ this.uiState.details = i[0], i.length === 1 && (n = i[0].schedule) != null && n.length && (this.uiState.desiredOverlaySize = "medium");
3798
+ let a;
3799
+ i.length === 1 && i[0].layer && !i[0].visible && (this.venueStore.hasVenueModel ? a = de(this.venueStore, i) : this.layerStore.mode === ze.Radio && this.layerStore.updateVisibility(i[0].layer, !0)), t && this.scheduleSelectionCamera(r, a, () => i);
3800
+ }
3801
+ reset() {
3802
+ let e = window.__searchi;
3803
+ e && e.querySelector && e.querySelector("input[type=search]") && e.querySelector("input[type=search]").blur && e.querySelector("input[type=search]").blur(), window.setTimeout(() => {
3804
+ this.uiState.setKioskModeEnabled || n().then(() => {
3805
+ f(() => {
3806
+ var e;
3807
+ this.selectSearch(""), this.uiState.details = null, (e = this.resetCameraFn) == null || e.call(this), this.uiState.menu = !1, this.searchStore.resetSearchBox(), this.searchButtonsStore.clearAllFilters();
3808
+ }), setTimeout(() => {
3809
+ f(() => {
3810
+ this.uiState.inIdle = !0;
3811
+ });
3812
+ }, 100);
3813
+ });
3814
+ }, 1e3);
3815
+ }
3816
+ selectNone() {
3817
+ window.__resett && window.__resett(), this.uiState.details = this.uiState.selectedCategory;
3818
+ }
3819
+ selectBookmarks() {
3820
+ this.uiState.details = null, this.uiState.list = { type: "bookmarks" };
3821
+ }
3822
+ selectVisited() {
3823
+ this.uiState.details = null, this.uiState.list = { type: "visited" };
3824
+ }
3825
+ selectLanguage() {
3826
+ this.uiState.details = null, this.uiState.list = { type: t };
3827
+ }
3828
+ selectCategory(e) {
3829
+ var t;
3830
+ window.__resett && window.__resett(), this.uiState.details = e, this.uiState.list = {
3831
+ type: "category",
3832
+ category: e
3833
+ }, this.uiState.desiredOverlaySize = "full", e.exhibitors.find((e) => e.booths.find((e) => e.visible)) || this.layerStore.updateVisibility((t = e.exhibitors[0]) == null || (t = t.booths[0]) == null ? void 0 : t.layer, !0), setTimeout(() => {
3834
+ this.uiState.moveToBooths = e.exhibitors.filter((e) => e.booths.find((e) => e.visible)).flatMap((e) => e.booths);
3835
+ }, 200);
3836
+ }
3837
+ selectEventItem(e, t = !0) {
3838
+ let n = ++this.selectionCameraRequest;
3839
+ this.uiState.hoveredExhibitor = null, this.uiState.details = e, this.uiState.desiredOverlaySize = "medium";
3840
+ let r;
3841
+ if (e.boothId) {
3842
+ let t = this.boothStore.booths.find((t) => t.id === e.boothId);
3843
+ t != null && t.layer && !t.visible && (this.venueStore.hasVenueModel ? r = de(this.venueStore, [t]) : this.layerStore.mode === ze.Radio && this.layerStore.updateVisibility(t.layer, !0));
3844
+ }
3845
+ t && this.scheduleSelectionCamera(n, r, () => {
3846
+ if (!e.boothId) return null;
3847
+ let t = this.boothStore.booths.find((t) => t.id === e.boothId);
3848
+ return t ? [t] : null;
3849
+ });
3850
+ }
3851
+ selectSearch(e) {
3852
+ window.__resett && window.__resett(), this.uiState.details = null, this.speakerStore.clearSelectedSpeaker(), this.uiState.list = {
3853
+ type: "search",
3854
+ text: ie(e, Object.keys(this.uiState.mapSettings).map((e) => `${e}=`)),
3855
+ focused: !1
3856
+ }, this.uiState.activeListIndex = -1;
3857
+ }
3858
+ clickBookmarks() {
3859
+ window.__resett && window.__resett(), this.uiState.menu = !1, this.selectBookmarks(), this.moveToList(), this.showMap();
3860
+ }
3861
+ clickVisited() {
3862
+ window.__resett && window.__resett(), this.uiState.menu = !1, this.selectVisited(), this.moveToList(), this.showMap();
3863
+ }
3864
+ clickLanguage() {
3865
+ window.__resett && window.__resett(), this.uiState.menu = !1, this.selectLanguage();
3866
+ }
3867
+ clickCategory(e) {
3868
+ window.__resett && window.__resett(), this.uiState.menu = !1, this.selectCategory(e), this.uiState.onCategoryClick && this.uiState.onCategoryClick({
3869
+ id: e.id,
3870
+ name: e.name,
3871
+ exhibitors: e.exhibitors.map((e) => e.id)
3872
+ }), setTimeout(() => {
3873
+ this.moveToList(), this.showMap();
3874
+ }, 100);
3875
+ }
3876
+ clickSeminars() {
3877
+ this.clickCategory(this.categoryStore.seminarsCategory);
3878
+ }
3879
+ clickBoothInList(e) {
3880
+ window.__resett && window.__resett(), this.uiState.hoveredBooth = null, this.selectBooth(e), this.moveToList([e]), this.showMap();
3881
+ }
3882
+ clickBoothInList2(e) {
3883
+ window.__resett && window.__resett(), this.uiState.hoveredBooth = null, this.selectBooth(e, !1), window.setTimeout(() => {
3884
+ this.moveToList([e]), this.showMap();
3885
+ }, navigator.userAgent.toLowerCase().indexOf("android") > -1 ? 400 : 50);
3886
+ }
3887
+ clickBooth(e) {
3888
+ var t, n, r, i;
3889
+ let a = this.uiState.details;
3890
+ if (this.uiState.menu = !1, this.uiState.list.type === "sessions" && this.searchStore.selectSearch(), this.uiState.list.type === "speakers" && this.searchStore.selectSearch(), this.uiState.list.type === "tours" && this.searchStore.selectSearch(), this.uiState.list.type === "multi-point-tour" && this.searchStore.selectSearch(), !((t = this.uiState.selectedRoute) != null && t.from && (n = this.uiState.selectedRoute) != null && n.to)) {
3891
+ if ((r = this.uiState.selectedRoute) != null && r.to && !((i = this.uiState.selectedRoute) != null && i.from) && e) {
3892
+ this.routeStore.setStartPoint(e);
3893
+ return;
3894
+ }
3895
+ if (e) this.routeStore.tempToBooth = e;
3896
+ else {
3897
+ this.uiState.details = null, this.fp.hidePathways(), this.uiState.list = {
3898
+ type: "search",
3899
+ text: "",
3900
+ focused: !1
3901
+ }, this.uiState.onBoothClick && this.uiState.onBoothClick({ target: null });
3902
+ return;
3903
+ }
3904
+ if (this.uiState.onBoothClick) {
3905
+ let t = {
3906
+ name: "",
3907
+ description: ""
3908
+ }, n = { target: {
3909
+ ...e,
3910
+ layer: e.layer || t
3911
+ } };
3912
+ this.uiState.onBoothClick(n);
3913
+ }
3914
+ if (e.exhibitors.length === 1 && e instanceof Be) {
3915
+ let t = e.exhibitors[0];
3916
+ a === t ? Ye(et.ViewBooth, e.name) : this.heatmapStore.forceTrack = {
3917
+ action: et.ViewBooth,
3918
+ label: e.name,
3919
+ exhibitor: t
3920
+ }, this.selectExhibitor(t, !1);
3921
+ } else a === e && Ye(et.ViewBooth, e.name), this.selectBooth(e, !1);
3922
+ this.showMap();
3923
+ }
3924
+ }
3925
+ clickExhibitor2(e) {
3926
+ this.selectExhibitor(e, !0), this.showMap();
3927
+ }
3928
+ clickExhibitor(e) {
3929
+ window.setTimeout(() => {
3930
+ this.clickExhibitor2(e);
3931
+ }, navigator.userAgent.toLowerCase().indexOf("android") > -1 ? 400 : 50);
3932
+ }
3933
+ showMap() {
3934
+ this.uiState.overlayPosition === "bottom" && be && (this.uiState.desiredOverlaySize = "medium");
3935
+ }
3936
+ showOverlay() {
3937
+ this.uiState.overlayPosition === "bottom" && (this.uiState.desiredOverlaySize = "full");
3938
+ }
3939
+ toggleMapOverlay() {
3940
+ this.uiState.overlayPosition === "bottom" && this.uiState.overlaySize === "full" ? this.uiState.desiredOverlaySize = "medium" : this.uiState.overlayPosition === "bottom" && this.uiState.overlaySize !== "full" && (this.uiState.desiredOverlaySize = "full");
3941
+ }
3942
+ moveToList(e, t = !1, n) {
3943
+ if (n === void 0) this.selectionCameraRequest++;
3944
+ else if (n !== this.selectionCameraRequest) return;
3945
+ e = e || this.uiState.listItems;
3946
+ let r = t && this.venueStore.hasVenueModel, i = [];
3947
+ e.forEach((e) => {
3948
+ if (e instanceof Le) i.push(...e.booths.filter((e) => e.visible || r));
3949
+ else if (e instanceof he) (e.visible || r) && i.push(e);
3950
+ else if (e instanceof ce && e.boothId) {
3951
+ let t = this.boothStore.boothById.get(e.boothId);
3952
+ t && (t.visible || r) && i.push(t);
3953
+ } else e instanceof pe && this.speakerStore.getEventsBySpeaker(e.id).forEach((e) => {
3954
+ if (!e.boothId) return;
3955
+ let t = this.boothStore.boothById.get(e.boothId);
3956
+ t && (t.visible || r) && i.push(t);
3957
+ });
3958
+ }), t || de(this.venueStore, i), this.uiState.moveToBooths = i;
3959
+ }
3960
+ moveToExhibitor(e) {
3961
+ this.moveToList([e]);
3962
+ }
3963
+ changeActiveListIndex(e) {
3964
+ let t = this.uiState.activeListIndex + e;
3965
+ t = Math.max(0, Math.min(this.uiState.listItems.length - 1, t)), this.uiState.activeListIndex = t;
3966
+ }
3967
+ toggleModal(e) {
3968
+ this.uiState.modalActive[e] = !this.uiState.modalActive[e];
3969
+ }
3970
+ openGallery() {
3971
+ this.uiState.galleryActive = !0;
3972
+ }
3973
+ closeGallery() {
3974
+ this.uiState.galleryActive = !1;
3975
+ }
3976
+ openActiveListItem() {
3977
+ let e = this.uiState.listItems[this.uiState.activeListIndex];
3978
+ e && (s.log("Opening", e), e instanceof Le ? this.clickExhibitor(e) : e instanceof ne ? this.clickCategory(e) : e instanceof he && this.clickBoothInList2(e));
3979
+ }
3980
+ toggleCategoryFilter() {
3981
+ this.uiState.categoryFilterOpen = !this.uiState.categoryFilterOpen;
3982
+ }
3983
+ applyCategoryFilters(e) {
3984
+ this.uiState.selectedCategoryFilters = e, this.uiState.categoryFilterOpen = !1;
3985
+ }
3986
+ get filteredExhibitors() {
3987
+ return this.uiState.selectedCategoryFilters.length === 0 ? this.exhibitorStore.exhibitors : this.exhibitorStore.exhibitors.filter((e) => this.uiState.selectedCategoryFilters.some((t) => e.categories.some((e) => e.id === t.id)));
3988
+ }
3989
+ selectSessions() {
3990
+ this.uiState.list = {
3991
+ type: "sessions",
3992
+ text: "",
3993
+ focused: !1
3994
+ }, this.uiState.menu = !1, this.uiState.selectedTrack = null, this.searchButtonsStore.setSubButtonId(null), this.searchButtonsStore.subButtonsEnabled && this.searchButtonsStore.showSubButtons("sessions"), ye && (this.uiState.desiredOverlaySize = "full");
3995
+ }
3996
+ selectExhibitors() {
3997
+ this.uiState.list = {
3998
+ type: "exhibitors",
3999
+ text: "",
4000
+ focused: !1
4001
+ }, this.uiState.menu = !1, ye && (this.uiState.desiredOverlaySize = "full");
4002
+ }
4003
+ selectTours() {
4004
+ this.uiState.list = {
4005
+ type: "tours",
4006
+ text: "",
4007
+ focused: !1
4008
+ }, this.uiState.menu = !1, ye && (this.uiState.desiredOverlaySize = "full");
4009
+ }
4010
+ selectSpeakers() {
4011
+ this.uiState.list = {
4012
+ type: "speakers",
4013
+ text: "",
4014
+ focused: !1
4015
+ }, this.uiState.menu = !1, ye && (this.uiState.desiredOverlaySize = "full");
4016
+ }
4017
+ selectSpeaker(e, t = !0) {
4018
+ this.speakerStore.selectSpeaker(e, t);
4019
+ }
4020
+ resetFilters() {
4021
+ this.searchButtonsStore.clearAllFilters();
4022
+ }
4023
+ registerShortcutProviders() {
4024
+ this.shortcutRegistry.register(new vn(this)), this.shortcutRegistry.register(new xn(this)), this.shortcutRegistry.register(new hn(this));
4025
+ }
4026
+ }, Wr = $(Q.prototype, "initialized", [u], {
4027
+ configurable: !0,
4028
+ enumerable: !0,
4029
+ writable: !0,
4030
+ initializer: function() {
4031
+ return !1;
4032
+ }
4033
+ }), Gr = $(Q.prototype, "resetCameraFn", [u], {
4034
+ configurable: !0,
4035
+ enumerable: !0,
4036
+ writable: !0,
4037
+ initializer: null
4038
+ }), $(Q.prototype, "setResetCameraFn", [d], Object.getOwnPropertyDescriptor(Q.prototype, "setResetCameraFn"), Q.prototype), $(Q.prototype, "selectExhibitor", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectExhibitor"), Q.prototype), $(Q.prototype, "selectBooth", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectBooth"), Q.prototype), $(Q.prototype, "reset", [d], Object.getOwnPropertyDescriptor(Q.prototype, "reset"), Q.prototype), $(Q.prototype, "selectNone", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectNone"), Q.prototype), $(Q.prototype, "selectBookmarks", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectBookmarks"), Q.prototype), $(Q.prototype, "selectVisited", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectVisited"), Q.prototype), $(Q.prototype, "selectLanguage", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectLanguage"), Q.prototype), $(Q.prototype, "selectCategory", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectCategory"), Q.prototype), $(Q.prototype, "selectEventItem", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectEventItem"), Q.prototype), $(Q.prototype, "selectSearch", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectSearch"), Q.prototype), $(Q.prototype, "clickBookmarks", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickBookmarks"), Q.prototype), $(Q.prototype, "clickVisited", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickVisited"), Q.prototype), $(Q.prototype, "clickLanguage", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickLanguage"), Q.prototype), $(Q.prototype, "clickCategory", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickCategory"), Q.prototype), $(Q.prototype, "clickSeminars", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickSeminars"), Q.prototype), $(Q.prototype, "clickBoothInList", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickBoothInList"), Q.prototype), $(Q.prototype, "clickBoothInList2", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickBoothInList2"), Q.prototype), $(Q.prototype, "clickBooth", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickBooth"), Q.prototype), $(Q.prototype, "clickExhibitor2", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickExhibitor2"), Q.prototype), $(Q.prototype, "clickExhibitor", [d], Object.getOwnPropertyDescriptor(Q.prototype, "clickExhibitor"), Q.prototype), $(Q.prototype, "showMap", [d], Object.getOwnPropertyDescriptor(Q.prototype, "showMap"), Q.prototype), $(Q.prototype, "showOverlay", [d], Object.getOwnPropertyDescriptor(Q.prototype, "showOverlay"), Q.prototype), $(Q.prototype, "toggleMapOverlay", [d], Object.getOwnPropertyDescriptor(Q.prototype, "toggleMapOverlay"), Q.prototype), $(Q.prototype, "moveToList", [d], Object.getOwnPropertyDescriptor(Q.prototype, "moveToList"), Q.prototype), $(Q.prototype, "moveToExhibitor", [d], Object.getOwnPropertyDescriptor(Q.prototype, "moveToExhibitor"), Q.prototype), $(Q.prototype, "changeActiveListIndex", [d], Object.getOwnPropertyDescriptor(Q.prototype, "changeActiveListIndex"), Q.prototype), $(Q.prototype, "toggleModal", [d], Object.getOwnPropertyDescriptor(Q.prototype, "toggleModal"), Q.prototype), $(Q.prototype, "openGallery", [d], Object.getOwnPropertyDescriptor(Q.prototype, "openGallery"), Q.prototype), $(Q.prototype, "closeGallery", [d], Object.getOwnPropertyDescriptor(Q.prototype, "closeGallery"), Q.prototype), $(Q.prototype, "openActiveListItem", [d], Object.getOwnPropertyDescriptor(Q.prototype, "openActiveListItem"), Q.prototype), $(Q.prototype, "toggleCategoryFilter", [d], Object.getOwnPropertyDescriptor(Q.prototype, "toggleCategoryFilter"), Q.prototype), $(Q.prototype, "applyCategoryFilters", [d], Object.getOwnPropertyDescriptor(Q.prototype, "applyCategoryFilters"), Q.prototype), $(Q.prototype, "filteredExhibitors", [l], Object.getOwnPropertyDescriptor(Q.prototype, "filteredExhibitors"), Q.prototype), $(Q.prototype, "selectSessions", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectSessions"), Q.prototype), $(Q.prototype, "selectExhibitors", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectExhibitors"), Q.prototype), $(Q.prototype, "selectTours", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectTours"), Q.prototype), $(Q.prototype, "selectSpeakers", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectSpeakers"), Q.prototype), $(Q.prototype, "selectSpeaker", [d], Object.getOwnPropertyDescriptor(Q.prototype, "selectSpeaker"), Q.prototype), $(Q.prototype, "resetFilters", [d], Object.getOwnPropertyDescriptor(Q.prototype, "resetFilters"), Q.prototype), Q);
4039
+ //#endregion
4040
+ //#region src/store/create-live-plan.ts
4041
+ function Jr() {
4042
+ let e = new qr();
4043
+ We(e), a(() => We(null)), vt(e), window.__store = Ge;
4044
+ }
4045
+ //#endregion
4046
+ export { Jr as createLivePlan };