@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,92 @@
|
|
|
1
|
+
import { type Box } from '@expofp/geometry';
|
|
2
|
+
import { type LngLatBoundsLike, type Map as MaplibreMap } from 'maplibre-gl';
|
|
3
|
+
import { type GeoConfig as MaplibreGeoConfig } from '../MaplibreWrapper';
|
|
4
|
+
import { type TransformGeoConfig } from './solver';
|
|
5
|
+
export interface GeoConfig extends MaplibreGeoConfig {
|
|
6
|
+
gpsConfig: TransformGeoConfig;
|
|
7
|
+
/** The bearing that stands the plan upright; `bearing` is the home one. */
|
|
8
|
+
uprightBearing: number;
|
|
9
|
+
/** `enableExperimentalNorthUp`: home faces north, venues their own viewbox. */
|
|
10
|
+
northUp: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface CameraPaddingOptions {
|
|
13
|
+
top: number;
|
|
14
|
+
bottom: number;
|
|
15
|
+
left: number;
|
|
16
|
+
right: number;
|
|
17
|
+
}
|
|
18
|
+
export interface FitMapOptions {
|
|
19
|
+
duration?: number;
|
|
20
|
+
/** Floor for the resulting zoom, so a fit may not end up further out than this. */
|
|
21
|
+
minZoom?: number;
|
|
22
|
+
/** The bearing to frame the rect at, instead of the home bearing. */
|
|
23
|
+
bearing?: number;
|
|
24
|
+
/**
|
|
25
|
+
* Breathing room around the rect, in CSS pixels per side. A margin meant as a share of the
|
|
26
|
+
* framing region is grown into the rect by the caller instead (the `moveToRect` reaction).
|
|
27
|
+
*/
|
|
28
|
+
padding?: number;
|
|
29
|
+
}
|
|
30
|
+
export declare const MAP_BOUNDS_PADDING_FACTOR = 3;
|
|
31
|
+
export declare const MAP_BOUNDS_MIN_PADDING_DEGREES = 0.02;
|
|
32
|
+
export declare const INITIAL_FIT_ZOOM_ADJUSTMENT = 0.15;
|
|
33
|
+
/**
|
|
34
|
+
* Breathing room {@link fitMapToLocalRect} adds around a fit, in CSS pixels on
|
|
35
|
+
* top of the visible-rect inset. Exported so the initial bounds-based fit can
|
|
36
|
+
* reproduce a later `fitMapToLocalRect` exactly rather than approximate it.
|
|
37
|
+
*/
|
|
38
|
+
export declare const DEFAULT_FIT_PADDING = 50;
|
|
39
|
+
/**
|
|
40
|
+
* The fit padding for a whole-campus frame, on top of the visible-rect inset:
|
|
41
|
+
* none for an authored campus viewbox, which is the framing and is shown as-is
|
|
42
|
+
* (the `fitRectIsFraming` rule), and {@link DEFAULT_FIT_PADDING} for the bare
|
|
43
|
+
* footprint union. The initial fit and "View all venues" both take it from
|
|
44
|
+
* here, so they land on the same camera.
|
|
45
|
+
*/
|
|
46
|
+
export declare function campusFitPadding(authored: boolean): number;
|
|
47
|
+
/** Holds a requested zoom inside the map's own configured zoom range. */
|
|
48
|
+
export declare function clampZoom(map: MaplibreMap, zoom: number): number;
|
|
49
|
+
export declare function deriveVenueMapBounds(config: TransformGeoConfig): LngLatBoundsLike | undefined;
|
|
50
|
+
export declare function getLocalRectGeoBounds(rect: Box, config: TransformGeoConfig): LngLatBoundsLike;
|
|
51
|
+
/** Viewport a camera has to frame a rect inside, in CSS pixels. */
|
|
52
|
+
export interface ViewportPx {
|
|
53
|
+
width: number;
|
|
54
|
+
height: number;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* The camera that frames a plan-local rect exactly, with the map rotated to the
|
|
58
|
+
* plan's bearing.
|
|
59
|
+
*
|
|
60
|
+
* Deliberately *not* `map.cameraForBounds`. A `LngLatBounds` is north-aligned,
|
|
61
|
+
* so a rect on a rotated plan can only reach MapLibre as its geographic AABB —
|
|
62
|
+
* and `cameraForBounds` then fits the AABB's north-west→south-east *diagonal*
|
|
63
|
+
* re-rotated into the bearing-aligned frame, a box with no relation to the rect
|
|
64
|
+
* once the bearing is not a multiple of 90°. At a -48.8° bearing a 1159x814
|
|
65
|
+
* plan rect reaches the fit as roughly 45x597, so the vertical constraint wins
|
|
66
|
+
* and the camera lands ~1.27 zoom levels (2.4x) too far out. Rotating the
|
|
67
|
+
* rect's own four corners before measuring is the whole fix.
|
|
68
|
+
*
|
|
69
|
+
* `zoom` pins the camera's zoom instead of fitting it; the rect's centre still
|
|
70
|
+
* lands on the centre of the padded area.
|
|
71
|
+
*
|
|
72
|
+
* Returns null when the rect, the projection or the viewport can't produce a
|
|
73
|
+
* camera; callers keep their current framing in that case.
|
|
74
|
+
*/
|
|
75
|
+
export declare function cameraForLocalRect(rect: Box, config: TransformGeoConfig, bearing: number, viewport: ViewportPx, padding: CameraPaddingOptions, zoom?: number): {
|
|
76
|
+
center: [number, number];
|
|
77
|
+
zoom: number;
|
|
78
|
+
} | null;
|
|
79
|
+
export declare function getVisibleRectFitPadding(extraPadding?: number, visibleRect?: Box): CameraPaddingOptions;
|
|
80
|
+
/** Whether a lng/lat projects inside the visible viewport, inset by `padding`. */
|
|
81
|
+
export declare function isLngLatInVisibleViewport(map: MaplibreMap, lngLat: [number, number], padding: CameraPaddingOptions): boolean;
|
|
82
|
+
/** Geographic configuration from fpGeo data; null when unavailable. */
|
|
83
|
+
export declare function deriveGeoConfig(): GeoConfig | null;
|
|
84
|
+
/**
|
|
85
|
+
* The bearing a fit into a venue level turns the map to. North-up turns it to
|
|
86
|
+
* the level's authored viewbox — upright, plus whatever turn the viewbox
|
|
87
|
+
* carries — so a building is read along its own axes while the campus around
|
|
88
|
+
* it faces north. Otherwise the home bearing, as for every other fit.
|
|
89
|
+
*/
|
|
90
|
+
export declare function venueLevelBearing(geoConfig: GeoConfig, layerName: string): number;
|
|
91
|
+
export declare function fitMapToLocalRect(map: MaplibreMap | null, rect: Box | null, geoConfig: GeoConfig | null, options?: FitMapOptions): void;
|
|
92
|
+
//# sourceMappingURL=geo-config.d.ts.map
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
import { getConfig } from '@expofp/config';
|
|
2
|
+
import { LngLatBounds, MercatorCoordinate, } from 'maplibre-gl';
|
|
3
|
+
import { getFpGeo } from '../../../data/fpGeo.js';
|
|
4
|
+
import { getLayerViewboxRotation } from '../../../data/layer-viewbox';
|
|
5
|
+
import { getSvgArea } from '../../../data/svg.js';
|
|
6
|
+
import { uiState } from '../../../store';
|
|
7
|
+
import { convertLocalToGps } from '../../../utils/gps';
|
|
8
|
+
import { planBearing } from '../../../utils/planBearing';
|
|
9
|
+
import { framingRect } from '../../Map/framing-rect.js';
|
|
10
|
+
export const MAP_BOUNDS_PADDING_FACTOR = 3;
|
|
11
|
+
export const MAP_BOUNDS_MIN_PADDING_DEGREES = 0.02;
|
|
12
|
+
export const INITIAL_FIT_ZOOM_ADJUSTMENT = 0.15;
|
|
13
|
+
/**
|
|
14
|
+
* Breathing room {@link fitMapToLocalRect} adds around a fit, in CSS pixels on
|
|
15
|
+
* top of the visible-rect inset. Exported so the initial bounds-based fit can
|
|
16
|
+
* reproduce a later `fitMapToLocalRect` exactly rather than approximate it.
|
|
17
|
+
*/
|
|
18
|
+
export const DEFAULT_FIT_PADDING = 50;
|
|
19
|
+
/**
|
|
20
|
+
* The fit padding for a whole-campus frame, on top of the visible-rect inset:
|
|
21
|
+
* none for an authored campus viewbox, which is the framing and is shown as-is
|
|
22
|
+
* (the `fitRectIsFraming` rule), and {@link DEFAULT_FIT_PADDING} for the bare
|
|
23
|
+
* footprint union. The initial fit and "View all venues" both take it from
|
|
24
|
+
* here, so they land on the same camera.
|
|
25
|
+
*/
|
|
26
|
+
export function campusFitPadding(authored) {
|
|
27
|
+
return authored ? 0 : DEFAULT_FIT_PADDING;
|
|
28
|
+
}
|
|
29
|
+
// MapLibre's default flyTo curve: the search ceiling, and the curve at which a
|
|
30
|
+
// flight zooms out to roughly show both endpoints.
|
|
31
|
+
const FLYTO_CURVE = 1.42;
|
|
32
|
+
// Floor for the flyTo curve; below this the arc is barely a swoop, so ease instead.
|
|
33
|
+
const MIN_SAFE_FLYTO_CURVE = 0.35;
|
|
34
|
+
// Flattens every flyTo arc a notch below the safe curve; lower = flatter.
|
|
35
|
+
const REDUCED_FLYTO_CURVE_FACTOR = 0.9;
|
|
36
|
+
const REDUCED_FLYTO_DURATION_FACTOR = 0.85;
|
|
37
|
+
const FLYTO_CURVE_SEARCH_ITERATIONS = 8;
|
|
38
|
+
// How far below the map's minZoom a swoop may dip before it's rejected. Past
|
|
39
|
+
// minZoom the camera flings out over uncached basemap and flashes blank, so such
|
|
40
|
+
// a swoop is replaced by a plain ease.
|
|
41
|
+
const SWOOP_ZOOM_EPSILON = 0.05;
|
|
42
|
+
/** Holds a requested zoom inside the map's own configured zoom range. */
|
|
43
|
+
export function clampZoom(map, zoom) {
|
|
44
|
+
return Math.min(Math.max(zoom, map.getMinZoom()), map.getMaxZoom());
|
|
45
|
+
}
|
|
46
|
+
export function deriveVenueMapBounds(config) {
|
|
47
|
+
const svgArea = getSvgArea();
|
|
48
|
+
const corners = [
|
|
49
|
+
[svgArea.min.x, svgArea.min.y],
|
|
50
|
+
[svgArea.max.x, svgArea.min.y],
|
|
51
|
+
[svgArea.max.x, svgArea.max.y],
|
|
52
|
+
[svgArea.min.x, svgArea.max.y],
|
|
53
|
+
].map(([x, y]) => convertLocalToGps(x, y, config));
|
|
54
|
+
if (!corners.every(([lng, lat]) => Number.isFinite(lng) && Number.isFinite(lat))) {
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
const lngs = corners.map(([lng]) => lng);
|
|
58
|
+
const lats = corners.map(([, lat]) => lat);
|
|
59
|
+
const minLng = Math.min(...lngs);
|
|
60
|
+
const maxLng = Math.max(...lngs);
|
|
61
|
+
const minLat = Math.min(...lats);
|
|
62
|
+
const maxLat = Math.max(...lats);
|
|
63
|
+
const lngPadding = Math.max((maxLng - minLng) * MAP_BOUNDS_PADDING_FACTOR, MAP_BOUNDS_MIN_PADDING_DEGREES);
|
|
64
|
+
const latPadding = Math.max((maxLat - minLat) * MAP_BOUNDS_PADDING_FACTOR, MAP_BOUNDS_MIN_PADDING_DEGREES);
|
|
65
|
+
return [
|
|
66
|
+
[minLng - lngPadding, minLat - latPadding],
|
|
67
|
+
[maxLng + lngPadding, maxLat + latPadding],
|
|
68
|
+
];
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Whether a `map.flyTo` keeps its mid-flight zoom-out at or above the map's
|
|
72
|
+
* minZoom. A flyTo zooms out, at its widest, to roughly the both-endpoints frame
|
|
73
|
+
* (`bothZoom`) at the default curve; lower curves flatten that dip toward a plain
|
|
74
|
+
* pan. Only the deepest point of the dip matters here, since dipping below minZoom
|
|
75
|
+
* is what flashes blank.
|
|
76
|
+
*/
|
|
77
|
+
function estimateFlyToSafe(map, endZoom, bothZoom, curve) {
|
|
78
|
+
const endpointZoom = Math.min(map.getZoom(), endZoom);
|
|
79
|
+
// bothZoom is the wider (lower) frame, so this dip is negative; scale by curve.
|
|
80
|
+
const peakDepth = (bothZoom - endpointZoom) * Math.min(1, curve / FLYTO_CURVE);
|
|
81
|
+
const deepestZoom = endpointZoom + peakDepth;
|
|
82
|
+
return deepestZoom >= map.getMinZoom() - SWOOP_ZOOM_EPSILON;
|
|
83
|
+
}
|
|
84
|
+
function findSafeFlyToCurve(map, endZoom, bothZoom) {
|
|
85
|
+
if (estimateFlyToSafe(map, endZoom, bothZoom, FLYTO_CURVE))
|
|
86
|
+
return FLYTO_CURVE;
|
|
87
|
+
if (!estimateFlyToSafe(map, endZoom, bothZoom, MIN_SAFE_FLYTO_CURVE))
|
|
88
|
+
return null;
|
|
89
|
+
let low = MIN_SAFE_FLYTO_CURVE;
|
|
90
|
+
let high = FLYTO_CURVE;
|
|
91
|
+
for (let i = 0; i < FLYTO_CURVE_SEARCH_ITERATIONS; i++) {
|
|
92
|
+
const mid = (low + high) / 2;
|
|
93
|
+
if (estimateFlyToSafe(map, endZoom, bothZoom, mid)) {
|
|
94
|
+
low = mid;
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
high = mid;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return low;
|
|
101
|
+
}
|
|
102
|
+
export function getLocalRectGeoBounds(rect, config) {
|
|
103
|
+
const corners = [
|
|
104
|
+
convertLocalToGps(rect.min.x, rect.min.y, config),
|
|
105
|
+
convertLocalToGps(rect.max.x, rect.min.y, config),
|
|
106
|
+
convertLocalToGps(rect.max.x, rect.max.y, config),
|
|
107
|
+
convertLocalToGps(rect.min.x, rect.max.y, config),
|
|
108
|
+
];
|
|
109
|
+
const lngs = corners.map(([lng]) => lng);
|
|
110
|
+
const lats = corners.map(([, lat]) => lat);
|
|
111
|
+
return [
|
|
112
|
+
[Math.min(...lngs), Math.min(...lats)],
|
|
113
|
+
[Math.max(...lngs), Math.max(...lats)],
|
|
114
|
+
];
|
|
115
|
+
}
|
|
116
|
+
/** MapLibre's tile size — the world is `TILE_SIZE * 2 ** zoom` pixels across. */
|
|
117
|
+
const TILE_SIZE = 512;
|
|
118
|
+
/**
|
|
119
|
+
* The camera that frames a plan-local rect exactly, with the map rotated to the
|
|
120
|
+
* plan's bearing.
|
|
121
|
+
*
|
|
122
|
+
* Deliberately *not* `map.cameraForBounds`. A `LngLatBounds` is north-aligned,
|
|
123
|
+
* so a rect on a rotated plan can only reach MapLibre as its geographic AABB —
|
|
124
|
+
* and `cameraForBounds` then fits the AABB's north-west→south-east *diagonal*
|
|
125
|
+
* re-rotated into the bearing-aligned frame, a box with no relation to the rect
|
|
126
|
+
* once the bearing is not a multiple of 90°. At a -48.8° bearing a 1159x814
|
|
127
|
+
* plan rect reaches the fit as roughly 45x597, so the vertical constraint wins
|
|
128
|
+
* and the camera lands ~1.27 zoom levels (2.4x) too far out. Rotating the
|
|
129
|
+
* rect's own four corners before measuring is the whole fix.
|
|
130
|
+
*
|
|
131
|
+
* `zoom` pins the camera's zoom instead of fitting it; the rect's centre still
|
|
132
|
+
* lands on the centre of the padded area.
|
|
133
|
+
*
|
|
134
|
+
* Returns null when the rect, the projection or the viewport can't produce a
|
|
135
|
+
* camera; callers keep their current framing in that case.
|
|
136
|
+
*/
|
|
137
|
+
export function cameraForLocalRect(rect, config, bearing, viewport, padding, zoom) {
|
|
138
|
+
const corners = [
|
|
139
|
+
convertLocalToGps(rect.min.x, rect.min.y, config),
|
|
140
|
+
convertLocalToGps(rect.max.x, rect.min.y, config),
|
|
141
|
+
convertLocalToGps(rect.max.x, rect.max.y, config),
|
|
142
|
+
convertLocalToGps(rect.min.x, rect.max.y, config),
|
|
143
|
+
].map(([lng, lat]) => MercatorCoordinate.fromLngLat({ lng, lat }));
|
|
144
|
+
if (!corners.every(({ x, y }) => Number.isFinite(x) && Number.isFinite(y)))
|
|
145
|
+
return null;
|
|
146
|
+
// Into the bearing-aligned frame — the frame the camera actually shows, where
|
|
147
|
+
// the plan rect is axis-aligned and its extent is what has to fit.
|
|
148
|
+
const angle = (-bearing * Math.PI) / 180;
|
|
149
|
+
const cos = Math.cos(angle);
|
|
150
|
+
const sin = Math.sin(angle);
|
|
151
|
+
const xs = corners.map(({ x, y }) => x * cos - y * sin);
|
|
152
|
+
const ys = corners.map(({ x, y }) => x * sin + y * cos);
|
|
153
|
+
const width = Math.max(...xs) - Math.min(...xs);
|
|
154
|
+
const height = Math.max(...ys) - Math.min(...ys);
|
|
155
|
+
if (width <= 0 || height <= 0)
|
|
156
|
+
return null;
|
|
157
|
+
const availableWidth = viewport.width - padding.left - padding.right;
|
|
158
|
+
const availableHeight = viewport.height - padding.top - padding.bottom;
|
|
159
|
+
if (availableWidth <= 0 || availableHeight <= 0)
|
|
160
|
+
return null;
|
|
161
|
+
const scale = zoom === undefined
|
|
162
|
+
? Math.min(availableWidth / (width * TILE_SIZE), availableHeight / (height * TILE_SIZE))
|
|
163
|
+
: 2 ** zoom;
|
|
164
|
+
if (!(scale > 0))
|
|
165
|
+
return null;
|
|
166
|
+
// Asymmetric padding moves the usable area off the canvas centre, so the
|
|
167
|
+
// camera centre steps the other way by half the imbalance.
|
|
168
|
+
const worldPx = TILE_SIZE * scale;
|
|
169
|
+
const centreX = (Math.min(...xs) + Math.max(...xs)) / 2 - (padding.left - padding.right) / 2 / worldPx;
|
|
170
|
+
const centreY = (Math.min(...ys) + Math.max(...ys)) / 2 - (padding.top - padding.bottom) / 2 / worldPx;
|
|
171
|
+
const { lng, lat } = new MercatorCoordinate(centreX * cos + centreY * sin, -centreX * sin + centreY * cos).toLngLat();
|
|
172
|
+
return { center: [lng, lat], zoom: Math.log2(scale) };
|
|
173
|
+
}
|
|
174
|
+
export function getVisibleRectFitPadding(extraPadding = 0, visibleRect = uiState.canvasVisibleRectPx) {
|
|
175
|
+
const screenSize = uiState.screenSize;
|
|
176
|
+
if (!visibleRect) {
|
|
177
|
+
return { top: extraPadding, bottom: extraPadding, left: extraPadding, right: extraPadding };
|
|
178
|
+
}
|
|
179
|
+
return {
|
|
180
|
+
top: Math.max(0, visibleRect.min.y) + extraPadding,
|
|
181
|
+
bottom: Math.max(0, screenSize.height - visibleRect.max.y) + extraPadding,
|
|
182
|
+
left: Math.max(0, visibleRect.min.x) + extraPadding,
|
|
183
|
+
right: Math.max(0, screenSize.width - visibleRect.max.x) + extraPadding,
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
/** Whether a lng/lat projects inside the visible viewport, inset by `padding`. */
|
|
187
|
+
export function isLngLatInVisibleViewport(map, lngLat, padding) {
|
|
188
|
+
const point = map.project(lngLat);
|
|
189
|
+
const canvas = map.getCanvas();
|
|
190
|
+
return (point.x >= padding.left &&
|
|
191
|
+
point.x <= canvas.clientWidth - padding.right &&
|
|
192
|
+
point.y >= padding.top &&
|
|
193
|
+
point.y <= canvas.clientHeight - padding.bottom);
|
|
194
|
+
}
|
|
195
|
+
/** Geographic configuration from fpGeo data; null when unavailable. */
|
|
196
|
+
export function deriveGeoConfig() {
|
|
197
|
+
const config = getFpGeo()?.properties?.config;
|
|
198
|
+
if (!config)
|
|
199
|
+
return null;
|
|
200
|
+
// Center = midpoint of p0 and p2.
|
|
201
|
+
const centerLng = (config.p0.lng + config.p2.lng) / 2;
|
|
202
|
+
const centerLat = (config.p0.lat + config.p2.lat) / 2;
|
|
203
|
+
// The home bearing every fit returns to. North-up faces north; otherwise the
|
|
204
|
+
// bearing that keeps the plan upright, derived from the same p0->p2 diagonal
|
|
205
|
+
// as the render transform so the two can't drift. Stored bearing is a fallback.
|
|
206
|
+
const derivedBearing = planBearing(config.p0, config.p2);
|
|
207
|
+
const uprightBearing = Number.isFinite(derivedBearing) ? derivedBearing : (config.bearing ?? 0);
|
|
208
|
+
const northUp = getConfig().enableExperimentalNorthUp === true;
|
|
209
|
+
return {
|
|
210
|
+
center: [centerLng, centerLat],
|
|
211
|
+
bearing: northUp ? 0 : uprightBearing,
|
|
212
|
+
zoom: 16,
|
|
213
|
+
gpsConfig: config,
|
|
214
|
+
uprightBearing,
|
|
215
|
+
northUp,
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* The bearing a fit into a venue level turns the map to. North-up turns it to
|
|
220
|
+
* the level's authored viewbox — upright, plus whatever turn the viewbox
|
|
221
|
+
* carries — so a building is read along its own axes while the campus around
|
|
222
|
+
* it faces north. Otherwise the home bearing, as for every other fit.
|
|
223
|
+
*/
|
|
224
|
+
export function venueLevelBearing(geoConfig, layerName) {
|
|
225
|
+
if (!geoConfig.northUp)
|
|
226
|
+
return geoConfig.bearing;
|
|
227
|
+
return (geoConfig.uprightBearing + getLayerViewboxRotation(layerName) + 360) % 360;
|
|
228
|
+
}
|
|
229
|
+
export function fitMapToLocalRect(map, rect, geoConfig, options = {}) {
|
|
230
|
+
if (!map ||
|
|
231
|
+
!rect ||
|
|
232
|
+
!geoConfig ||
|
|
233
|
+
rect.size.height === Infinity ||
|
|
234
|
+
rect.size.width === Infinity ||
|
|
235
|
+
rect.size.height <= 0 ||
|
|
236
|
+
rect.size.width <= 0)
|
|
237
|
+
return;
|
|
238
|
+
const bearing = options.bearing ?? geoConfig.bearing;
|
|
239
|
+
const bounds = getLocalRectGeoBounds(rect, geoConfig.gpsConfig);
|
|
240
|
+
const canvas = map.getCanvas();
|
|
241
|
+
// A command frames clear of an overlay sat over the map, exactly as the plan's own camera does.
|
|
242
|
+
const padding = getVisibleRectFitPadding(options.padding ?? DEFAULT_FIT_PADDING, framingRect());
|
|
243
|
+
const camera = cameraForLocalRect(rect, geoConfig.gpsConfig, bearing, { width: canvas.clientWidth, height: canvas.clientHeight }, padding);
|
|
244
|
+
if (!camera) {
|
|
245
|
+
// No camera to compute against, but a caller that named a zoom floor still
|
|
246
|
+
// has a usable answer: centre the rect and honor the floor.
|
|
247
|
+
if (options.minZoom !== undefined) {
|
|
248
|
+
map.easeTo({
|
|
249
|
+
center: LngLatBounds.convert(bounds).getCenter(),
|
|
250
|
+
zoom: clampZoom(map, options.minZoom),
|
|
251
|
+
bearing,
|
|
252
|
+
duration: options.duration ?? 500,
|
|
253
|
+
essential: true,
|
|
254
|
+
});
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
map.fitBounds(bounds, { padding, bearing, essential: true });
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
// Scale duration with travel distance (screens + zoom) so far fits fly gradually.
|
|
261
|
+
// Clamp here, not via maplibre's `maxDuration`, which snaps an over-long flight to 0.
|
|
262
|
+
const fromPx = map.project(map.getCenter());
|
|
263
|
+
const toPx = map.project(camera.center);
|
|
264
|
+
const screenSpan = Math.max(map.getCanvas().clientWidth, map.getCanvas().clientHeight, 1);
|
|
265
|
+
const screensAway = Math.hypot(toPx.x - fromPx.x, toPx.y - fromPx.y) / screenSpan;
|
|
266
|
+
const targetZoom = clampZoom(map, Math.max(camera.zoom, options.minZoom ?? -Infinity));
|
|
267
|
+
const zoomDelta = Math.abs(map.getZoom() - targetZoom);
|
|
268
|
+
const duration = options.duration ?? Math.min(2800, 500 + screensAway * 450 + zoomDelta * 150);
|
|
269
|
+
// The fit's centre offsets the padding imbalance at the fit's own scale; at
|
|
270
|
+
// any other zoom that offset would land the rect off the padded area's centre.
|
|
271
|
+
const center = targetZoom === camera.zoom
|
|
272
|
+
? camera.center
|
|
273
|
+
: (cameraForLocalRect(rect, geoConfig.gpsConfig, bearing, { width: canvas.clientWidth, height: canvas.clientHeight }, padding, targetZoom)?.center ?? camera.center);
|
|
274
|
+
const cameraOptions = {
|
|
275
|
+
center,
|
|
276
|
+
zoom: targetZoom,
|
|
277
|
+
bearing,
|
|
278
|
+
duration,
|
|
279
|
+
essential: true,
|
|
280
|
+
};
|
|
281
|
+
// Near moves: a plain ease, no zoom-out swoop needed.
|
|
282
|
+
if (screensAway <= 1.2 && zoomDelta <= 1.5) {
|
|
283
|
+
map.easeTo(cameraOptions);
|
|
284
|
+
return;
|
|
285
|
+
}
|
|
286
|
+
const fitBothBounds = map.getBounds().extend(LngLatBounds.convert(bounds));
|
|
287
|
+
const both = map.cameraForBounds(fitBothBounds, { padding, bearing });
|
|
288
|
+
// Already wide enough to show start and end together: a single ease is smoother.
|
|
289
|
+
if (!both?.center || typeof both.zoom !== 'number' || both.zoom >= map.getZoom() - 0.2) {
|
|
290
|
+
map.easeTo(cameraOptions);
|
|
291
|
+
return;
|
|
292
|
+
}
|
|
293
|
+
// Fly with the highest curve whose swoop stays above minZoom, flattened a notch
|
|
294
|
+
// to tame the arc.
|
|
295
|
+
const safeCurve = findSafeFlyToCurve(map, targetZoom, both.zoom);
|
|
296
|
+
if (safeCurve !== null) {
|
|
297
|
+
const curve = Math.max(MIN_SAFE_FLYTO_CURVE, safeCurve * REDUCED_FLYTO_CURVE_FACTOR);
|
|
298
|
+
const reducedDuration = Math.round(duration * REDUCED_FLYTO_DURATION_FACTOR);
|
|
299
|
+
map.flyTo({ ...cameraOptions, curve, duration: reducedDuration });
|
|
300
|
+
return;
|
|
301
|
+
}
|
|
302
|
+
// Any swoop would dip below minZoom (e.g. fitting from far out) — pan with a
|
|
303
|
+
// plain ease instead, so the camera never flings out over blank basemap.
|
|
304
|
+
map.easeTo(cameraOptions);
|
|
305
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Point hit test: `true` when the point is claimed by the owning layer. Each
|
|
3
|
+
* registry documents its own coordinate space (model or screen).
|
|
4
|
+
*/
|
|
5
|
+
export type PointHitTest = (x: number, y: number) => boolean;
|
|
6
|
+
export interface HitTestRegistry {
|
|
7
|
+
/** Installed by the Maplibre hook that owns the layer; `null` while inactive. */
|
|
8
|
+
set(fn: PointHitTest | null): void;
|
|
9
|
+
test(x: number, y: number): boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* A slot the plan's click seam (`clickedPlan` in Map/pointer.ts) reads and a
|
|
13
|
+
* Maplibre hook writes. Deliberately a leaf module (no imports) so consulting a
|
|
14
|
+
* native MapLibre layer's hit test does not couple the click seam to the hook
|
|
15
|
+
* that owns that layer. Untested points fall through as "not claimed".
|
|
16
|
+
*/
|
|
17
|
+
export declare function createHitTestRegistry(): HitTestRegistry;
|
|
18
|
+
//# sourceMappingURL=hit-test-registry.d.ts.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A slot the plan's click seam (`clickedPlan` in Map/pointer.ts) reads and a
|
|
3
|
+
* Maplibre hook writes. Deliberately a leaf module (no imports) so consulting a
|
|
4
|
+
* native MapLibre layer's hit test does not couple the click seam to the hook
|
|
5
|
+
* that owns that layer. Untested points fall through as "not claimed".
|
|
6
|
+
*/
|
|
7
|
+
export function createHitTestRegistry() {
|
|
8
|
+
let hitTest = null;
|
|
9
|
+
return {
|
|
10
|
+
set(fn) {
|
|
11
|
+
hitTest = fn;
|
|
12
|
+
},
|
|
13
|
+
test(x, y) {
|
|
14
|
+
return hitTest ? hitTest(x, y) : false;
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type LayerDef } from '@expofp/renderer';
|
|
2
|
+
/**
|
|
3
|
+
* Indexes a layer tree by name, one list per name — floors repeat across scenes.
|
|
4
|
+
* @param layer - The root to walk.
|
|
5
|
+
* @param acc - The accumulator, threaded through recursion.
|
|
6
|
+
* @returns Layer defs by name.
|
|
7
|
+
*/
|
|
8
|
+
export declare function collectLayerDefsByName(layer: LayerDef, acc?: Map<string, LayerDef<import("@expofp/renderer").RenderableDef>[]>): Map<string, LayerDef<import("@expofp/renderer").RenderableDef>[]>;
|
|
9
|
+
//# sourceMappingURL=layer-defs.d.ts.map
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { isLayerDef } from '@expofp/renderer';
|
|
2
|
+
/**
|
|
3
|
+
* Indexes a layer tree by name, one list per name — floors repeat across scenes.
|
|
4
|
+
* @param layer - The root to walk.
|
|
5
|
+
* @param acc - The accumulator, threaded through recursion.
|
|
6
|
+
* @returns Layer defs by name.
|
|
7
|
+
*/
|
|
8
|
+
export function collectLayerDefsByName(layer, acc = new Map()) {
|
|
9
|
+
if (layer.name) {
|
|
10
|
+
const defs = acc.get(layer.name) ?? [];
|
|
11
|
+
defs.push(layer);
|
|
12
|
+
acc.set(layer.name, defs);
|
|
13
|
+
}
|
|
14
|
+
for (const child of layer.children ?? []) {
|
|
15
|
+
if (isLayerDef(child))
|
|
16
|
+
collectLayerDefsByName(child, acc);
|
|
17
|
+
}
|
|
18
|
+
return acc;
|
|
19
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Box } from '@expofp/geometry';
|
|
2
|
+
import type { Map as MaplibreMap } from 'maplibre-gl';
|
|
3
|
+
import { type GpsConfig } from '../../../utils/gps';
|
|
4
|
+
/**
|
|
5
|
+
* The current viewport as a local-space AABB: the four canvas corners
|
|
6
|
+
* unprojected to lng/lat, then through the plan's GPS anchor transform. With
|
|
7
|
+
* a rotated camera the true viewport is a rotated quad in local space; its
|
|
8
|
+
* AABB is a standard approximation that inflates all venues' overlap alike.
|
|
9
|
+
* Camera corners are trusted map output, so they intentionally bypass the
|
|
10
|
+
* distance guard used for external user-location data.
|
|
11
|
+
*/
|
|
12
|
+
export declare function getLocalViewport(map: MaplibreMap, gpsConfig: GpsConfig): Box | null;
|
|
13
|
+
//# sourceMappingURL=local-viewport.d.ts.map
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Box } from '@expofp/geometry';
|
|
2
|
+
import { projectMapPointToLocal } from '../../../utils/gps';
|
|
3
|
+
/**
|
|
4
|
+
* The current viewport as a local-space AABB: the four canvas corners
|
|
5
|
+
* unprojected to lng/lat, then through the plan's GPS anchor transform. With
|
|
6
|
+
* a rotated camera the true viewport is a rotated quad in local space; its
|
|
7
|
+
* AABB is a standard approximation that inflates all venues' overlap alike.
|
|
8
|
+
* Camera corners are trusted map output, so they intentionally bypass the
|
|
9
|
+
* distance guard used for external user-location data.
|
|
10
|
+
*/
|
|
11
|
+
export function getLocalViewport(map, gpsConfig) {
|
|
12
|
+
const canvas = map.getCanvas();
|
|
13
|
+
const width = canvas.clientWidth;
|
|
14
|
+
const height = canvas.clientHeight;
|
|
15
|
+
const corners = [];
|
|
16
|
+
for (const [x, y] of [
|
|
17
|
+
[0, 0],
|
|
18
|
+
[width, 0],
|
|
19
|
+
[width, height],
|
|
20
|
+
[0, height],
|
|
21
|
+
]) {
|
|
22
|
+
const point = projectMapPointToLocal(map.unproject([x, y]), gpsConfig);
|
|
23
|
+
if (!point)
|
|
24
|
+
break;
|
|
25
|
+
corners.push(point);
|
|
26
|
+
}
|
|
27
|
+
if (corners.length === 4)
|
|
28
|
+
return Box.fromPoints(corners);
|
|
29
|
+
const center = projectMapPointToLocal(map.getCenter(), gpsConfig);
|
|
30
|
+
return center ? new Box(center.x, center.y) : null;
|
|
31
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type Map as MaplibreMap } from 'maplibre-gl';
|
|
2
|
+
import { type MapOptions, type TileSourceConfig } from '../MaplibreWrapper.js';
|
|
3
|
+
export declare const LIGHT_TILE_SOURCE: TileSourceConfig;
|
|
4
|
+
export declare const DARK_TILE_SOURCE: TileSourceConfig;
|
|
5
|
+
export declare const MAP_MIN_ZOOM = 12;
|
|
6
|
+
export declare function applyMapDimValue(map: MaplibreMap | null, value: number): void;
|
|
7
|
+
/**
|
|
8
|
+
* Applies a camera policy to a live map.
|
|
9
|
+
*
|
|
10
|
+
* Only the pitch moves the camera. The zoom and pan limits are ceilings, not positions, so they are
|
|
11
|
+
* set outright; they touch the camera only when it already sits outside a new limit, and MapLibre
|
|
12
|
+
* then clamps it rather than easing it.
|
|
13
|
+
*
|
|
14
|
+
* A pitch change eases when `uiState.animatePitch` is set, over `uiState.mapSettings.pitchtime`,
|
|
15
|
+
* which is the same setting the floor plan view eases by.
|
|
16
|
+
* @param map - The map, or null before it exists.
|
|
17
|
+
* @param mapOptions - The policy; an omitted field restores MapLibre's own default.
|
|
18
|
+
*/
|
|
19
|
+
export declare function applyMapOptions(map: MaplibreMap | null, mapOptions: Partial<MapOptions>): void;
|
|
20
|
+
export declare function getTileSource(): TileSourceConfig;
|
|
21
|
+
//# sourceMappingURL=map-helpers.d.ts.map
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { getFpGeo } from '../../../data/fpGeo.js';
|
|
2
|
+
import store, { uiState } from '../../../store/index.js';
|
|
3
|
+
import settings from '../../../tools/settings.js';
|
|
4
|
+
import { MAP_DIM_LAYER_ID } from '../MaplibreWrapper.js';
|
|
5
|
+
import { DARK_MATTER_PAINT, POSITRON_PAINT, recolorStyle } from './basemap-palette.js';
|
|
6
|
+
import { resolveMapTheme } from './map-theme.js';
|
|
7
|
+
// OpenFreeMap: free, keyless, no usage limits. Its Positron/Dark pair shares one
|
|
8
|
+
// tile schema, layer ids and glyph stack, so everything the SDK layers on top
|
|
9
|
+
// (English label rewriting, palette overrides) works on both. The palettes are
|
|
10
|
+
// keyed by these styles' layer ids: swapping in another style (the vendored
|
|
11
|
+
// `styles/mapbox-streets*.ts`, say) means dropping or rewriting `restyle` too.
|
|
12
|
+
export const LIGHT_TILE_SOURCE = {
|
|
13
|
+
style: 'https://tiles.openfreemap.org/styles/positron',
|
|
14
|
+
restyle: (style) => recolorStyle(style, POSITRON_PAINT),
|
|
15
|
+
};
|
|
16
|
+
export const DARK_TILE_SOURCE = {
|
|
17
|
+
style: 'https://tiles.openfreemap.org/styles/dark',
|
|
18
|
+
restyle: (style) => recolorStyle(style, DARK_MATTER_PAINT),
|
|
19
|
+
};
|
|
20
|
+
// Camera pan is unrestricted (no maxBounds). Zoom-out is still gated by minZoom; raised from the
|
|
21
|
+
// former 14 to keep the venue from shrinking too far when zooming out.
|
|
22
|
+
export const MAP_MIN_ZOOM = 12;
|
|
23
|
+
export function applyMapDimValue(map, value) {
|
|
24
|
+
if (!map?.getLayer(MAP_DIM_LAYER_ID))
|
|
25
|
+
return;
|
|
26
|
+
map.setPaintProperty(MAP_DIM_LAYER_ID, 'fill-opacity', clampOpacity(value));
|
|
27
|
+
map.triggerRepaint();
|
|
28
|
+
}
|
|
29
|
+
function clampOpacity(value) {
|
|
30
|
+
return Math.min(Math.max(value, 0), 1);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Applies a camera policy to a live map.
|
|
34
|
+
*
|
|
35
|
+
* Only the pitch moves the camera. The zoom and pan limits are ceilings, not positions, so they are
|
|
36
|
+
* set outright; they touch the camera only when it already sits outside a new limit, and MapLibre
|
|
37
|
+
* then clamps it rather than easing it.
|
|
38
|
+
*
|
|
39
|
+
* A pitch change eases when `uiState.animatePitch` is set, over `uiState.mapSettings.pitchtime`,
|
|
40
|
+
* which is the same setting the floor plan view eases by.
|
|
41
|
+
* @param map - The map, or null before it exists.
|
|
42
|
+
* @param mapOptions - The policy; an omitted field restores MapLibre's own default.
|
|
43
|
+
*/
|
|
44
|
+
export function applyMapOptions(map, mapOptions) {
|
|
45
|
+
if (!map)
|
|
46
|
+
return;
|
|
47
|
+
map.setMinZoom(mapOptions.minZoom ?? null);
|
|
48
|
+
map.setMaxZoom(mapOptions.maxZoom ?? null);
|
|
49
|
+
map.setMaxBounds(mapOptions.maxBounds ?? null);
|
|
50
|
+
const { pitch, maxPitch } = mapOptions;
|
|
51
|
+
const animatePitch = uiState.animatePitch;
|
|
52
|
+
const currentPitch = map.getPitch();
|
|
53
|
+
// Closing the ceiling below where the camera already sits would snap it there. Let the move
|
|
54
|
+
// land first, then close the ceiling behind it.
|
|
55
|
+
const shouldDeferMaxPitch = Boolean(animatePitch && pitch != null && maxPitch != null && maxPitch < currentPitch);
|
|
56
|
+
// `null` tells MapLibre to go back to its own default, which is what an omitted field means.
|
|
57
|
+
if (!shouldDeferMaxPitch)
|
|
58
|
+
map.setMaxPitch(maxPitch ?? null);
|
|
59
|
+
if (pitch == null || currentPitch === pitch)
|
|
60
|
+
return;
|
|
61
|
+
if (animatePitch) {
|
|
62
|
+
map.easeTo({ pitch, duration: uiState.mapSettings.pitchtime });
|
|
63
|
+
if (shouldDeferMaxPitch) {
|
|
64
|
+
map.once('moveend', () => map.setMaxPitch(maxPitch));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
map.jumpTo({ pitch });
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
export function getTileSource() {
|
|
72
|
+
const maplibreOptions = store.fp?.maplibre ?? window.__efpMaplibre;
|
|
73
|
+
// A host-supplied style is a complete style document — it already carries its
|
|
74
|
+
// own palette, so the theme has nothing to pick between and stays out of it.
|
|
75
|
+
if (maplibreOptions?.style) {
|
|
76
|
+
return { style: maplibreOptions.style, offline: maplibreOptions.offline };
|
|
77
|
+
}
|
|
78
|
+
if (maplibreOptions?.styleUrl) {
|
|
79
|
+
return { style: maplibreOptions.styleUrl, offline: maplibreOptions.offline };
|
|
80
|
+
}
|
|
81
|
+
// The drawing decides the palette: what the Designer wrote into its geo
|
|
82
|
+
// config, else what its background color implies.
|
|
83
|
+
const theme = resolveMapTheme(getFpGeo()?.properties?.config?.style, settings.backgroundColor);
|
|
84
|
+
return theme === 'dark' ? DARK_TILE_SOURCE : LIGHT_TILE_SOURCE;
|
|
85
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type MapTheme } from '@expofp/schema';
|
|
2
|
+
/**
|
|
3
|
+
* The palette implied by the drawing's background color — the fallback for
|
|
4
|
+
* drawings that predate `__fpGeo.properties.config.style`.
|
|
5
|
+
*
|
|
6
|
+
* `'none'` is a real authored value (the plan asks for no background at all)
|
|
7
|
+
* and is not a parseable color, so it and anything else unparseable resolve to
|
|
8
|
+
* the light palette the SDK has always used.
|
|
9
|
+
*
|
|
10
|
+
* Inferring a palette from a background color is a guess — the two are separate
|
|
11
|
+
* decisions, and a plan may legitimately want a dark surround without a dark
|
|
12
|
+
* basemap. The Designer's explicit geo config avoids that ambiguity.
|
|
13
|
+
*/
|
|
14
|
+
export declare function deriveMapThemeFromBackground(backgroundColor: string | undefined): MapTheme;
|
|
15
|
+
/**
|
|
16
|
+
* Resolve the basemap palette: the one the drawing declares in its geo config,
|
|
17
|
+
* else the one its background color implies.
|
|
18
|
+
*/
|
|
19
|
+
export declare function resolveMapTheme(drawingTheme: MapTheme | undefined, backgroundColor: string | undefined): MapTheme;
|
|
20
|
+
//# sourceMappingURL=map-theme.d.ts.map
|