@expofp/floorplan 0.0.0-experimental.2d6c681
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -0
- package/dist/browser/Button-DT-Jfwrb.js +64 -0
- package/dist/browser/CookieConsent-BIsWzAiP.js +38 -0
- package/dist/browser/Debug-B5mmo0ZX.js +53 -0
- package/dist/browser/DebugTools-Y0aycjKM.js +1931 -0
- package/dist/browser/Demo-B2klxORi.js +71 -0
- package/dist/browser/Free-suULW-LU.js +69 -0
- package/dist/browser/GalleryContainer-BGBNGRKU.js +3355 -0
- package/dist/browser/GpsLoader-Idv0kq5D.js +154 -0
- package/dist/browser/KioskStore-Dg9jaX5d.js +250 -0
- package/dist/browser/LayerStore-CK6wLW56.js +24105 -0
- package/dist/browser/MaplibreAdapter-uZUhZfFW.js +36770 -0
- package/dist/browser/ModalContainer-DWm8vEaI.js +148 -0
- package/dist/browser/PermissionNotice-DaqnuHln.js +54 -0
- package/dist/browser/RouteStore-NE2I9tiF.js +3715 -0
- package/dist/browser/SetKioskMode-Dwlf5w7q.js +49 -0
- package/dist/browser/ShowKiosk-Cr-QmIUT.js +82 -0
- package/dist/browser/ViewerMenuPanel-CTAjGsq2.js +133 -0
- package/dist/browser/add-debug-secret-listener-BECnIMzo.js +55 -0
- package/dist/browser/adopt-global-settings-U-KbyxMd.js +185 -0
- package/dist/browser/boolean-editor-CYMx87em.js +149 -0
- package/dist/browser/bootIntercom-BqQsnxII.js +37 -0
- package/dist/browser/bundle.json +422 -0
- package/dist/browser/camera-events-DSCuSH25.js +18 -0
- package/dist/browser/classnames-YcGXWNfg.js +39 -0
- package/dist/browser/client-BcPpS_Gj.js +7402 -0
- package/dist/browser/compat-helper.js +6 -0
- package/dist/browser/components-BjEhhgf2.js +7393 -0
- package/dist/browser/create-live-plan-BaEGBhGA.js +4046 -0
- package/dist/browser/debounce-raMZ2DqK.js +2102 -0
- package/dist/browser/debug-context-CNBgUWR8.js +24315 -0
- package/dist/browser/debug-overlay-B__pFwQg.js +1455 -0
- package/dist/browser/debug-ui-BaE8MZQX.js +86 -0
- package/dist/browser/dist-C1NaWqk4.js +2611 -0
- package/dist/browser/dist-Cx8u0gjK.js +21 -0
- package/dist/browser/dist-wOC6gYFh.js +205 -0
- package/dist/browser/efp-debug-init-CozbueIl.js +245 -0
- package/dist/browser/enum-editor-CkiQPgZv.js +34 -0
- package/dist/browser/es5-B__Ovz45.js +1712 -0
- package/dist/browser/event-head-C_inMpbD.js +56 -0
- package/dist/browser/event-not-found-Z2mJBZE3.js +31 -0
- package/dist/browser/expofp-overlay.png +0 -0
- package/dist/browser/expofpUrl-jBUlvkwz.js +19 -0
- package/dist/browser/exports-CvUYw1h6.js +1525 -0
- package/dist/browser/favicon-BkDrYTmU.js +12 -0
- package/dist/browser/fetch-retry.umd-2B2pCUIS.js +78 -0
- package/dist/browser/flex-3lSivw8z.js +823 -0
- package/dist/browser/floorplan.loader-CGzIMplb.js +3282 -0
- package/dist/browser/floorplan.ready-r96zV9bP.js +1448 -0
- package/dist/browser/fonts/efp-symbols.woff +0 -0
- package/dist/browser/fonts/inter-400.woff2 +0 -0
- package/dist/browser/fonts/inter-500.woff2 +0 -0
- package/dist/browser/fonts/inter-600.woff2 +0 -0
- package/dist/browser/fonts/oswald-v17-cyrillic_latin-300.woff +0 -0
- package/dist/browser/fonts/oswald-v17-cyrillic_latin-500.woff +0 -0
- package/dist/browser/freeBanner-CnrBc9Tl.js +22 -0
- package/dist/browser/fuse-B7V1lkoA.js +1177 -0
- package/dist/browser/i18n-BgFBhYOU.js +7205 -0
- package/dist/browser/icons/accessible.svg +5 -0
- package/dist/browser/icons/arrow-down.svg +3 -0
- package/dist/browser/icons/bus-white.svg +3 -0
- package/dist/browser/icons/check.svg +3 -0
- package/dist/browser/icons/clear.svg +4 -0
- package/dist/browser/icons/departure.svg +5 -0
- package/dist/browser/icons/departure_inactive.svg +5 -0
- package/dist/browser/icons/destination.svg +5 -0
- package/dist/browser/icons/direction.svg +54 -0
- package/dist/browser/icons/dots.svg +4 -0
- package/dist/browser/icons/dragdrop-solid.svg +11 -0
- package/dist/browser/icons/facebook.svg +4 -0
- package/dist/browser/icons/from.svg +4 -0
- package/dist/browser/icons/kiosk.svg +1 -0
- package/dist/browser/icons/linkedin.svg +3 -0
- package/dist/browser/icons/rotate.svg +5 -0
- package/dist/browser/icons/tap.svg +5 -0
- package/dist/browser/icons/to.svg +4 -0
- package/dist/browser/icons/transition.svg +7 -0
- package/dist/browser/icons/transition_down.svg +15 -0
- package/dist/browser/icons/transition_up.svg +15 -0
- package/dist/browser/icons/twitter.svg +3 -0
- package/dist/browser/icons/yah.svg +17 -0
- package/dist/browser/index.html +139 -0
- package/dist/browser/index.js +254 -0
- package/dist/browser/index.module-kJmnWg5B.js +153 -0
- package/dist/browser/integrateKiosk-D45vYRsm.js +35 -0
- package/dist/browser/is-debug-BRHdrnKr.js +197 -0
- package/dist/browser/is-own-domain-DNvxb9Ph.js +26 -0
- package/dist/browser/is-webview-cTH4yz8f.js +12 -0
- package/dist/browser/journey-plan-DtL28HMP.js +1865 -0
- package/dist/browser/jsx-runtime-DQgnuS-I.js +30 -0
- package/dist/browser/kiosk-mode-DfkGlDkT.js +28 -0
- package/dist/browser/kiosk-record-JAEq8SV6.js +18 -0
- package/dist/browser/kioskUrlParam-CnYhnC_7.js +141 -0
- package/dist/browser/lib--J2yQXt6.js +1910 -0
- package/dist/browser/loadImage-DzSnRAxX.js +30 -0
- package/dist/browser/locales/ar.json +228 -0
- package/dist/browser/locales/da.json +229 -0
- package/dist/browser/locales/de.json +228 -0
- package/dist/browser/locales/es.json +228 -0
- package/dist/browser/locales/fr.json +228 -0
- package/dist/browser/locales/he.json +228 -0
- package/dist/browser/locales/it.json +228 -0
- package/dist/browser/locales/kk.json +228 -0
- package/dist/browser/locales/ko.json +228 -0
- package/dist/browser/locales/mn.json +228 -0
- package/dist/browser/locales/nl.json +228 -0
- package/dist/browser/locales/pl.json +228 -0
- package/dist/browser/locales/pt.json +228 -0
- package/dist/browser/locales/ru.json +228 -0
- package/dist/browser/locales/sv.json +228 -0
- package/dist/browser/locales/th.json +228 -0
- package/dist/browser/locales/tr.json +228 -0
- package/dist/browser/locales/uk.json +228 -0
- package/dist/browser/locales/vi.json +228 -0
- package/dist/browser/locales/zh.json +228 -0
- package/dist/browser/logDeviceInfo-BTqyv9Xe.js +58 -0
- package/dist/browser/mobx-C-kcS0zI.js +43 -0
- package/dist/browser/mobx.module-BOCLFB5I.js +2064 -0
- package/dist/browser/optional-boolean-editor-ZncW2HBw.js +20 -0
- package/dist/browser/optional-enum-editor-Dkzs9jDN.js +34 -0
- package/dist/browser/optional-string-editor-DC9PMUWB.js +30 -0
- package/dist/browser/particles.min-eC5xdOrB.js +133 -0
- package/dist/browser/react-DqPP-mkq.js +301 -0
- package/dist/browser/react-dom-BkVzoZWO.js +139 -0
- package/dist/browser/rolldown-runtime-DUb2xvRc.js +28 -0
- package/dist/browser/scheduler-NBuuaWIe.js +212 -0
- package/dist/browser/select-Cxf-YiNA.js +1367 -0
- package/dist/browser/settings-D74eG9h8.js +9 -0
- package/dist/browser/settings-item-DUUbKec_.js +76 -0
- package/dist/browser/store-q_CTsixH.js +58 -0
- package/dist/browser/string-editor-CINOmY_C.js +30 -0
- package/dist/browser/text-field-DORaOVht.js +88 -0
- package/dist/browser/theme-DyFm9MGz.js +2803 -0
- package/dist/browser/ui-DsCU3FV6.js +43 -0
- package/dist/browser/useRenderTarget-RFckzUJM.js +57 -0
- package/dist/browser/vendor/perfect-scrollbar/css/perfect-scrollbar.css +1 -0
- package/dist/browser/vendor/sanitize-css/sanitize.css +1 -0
- package/dist/browser/venue-public-BA3x-n4N.js +296 -0
- package/dist/browser/venues-DKpIy-87.js +447 -0
- package/dist/browser/viewport-B7plho3P.js +48 -0
- package/dist/browser/warning.png +0 -0
- package/dist/esm/_misc_to_move/initHtmlHead.d.ts +2 -0
- package/dist/esm/_misc_to_move/initHtmlHead.js +34 -0
- package/dist/esm/_misc_to_move/logBuildInfo.d.ts +2 -0
- package/dist/esm/_misc_to_move/logBuildInfo.js +35 -0
- package/dist/esm/_misc_to_move/logDeviceInfo.d.ts +10 -0
- package/dist/esm/_misc_to_move/logDeviceInfo.js +84 -0
- package/dist/esm/components/AlertContainer.d.ts +4 -0
- package/dist/esm/components/AlertContainer.js +8 -0
- package/dist/esm/components/AutocompleteContainer.d.ts +4 -0
- package/dist/esm/components/AutocompleteContainer.js +14 -0
- package/dist/esm/components/BaseFilterModal.d.ts +11 -0
- package/dist/esm/components/BaseFilterModal.js +73 -0
- package/dist/esm/components/Bookmarks.d.ts +3 -0
- package/dist/esm/components/Bookmarks.js +26 -0
- package/dist/esm/components/Booth/Booth.d.ts +5 -0
- package/dist/esm/components/Booth/Booth.js +135 -0
- package/dist/esm/components/Booth/BoothOnHold.d.ts +13 -0
- package/dist/esm/components/Booth/BoothOnHold.js +11 -0
- package/dist/esm/components/Booth/BoothReserved.d.ts +3 -0
- package/dist/esm/components/Booth/BoothReserved.js +7 -0
- package/dist/esm/components/Booth/BoothSpecial.d.ts +8 -0
- package/dist/esm/components/Booth/BoothSpecial.js +4 -0
- package/dist/esm/components/Booth/BoothWithoutExhibitor.d.ts +13 -0
- package/dist/esm/components/Booth/BoothWithoutExhibitor.js +29 -0
- package/dist/esm/components/Category.d.ts +5 -0
- package/dist/esm/components/Category.js +25 -0
- package/dist/esm/components/CategoryFilterModal.d.ts +3 -0
- package/dist/esm/components/CategoryFilterModal.js +63 -0
- package/dist/esm/components/CookieConsent.d.ts +9 -0
- package/dist/esm/components/CookieConsent.js +9 -0
- package/dist/esm/components/Debug.d.ts +5 -0
- package/dist/esm/components/Debug.js +15 -0
- package/dist/esm/components/Demo.d.ts +4 -0
- package/dist/esm/components/Demo.js +37 -0
- package/dist/esm/components/DownloadListContainer.d.ts +5 -0
- package/dist/esm/components/DownloadListContainer.js +8 -0
- package/dist/esm/components/EntityItemContainer.d.ts +28 -0
- package/dist/esm/components/EntityItemContainer.js +36 -0
- package/dist/esm/components/EntityList.d.ts +9 -0
- package/dist/esm/components/EntityList.js +144 -0
- package/dist/esm/components/EntityListRow.d.ts +13 -0
- package/dist/esm/components/EntityListRow.js +78 -0
- package/dist/esm/components/ErrorBoundary.d.ts +15 -0
- package/dist/esm/components/ErrorBoundary.js +29 -0
- package/dist/esm/components/Event.d.ts +5 -0
- package/dist/esm/components/Event.js +167 -0
- package/dist/esm/components/EventBadgeContainer.d.ts +8 -0
- package/dist/esm/components/EventBadgeContainer.js +29 -0
- package/dist/esm/components/Exhibitor.d.ts +5 -0
- package/dist/esm/components/Exhibitor.js +299 -0
- package/dist/esm/components/Filter.d.ts +4 -0
- package/dist/esm/components/Filter.js +24 -0
- package/dist/esm/components/Free.d.ts +4 -0
- package/dist/esm/components/Free.js +31 -0
- package/dist/esm/components/GalleryContainer.d.ts +6 -0
- package/dist/esm/components/GalleryContainer.js +55 -0
- package/dist/esm/components/GlobalErrorMessage.d.ts +4 -0
- package/dist/esm/components/GlobalErrorMessage.js +9 -0
- package/dist/esm/components/GpsLoader.d.ts +5 -0
- package/dist/esm/components/GpsLoader.js +29 -0
- package/dist/esm/components/HeatmapLegendContainer.d.ts +5 -0
- package/dist/esm/components/HeatmapLegendContainer.js +13 -0
- package/dist/esm/components/HighlightTextContainer.d.ts +6 -0
- package/dist/esm/components/HighlightTextContainer.js +10 -0
- package/dist/esm/components/IntercomLauncher.d.ts +5 -0
- package/dist/esm/components/IntercomLauncher.js +20 -0
- package/dist/esm/components/JourneyPanel.d.ts +35 -0
- package/dist/esm/components/JourneyPanel.js +68 -0
- package/dist/esm/components/Kiosk/KioskStore.d.ts +60 -0
- package/dist/esm/components/Kiosk/KioskStore.js +411 -0
- package/dist/esm/components/Kiosk/SetKiosk/Confirm/ConfirmDialog.d.ts +5 -0
- package/dist/esm/components/Kiosk/SetKiosk/Confirm/ConfirmDialog.js +8 -0
- package/dist/esm/components/Kiosk/SetKiosk/FormInput/RangeInput.d.ts +5 -0
- package/dist/esm/components/Kiosk/SetKiosk/FormInput/RangeInput.js +24 -0
- package/dist/esm/components/Kiosk/SetKiosk/Message/InfoMessage.d.ts +5 -0
- package/dist/esm/components/Kiosk/SetKiosk/Message/InfoMessage.js +7 -0
- package/dist/esm/components/Kiosk/SetKiosk/SetKioskComponent.d.ts +5 -0
- package/dist/esm/components/Kiosk/SetKiosk/SetKioskComponent.js +78 -0
- package/dist/esm/components/Kiosk/SetKiosk/SetKioskForm.d.ts +5 -0
- package/dist/esm/components/Kiosk/SetKiosk/SetKioskForm.js +10 -0
- package/dist/esm/components/Kiosk/SetKiosk/SetKioskStatusMessages.d.ts +5 -0
- package/dist/esm/components/Kiosk/SetKiosk/SetKioskStatusMessages.js +15 -0
- package/dist/esm/components/Kiosk/SetKiosk/constants.d.ts +6 -0
- package/dist/esm/components/Kiosk/SetKiosk/constants.js +6 -0
- package/dist/esm/components/Kiosk/SetKiosk/getKioskUrlParamKey.d.ts +2 -0
- package/dist/esm/components/Kiosk/SetKiosk/getKioskUrlParamKey.js +4 -0
- package/dist/esm/components/Kiosk/SetKiosk/getName.d.ts +2 -0
- package/dist/esm/components/Kiosk/SetKiosk/getName.js +2 -0
- package/dist/esm/components/Kiosk/SetKiosk/getSlug.d.ts +2 -0
- package/dist/esm/components/Kiosk/SetKiosk/getSlug.js +2 -0
- package/dist/esm/components/Kiosk/SetKiosk/index.d.ts +7 -0
- package/dist/esm/components/Kiosk/SetKiosk/index.js +6 -0
- package/dist/esm/components/Kiosk/SetKiosk/storage.d.ts +5 -0
- package/dist/esm/components/Kiosk/SetKiosk/storage.js +21 -0
- package/dist/esm/components/Kiosk/SetKiosk/types.d.ts +109 -0
- package/dist/esm/components/Kiosk/SetKiosk/types.js +1 -0
- package/dist/esm/components/Kiosk/SetKioskMode.d.ts +3 -0
- package/dist/esm/components/Kiosk/SetKioskMode.js +35 -0
- package/dist/esm/components/Kiosk/ShowKiosk.d.ts +3 -0
- package/dist/esm/components/Kiosk/ShowKiosk.js +72 -0
- package/dist/esm/components/Kiosk/integrateKiosk.d.ts +10 -0
- package/dist/esm/components/Kiosk/integrateKiosk.js +68 -0
- package/dist/esm/components/Kiosk/kiosk-mode.d.ts +26 -0
- package/dist/esm/components/Kiosk/kiosk-mode.js +56 -0
- package/dist/esm/components/Kiosk/kiosk-record.d.ts +23 -0
- package/dist/esm/components/Kiosk/kiosk-record.js +29 -0
- package/dist/esm/components/Kiosk/kioskApi.d.ts +4 -0
- package/dist/esm/components/Kiosk/kioskApi.js +47 -0
- package/dist/esm/components/Kiosk/kioskUrlParam.d.ts +8 -0
- package/dist/esm/components/Kiosk/kioskUrlParam.js +46 -0
- package/dist/esm/components/Kiosk/recoverKioskFromUrlPrams.d.ts +2 -0
- package/dist/esm/components/Kiosk/recoverKioskFromUrlPrams.js +9 -0
- package/dist/esm/components/Language.d.ts +4 -0
- package/dist/esm/components/Language.js +15 -0
- package/dist/esm/components/LanguageRowContainer.d.ts +7 -0
- package/dist/esm/components/LanguageRowContainer.js +9 -0
- package/dist/esm/components/Layout.d.ts +11 -0
- package/dist/esm/components/Layout.js +160 -0
- package/dist/esm/components/LevelBadgeContainer.d.ts +6 -0
- package/dist/esm/components/LevelBadgeContainer.js +10 -0
- package/dist/esm/components/List.d.ts +9 -0
- package/dist/esm/components/List.js +77 -0
- package/dist/esm/components/LogoOverlay.d.ts +3 -0
- package/dist/esm/components/LogoOverlay.js +78 -0
- package/dist/esm/components/Map/Map.d.ts +2 -0
- package/dist/esm/components/Map/Map.js +242 -0
- package/dist/esm/components/Map/MapCamera.d.ts +17 -0
- package/dist/esm/components/Map/MapCamera.js +194 -0
- package/dist/esm/components/Map/MapCursorCoords.d.ts +13 -0
- package/dist/esm/components/Map/MapCursorCoords.js +61 -0
- package/dist/esm/components/Map/MapViewport.d.ts +12 -0
- package/dist/esm/components/Map/MapViewport.js +29 -0
- package/dist/esm/components/Map/booth-by-xy.d.ts +14 -0
- package/dist/esm/components/Map/booth-by-xy.js +128 -0
- package/dist/esm/components/Map/camera-events.d.ts +19 -0
- package/dist/esm/components/Map/camera-events.js +26 -0
- package/dist/esm/components/Map/camera.d.ts +48 -0
- package/dist/esm/components/Map/camera.js +43 -0
- package/dist/esm/components/Map/drawing/config/BoothDrawerBase.d.ts +8 -0
- package/dist/esm/components/Map/drawing/config/BoothDrawerBase.js +8 -0
- package/dist/esm/components/Map/drawing/config/BoothShape.d.ts +7 -0
- package/dist/esm/components/Map/drawing/config/BoothShape.js +76 -0
- package/dist/esm/components/Map/drawing/config/TextFitter.d.ts +11 -0
- package/dist/esm/components/Map/drawing/config/TextFitter.js +174 -0
- package/dist/esm/components/Map/drawing/config/booth-badge-anchor.d.ts +130 -0
- package/dist/esm/components/Map/drawing/config/booth-badge-anchor.js +306 -0
- package/dist/esm/components/Map/drawing/config/booth-logos.d.ts +38 -0
- package/dist/esm/components/Map/drawing/config/booth-logos.js +94 -0
- package/dist/esm/components/Map/drawing/config/canvases.d.ts +96 -0
- package/dist/esm/components/Map/drawing/config/canvases.js +434 -0
- package/dist/esm/components/Map/drawing/config/config-all.d.ts +6 -0
- package/dist/esm/components/Map/drawing/config/config-all.js +92 -0
- package/dist/esm/components/Map/drawing/config/config-bg.d.ts +8 -0
- package/dist/esm/components/Map/drawing/config/config-bg.js +54 -0
- package/dist/esm/components/Map/drawing/config/config-booth-badge-eligibility.d.ts +28 -0
- package/dist/esm/components/Map/drawing/config/config-booth-badge-eligibility.js +7 -0
- package/dist/esm/components/Map/drawing/config/config-booth-badge-scale.d.ts +20 -0
- package/dist/esm/components/Map/drawing/config/config-booth-badge-scale.js +11 -0
- package/dist/esm/components/Map/drawing/config/config-booth-badge-visibility.d.ts +37 -0
- package/dist/esm/components/Map/drawing/config/config-booth-badge-visibility.js +3 -0
- package/dist/esm/components/Map/drawing/config/config-booth-badge.d.ts +90 -0
- package/dist/esm/components/Map/drawing/config/config-booth-badge.js +326 -0
- package/dist/esm/components/Map/drawing/config/config-booth-bg.d.ts +33 -0
- package/dist/esm/components/Map/drawing/config/config-booth-bg.js +240 -0
- package/dist/esm/components/Map/drawing/config/config-booth-bookmark.d.ts +24 -0
- package/dist/esm/components/Map/drawing/config/config-booth-bookmark.js +65 -0
- package/dist/esm/components/Map/drawing/config/config-booth-border.d.ts +12 -0
- package/dist/esm/components/Map/drawing/config/config-booth-border.js +92 -0
- package/dist/esm/components/Map/drawing/config/config-booth-labels-special.d.ts +28 -0
- package/dist/esm/components/Map/drawing/config/config-booth-labels-special.js +147 -0
- package/dist/esm/components/Map/drawing/config/config-booth-labels.d.ts +63 -0
- package/dist/esm/components/Map/drawing/config/config-booth-labels.js +380 -0
- package/dist/esm/components/Map/drawing/config/config-booths.d.ts +5 -0
- package/dist/esm/components/Map/drawing/config/config-booths.js +152 -0
- package/dist/esm/components/Map/drawing/config/config-load-layer.d.ts +4 -0
- package/dist/esm/components/Map/drawing/config/config-load-layer.js +119 -0
- package/dist/esm/components/Map/drawing/config/config-markers.d.ts +42 -0
- package/dist/esm/components/Map/drawing/config/config-markers.js +278 -0
- package/dist/esm/components/Map/drawing/config/config-outdoor-poi.d.ts +19 -0
- package/dist/esm/components/Map/drawing/config/config-outdoor-poi.js +96 -0
- package/dist/esm/components/Map/drawing/config/config-pins.d.ts +40 -0
- package/dist/esm/components/Map/drawing/config/config-pins.js +533 -0
- package/dist/esm/components/Map/drawing/config/label-inset.d.ts +26 -0
- package/dist/esm/components/Map/drawing/config/label-inset.js +26 -0
- package/dist/esm/components/Map/drawing/config/layer-images.d.ts +24 -0
- package/dist/esm/components/Map/drawing/config/layer-images.js +32 -0
- package/dist/esm/components/Map/drawing/config/layer-models.d.ts +31 -0
- package/dist/esm/components/Map/drawing/config/layer-models.js +38 -0
- package/dist/esm/components/Map/drawing/config/loadBoothsImages.d.ts +45 -0
- package/dist/esm/components/Map/drawing/config/loadBoothsImages.js +99 -0
- package/dist/esm/components/Map/drawing/config/pin-geometry.d.ts +65 -0
- package/dist/esm/components/Map/drawing/config/pin-geometry.js +75 -0
- package/dist/esm/components/Map/drawing/config/poi-pin-shape.d.ts +100 -0
- package/dist/esm/components/Map/drawing/config/poi-pin-shape.js +51 -0
- package/dist/esm/components/Map/drawing/config/poi-pin.d.ts +10 -0
- package/dist/esm/components/Map/drawing/config/poi-pin.js +88 -0
- package/dist/esm/components/Map/drawing/config/selection-style.d.ts +12 -0
- package/dist/esm/components/Map/drawing/config/selection-style.js +18 -0
- package/dist/esm/components/Map/framing-rect.d.ts +16 -0
- package/dist/esm/components/Map/framing-rect.js +24 -0
- package/dist/esm/components/Map/pointer.d.ts +79 -0
- package/dist/esm/components/Map/pointer.js +181 -0
- package/dist/esm/components/Map/scene.d.ts +20 -0
- package/dist/esm/components/Map/scene.js +24 -0
- package/dist/esm/components/Map/traffic/UpdateQueue.d.ts +13 -0
- package/dist/esm/components/Map/traffic/UpdateQueue.js +82 -0
- package/dist/esm/components/Map/traffic/trafficLayers.d.ts +12 -0
- package/dist/esm/components/Map/traffic/trafficLayers.js +29 -0
- package/dist/esm/components/Map/traffic/useBuildRoute.d.ts +9 -0
- package/dist/esm/components/Map/traffic/useBuildRoute.js +359 -0
- package/dist/esm/components/Map/traffic/useManageTraffic.d.ts +10 -0
- package/dist/esm/components/Map/traffic/useManageTraffic.js +643 -0
- package/dist/esm/components/Map/viewport.d.ts +63 -0
- package/dist/esm/components/Map/viewport.js +82 -0
- package/dist/esm/components/Map/with-kiosk.d.ts +11 -0
- package/dist/esm/components/Map/with-kiosk.js +25 -0
- package/dist/esm/components/MapControlsContainer.d.ts +3 -0
- package/dist/esm/components/MapControlsContainer.js +58 -0
- package/dist/esm/components/Maplibre/CollapsedAttributionControl.d.ts +12 -0
- package/dist/esm/components/Maplibre/CollapsedAttributionControl.js +19 -0
- package/dist/esm/components/Maplibre/ExpofpLogoControl.d.ts +20 -0
- package/dist/esm/components/Maplibre/ExpofpLogoControl.js +39 -0
- package/dist/esm/components/Maplibre/MaplibreAdapter.d.ts +18 -0
- package/dist/esm/components/Maplibre/MaplibreAdapter.js +354 -0
- package/dist/esm/components/Maplibre/MaplibreWrapper.d.ts +111 -0
- package/dist/esm/components/Maplibre/MaplibreWrapper.js +310 -0
- package/dist/esm/components/Maplibre/maplibre-recovery.d.ts +4 -0
- package/dist/esm/components/Maplibre/maplibre-recovery.js +4 -0
- package/dist/esm/components/Maplibre/styles/mapbox-streets-bright.d.ts +3 -0
- package/dist/esm/components/Maplibre/styles/mapbox-streets-bright.js +7048 -0
- package/dist/esm/components/Maplibre/styles/mapbox-streets.d.ts +3 -0
- package/dist/esm/components/Maplibre/styles/mapbox-streets.js +6132 -0
- package/dist/esm/components/Maplibre/useCameraReactions.d.ts +14 -0
- package/dist/esm/components/Maplibre/useCameraReactions.js +256 -0
- package/dist/esm/components/Maplibre/useDimming.d.ts +25 -0
- package/dist/esm/components/Maplibre/useDimming.js +61 -0
- package/dist/esm/components/Maplibre/useJourneyConnector.d.ts +16 -0
- package/dist/esm/components/Maplibre/useJourneyConnector.js +175 -0
- package/dist/esm/components/Maplibre/useKioskCameraEvents.d.ts +20 -0
- package/dist/esm/components/Maplibre/useKioskCameraEvents.js +52 -0
- package/dist/esm/components/Maplibre/useLayerVisibilitySync.d.ts +25 -0
- package/dist/esm/components/Maplibre/useLayerVisibilitySync.js +85 -0
- package/dist/esm/components/Maplibre/usePoiMarkers.d.ts +25 -0
- package/dist/esm/components/Maplibre/usePoiMarkers.js +368 -0
- package/dist/esm/components/Maplibre/useVenueCameraTracking.d.ts +6 -0
- package/dist/esm/components/Maplibre/useVenueCameraTracking.js +115 -0
- package/dist/esm/components/Maplibre/useVenueLayers.d.ts +15 -0
- package/dist/esm/components/Maplibre/useVenueLayers.js +463 -0
- package/dist/esm/components/Maplibre/useWayfindingAndMarkers.d.ts +11 -0
- package/dist/esm/components/Maplibre/useWayfindingAndMarkers.js +23 -0
- package/dist/esm/components/Maplibre/utils/basemap-palette.d.ts +19 -0
- package/dist/esm/components/Maplibre/utils/basemap-palette.js +125 -0
- package/dist/esm/components/Maplibre/utils/geo-config.d.ts +92 -0
- package/dist/esm/components/Maplibre/utils/geo-config.js +305 -0
- package/dist/esm/components/Maplibre/utils/hit-test-registry.d.ts +18 -0
- package/dist/esm/components/Maplibre/utils/hit-test-registry.js +17 -0
- package/dist/esm/components/Maplibre/utils/layer-defs.d.ts +9 -0
- package/dist/esm/components/Maplibre/utils/layer-defs.js +19 -0
- package/dist/esm/components/Maplibre/utils/local-viewport.d.ts +13 -0
- package/dist/esm/components/Maplibre/utils/local-viewport.js +31 -0
- package/dist/esm/components/Maplibre/utils/map-helpers.d.ts +21 -0
- package/dist/esm/components/Maplibre/utils/map-helpers.js +85 -0
- package/dist/esm/components/Maplibre/utils/map-theme.d.ts +20 -0
- package/dist/esm/components/Maplibre/utils/map-theme.js +44 -0
- package/dist/esm/components/Maplibre/utils/marker-layer-order.d.ts +22 -0
- package/dist/esm/components/Maplibre/utils/marker-layer-order.js +20 -0
- package/dist/esm/components/Maplibre/utils/pmtiles-range-fallback.d.ts +53 -0
- package/dist/esm/components/Maplibre/utils/pmtiles-range-fallback.js +110 -0
- package/dist/esm/components/Maplibre/utils/poi-marker-hit-test.d.ts +8 -0
- package/dist/esm/components/Maplibre/utils/poi-marker-hit-test.js +8 -0
- package/dist/esm/components/Maplibre/utils/resolve-map-style.d.ts +19 -0
- package/dist/esm/components/Maplibre/utils/resolve-map-style.js +73 -0
- package/dist/esm/components/Maplibre/utils/solver.d.ts +23 -0
- package/dist/esm/components/Maplibre/utils/solver.js +238 -0
- package/dist/esm/components/Maplibre/utils/style-fonts.d.ts +10 -0
- package/dist/esm/components/Maplibre/utils/style-fonts.js +24 -0
- package/dist/esm/components/Maplibre/utils/venue-calibration-console.d.ts +10 -0
- package/dist/esm/components/Maplibre/utils/venue-calibration-console.js +130 -0
- package/dist/esm/components/Maplibre/utils/venue-calibration.d.ts +127 -0
- package/dist/esm/components/Maplibre/utils/venue-calibration.js +144 -0
- package/dist/esm/components/Maplibre/utils/venue-camera-target.d.ts +15 -0
- package/dist/esm/components/Maplibre/utils/venue-camera-target.js +19 -0
- package/dist/esm/components/Maplibre/utils/venue-contour.d.ts +50 -0
- package/dist/esm/components/Maplibre/utils/venue-contour.fixture.d.ts +18 -0
- package/dist/esm/components/Maplibre/utils/venue-contour.fixture.js +69 -0
- package/dist/esm/components/Maplibre/utils/venue-contour.js +188 -0
- package/dist/esm/components/Maplibre/utils/venue-focus.d.ts +26 -0
- package/dist/esm/components/Maplibre/utils/venue-focus.js +106 -0
- package/dist/esm/components/Maplibre/utils/venue-legibility.d.ts +30 -0
- package/dist/esm/components/Maplibre/utils/venue-legibility.js +52 -0
- package/dist/esm/components/Maplibre/utils/venue-pin-rasterize.d.ts +88 -0
- package/dist/esm/components/Maplibre/utils/venue-pin-rasterize.js +220 -0
- package/dist/esm/components/Maplibre/utils/venue-projection.d.ts +37 -0
- package/dist/esm/components/Maplibre/utils/venue-projection.js +88 -0
- package/dist/esm/components/Maplibre/utils/venue-tap-hit-test.d.ts +9 -0
- package/dist/esm/components/Maplibre/utils/venue-tap-hit-test.js +9 -0
- package/dist/esm/components/Maplibre/utils/venue-viewport-detail.d.ts +19 -0
- package/dist/esm/components/Maplibre/utils/venue-viewport-detail.js +24 -0
- package/dist/esm/components/Maplibre/utils/venue-zoom.d.ts +23 -0
- package/dist/esm/components/Maplibre/utils/venue-zoom.js +62 -0
- package/dist/esm/components/Menu.d.ts +11 -0
- package/dist/esm/components/Menu.js +94 -0
- package/dist/esm/components/MobileToggleButtonContainer.d.ts +3 -0
- package/dist/esm/components/MobileToggleButtonContainer.js +24 -0
- package/dist/esm/components/ModalContainer.d.ts +41 -0
- package/dist/esm/components/ModalContainer.js +10 -0
- package/dist/esm/components/MultiSelectGroupsContainer.d.ts +5 -0
- package/dist/esm/components/MultiSelectGroupsContainer.js +8 -0
- package/dist/esm/components/OverlayContainer.d.ts +8 -0
- package/dist/esm/components/OverlayContainer.js +82 -0
- package/dist/esm/components/OverlayGripContainer.d.ts +4 -0
- package/dist/esm/components/OverlayGripContainer.js +11 -0
- package/dist/esm/components/OverlayParticles.d.ts +5 -0
- package/dist/esm/components/OverlayParticles.js +54 -0
- package/dist/esm/components/PlanSelectorContainer.d.ts +3 -0
- package/dist/esm/components/PlanSelectorContainer.js +79 -0
- package/dist/esm/components/RebookingNotesContainer.d.ts +4 -0
- package/dist/esm/components/RebookingNotesContainer.js +8 -0
- package/dist/esm/components/RebookingRadioGroupContainer.d.ts +6 -0
- package/dist/esm/components/RebookingRadioGroupContainer.js +23 -0
- package/dist/esm/components/RoutePlanner/RoutePlanner.d.ts +5 -0
- package/dist/esm/components/RoutePlanner/RoutePlanner.js +25 -0
- package/dist/esm/components/RoutePlanner/RoutePlannerHeader.d.ts +4 -0
- package/dist/esm/components/RoutePlanner/RoutePlannerHeader.js +11 -0
- package/dist/esm/components/RoutePlanner/RoutePlannerStartPoint.d.ts +9 -0
- package/dist/esm/components/RoutePlanner/RoutePlannerStartPoint.js +21 -0
- package/dist/esm/components/RoutePlanner/RoutePlannerStopItem.d.ts +9 -0
- package/dist/esm/components/RoutePlanner/RoutePlannerStopItem.js +41 -0
- package/dist/esm/components/RouteQR.d.ts +12 -0
- package/dist/esm/components/RouteQR.js +10 -0
- package/dist/esm/components/Schedule.d.ts +13 -0
- package/dist/esm/components/Schedule.js +109 -0
- package/dist/esm/components/ScrollableRowContainer.d.ts +6 -0
- package/dist/esm/components/ScrollableRowContainer.js +11 -0
- package/dist/esm/components/Search.d.ts +5 -0
- package/dist/esm/components/Search.js +45 -0
- package/dist/esm/components/SearchBox.d.ts +7 -0
- package/dist/esm/components/SearchBox.js +171 -0
- package/dist/esm/components/SearchButtons/SearchButton.d.ts +20 -0
- package/dist/esm/components/SearchButtons/SearchButton.js +30 -0
- package/dist/esm/components/SearchButtons/SearchButtons.d.ts +4 -0
- package/dist/esm/components/SearchButtons/SearchButtons.js +25 -0
- package/dist/esm/components/SearchButtons/SearchSubButton.d.ts +14 -0
- package/dist/esm/components/SearchButtons/SearchSubButton.js +12 -0
- package/dist/esm/components/SearchButtons/SearchSubButtons.d.ts +5 -0
- package/dist/esm/components/SearchButtons/SearchSubButtons.js +43 -0
- package/dist/esm/components/SearchButtons/index.d.ts +7 -0
- package/dist/esm/components/SearchButtons/index.js +5 -0
- package/dist/esm/components/Sessions.d.ts +8 -0
- package/dist/esm/components/Sessions.js +128 -0
- package/dist/esm/components/SessionsFiltersModal.d.ts +11 -0
- package/dist/esm/components/SessionsFiltersModal.js +105 -0
- package/dist/esm/components/SessionsList.d.ts +12 -0
- package/dist/esm/components/SessionsList.js +212 -0
- package/dist/esm/components/ShareContainer.d.ts +7 -0
- package/dist/esm/components/ShareContainer.js +29 -0
- package/dist/esm/components/Shortcuts/ShortcutButton.d.ts +9 -0
- package/dist/esm/components/Shortcuts/ShortcutButton.js +25 -0
- package/dist/esm/components/Shortcuts/ShortcutsFiltersButton.d.ts +9 -0
- package/dist/esm/components/Shortcuts/ShortcutsFiltersButton.js +41 -0
- package/dist/esm/components/Shortcuts/ShortcutsToolbar.d.ts +10 -0
- package/dist/esm/components/Shortcuts/ShortcutsToolbar.js +22 -0
- package/dist/esm/components/Shortcuts/index.d.ts +4 -0
- package/dist/esm/components/Shortcuts/index.js +4 -0
- package/dist/esm/components/ShowMoreButtonContainer.d.ts +5 -0
- package/dist/esm/components/ShowMoreButtonContainer.js +8 -0
- package/dist/esm/components/SidebarActionsContainer.d.ts +5 -0
- package/dist/esm/components/SidebarActionsContainer.js +8 -0
- package/dist/esm/components/SimpleRowContainer.d.ts +8 -0
- package/dist/esm/components/SimpleRowContainer.js +8 -0
- package/dist/esm/components/Speaker.d.ts +5 -0
- package/dist/esm/components/Speaker.js +72 -0
- package/dist/esm/components/Speakers.d.ts +8 -0
- package/dist/esm/components/Speakers.js +63 -0
- package/dist/esm/components/SpeakersFiltersModal.d.ts +11 -0
- package/dist/esm/components/SpeakersFiltersModal.js +77 -0
- package/dist/esm/components/TourPoints.d.ts +4 -0
- package/dist/esm/components/TourPoints.js +20 -0
- package/dist/esm/components/Tours.d.ts +7 -0
- package/dist/esm/components/Tours.js +54 -0
- package/dist/esm/components/ToursList.d.ts +10 -0
- package/dist/esm/components/ToursList.js +22 -0
- package/dist/esm/components/ViewerMenuPanel.d.ts +5 -0
- package/dist/esm/components/ViewerMenuPanel.js +61 -0
- package/dist/esm/components/Visited.d.ts +4 -0
- package/dist/esm/components/Visited.js +13 -0
- package/dist/esm/components/WayInformation.d.ts +14 -0
- package/dist/esm/components/WayInformation.js +8 -0
- package/dist/esm/components/Wayfinding.d.ts +4 -0
- package/dist/esm/components/Wayfinding.js +285 -0
- package/dist/esm/components/WayfindingFloorSelectorContainer.d.ts +5 -0
- package/dist/esm/components/WayfindingFloorSelectorContainer.js +12 -0
- package/dist/esm/components/WayfindingTemplate.d.ts +66 -0
- package/dist/esm/components/WayfindingTemplate.js +14 -0
- package/dist/esm/components/Ws.d.ts +5 -0
- package/dist/esm/components/Ws.js +131 -0
- package/dist/esm/components/YahRow.d.ts +8 -0
- package/dist/esm/components/YahRow.js +25 -0
- package/dist/esm/components/gps/GpsManager.d.ts +13 -0
- package/dist/esm/components/gps/GpsManager.js +60 -0
- package/dist/esm/components/gps/GpsPermissionRequest.d.ts +8 -0
- package/dist/esm/components/gps/GpsPermissionRequest.js +10 -0
- package/dist/esm/components/gps/index.d.ts +5 -0
- package/dist/esm/components/gps/index.js +3 -0
- package/dist/esm/components/gps/types.d.ts +7 -0
- package/dist/esm/components/gps/types.js +1 -0
- package/dist/esm/components/gps/useUserLocationAndHeading.d.ts +8 -0
- package/dist/esm/components/gps/useUserLocationAndHeading.js +122 -0
- package/dist/esm/components/gps/utils.d.ts +5 -0
- package/dist/esm/components/gps/utils.js +11 -0
- package/dist/esm/components/heatmap-legend-ticks.d.ts +11 -0
- package/dist/esm/components/heatmap-legend-ticks.js +18 -0
- package/dist/esm/components/index.d.ts +114 -0
- package/dist/esm/components/index.js +76 -0
- package/dist/esm/components/utils/entity-venue-grouping.d.ts +32 -0
- package/dist/esm/components/utils/entity-venue-grouping.js +43 -0
- package/dist/esm/components/utils/getDescription.d.ts +19 -0
- package/dist/esm/components/utils/getDescription.js +35 -0
- package/dist/esm/constants.d.ts +44 -0
- package/dist/esm/constants.js +66 -0
- package/dist/esm/data/fp-payloads.d.ts +27 -0
- package/dist/esm/data/fp-payloads.js +53 -0
- package/dist/esm/data/fpGeo.d.ts +45 -0
- package/dist/esm/data/fpGeo.js +9 -0
- package/dist/esm/data/index.d.ts +15 -0
- package/dist/esm/data/index.js +15 -0
- package/dist/esm/data/layer-viewbox.d.ts +10 -0
- package/dist/esm/data/layer-viewbox.js +20 -0
- package/dist/esm/data/svg.d.ts +43 -0
- package/dist/esm/data/svg.js +210 -0
- package/dist/esm/data/tours.json +280 -0
- package/dist/esm/data/venue-scene-preload.d.ts +34 -0
- package/dist/esm/data/venue-scene-preload.js +205 -0
- package/dist/esm/data/venues.d.ts +145 -0
- package/dist/esm/data/venues.js +955 -0
- package/dist/esm/engine/defs.d.ts +38 -0
- package/dist/esm/engine/defs.js +85 -0
- package/dist/esm/engine/fonts.d.ts +9 -0
- package/dist/esm/engine/fonts.js +12 -0
- package/dist/esm/engine/update-def.d.ts +55 -0
- package/dist/esm/engine/update-def.js +127 -0
- package/dist/esm/engine/utils/rotation.d.ts +13 -0
- package/dist/esm/engine/utils/rotation.js +73 -0
- package/dist/esm/floorplan.loader.d.ts +164 -0
- package/dist/esm/floorplan.loader.js +540 -0
- package/dist/esm/floorplan.ready.d.ts +149 -0
- package/dist/esm/floorplan.ready.js +1083 -0
- package/dist/esm/hooks/useURLFilters.d.ts +15 -0
- package/dist/esm/hooks/useURLFilters.js +44 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.js +12 -0
- package/dist/esm/intercom/bootIntercom.d.ts +3 -0
- package/dist/esm/intercom/bootIntercom.js +47 -0
- package/dist/esm/intercom/index.d.ts +3 -0
- package/dist/esm/intercom/index.js +1 -0
- package/dist/esm/intercom/shouldLoad.d.ts +4 -0
- package/dist/esm/intercom/shouldLoad.js +74 -0
- package/dist/esm/intercom/types.d.ts +6 -0
- package/dist/esm/intercom/types.js +1 -0
- package/dist/esm/internal-settings.d.ts +13 -0
- package/dist/esm/internal-settings.js +6 -0
- package/dist/esm/journey/external-navigation.d.ts +30 -0
- package/dist/esm/journey/external-navigation.js +38 -0
- package/dist/esm/journey/format-distance.d.ts +14 -0
- package/dist/esm/journey/format-distance.js +38 -0
- package/dist/esm/journey/index.d.ts +16 -0
- package/dist/esm/journey/index.js +15 -0
- package/dist/esm/journey/journey-context.d.ts +140 -0
- package/dist/esm/journey/journey-context.js +137 -0
- package/dist/esm/journey/journey-link.d.ts +49 -0
- package/dist/esm/journey/journey-link.js +35 -0
- package/dist/esm/journey/journey-stage.d.ts +35 -0
- package/dist/esm/journey/journey-stage.js +28 -0
- package/dist/esm/journey/maps-provider.d.ts +36 -0
- package/dist/esm/journey/maps-provider.js +58 -0
- package/dist/esm/journey/plan-journey.d.ts +37 -0
- package/dist/esm/journey/plan-journey.js +176 -0
- package/dist/esm/journey/types.d.ts +294 -0
- package/dist/esm/journey/types.js +1 -0
- package/dist/esm/load-dev.d.ts +44 -0
- package/dist/esm/load-dev.js +60 -0
- package/dist/esm/load.d.ts +17 -0
- package/dist/esm/load.js +244 -0
- package/dist/esm/locales.d.ts +25 -0
- package/dist/esm/locales.js +23 -0
- package/dist/esm/offline/constants.d.ts +5 -0
- package/dist/esm/offline/constants.js +4 -0
- package/dist/esm/offline/offlineManager.d.ts +2 -0
- package/dist/esm/offline/offlineManager.js +78 -0
- package/dist/esm/plan-lifecycle.d.ts +65 -0
- package/dist/esm/plan-lifecycle.js +97 -0
- package/dist/esm/schemas/sdk.schemas.d.ts +25 -0
- package/dist/esm/schemas/sdk.schemas.js +24 -0
- package/dist/esm/services/URLFilterManager.d.ts +39 -0
- package/dist/esm/services/URLFilterManager.js +379 -0
- package/dist/esm/services/multi-slug.d.ts +20 -0
- package/dist/esm/services/multi-slug.js +30 -0
- package/dist/esm/services/url-dispatch.d.ts +22 -0
- package/dist/esm/services/url-dispatch.js +707 -0
- package/dist/esm/services/url-sync.d.ts +40 -0
- package/dist/esm/services/url-sync.js +185 -0
- package/dist/esm/store/BaseFilterStore.d.ts +17 -0
- package/dist/esm/store/BaseFilterStore.js +63 -0
- package/dist/esm/store/BookmarksStore.d.ts +9 -0
- package/dist/esm/store/BookmarksStore.js +28 -0
- package/dist/esm/store/BoothStore.d.ts +105 -0
- package/dist/esm/store/BoothStore.js +194 -0
- package/dist/esm/store/CategoryFilterStore.d.ts +13 -0
- package/dist/esm/store/CategoryFilterStore.js +60 -0
- package/dist/esm/store/CategoryStore.d.ts +21 -0
- package/dist/esm/store/CategoryStore.js +30 -0
- package/dist/esm/store/EventStore.d.ts +56 -0
- package/dist/esm/store/EventStore.js +188 -0
- package/dist/esm/store/ExhibitorStore.d.ts +86 -0
- package/dist/esm/store/ExhibitorStore.js +175 -0
- package/dist/esm/store/FuzzySearchEngineStore.d.ts +15 -0
- package/dist/esm/store/FuzzySearchEngineStore.js +45 -0
- package/dist/esm/store/HeatmapStore.d.ts +51 -0
- package/dist/esm/store/HeatmapStore.js +100 -0
- package/dist/esm/store/IntercomStore.d.ts +7 -0
- package/dist/esm/store/IntercomStore.js +26 -0
- package/dist/esm/store/LayerStore.d.ts +70 -0
- package/dist/esm/store/LayerStore.js +399 -0
- package/dist/esm/store/MaplibreStore.d.ts +71 -0
- package/dist/esm/store/MaplibreStore.js +137 -0
- package/dist/esm/store/OverlayStore.d.ts +32 -0
- package/dist/esm/store/OverlayStore.js +68 -0
- package/dist/esm/store/PoiMarkerStore.d.ts +76 -0
- package/dist/esm/store/PoiMarkerStore.js +97 -0
- package/dist/esm/store/PoiTypeStore.d.ts +8 -0
- package/dist/esm/store/PoiTypeStore.js +6 -0
- package/dist/esm/store/RootStore.d.ts +118 -0
- package/dist/esm/store/RootStore.js +666 -0
- package/dist/esm/store/RoutePlannerStore.d.ts +56 -0
- package/dist/esm/store/RoutePlannerStore.js +322 -0
- package/dist/esm/store/RouteStore.d.ts +138 -0
- package/dist/esm/store/RouteStore.js +692 -0
- package/dist/esm/store/SearchButtonsStore.d.ts +2 -0
- package/dist/esm/store/SearchButtonsStore.js +2 -0
- package/dist/esm/store/SearchStore.d.ts +81 -0
- package/dist/esm/store/SearchStore.js +612 -0
- package/dist/esm/store/SessionsFilterStore.d.ts +53 -0
- package/dist/esm/store/SessionsFilterStore.js +169 -0
- package/dist/esm/store/ShortcutProvider.d.ts +26 -0
- package/dist/esm/store/ShortcutProvider.js +5 -0
- package/dist/esm/store/ShortcutRegistry.d.ts +33 -0
- package/dist/esm/store/ShortcutRegistry.js +130 -0
- package/dist/esm/store/SpeakerFilterStore.d.ts +39 -0
- package/dist/esm/store/SpeakerFilterStore.js +152 -0
- package/dist/esm/store/SpeakerStore.d.ts +45 -0
- package/dist/esm/store/SpeakerStore.js +142 -0
- package/dist/esm/store/SubButtonProvider.d.ts +16 -0
- package/dist/esm/store/SubButtonProvider.js +6 -0
- package/dist/esm/store/SubButtonRegistry.d.ts +16 -0
- package/dist/esm/store/SubButtonRegistry.js +58 -0
- package/dist/esm/store/ToursStore.d.ts +30 -0
- package/dist/esm/store/ToursStore.js +184 -0
- package/dist/esm/store/UIState.d.ts +329 -0
- package/dist/esm/store/UIState.js +2138 -0
- package/dist/esm/store/VenueStore.d.ts +254 -0
- package/dist/esm/store/VenueStore.js +650 -0
- package/dist/esm/store/create-live-plan.d.ts +13 -0
- package/dist/esm/store/create-live-plan.js +25 -0
- package/dist/esm/store/details-events.d.ts +11 -0
- package/dist/esm/store/details-events.js +76 -0
- package/dist/esm/store/floor-activated-notifier.d.ts +18 -0
- package/dist/esm/store/floor-activated-notifier.js +22 -0
- package/dist/esm/store/index.d.ts +3 -0
- package/dist/esm/store/index.js +14 -0
- package/dist/esm/store/init/index.d.ts +3 -0
- package/dist/esm/store/init/index.js +20 -0
- package/dist/esm/store/init/init-booths.d.ts +6 -0
- package/dist/esm/store/init/init-booths.js +306 -0
- package/dist/esm/store/init/init-categories.d.ts +3 -0
- package/dist/esm/store/init/init-categories.js +28 -0
- package/dist/esm/store/init/init-events.d.ts +3 -0
- package/dist/esm/store/init/init-events.js +45 -0
- package/dist/esm/store/init/init-exhibitors.d.ts +3 -0
- package/dist/esm/store/init/init-exhibitors.js +71 -0
- package/dist/esm/store/init/init-heatmap.d.ts +3 -0
- package/dist/esm/store/init/init-heatmap.js +37 -0
- package/dist/esm/store/init/init-layers.d.ts +8 -0
- package/dist/esm/store/init/init-layers.js +151 -0
- package/dist/esm/store/init/init-poiTypes.d.ts +3 -0
- package/dist/esm/store/init/init-poiTypes.js +6 -0
- package/dist/esm/store/init/init-speakers.d.ts +3 -0
- package/dist/esm/store/init/init-speakers.js +20 -0
- package/dist/esm/store/init/init-ui.d.ts +13 -0
- package/dist/esm/store/init/init-ui.js +155 -0
- package/dist/esm/store/journey-plan.d.ts +89 -0
- package/dist/esm/store/journey-plan.js +291 -0
- package/dist/esm/store/live-store.d.ts +19 -0
- package/dist/esm/store/live-store.js +26 -0
- package/dist/esm/store/outdoor-poi-filter.d.ts +21 -0
- package/dist/esm/store/outdoor-poi-filter.js +33 -0
- package/dist/esm/store/providers/SearchShortcutProvider.d.ts +13 -0
- package/dist/esm/store/providers/SearchShortcutProvider.js +59 -0
- package/dist/esm/store/providers/SessionsShortcutProvider.d.ts +17 -0
- package/dist/esm/store/providers/SessionsShortcutProvider.js +221 -0
- package/dist/esm/store/providers/SessionsSubButtonProvider.d.ts +33 -0
- package/dist/esm/store/providers/SessionsSubButtonProvider.js +100 -0
- package/dist/esm/store/providers/SpeakerShortcutProvider.d.ts +12 -0
- package/dist/esm/store/providers/SpeakerShortcutProvider.js +73 -0
- package/dist/esm/store/reveal-layer.d.ts +29 -0
- package/dist/esm/store/reveal-layer.js +25 -0
- package/dist/esm/store/search-buttons/SearchButtonsActions.d.ts +55 -0
- package/dist/esm/store/search-buttons/SearchButtonsActions.js +363 -0
- package/dist/esm/store/search-buttons/SearchButtonsFactory.d.ts +37 -0
- package/dist/esm/store/search-buttons/SearchButtonsFactory.js +291 -0
- package/dist/esm/store/search-buttons/SearchButtonsFilters.d.ts +20 -0
- package/dist/esm/store/search-buttons/SearchButtonsFilters.js +157 -0
- package/dist/esm/store/search-buttons/SearchButtonsState.d.ts +24 -0
- package/dist/esm/store/search-buttons/SearchButtonsState.js +125 -0
- package/dist/esm/store/search-buttons/SearchButtonsStore.d.ts +73 -0
- package/dist/esm/store/search-buttons/SearchButtonsStore.js +364 -0
- package/dist/esm/store/search-buttons/constants.d.ts +24 -0
- package/dist/esm/store/search-buttons/constants.js +24 -0
- package/dist/esm/store/search-buttons/index.d.ts +8 -0
- package/dist/esm/store/search-buttons/index.js +7 -0
- package/dist/esm/store/search-buttons/utils.d.ts +6 -0
- package/dist/esm/store/search-buttons/utils.js +34 -0
- package/dist/esm/store/types.d.ts +213 -0
- package/dist/esm/store/types.js +1 -0
- package/dist/esm/store/venue-public.d.ts +10 -0
- package/dist/esm/store/venue-public.js +14 -0
- package/dist/esm/store/venue-selection.d.ts +45 -0
- package/dist/esm/store/venue-selection.js +101 -0
- package/dist/esm/test/store-harness.d.ts +32 -0
- package/dist/esm/test/store-harness.js +116 -0
- package/dist/esm/tools/base-runtime-url.d.ts +3 -0
- package/dist/esm/tools/base-runtime-url.js +23 -0
- package/dist/esm/tools/debounce.d.ts +2 -0
- package/dist/esm/tools/debounce.js +10 -0
- package/dist/esm/tools/debugCanvases.d.ts +3 -0
- package/dist/esm/tools/debugCanvases.js +3 -0
- package/dist/esm/tools/event-not-found.d.ts +18 -0
- package/dist/esm/tools/event-not-found.js +50 -0
- package/dist/esm/tools/event-scoped-cache.d.ts +13 -0
- package/dist/esm/tools/event-scoped-cache.js +47 -0
- package/dist/esm/tools/expofpUrl.d.ts +7 -0
- package/dist/esm/tools/expofpUrl.js +10 -0
- package/dist/esm/tools/freeBanner.d.ts +5 -0
- package/dist/esm/tools/freeBanner.js +11 -0
- package/dist/esm/tools/gtag.d.ts +66 -0
- package/dist/esm/tools/gtag.js +287 -0
- package/dist/esm/tools/handleDebugMode.d.ts +19 -0
- package/dist/esm/tools/handleDebugMode.js +61 -0
- package/dist/esm/tools/has-html-tags.d.ts +2 -0
- package/dist/esm/tools/has-html-tags.js +3 -0
- package/dist/esm/tools/id.d.ts +2 -0
- package/dist/esm/tools/id.js +5 -0
- package/dist/esm/tools/loaders.d.ts +5 -0
- package/dist/esm/tools/loaders.js +67 -0
- package/dist/esm/tools/logger.d.ts +38 -0
- package/dist/esm/tools/logger.js +87 -0
- package/dist/esm/tools/rebooking-config.d.ts +10 -0
- package/dist/esm/tools/rebooking-config.js +19 -0
- package/dist/esm/tools/rebookingUrl.d.ts +11 -0
- package/dist/esm/tools/rebookingUrl.js +27 -0
- package/dist/esm/tools/report-error.d.ts +2 -0
- package/dist/esm/tools/report-error.js +134 -0
- package/dist/esm/tools/reset.d.ts +2 -0
- package/dist/esm/tools/reset.js +35 -0
- package/dist/esm/tools/sentry.d.ts +7 -0
- package/dist/esm/tools/sentry.js +166 -0
- package/dist/esm/tools/settings.d.ts +36 -0
- package/dist/esm/tools/settings.js +110 -0
- package/dist/esm/tools/slug.d.ts +2 -0
- package/dist/esm/tools/slug.js +27 -0
- package/dist/esm/tools/strip-html.d.ts +2 -0
- package/dist/esm/tools/strip-html.js +7 -0
- package/dist/esm/tools/style-registry.d.ts +28 -0
- package/dist/esm/tools/style-registry.js +46 -0
- package/dist/esm/tools/telemetry.d.ts +37 -0
- package/dist/esm/tools/telemetry.js +266 -0
- package/dist/esm/tools/track-event.d.ts +28 -0
- package/dist/esm/tools/track-event.js +196 -0
- package/dist/esm/tools/webgl-logger.d.ts +2 -0
- package/dist/esm/tools/webgl-logger.js +31 -0
- package/dist/esm/types/drawing.types.d.ts +18 -0
- package/dist/esm/types/drawing.types.js +1 -0
- package/dist/esm/types/sdk.types.d.ts +49 -0
- package/dist/esm/types/sdk.types.js +6 -0
- package/dist/esm/types.d.ts +593 -0
- package/dist/esm/types.js +1 -0
- package/dist/esm/utils/_OLD_gpu-info.d.ts +6 -0
- package/dist/esm/utils/_OLD_gpu-info.js +23 -0
- package/dist/esm/utils/_OLD_should-use-backdrop.d.ts +3 -0
- package/dist/esm/utils/_OLD_should-use-backdrop.js +4 -0
- package/dist/esm/utils/areLayersEnabled.d.ts +2 -0
- package/dist/esm/utils/areLayersEnabled.js +4 -0
- package/dist/esm/utils/blob-image-size.d.ts +27 -0
- package/dist/esm/utils/blob-image-size.js +37 -0
- package/dist/esm/utils/brand.d.ts +18 -0
- package/dist/esm/utils/brand.js +19 -0
- package/dist/esm/utils/browser.d.ts +4 -0
- package/dist/esm/utils/browser.js +4 -0
- package/dist/esm/utils/calcSpeed.d.ts +2 -0
- package/dist/esm/utils/calcSpeed.js +5 -0
- package/dist/esm/utils/calcTravelTime.d.ts +2 -0
- package/dist/esm/utils/calcTravelTime.js +3 -0
- package/dist/esm/utils/camera-map-settings.d.ts +26 -0
- package/dist/esm/utils/camera-map-settings.js +86 -0
- package/dist/esm/utils/color-gradient.d.ts +2 -0
- package/dist/esm/utils/color-gradient.js +14 -0
- package/dist/esm/utils/customCommands.d.ts +2 -0
- package/dist/esm/utils/customCommands.js +33 -0
- package/dist/esm/utils/detectLimitedModeViaImage.d.ts +2 -0
- package/dist/esm/utils/detectLimitedModeViaImage.js +33 -0
- package/dist/esm/utils/dimming.d.ts +27 -0
- package/dist/esm/utils/dimming.js +88 -0
- package/dist/esm/utils/entity-storage.d.ts +14 -0
- package/dist/esm/utils/entity-storage.js +122 -0
- package/dist/esm/utils/event-head.d.ts +38 -0
- package/dist/esm/utils/event-head.js +90 -0
- package/dist/esm/utils/event-now.d.ts +11 -0
- package/dist/esm/utils/event-now.js +40 -0
- package/dist/esm/utils/event-title.d.ts +19 -0
- package/dist/esm/utils/event-title.js +20 -0
- package/dist/esm/utils/eventFullBadge.d.ts +3 -0
- package/dist/esm/utils/eventFullBadge.js +7 -0
- package/dist/esm/utils/eventTime.d.ts +15 -0
- package/dist/esm/utils/eventTime.js +82 -0
- package/dist/esm/utils/extractMetaFromString.d.ts +5 -0
- package/dist/esm/utils/extractMetaFromString.js +16 -0
- package/dist/esm/utils/geo-anchors.d.ts +10 -0
- package/dist/esm/utils/geo-anchors.js +12 -0
- package/dist/esm/utils/geometry.d.ts +2 -0
- package/dist/esm/utils/geometry.js +12 -0
- package/dist/esm/utils/getContrastTextColor.d.ts +2 -0
- package/dist/esm/utils/getContrastTextColor.js +26 -0
- package/dist/esm/utils/getLogoUrl.d.ts +9 -0
- package/dist/esm/utils/getLogoUrl.js +26 -0
- package/dist/esm/utils/getMostFrequent.d.ts +2 -0
- package/dist/esm/utils/getMostFrequent.js +14 -0
- package/dist/esm/utils/getRenderTargetFromRoot.d.ts +2 -0
- package/dist/esm/utils/getRenderTargetFromRoot.js +19 -0
- package/dist/esm/utils/gps.d.ts +40 -0
- package/dist/esm/utils/gps.js +66 -0
- package/dist/esm/utils/heatmap-enabled.d.ts +13 -0
- package/dist/esm/utils/heatmap-enabled.js +13 -0
- package/dist/esm/utils/i18n.d.ts +18 -0
- package/dist/esm/utils/i18n.js +117 -0
- package/dist/esm/utils/index.d.ts +10 -0
- package/dist/esm/utils/index.js +60 -0
- package/dist/esm/utils/is-debug.d.ts +3 -0
- package/dist/esm/utils/is-debug.js +9 -0
- package/dist/esm/utils/is-from-designer.d.ts +3 -0
- package/dist/esm/utils/is-from-designer.js +4 -0
- package/dist/esm/utils/is-iframe.d.ts +3 -0
- package/dist/esm/utils/is-iframe.js +13 -0
- package/dist/esm/utils/is-localhost.d.ts +3 -0
- package/dist/esm/utils/is-localhost.js +11 -0
- package/dist/esm/utils/is-mac.d.ts +3 -0
- package/dist/esm/utils/is-mac.js +2 -0
- package/dist/esm/utils/is-mobile.d.ts +3 -0
- package/dist/esm/utils/is-mobile.js +2 -0
- package/dist/esm/utils/is-own-domain.d.ts +12 -0
- package/dist/esm/utils/is-own-domain.js +23 -0
- package/dist/esm/utils/is-pathway-layer.d.ts +2 -0
- package/dist/esm/utils/is-pathway-layer.js +4 -0
- package/dist/esm/utils/is-phone.d.ts +9 -0
- package/dist/esm/utils/is-phone.js +17 -0
- package/dist/esm/utils/is-scroll-ugly.d.ts +3 -0
- package/dist/esm/utils/is-scroll-ugly.js +13 -0
- package/dist/esm/utils/is-webview.d.ts +3 -0
- package/dist/esm/utils/is-webview.js +2 -0
- package/dist/esm/utils/isNumericLevel.d.ts +2 -0
- package/dist/esm/utils/isNumericLevel.js +3 -0
- package/dist/esm/utils/lazy-qr-code.d.ts +5 -0
- package/dist/esm/utils/lazy-qr-code.js +6 -0
- package/dist/esm/utils/legacy-storage-keys.d.ts +16 -0
- package/dist/esm/utils/legacy-storage-keys.js +38 -0
- package/dist/esm/utils/loadBlob.d.ts +16 -0
- package/dist/esm/utils/loadBlob.js +40 -0
- package/dist/esm/utils/loadCustomCss.d.ts +3 -0
- package/dist/esm/utils/loadCustomCss.js +19 -0
- package/dist/esm/utils/loadIcons.d.ts +3 -0
- package/dist/esm/utils/loadIcons.js +24 -0
- package/dist/esm/utils/loadImage.d.ts +2 -0
- package/dist/esm/utils/loadImage.js +11 -0
- package/dist/esm/utils/loadImagesInBatches.d.ts +22 -0
- package/dist/esm/utils/loadImagesInBatches.js +82 -0
- package/dist/esm/utils/loadLayerImages.d.ts +41 -0
- package/dist/esm/utils/loadLayerImages.js +107 -0
- package/dist/esm/utils/localStorage.d.ts +2 -0
- package/dist/esm/utils/localStorage.js +11 -0
- package/dist/esm/utils/lz-utils.d.ts +8 -0
- package/dist/esm/utils/lz-utils.js +16 -0
- package/dist/esm/utils/mapEntity.d.ts +3 -0
- package/dist/esm/utils/mapEntity.js +82 -0
- package/dist/esm/utils/math.d.ts +6 -0
- package/dist/esm/utils/math.js +7 -0
- package/dist/esm/utils/mobx.d.ts +35 -0
- package/dist/esm/utils/mobx.js +74 -0
- package/dist/esm/utils/outdoor-poi.d.ts +32 -0
- package/dist/esm/utils/outdoor-poi.js +28 -0
- package/dist/esm/utils/plan-reactions.d.ts +20 -0
- package/dist/esm/utils/plan-reactions.js +26 -0
- package/dist/esm/utils/planBearing.d.ts +14 -0
- package/dist/esm/utils/planBearing.js +15 -0
- package/dist/esm/utils/preview-exhibitor.d.ts +11 -0
- package/dist/esm/utils/preview-exhibitor.js +19 -0
- package/dist/esm/utils/rasterize-svg.d.ts +32 -0
- package/dist/esm/utils/rasterize-svg.js +78 -0
- package/dist/esm/utils/responsiveClass.d.ts +2 -0
- package/dist/esm/utils/responsiveClass.js +25 -0
- package/dist/esm/utils/rtl.d.ts +2 -0
- package/dist/esm/utils/rtl.js +4 -0
- package/dist/esm/utils/sanitizeHtml.d.ts +3 -0
- package/dist/esm/utils/sanitizeHtml.js +21 -0
- package/dist/esm/utils/sanitizeText.d.ts +9 -0
- package/dist/esm/utils/sanitizeText.js +19 -0
- package/dist/esm/utils/scene-bounds.d.ts +64 -0
- package/dist/esm/utils/scene-bounds.js +127 -0
- package/dist/esm/utils/shortenName.d.ts +2 -0
- package/dist/esm/utils/shortenName.js +19 -0
- package/dist/esm/utils/silence-mobx-react-lite-warning.d.ts +2 -0
- package/dist/esm/utils/silence-mobx-react-lite-warning.js +24 -0
- package/dist/esm/utils/strEqual.d.ts +2 -0
- package/dist/esm/utils/strEqual.js +3 -0
- package/dist/esm/utils/swappable-proxy.d.ts +28 -0
- package/dist/esm/utils/swappable-proxy.js +71 -0
- package/dist/esm/utils/trackingParams.d.ts +3 -0
- package/dist/esm/utils/trackingParams.js +24 -0
- package/dist/esm/utils/urlEncoding.d.ts +7 -0
- package/dist/esm/utils/urlEncoding.js +62 -0
- package/dist/esm/utils/use-shadow.d.ts +3 -0
- package/dist/esm/utils/use-shadow.js +10 -0
- package/dist/esm/utils/useHeatmapData.d.ts +10 -0
- package/dist/esm/utils/useHeatmapData.js +8 -0
- package/dist/esm/utils/useHeatmapOverlay.d.ts +9 -0
- package/dist/esm/utils/useHeatmapOverlay.js +56 -0
- package/dist/esm/utils/useRenderTarget.d.ts +2 -0
- package/dist/esm/utils/useRenderTarget.js +35 -0
- package/dist/esm/utils/yah_icon.d.ts +6 -0
- package/dist/esm/utils/yah_icon.js +457 -0
- package/dist/esm/wayfinding/adapters/arbitraryPoint.d.ts +32 -0
- package/dist/esm/wayfinding/adapters/arbitraryPoint.js +25 -0
- package/dist/esm/wayfinding/adapters/boothToEndpoint.d.ts +19 -0
- package/dist/esm/wayfinding/adapters/boothToEndpoint.js +32 -0
- package/dist/esm/wayfinding/adapters/campusEndpoints.d.ts +13 -0
- package/dist/esm/wayfinding/adapters/campusEndpoints.js +25 -0
- package/dist/esm/wayfinding/adapters/canvasIconProvider.d.ts +20 -0
- package/dist/esm/wayfinding/adapters/canvasIconProvider.js +73 -0
- package/dist/esm/wayfinding/adapters/floorContext.d.ts +20 -0
- package/dist/esm/wayfinding/adapters/floorContext.js +43 -0
- package/dist/esm/wayfinding/adapters/graphDataSource.d.ts +49 -0
- package/dist/esm/wayfinding/adapters/graphDataSource.js +87 -0
- package/dist/esm/wayfinding/adapters/index.d.ts +10 -0
- package/dist/esm/wayfinding/adapters/index.js +8 -0
- package/dist/esm/wayfinding/adapters/kioskCanvas.d.ts +7 -0
- package/dist/esm/wayfinding/adapters/kioskCanvas.js +22 -0
- package/dist/esm/wayfinding/adapters/positionInput.d.ts +12 -0
- package/dist/esm/wayfinding/adapters/positionInput.js +16 -0
- package/dist/esm/wayfinding/bindMobxReactions.d.ts +28 -0
- package/dist/esm/wayfinding/bindMobxReactions.js +171 -0
- package/dist/esm/wayfinding/createWayfinding.d.ts +34 -0
- package/dist/esm/wayfinding/createWayfinding.js +184 -0
- package/dist/esm/wayfinding/handlers/kioskHandler.d.ts +26 -0
- package/dist/esm/wayfinding/handlers/kioskHandler.js +52 -0
- package/dist/esm/wayfinding/handlers/yahHandler.d.ts +21 -0
- package/dist/esm/wayfinding/handlers/yahHandler.js +42 -0
- package/dist/esm/wayfinding/index.d.ts +12 -0
- package/dist/esm/wayfinding/index.js +9 -0
- package/dist/esm/wayfinding/routeSteps.d.ts +15 -0
- package/dist/esm/wayfinding/routeSteps.js +29 -0
- package/dist/esm/wayfinding/storePorts.d.ts +67 -0
- package/dist/esm/wayfinding/storePorts.js +1 -0
- package/package.json +146 -0
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import './Wayfinding.scss';
|
|
3
|
+
import classNames from 'classnames';
|
|
4
|
+
import { useObserver } from 'mobx-react-lite';
|
|
5
|
+
import { useEffect, useMemo, useRef, useState } from 'react';
|
|
6
|
+
import { DEFAULT_UNITS } from '../constants';
|
|
7
|
+
import data from '../data';
|
|
8
|
+
import { getLayerSvg } from '../data/svg';
|
|
9
|
+
import store, { boothStore, exhibitorStore, uiState } from '../store';
|
|
10
|
+
import { BoothBase, RegularBooth } from '../store/BoothStore';
|
|
11
|
+
import { advanceJourney, currentJourney, currentJourneyLinkUrl, offerExternalNavigation, runningJourneyStage, } from '../store/journey-plan';
|
|
12
|
+
import { getLayerName, Route } from '../store/RouteStore';
|
|
13
|
+
import { getCrossVenueRouteNotFoundMessage } from '../store/venue-selection';
|
|
14
|
+
import settings from '../tools/settings';
|
|
15
|
+
import { calcSpeed } from '../utils/calcSpeed';
|
|
16
|
+
import { calcTravelTime } from '../utils/calcTravelTime';
|
|
17
|
+
import { t } from '../utils/i18n';
|
|
18
|
+
import isMobile from '../utils/is-mobile';
|
|
19
|
+
import { CURRENT_POSITION_POINT_ID, JOURNEY_ENTRANCE_POINT_ID, KIOSK_ANCHOR_POINT_ID, } from '../wayfinding/adapters';
|
|
20
|
+
import EntityList from './EntityList';
|
|
21
|
+
import WayfindingTemplate from './WayfindingTemplate';
|
|
22
|
+
function Wayfinding() {
|
|
23
|
+
const scrollableRef = useRef(null);
|
|
24
|
+
const floors = useMemo(() => {
|
|
25
|
+
const layers = store.routeStore.pathLayers;
|
|
26
|
+
return layers.map((l, i) => {
|
|
27
|
+
const next = layers[i + 1];
|
|
28
|
+
const currentPriority = l.layer?.basePriority ?? 0;
|
|
29
|
+
const nextPriority = next?.layer?.basePriority ?? 0;
|
|
30
|
+
const directionToNext = next
|
|
31
|
+
? nextPriority < currentPriority
|
|
32
|
+
? 'up'
|
|
33
|
+
: 'down'
|
|
34
|
+
: undefined;
|
|
35
|
+
return {
|
|
36
|
+
id: l.id,
|
|
37
|
+
name: l.layer?.shortName ?? '',
|
|
38
|
+
description: l.layer?.description,
|
|
39
|
+
directionToNext,
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
}, [store.routeStore.pathLayers]);
|
|
43
|
+
const [currentFloor, setCurrentFloor] = useState();
|
|
44
|
+
// Remembers which exhibitor the user picked for a given booth id, so booths shared by
|
|
45
|
+
// several exhibitors keep the chosen one (the route itself only stores the booth).
|
|
46
|
+
const [selectedExhibitorByBooth, setSelectedExhibitorByBooth] = useState({});
|
|
47
|
+
const rememberExhibitor = (option) => {
|
|
48
|
+
if (!option)
|
|
49
|
+
return;
|
|
50
|
+
setSelectedExhibitorByBooth((prev) => ({ ...prev, [option.value]: option }));
|
|
51
|
+
};
|
|
52
|
+
useEffect(() => {
|
|
53
|
+
if (currentFloor)
|
|
54
|
+
return;
|
|
55
|
+
setCurrentFloor(floors[0]);
|
|
56
|
+
}, [store.routeStore.pathLayers, floors]);
|
|
57
|
+
useEffect(() => {
|
|
58
|
+
const floor = floors.find((f) => f.description?.toLowerCase() ===
|
|
59
|
+
store.routeStore.currentRouteLayer?.description?.toLowerCase());
|
|
60
|
+
floor && setCurrentFloor(floor);
|
|
61
|
+
}, [store.routeStore.currentRouteLayer, floors]);
|
|
62
|
+
useEffect(() => {
|
|
63
|
+
const route = uiState.selectedRoute;
|
|
64
|
+
if (!route) {
|
|
65
|
+
uiState.setIsMultiPointRoute(false);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
const waypointsCount = route.waypoints?.length || 0;
|
|
69
|
+
const isMulti = waypointsCount > 0;
|
|
70
|
+
uiState.setIsMultiPointRoute(isMulti);
|
|
71
|
+
}, [uiState.selectedRoute]);
|
|
72
|
+
const routeSelected = () => {
|
|
73
|
+
const { from, to } = uiState.selectedRoute ?? {};
|
|
74
|
+
return from && to ? true : false;
|
|
75
|
+
};
|
|
76
|
+
const mobileFullOverlaySize = () => {
|
|
77
|
+
return uiState.overlaySize === 'full' ? true : false;
|
|
78
|
+
};
|
|
79
|
+
const mobileShowForm = () => {
|
|
80
|
+
return routeSelected() && !mobileFullOverlaySize() ? true : false;
|
|
81
|
+
};
|
|
82
|
+
const determineRouteMode = () => {
|
|
83
|
+
const route = uiState.selectedRoute;
|
|
84
|
+
if (!route)
|
|
85
|
+
return 'none';
|
|
86
|
+
const waypointsCount = route.waypoints?.length || 0;
|
|
87
|
+
return waypointsCount > 0 ? 'multi' : 'simple';
|
|
88
|
+
};
|
|
89
|
+
useEffect(() => {
|
|
90
|
+
const mode = determineRouteMode();
|
|
91
|
+
if (mode === 'multi' && uiState.selectedRoute) {
|
|
92
|
+
// uiState.setMultiPointRouteList(uiState.selectedRoute);
|
|
93
|
+
}
|
|
94
|
+
}, [uiState.selectedRoute]);
|
|
95
|
+
const options = useMemo(() => {
|
|
96
|
+
// A set: every booth is checked against it, and a list made that check quadratic.
|
|
97
|
+
const boothsIDs = new Set();
|
|
98
|
+
const allBooths = boothStore.booths;
|
|
99
|
+
const regularBooths = allBooths.filter((booth) => booth instanceof RegularBooth);
|
|
100
|
+
const otherBooths = allBooths.filter((booth) => !(booth instanceof RegularBooth));
|
|
101
|
+
let optionsList = [];
|
|
102
|
+
exhibitorStore.exhibitors.forEach((e) => {
|
|
103
|
+
for (const booth of e.booths)
|
|
104
|
+
boothsIDs.add(booth.id);
|
|
105
|
+
optionsList.push(...e.booths.map((booth) => ({
|
|
106
|
+
value: booth.id.toString(),
|
|
107
|
+
label: e.name + ' - ' + booth.fullName,
|
|
108
|
+
exhibitorId: e.id,
|
|
109
|
+
})));
|
|
110
|
+
});
|
|
111
|
+
otherBooths
|
|
112
|
+
.filter((booth) => !boothsIDs.has(booth.id))
|
|
113
|
+
.forEach((booth) => {
|
|
114
|
+
optionsList.push({
|
|
115
|
+
value: booth.id.toString(),
|
|
116
|
+
label: booth.fullName,
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
optionsList = optionsList.sort((a, b) => a.label.localeCompare(b.label, undefined, { sensitivity: 'base' }));
|
|
120
|
+
regularBooths
|
|
121
|
+
.filter((booth) => !boothsIDs.has(booth.id))
|
|
122
|
+
.forEach((booth) => {
|
|
123
|
+
optionsList.push({
|
|
124
|
+
value: booth.id.toString(),
|
|
125
|
+
label: booth.fullName,
|
|
126
|
+
});
|
|
127
|
+
});
|
|
128
|
+
return optionsList;
|
|
129
|
+
}, [exhibitorStore.exhibitors.length, boothStore.booths.length]);
|
|
130
|
+
useEffect(() => {
|
|
131
|
+
const toBoothId = uiState.selectedRoute?.to?.id?.toString();
|
|
132
|
+
const selectedExhibitor = store.routeStore.currentRouteExhibitor;
|
|
133
|
+
if (!selectedExhibitor)
|
|
134
|
+
return;
|
|
135
|
+
const exhibitorOption = options.find((option) => option.value === toBoothId && option.exhibitorId === selectedExhibitor.id);
|
|
136
|
+
store.routeStore.currentRouteExhibitor = null;
|
|
137
|
+
rememberExhibitor(exhibitorOption);
|
|
138
|
+
}, [store.routeStore.currentRouteExhibitor, uiState.selectedRoute?.to?.id, options]);
|
|
139
|
+
return useObserver(() => {
|
|
140
|
+
const mode = determineRouteMode();
|
|
141
|
+
if (mode === 'multi') {
|
|
142
|
+
return (_jsxs("div", { className: classNames('main-wayfinding', {
|
|
143
|
+
hidden: uiState.kiosk && uiState.selectedRoute?.from && uiState.selectedRoute?.to,
|
|
144
|
+
}), children: [uiState.routeDescription && (_jsx("div", { className: "efp-wayfinding-description", children: uiState.routeDescription })), _jsx(EntityList, { updatedScrollableRef: scrollableRef })] }));
|
|
145
|
+
}
|
|
146
|
+
// ArbitraryPoint (kiosk anchor / CP-derived) sits alongside real booths in the dropdown so the
|
|
147
|
+
// Autocomplete can render its `name` as the selected-from / selected-to label. It's a no-op
|
|
148
|
+
// pick (see onSelectionClick).
|
|
149
|
+
const arbitraryFrom = uiState.selectedRoute?.from && !(uiState.selectedRoute.from instanceof BoothBase)
|
|
150
|
+
? uiState.selectedRoute.from
|
|
151
|
+
: null;
|
|
152
|
+
const arbitraryTo = uiState.selectedRoute?.to && !(uiState.selectedRoute.to instanceof BoothBase)
|
|
153
|
+
? uiState.selectedRoute.to
|
|
154
|
+
: null;
|
|
155
|
+
const allOptions = [];
|
|
156
|
+
if (arbitraryFrom)
|
|
157
|
+
allOptions.push({ value: arbitraryFrom.id, label: arbitraryFrom.name });
|
|
158
|
+
if (arbitraryTo && arbitraryTo.id !== arbitraryFrom?.id)
|
|
159
|
+
allOptions.push({ value: arbitraryTo.id, label: arbitraryTo.name });
|
|
160
|
+
allOptions.push(...options);
|
|
161
|
+
const onSelectionClick = (option, isFrom = true) => {
|
|
162
|
+
const id = option?.value;
|
|
163
|
+
if (id === CURRENT_POSITION_POINT_ID ||
|
|
164
|
+
id === KIOSK_ANCHOR_POINT_ID ||
|
|
165
|
+
id === JOURNEY_ENTRANCE_POINT_ID)
|
|
166
|
+
return;
|
|
167
|
+
const booth = boothStore.booths.find((b) => b.id.toString() === id) ?? null;
|
|
168
|
+
const { from, to } = uiState.selectedRoute ?? {};
|
|
169
|
+
rememberExhibitor(option);
|
|
170
|
+
if (isFrom)
|
|
171
|
+
store.routeStore.selectRoute(new Route(booth, to ?? null));
|
|
172
|
+
else
|
|
173
|
+
store.routeStore.selectRoute(new Route(from ?? null, booth));
|
|
174
|
+
};
|
|
175
|
+
// A plan states its units once, in the SVG; they cannot change under us.
|
|
176
|
+
const units = getLayerSvg()?.getAttribute('units') || DEFAULT_UNITS;
|
|
177
|
+
const travelTimeOf = (distance) => {
|
|
178
|
+
const seconds = calcTravelTime(distance, calcSpeed(units));
|
|
179
|
+
return { seconds, text: seconds < 60 ? '< 1 min' : `~ ${Math.round(seconds / 60)} min` };
|
|
180
|
+
};
|
|
181
|
+
const distanceText = (distance) => Math.round(distance) + ` ${units}`;
|
|
182
|
+
const getWayInformation = (distance) => {
|
|
183
|
+
const info = [];
|
|
184
|
+
const { seconds, text: travelTime } = travelTimeOf(distance);
|
|
185
|
+
const est = new Date();
|
|
186
|
+
est.setMinutes(est.getMinutes() + seconds / 60);
|
|
187
|
+
const estTotal = est.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' });
|
|
188
|
+
info.push({
|
|
189
|
+
title: t('Travel time'),
|
|
190
|
+
text: travelTime,
|
|
191
|
+
}, {
|
|
192
|
+
title: t('Distance'),
|
|
193
|
+
text: distanceText(distance),
|
|
194
|
+
}, {
|
|
195
|
+
title: t('Est arrival'),
|
|
196
|
+
text: estTotal,
|
|
197
|
+
});
|
|
198
|
+
return info;
|
|
199
|
+
};
|
|
200
|
+
const onSwitch = () => {
|
|
201
|
+
const { from, to } = uiState.selectedRoute ?? {};
|
|
202
|
+
// CP as destination is degenerate (the user is always "at" their live position), so
|
|
203
|
+
// don't allow swapping the live-user anchor onto the TO side.
|
|
204
|
+
if (from?.id === CURRENT_POSITION_POINT_ID)
|
|
205
|
+
return;
|
|
206
|
+
store.routeStore.selectRoute(new Route(to ?? null, from ?? null));
|
|
207
|
+
};
|
|
208
|
+
const routeNotFound = uiState.selectedRoute?.from &&
|
|
209
|
+
uiState.selectedRoute?.to &&
|
|
210
|
+
!store.routeStore.routeLines.length;
|
|
211
|
+
// Venue-model plans name the unconnected venues instead of the generic
|
|
212
|
+
// "Route not found" when the endpoints resolve to different venues (R10).
|
|
213
|
+
const routeNotFoundMessage = routeNotFound
|
|
214
|
+
? getCrossVenueRouteNotFoundMessage(store.venueStore, getLayerName(uiState.selectedRoute?.from), getLayerName(uiState.selectedRoute?.to), t('venues are not connected'))
|
|
215
|
+
: undefined;
|
|
216
|
+
// A route the graph cannot build between two geo-anchored venues becomes a
|
|
217
|
+
// journey instead of a dead end (ADR-0010). The same derivation feeds the
|
|
218
|
+
// campus map's connector, so both surfaces present one journey.
|
|
219
|
+
const journey = currentJourney();
|
|
220
|
+
const routeDistance = store.routeStore.routeDistance ?? 0;
|
|
221
|
+
// The QR belongs on the screens the visitor walks away from — a kiosk, and
|
|
222
|
+
// a desktop planning the visit ahead of it. On the phone the journey is
|
|
223
|
+
// already where it needs to be.
|
|
224
|
+
const journeyLinkUrl = journey && (uiState.kiosk || !isMobile) ? (currentJourneyLinkUrl() ?? undefined) : undefined;
|
|
225
|
+
function getFromValue() {
|
|
226
|
+
const fromBoothId = uiState.selectedRoute?.from?.id?.toString();
|
|
227
|
+
const chosen = fromBoothId ? selectedExhibitorByBooth[fromBoothId] : undefined;
|
|
228
|
+
return allOptions.find((option) => chosen
|
|
229
|
+
? option.value === chosen.value && option.label === chosen.label
|
|
230
|
+
: option.value === fromBoothId);
|
|
231
|
+
}
|
|
232
|
+
function getToValue() {
|
|
233
|
+
const toBoothId = uiState.selectedRoute?.to?.id?.toString();
|
|
234
|
+
const chosen = toBoothId ? selectedExhibitorByBooth[toBoothId] : undefined;
|
|
235
|
+
return allOptions.find((option) => chosen
|
|
236
|
+
? option.value === chosen.value && option.label === chosen.label
|
|
237
|
+
: option.value === toBoothId);
|
|
238
|
+
}
|
|
239
|
+
const showInfo = !!(!data.hideWayInformation &&
|
|
240
|
+
settings.EXPO !== 'bloomberg' &&
|
|
241
|
+
uiState.selectedRoute?.from &&
|
|
242
|
+
uiState.selectedRoute?.to);
|
|
243
|
+
return (_jsx("div", { className: classNames('main-wayfinding', {
|
|
244
|
+
hidden: uiState.kiosk && uiState.selectedRoute?.from && uiState.selectedRoute?.to,
|
|
245
|
+
}), children: _jsx(WayfindingTemplate, { showForm: !mobileShowForm(), showInfo: showInfo, floors: floors, currentFloor: currentFloor, onClickFloor: (floor) => {
|
|
246
|
+
const pathLayer = store.routeStore.pathLayers.find((pl) => pl.id === floor.id);
|
|
247
|
+
if (pathLayer?.layer)
|
|
248
|
+
store.layerStore.updateVisibility(pathLayer.layer, true);
|
|
249
|
+
}, routeFound: !routeNotFound, routeNotFoundMessage: routeNotFoundMessage, journey: journey, journeyStage: runningJourneyStage(), journeyPlanUnits: units, journeyLegWalk: `${distanceText(routeDistance)} · ${travelTimeOf(routeDistance).text}`, journeyLinkUrl: journeyLinkUrl, onExternalHandoff: (event) => {
|
|
250
|
+
// The host app sees the handoff first; the SDK's own default is the
|
|
251
|
+
// link the panel already carries, so an embedding that registered
|
|
252
|
+
// nothing — every existing one — opens Maps exactly as before.
|
|
253
|
+
if (journey && offerExternalNavigation(journey))
|
|
254
|
+
event.preventDefault();
|
|
255
|
+
// Either way the visitor has left for the street: what they come
|
|
256
|
+
// back to is the arrival leg, not the map they are looking at now.
|
|
257
|
+
advanceJourney('handoff');
|
|
258
|
+
}, options: allOptions,
|
|
259
|
+
// value alone isn't unique — the same booth can be listed under multiple exhibitors.
|
|
260
|
+
getOptionKey: (option) => `${option.value}-${option.exhibitorId ?? ''}`, fromValue: getFromValue(), toValue: getToValue(), onChangeFrom: (value) => onSelectionClick(value, true), onChangeTo: (value) => onSelectionClick(value, false), onSwitch: onSwitch, infoItems: getWayInformation(routeDistance), infoAccessible: store.routeStore.onlyAccessible, showAccessible: store.routeStore.showAccessible, onAccessibleCheck: (checked) => store.routeStore.setOnlyAccessible(checked), onClickInfo: () => store.showOverlay(), routeUrl: uiState.routeQRCodeUrl, isKiosk: uiState.kiosk, showDetailsIcon: uiState.showRouteInstantly, onDetailsIconClick: () => {
|
|
261
|
+
const { from, to } = uiState.selectedRoute || {};
|
|
262
|
+
// ArbitraryPoint has no booth details to surface, so the panel only opens when at
|
|
263
|
+
// least one endpoint is a real booth.
|
|
264
|
+
// Every concrete BoothBase is a Booth (the base class is abstract); the
|
|
265
|
+
// instanceof pair narrows to the base, so the union is restated here.
|
|
266
|
+
const target = ((to instanceof BoothBase ? to : null) ??
|
|
267
|
+
(from instanceof BoothBase ? from : null));
|
|
268
|
+
if (target) {
|
|
269
|
+
const boothId = target.id.toString();
|
|
270
|
+
const chosen = selectedExhibitorByBooth[boothId] ?? allOptions.find((o) => o.value === boothId);
|
|
271
|
+
const exhibitor = chosen?.exhibitorId != null
|
|
272
|
+
? target.exhibitors.find((ex) => ex.id === chosen.exhibitorId)
|
|
273
|
+
: target.exhibitors.find((ex) => chosen?.label.includes(ex.name));
|
|
274
|
+
uiState.details = exhibitor || target;
|
|
275
|
+
}
|
|
276
|
+
} }) }));
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
function WayfindingWrapper() {
|
|
280
|
+
return useObserver(() => settings.wayfinding &&
|
|
281
|
+
!uiState.menu &&
|
|
282
|
+
uiState.selectedRoute &&
|
|
283
|
+
uiState.list.type !== 'route-planner' && _jsx(Wayfinding, {}));
|
|
284
|
+
}
|
|
285
|
+
export default WayfindingWrapper;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type WayfindingFloorSelectorProps } from '@expofp/ui';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
declare const WayfindingFloorSelectorContainer: ({ floors, floorSelectionLabel, ...rest }: WayfindingFloorSelectorProps) => React.JSX.Element;
|
|
4
|
+
export default WayfindingFloorSelectorContainer;
|
|
5
|
+
//# sourceMappingURL=WayfindingFloorSelectorContainer.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// @ts-nocheck
|
|
3
|
+
import { WayfindingFloorSelector } from '@expofp/ui';
|
|
4
|
+
import { t } from '../utils/i18n';
|
|
5
|
+
const WayfindingFloorSelectorContainer = ({ floors, floorSelectionLabel, ...rest }) => {
|
|
6
|
+
const floorsWithLabels = floors.map((floor) => ({
|
|
7
|
+
...floor,
|
|
8
|
+
ariaLabel: floor.ariaLabel ?? floor.description ?? t('Floor {{name}}', { name: floor.name }),
|
|
9
|
+
}));
|
|
10
|
+
return (_jsx(WayfindingFloorSelector, { ...rest, floors: floorsWithLabels, floorSelectionLabel: floorSelectionLabel ?? t('Floor selection') }));
|
|
11
|
+
};
|
|
12
|
+
export default WayfindingFloorSelectorContainer;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import './WayfindingTemplate.scss';
|
|
2
|
+
import { type WayfindingFloorSelectorProps } from '@expofp/ui';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import type { Journey, JourneyStage } from '../journey';
|
|
5
|
+
import type { RouteOption } from '../store/types';
|
|
6
|
+
import { type JourneyPanelProps } from './JourneyPanel';
|
|
7
|
+
import { type WayInformationItem } from './WayInformation';
|
|
8
|
+
export interface WayfindingTemplateProps {
|
|
9
|
+
options: RouteOption[];
|
|
10
|
+
fromValue?: RouteOption;
|
|
11
|
+
toValue?: RouteOption;
|
|
12
|
+
showForm?: boolean;
|
|
13
|
+
showInfo?: boolean;
|
|
14
|
+
showAccessible?: boolean;
|
|
15
|
+
onlyAccessible?: boolean;
|
|
16
|
+
routeFound?: boolean;
|
|
17
|
+
/** Override for the route-failure message (e.g. names unconnected venues). */
|
|
18
|
+
routeNotFoundMessage?: string;
|
|
19
|
+
/**
|
|
20
|
+
* The journey planned for an unroutable venue pair. Present only where the
|
|
21
|
+
* graph cannot route and both venues are geo-anchored, so it stands in for
|
|
22
|
+
* the route-failure message rather than adding to it.
|
|
23
|
+
*/
|
|
24
|
+
journey?: Journey | null;
|
|
25
|
+
/** Which stage of the journey the visitor is on — see {@link JourneyPanelProps.stage}. */
|
|
26
|
+
journeyStage?: JourneyStage | null;
|
|
27
|
+
/** The plan's units, for the journey's street leg — see {@link JourneyPanelProps.planUnits}. */
|
|
28
|
+
journeyPlanUnits?: string;
|
|
29
|
+
/** The routed walk of the journey's current leg — see {@link JourneyPanelProps.legWalk}. */
|
|
30
|
+
journeyLegWalk?: string;
|
|
31
|
+
/**
|
|
32
|
+
* The journey's deep link, shown as a QR beside it. Set on the surfaces the
|
|
33
|
+
* visitor leaves behind — kiosk and desktop — so the journey can travel to
|
|
34
|
+
* the phone that will actually walk it.
|
|
35
|
+
*/
|
|
36
|
+
journeyLinkUrl?: string;
|
|
37
|
+
/**
|
|
38
|
+
* The journey's external handoff, offered to the host app before the SDK
|
|
39
|
+
* opens the provider URL — see {@link JourneyPanelProps.onExternalHandoff}.
|
|
40
|
+
*/
|
|
41
|
+
onExternalHandoff?: JourneyPanelProps['onExternalHandoff'];
|
|
42
|
+
infoItems?: WayInformationItem[];
|
|
43
|
+
infoAccessible: boolean;
|
|
44
|
+
floors?: WayfindingFloorSelectorProps['floors'];
|
|
45
|
+
currentFloor?: {
|
|
46
|
+
id: number;
|
|
47
|
+
name: string;
|
|
48
|
+
};
|
|
49
|
+
routeUrl?: string;
|
|
50
|
+
isKiosk?: boolean;
|
|
51
|
+
onChangeFrom?: (val: RouteOption | undefined) => void;
|
|
52
|
+
onChangeTo?: (val: RouteOption | undefined) => void;
|
|
53
|
+
getOptionKey?: (option: RouteOption) => string;
|
|
54
|
+
onSwitch?: () => void;
|
|
55
|
+
onClickInfo?: () => void;
|
|
56
|
+
onClickFloor?: (data: {
|
|
57
|
+
id: number;
|
|
58
|
+
name: string;
|
|
59
|
+
}) => void;
|
|
60
|
+
onAccessibleCheck: (checked: boolean) => void;
|
|
61
|
+
showDetailsIcon?: boolean;
|
|
62
|
+
onDetailsIconClick?: () => void;
|
|
63
|
+
}
|
|
64
|
+
declare const WayfindingTemplate: React.FC<WayfindingTemplateProps>;
|
|
65
|
+
export default WayfindingTemplate;
|
|
66
|
+
//# sourceMappingURL=WayfindingTemplate.d.ts.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import './WayfindingTemplate.scss';
|
|
3
|
+
import { ToggleSwitch } from '@expofp/ui';
|
|
4
|
+
import classNames from 'classnames';
|
|
5
|
+
import { t } from '../utils/i18n';
|
|
6
|
+
import Autocomplete from './AutocompleteContainer';
|
|
7
|
+
import JourneyPanel from './JourneyPanel';
|
|
8
|
+
import RouteQR from './RouteQR';
|
|
9
|
+
import WayfindingFloorSelector from './WayfindingFloorSelectorContainer';
|
|
10
|
+
import WayInformation from './WayInformation';
|
|
11
|
+
const WayfindingTemplate = ({ options = [], fromValue, toValue, showForm = true, showAccessible = false, showInfo = false, routeFound = false, routeNotFoundMessage, journey, journeyStage, journeyPlanUnits, journeyLegWalk, journeyLinkUrl, onExternalHandoff, infoItems = [], infoAccessible, floors = [], currentFloor, routeUrl, isKiosk, onChangeFrom, onChangeTo, getOptionKey, onSwitch, onClickInfo, onClickFloor, onAccessibleCheck, showDetailsIcon, onDetailsIconClick, }) => {
|
|
12
|
+
return (_jsxs("div", { className: classNames('efp-wayfinding', { isCollapsed: !showForm }), children: [showForm && (_jsxs("div", { className: "efp-wayfinding__top", children: [_jsxs("div", { className: "efp-wayfindingForm", children: [_jsxs("div", { className: "efp-wayfindingForm__icons", children: [_jsx("div", { className: "efp-wayfindingForm__from", children: _jsxs("svg", { width: "18", height: "18", viewBox: "0 0 18 18", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("path", { d: "M18 9C18 13.9706 13.9706 18 9 18C4.02944 18 0 13.9706 0 9C0 4.02944 4.02944 0 9 0C13.9706 0 18 4.02944 18 9Z", fill: "white" }), _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9 13.375C11.4162 13.375 13.375 11.4162 13.375 9C13.375 6.58375 11.4162 4.625 9 4.625C6.58375 4.625 4.625 6.58375 4.625 9C4.625 11.4162 6.58375 13.375 9 13.375ZM9 16C12.866 16 16 12.866 16 9C16 5.13401 12.866 2 9 2C5.13401 2 2 5.13401 2 9C2 12.866 5.13401 16 9 16Z", style: { fill: 'var(--efp-wf-from-color, #30AFEB)' } })] }) }), _jsx("div", { className: "efp-wayfindingForm__to", children: _jsxs("svg", { width: "18", height: "25", viewBox: "0 0 18 25", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9 24.1571L10.5475 22.267C11.0023 21.7114 11.4571 21.1656 11.9041 20.6291C13.2939 18.9611 14.6088 17.3829 15.6182 15.8814C16.988 13.8436 18 11.668 18 9.125C18 4.09562 14.0267 0 9 0C3.97332 0 0 4.09562 0 9.125C0 11.668 1.01202 13.8436 2.38182 15.8814C3.39116 17.3829 4.70613 18.9611 6.09588 20.6291C6.54291 21.1656 6.99767 21.7114 7.45249 22.267L9 24.1571Z", fill: "white" }), _jsx("path", { d: "M9 2C5.11111 2 2 5.16667 2 9.125C2 13.0833 5.11111 16.25 9 21C12.8889 16.25 16 13.0833 16 9.125C16 5.16667 12.8889 2 9 2ZM9 6.75C10.2911 6.75 11.3333 7.81083 11.3333 9.125C11.3333 10.4392 10.2911 11.5 9 11.5C7.70889 11.5 6.66667 10.4392 6.66667 9.125C6.66667 7.81083 7.70889 6.75 9 6.75Z", style: { fill: 'var(--efp-wf-to-color, #FF9E2C)' } })] }) }), _jsx("div", { className: "efp-wayfindingForm__dots", children: _jsxs("svg", { width: "4", height: "18", viewBox: "0 0 4 18", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [_jsx("circle", { cx: "2", cy: "2", r: "2", fill: "#DCDFE9" }), _jsx("circle", { cx: "2", cy: "16", r: "2", fill: "#DCDFE9" })] }) })] }), _jsxs("div", { className: "efp-wayfindingForm__controls", children: [_jsx("div", { style: { marginBottom: 10 }, children: _jsx(Autocomplete, { placeholder: t('Choose starting point'), options: options, value: fromValue, onChange: onChangeFrom, getOptionKey: getOptionKey }) }), _jsx("div", { children: _jsx(Autocomplete, { placeholder: t('Choose destination point'), options: options, value: toValue, onChange: onChangeTo, getOptionKey: getOptionKey }) })] }), _jsxs("div", { className: "efp-wayfindingForm__actions", children: [_jsx("button", { type: "button", className: "efp-wayfindingForm__switch", onClick: onSwitch }), showDetailsIcon && (_jsx("button", { type: "button", className: "efp-wayfindingForm__details", onClick: onDetailsIconClick }))] })] }), showAccessible && (_jsx("div", { className: "efp-wayfindingForm__accessible", children: _jsx(ToggleSwitch, { name: "onlyAccessible", label: t('Accessible'), value: infoAccessible, onChange: (value) => onAccessibleCheck(value) }) }))] })), floors.length > 1 && (_jsx(WayfindingFloorSelector, { floors: floors, value: currentFloor, onSelect: onClickFloor })), showInfo && (_jsxs("div", { className: "efp-wayfindingInfo", children: [routeFound && !journey && (_jsxs(_Fragment, { children: [_jsx(WayInformation, { items: infoItems, accessible: infoAccessible, onClick: onClickInfo }), isKiosk && _jsx(RouteQR, { url: routeUrl })] })), journey ? (_jsx(JourneyPanel, { journey: journey, stage: journeyStage, planUnits: journeyPlanUnits, legWalk: routeFound ? journeyLegWalk : undefined, deepLinkUrl: journeyLinkUrl, onExternalHandoff: onExternalHandoff })) : (!routeFound && (_jsx("div", { className: "efp-wayfindingError", children: routeNotFoundMessage ?? t('Route not found') })))] }))] }));
|
|
13
|
+
};
|
|
14
|
+
export default WayfindingTemplate;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/* eslint-disable @eslint-react/no-create-ref */
|
|
3
|
+
/* eslint-disable @eslint-react/exhaustive-deps, no-constant-condition, @typescript-eslint/consistent-type-imports */
|
|
4
|
+
// @ts-nocheck
|
|
5
|
+
import './Ws.scss';
|
|
6
|
+
import classNames from 'classnames';
|
|
7
|
+
import { reaction } from 'mobx';
|
|
8
|
+
import { useLocalStore, useObserver } from 'mobx-react-lite';
|
|
9
|
+
import React, { createRef, useCallback } from 'react';
|
|
10
|
+
import { CSSTransition, TransitionGroup } from 'react-transition-group';
|
|
11
|
+
import store, { exhibitorStore, uiState } from '../store';
|
|
12
|
+
import { trackWsExhibitorClick } from '../tools/gtag';
|
|
13
|
+
import { remsToPixels, shuffle } from '../utils';
|
|
14
|
+
import { loadImagesInBatchesById } from '../utils/loadImagesInBatches';
|
|
15
|
+
import { useInit } from '../utils/mobx';
|
|
16
|
+
const DELAY = 8000;
|
|
17
|
+
const Ws = React.memo(() => {
|
|
18
|
+
const s = useLocalStore(() => ({
|
|
19
|
+
el: null,
|
|
20
|
+
all: [],
|
|
21
|
+
adv: [],
|
|
22
|
+
keySeq: 0,
|
|
23
|
+
index: 0,
|
|
24
|
+
batchStart: 0,
|
|
25
|
+
imgByExhibitorId: new Map(),
|
|
26
|
+
batchSize: 100,
|
|
27
|
+
loading: false,
|
|
28
|
+
leftToNextLoad: 0,
|
|
29
|
+
timeoutId: 0,
|
|
30
|
+
get sectionStyle() {
|
|
31
|
+
const { wsStarted, wsPosition } = uiState;
|
|
32
|
+
const isTop = wsPosition === 'top';
|
|
33
|
+
const style = {
|
|
34
|
+
right: 0,
|
|
35
|
+
width: '100%',
|
|
36
|
+
opacity: wsStarted ? 1 : 0,
|
|
37
|
+
};
|
|
38
|
+
if (isTop) {
|
|
39
|
+
style.top = 0;
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
style.bottom = 0;
|
|
43
|
+
}
|
|
44
|
+
return style;
|
|
45
|
+
},
|
|
46
|
+
}));
|
|
47
|
+
const setupNext = useCallback((rebuild = false) => {
|
|
48
|
+
// A rebuild re-derives the current batch for a new width; only a rotation advances the
|
|
49
|
+
// carousel.
|
|
50
|
+
const prev = rebuild ? s.adv : [];
|
|
51
|
+
if (rebuild)
|
|
52
|
+
s.index = s.batchStart;
|
|
53
|
+
else
|
|
54
|
+
s.batchStart = s.index;
|
|
55
|
+
const rectWidth = s.el?.getBoundingClientRect().width ?? 0;
|
|
56
|
+
const maxWidth = rectWidth - remsToPixels(0.3) * 2;
|
|
57
|
+
let filledWidth = 0;
|
|
58
|
+
const adv = [];
|
|
59
|
+
do {
|
|
60
|
+
const e = s.all[s.index % s.all.length];
|
|
61
|
+
const img = s.imgByExhibitorId.get(e.id);
|
|
62
|
+
if (!img)
|
|
63
|
+
break;
|
|
64
|
+
const width = (img.width * uiState.wsImageHeightPx) / img.height + 20;
|
|
65
|
+
if (filledWidth + width > maxWidth && adv.length)
|
|
66
|
+
break;
|
|
67
|
+
filledWidth += width;
|
|
68
|
+
// An unchanged slot keeps its key and node, so a rebuild reconciles to the same elements
|
|
69
|
+
// instead of remounting — and re-animating, and re-loading — every logo.
|
|
70
|
+
const kept = prev[adv.length]?.e === e ? prev[adv.length] : null;
|
|
71
|
+
adv.push(kept ?? { key: s.keySeq++, e, nodeRef: createRef() });
|
|
72
|
+
s.index = (s.index + 1) % s.all.length;
|
|
73
|
+
} while (true);
|
|
74
|
+
s.adv = adv;
|
|
75
|
+
s.leftToNextLoad = Math.max(0, s.leftToNextLoad - Math.max(0, adv.length - prev.length));
|
|
76
|
+
}, [s]);
|
|
77
|
+
const loadExhibitorImages = useCallback(async () => {
|
|
78
|
+
s.loading = true;
|
|
79
|
+
let batch = s.all.slice(s.index, s.index + s.batchSize);
|
|
80
|
+
if (batch.length < s.batchSize) {
|
|
81
|
+
batch = batch.concat(s.all.slice(0, s.batchSize - batch.length));
|
|
82
|
+
}
|
|
83
|
+
const result = await loadImagesInBatchesById(new Map(batch.map((x) => [x.id, { fallback: x.logo?.url }])));
|
|
84
|
+
s.leftToNextLoad = result.size;
|
|
85
|
+
s.loading = false;
|
|
86
|
+
return result;
|
|
87
|
+
}, [s]);
|
|
88
|
+
const startTimer = useCallback(() => {
|
|
89
|
+
const fn = async () => {
|
|
90
|
+
if (s.loading) {
|
|
91
|
+
s.timeoutId = window.setTimeout(fn, DELAY);
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
if (s.leftToNextLoad <= s.adv.length) {
|
|
95
|
+
s.imgByExhibitorId = await loadExhibitorImages();
|
|
96
|
+
}
|
|
97
|
+
setupNext();
|
|
98
|
+
s.timeoutId = window.setTimeout(fn, DELAY);
|
|
99
|
+
};
|
|
100
|
+
clearTimeout(s.timeoutId);
|
|
101
|
+
s.timeoutId = window.setTimeout(fn, DELAY);
|
|
102
|
+
}, [loadExhibitorImages, setupNext]);
|
|
103
|
+
useInit(() => {
|
|
104
|
+
let dispose;
|
|
105
|
+
let isMounted = true;
|
|
106
|
+
(async () => {
|
|
107
|
+
s.all = shuffle(exhibitorStore.advertised);
|
|
108
|
+
s.imgByExhibitorId = await loadExhibitorImages();
|
|
109
|
+
if (!isMounted)
|
|
110
|
+
return;
|
|
111
|
+
setupNext();
|
|
112
|
+
startTimer();
|
|
113
|
+
uiState.wsStarted = true;
|
|
114
|
+
// Refit to the new width as a rebuild, and at most every 250ms — a live window drag moves
|
|
115
|
+
// `screenSize` on every frame, and a per-frame rebuild forced a layout read and remounted
|
|
116
|
+
// every logo each time.
|
|
117
|
+
dispose = reaction(() => uiState.screenSize, () => setupNext(true), { delay: 250 });
|
|
118
|
+
})();
|
|
119
|
+
return () => {
|
|
120
|
+
isMounted = false;
|
|
121
|
+
dispose?.();
|
|
122
|
+
clearInterval(s.timeoutId);
|
|
123
|
+
};
|
|
124
|
+
});
|
|
125
|
+
return useObserver(() => (_jsx("section", { className: classNames('ws', { 'efp-semi-transparent': uiState.setKioskModeEnabled }), ref: (n) => (s.el = n), onMouseOver: () => clearInterval(s.timeoutId), onMouseOut: startTimer, style: s.sectionStyle, children: _jsx(TransitionGroup, { component: null, children: s.adv.map((e) => (_jsx(CSSTransition, { timeout: 500, nodeRef: e.nodeRef, children: _jsx("a", { ref: e.nodeRef, href: `?${e.e.slug}`, className: "ws__exhibitor", style: { height: `${uiState.wsImageHeightPx}px` }, onClick: (x) => {
|
|
126
|
+
x.preventDefault();
|
|
127
|
+
trackWsExhibitorClick(e.e);
|
|
128
|
+
store.clickExhibitor(e.e);
|
|
129
|
+
}, children: _jsx("img", { src: e.e.logo?.url, alt: e.e.name, crossOrigin: "anonymous" }) }) }, e.key))) }) })));
|
|
130
|
+
});
|
|
131
|
+
export default () => useObserver(() => (uiState.wsShown ? _jsx(Ws, {}) : null));
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/* eslint-disable simple-import-sort/imports */
|
|
3
|
+
// @ts-nocheck
|
|
4
|
+
import { useObserver } from 'mobx-react-lite';
|
|
5
|
+
import store, { layersStore, uiState } from '../store';
|
|
6
|
+
import SimpleRow from './SimpleRowContainer';
|
|
7
|
+
import useHeatmapData from '../utils/useHeatmapData';
|
|
8
|
+
const YahRow = ({ yah, active }) => {
|
|
9
|
+
const { clicks, background } = useHeatmapData(yah);
|
|
10
|
+
return useObserver(() => {
|
|
11
|
+
return (_jsx(SimpleRow, { style: {
|
|
12
|
+
background: uiState.heatmapYah
|
|
13
|
+
? `linear-gradient(to right, transparent 98%, ${background} 93%) center / 100% 99% no-repeat`
|
|
14
|
+
: null,
|
|
15
|
+
}, active: active, slug: yah.id.toString(), onClick: handleClick, title: yah.name, subtitle: yah.z ? `Level ${yah.z}` : '', trailing: clicks.toString(), highlight: false }));
|
|
16
|
+
});
|
|
17
|
+
function handleClick() {
|
|
18
|
+
const layer = layersStore.findLayer(yah.z);
|
|
19
|
+
if (layer) {
|
|
20
|
+
layersStore.updateVisibility(layer, true);
|
|
21
|
+
}
|
|
22
|
+
store.routeStore.selectMarker(yah.id.toString(), true);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
export default YahRow;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type GpsPosition } from './types';
|
|
3
|
+
interface GpsManagerProps {
|
|
4
|
+
requestCompass: boolean;
|
|
5
|
+
requestCompassAllowed: boolean;
|
|
6
|
+
onPositionUpdate: (pos: GpsPosition) => void;
|
|
7
|
+
onRejectCompass?: () => void;
|
|
8
|
+
onAllowCompass?: () => void;
|
|
9
|
+
orientationStorageKey?: string;
|
|
10
|
+
}
|
|
11
|
+
export default function GpsManager({ onPositionUpdate, onAllowCompass, onRejectCompass, orientationStorageKey, requestCompass, requestCompassAllowed, }: GpsManagerProps): React.JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=GpsManager.d.ts.map
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/* eslint-disable @eslint-react/set-state-in-effect */
|
|
3
|
+
/* eslint-disable @eslint-react/exhaustive-deps */
|
|
4
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
5
|
+
// @ts-nocheck
|
|
6
|
+
import { useCallback, useEffect, useState } from 'react';
|
|
7
|
+
import logger from '../../tools/logger';
|
|
8
|
+
import isMobile from '../../utils/is-mobile';
|
|
9
|
+
import GpsPermissionRequest from './GpsPermissionRequest';
|
|
10
|
+
import { useUserLocationAndHeading } from './useUserLocationAndHeading';
|
|
11
|
+
export default function GpsManager({ onPositionUpdate, onAllowCompass, onRejectCompass, orientationStorageKey = 'compass-permission-granted', requestCompass = true, requestCompassAllowed = true, }) {
|
|
12
|
+
const { startOrientation, startGeolocation, stopOrientation, stopGeolocation } = useUserLocationAndHeading(onPositionUpdate);
|
|
13
|
+
const [locationGranted, setLocationGranted] = useState(false);
|
|
14
|
+
const [showCompassModal, setShowCompassModal] = useState(false);
|
|
15
|
+
useEffect(() => {
|
|
16
|
+
navigator.geolocation.getCurrentPosition(() => {
|
|
17
|
+
setLocationGranted(true);
|
|
18
|
+
startGeolocation();
|
|
19
|
+
}, (err) => {
|
|
20
|
+
logger.warn('Geolocation error:', err);
|
|
21
|
+
setLocationGranted(false);
|
|
22
|
+
});
|
|
23
|
+
return () => {
|
|
24
|
+
stopOrientation();
|
|
25
|
+
stopGeolocation();
|
|
26
|
+
};
|
|
27
|
+
}, [startGeolocation, stopGeolocation, stopOrientation]);
|
|
28
|
+
const handleEnableCompass = async () => {
|
|
29
|
+
// required to get compass access on ios devices
|
|
30
|
+
// https://w3c.github.io/deviceorientation/#dom-deviceorientationevent-requestpermission
|
|
31
|
+
if (typeof DeviceOrientationEvent !== 'undefined' &&
|
|
32
|
+
typeof DeviceOrientationEvent.requestPermission === 'function') {
|
|
33
|
+
const res = await DeviceOrientationEvent.requestPermission();
|
|
34
|
+
if (res !== 'granted')
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
localStorage.setItem(orientationStorageKey, 'true');
|
|
38
|
+
startOrientation();
|
|
39
|
+
setShowCompassModal(false);
|
|
40
|
+
onAllowCompass?.();
|
|
41
|
+
};
|
|
42
|
+
const onCancel = useCallback(() => {
|
|
43
|
+
localStorage.setItem(orientationStorageKey, 'false');
|
|
44
|
+
setShowCompassModal(false);
|
|
45
|
+
onRejectCompass?.();
|
|
46
|
+
}, [onRejectCompass]);
|
|
47
|
+
useEffect(() => {
|
|
48
|
+
if (!locationGranted || !requestCompassAllowed)
|
|
49
|
+
return;
|
|
50
|
+
if (typeof navigator === 'undefined' || !isMobile)
|
|
51
|
+
return;
|
|
52
|
+
const grantedKey = localStorage.getItem(orientationStorageKey);
|
|
53
|
+
if (!grantedKey || requestCompass) {
|
|
54
|
+
setShowCompassModal(true);
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
grantedKey === 'true' && handleEnableCompass();
|
|
58
|
+
}, [locationGranted, requestCompass, requestCompassAllowed, handleEnableCompass]);
|
|
59
|
+
return (_jsx(GpsPermissionRequest, { isOpen: showCompassModal, onAllow: handleEnableCompass, onCancel: onCancel }));
|
|
60
|
+
}
|