@expofp/floorplan 3.11.11 → 3.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/{Button-DmRjgZlq.js → Button-C5CmZ0so.js} +6 -6
- package/dist/browser/CookieConsent-kl_B6sH5.js +38 -0
- package/dist/browser/{Debug-aXNyyjt9.js → Debug-DymHiO2Z.js} +14 -14
- package/dist/browser/{Demo-Br_48fiP.js → Demo-5tRIgVJF.js} +14 -14
- package/dist/browser/{Free-CPqp0AlV.js → Free-hYQaAEbK.js} +16 -16
- package/dist/browser/{Gallery-DybTjssU.js → Gallery-D10tiZuW.js} +24 -24
- package/dist/browser/{GpsLoader-4QcLlh63.js → GpsLoader-CNkUVJdS.js} +51 -50
- package/dist/browser/{KioskStore-CwHiYm_-.js → KioskStore-2WAOxGM0.js} +31 -31
- package/dist/browser/{MaplibreAdapter-Cts8OaYm.js → MaplibreAdapter-B_tNIXx4.js} +2360 -2331
- package/dist/browser/{ModalContainer-BG7y_r6K.js → ModalContainer-CckyeoUG.js} +13 -13
- package/dist/browser/{PermissionNotice-DwlyTCP5.js → PermissionNotice-qetBrmIY.js} +7 -7
- package/dist/browser/{SetKioskMode-CvWZVqNw.js → SetKioskMode-BOjaqczc.js} +9 -9
- package/dist/browser/ShowKiosk-CcQHeM8K.js +33 -0
- package/dist/browser/{TouchHand-RuKsL9Wb.js → TouchHand-DKpxmOwz.js} +5 -5
- package/dist/browser/{ViewerMenuPanel-Dhd7sWsi.js → ViewerMenuPanel-HULfvF54.js} +25 -25
- package/dist/browser/{add-debug-secret-listener-BRMVj2bX.js → add-debug-secret-listener-BTGIVZFY.js} +1 -1
- package/dist/browser/{boolean-editor-DpmP-U1q.js → boolean-editor-oT7I3D0U.js} +10 -10
- package/dist/browser/{bootIntercom-C1k788Mx.js → bootIntercom-YnsJPGCs.js} +3 -3
- package/dist/browser/{booth-by-xy-CP-xbS2r.js → booth-by-xy-DTknn14w.js} +292 -295
- package/dist/browser/bundle.json +78 -63
- package/dist/browser/{classnames-BkI7JKtT.js → classnames-VfuHc9uB.js} +2 -2
- package/dist/browser/{client-C3mnANrs.js → client-Bevofhdz.js} +5 -5
- package/dist/browser/{components-Cg-q6o6G.js → components-COUCtdev.js} +1369 -1316
- package/dist/browser/{debug-overlay-BtQ-2fHJ.js → debug-overlay-BLN24Eyb.js} +415 -415
- package/dist/browser/{debug-ui-CjzERnaO.js → debug-ui-BT7Ddvoj.js} +7 -7
- package/dist/browser/{dist-Bn99_f_N.js → dist-CWBtHMZR.js} +6 -6
- package/dist/browser/{dist-Bn-20xtu.js → dist-CtKSG8GG.js} +4 -4
- package/dist/browser/{dist-DO20gNXa.js → dist-saTnlhyc.js} +7 -7
- package/dist/browser/{browser-BO13Zt0K.js → efp-debug-init-CYoM0s-a.js} +61 -14
- package/dist/browser/enum-editor-vF4eKelT.js +34 -0
- package/dist/browser/{es5-Dvav8ihy.js → es5-COzmRHZr.js} +2 -2
- package/dist/browser/{event-not-found-CC0X5cEh.js → event-not-found-BZkFh-P9.js} +1 -1
- package/dist/browser/{exports-D1Nac_lG.js → exports-BsqJX0o4.js} +1 -1
- package/dist/browser/{favicon-Bid1H1Jx.js → favicon-BBgsGFil.js} +1 -1
- package/dist/browser/{fetch-retry.umd-ETXiLKL-.js → fetch-retry.umd-BFTNSvNa.js} +2 -2
- package/dist/browser/{flex-B6lY7ZeN.js → flex-DnOM12q-.js} +6 -6
- package/dist/browser/{floorplan.loader-g70WUpYB.js → floorplan.loader-DuVsbJsr.js} +893 -901
- package/dist/browser/floorplan.ready-B2SvQNh9.js +1326 -0
- package/dist/browser/{fuse-BlXhXkUq.js → fuse-Ddn6vCOL.js} +2 -2
- package/dist/browser/i18n-D9dsV3GV.js +8659 -0
- package/dist/browser/index.js +49 -117
- package/dist/browser/{index.module-X_SYTiEf.js → index.module-CFTe1PiT.js} +23 -23
- package/dist/browser/integrateKiosk-vlZ9-8EP.js +28 -0
- package/dist/browser/{is-webview-zoAn2Bb4.js → is-webview-SfodrdWn.js} +1 -1
- package/dist/browser/{jsx-runtime-uErsjC2N.js → jsx-runtime-DEIf9CUU.js} +2 -2
- package/dist/browser/{lib-HG4Gm1_q.js → lib-CCkkeprZ.js} +5 -5
- package/dist/browser/loadImage-C356B0zk.js +58 -0
- package/dist/browser/locales/ru.json +1 -1
- package/dist/browser/{logDeviceInfo-DHyhFPeb.js → logDeviceInfo-UnfHYhqR.js} +9 -9
- package/dist/browser/{main-CTeBxXij.js → main-JnTe8DvY.js} +1 -1
- package/dist/browser/mobx-DPek3UBx.js +24 -0
- package/dist/browser/optional-boolean-editor-HEZXOpAy.js +20 -0
- package/dist/browser/optional-enum-editor-DpN8qtqv.js +34 -0
- package/dist/browser/optional-string-editor-iR5VHFAR.js +30 -0
- package/dist/browser/{particles.min-aU8uhhyJ.js → particles.min-BWlVGdrr.js} +2 -2
- package/dist/browser/{prop-types-90IFj1US.js → prop-types-DA-Iew4C.js} +2 -2
- package/dist/browser/{react-Cr4w3-kF.js → react-C02q0n7M.js} +2 -2
- package/dist/browser/{react-dom-BqelOkAi.js → react-dom-BV1hX9nO.js} +4 -4
- package/dist/browser/reset-all-settings-BQgeIRam.js +190 -0
- package/dist/browser/{rolldown-runtime-CMis-gOy.js → rolldown-runtime-DYSU24gn.js} +1 -1
- package/dist/browser/{enum-editor-CDtermvp.js → select-D0S5iMvJ.js} +261 -283
- package/dist/browser/{settings-BGmwy5RM.js → settings-Dw78gtQ_.js} +3 -3
- package/dist/browser/{settings-item-CDNsKf0A.js → settings-item-BSR8Iz1R.js} +7 -7
- package/dist/browser/{store-CcwBnHB2.js → store-DxRBdgZM.js} +7719 -7991
- package/dist/browser/string-editor-BwtRnquZ.js +30 -0
- package/dist/browser/text-field-D5x33kIn.js +88 -0
- package/dist/browser/{theme-C1rg17tG.js → theme-uaffdJE1.js} +9 -9
- package/dist/browser/ui-jO3fquPn.js +43 -0
- package/dist/browser/{useRenderTarget-gmu3Wzj0.js → useRenderTarget-NdsPPF5u.js} +5 -5
- package/dist/esm/components/Booth/Booth.js +1 -1
- package/dist/esm/components/EntityListRow.js +1 -1
- package/dist/esm/components/Exhibitor.js +1 -1
- package/dist/esm/components/Kiosk/ShowKiosk.js +1 -1
- package/dist/esm/components/LanguageRowContainer.d.ts +1 -0
- package/dist/esm/components/Layout.d.ts +2 -1
- package/dist/esm/components/Layout.js +1 -1
- package/dist/esm/components/LogoOverlay.js +1 -1
- package/dist/esm/components/Map/Map.js +1 -1
- package/dist/esm/components/Map/drawing/config/config-bg.d.ts +1 -1
- package/dist/esm/components/Map/drawing/config/config-booth-badge.js +1 -1
- package/dist/esm/components/Map/drawing/config/config-booth-bg.d.ts +1 -1
- package/dist/esm/components/Map/drawing/config/config-booth-bg.js +1 -1
- package/dist/esm/components/Map/drawing/config/config-load-layer.js +1 -1
- package/dist/esm/components/Map/drawing/config/loadBoothsImages.js +1 -1
- package/dist/esm/components/Maplibre/MaplibreAdapter.js +1 -1
- package/dist/esm/components/Maplibre/MaplibreWrapper.js +1 -1
- package/dist/esm/components/Maplibre/utils/resolve-map-style.d.ts +15 -0
- package/dist/esm/components/Maplibre/utils/resolve-map-style.js +1 -0
- package/dist/esm/components/Menu.d.ts +3 -2
- package/dist/esm/components/Menu.js +1 -1
- package/dist/esm/components/OverlayContainer.d.ts +2 -1
- package/dist/esm/components/OverlayContainer.js +1 -1
- package/dist/esm/components/Ws.js +1 -1
- package/dist/esm/constants.d.ts +7 -13
- package/dist/esm/constants.js +1 -1
- package/dist/esm/data/fp-payloads.d.ts +27 -0
- package/dist/esm/data/fp-payloads.js +1 -0
- package/dist/esm/data/fpGeo.js +1 -1
- package/dist/esm/data/index.d.ts +8 -2
- package/dist/esm/data/index.js +1 -1
- package/dist/esm/data/svg.d.ts +4 -1
- package/dist/esm/data/svg.js +1 -1
- package/dist/esm/floorplan.loader.d.ts +13 -4
- package/dist/esm/floorplan.loader.js +1 -1
- package/dist/esm/floorplan.ready.d.ts +8 -0
- package/dist/esm/floorplan.ready.js +1 -1
- package/dist/esm/index.d.ts +0 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/intercom/shouldLoad.d.ts +2 -2
- package/dist/esm/intercom/shouldLoad.js +1 -1
- package/dist/esm/load-dev.d.ts +44 -0
- package/dist/esm/load-dev.js +1 -0
- package/dist/esm/load.d.ts +3 -3
- package/dist/esm/load.js +3 -3
- package/dist/esm/renderer/engine-core/fonts.js +1 -1
- package/dist/esm/services/URLFilterManager.d.ts +15 -0
- package/dist/esm/services/URLFilterManager.js +1 -1
- package/dist/esm/services/multi-slug.d.ts +20 -0
- package/dist/esm/services/multi-slug.js +1 -0
- package/dist/esm/services/url-dispatch.d.ts +24 -0
- package/dist/esm/services/url-dispatch.js +1 -0
- package/dist/esm/services/url-sync.d.ts +36 -0
- package/dist/esm/services/url-sync.js +1 -0
- package/dist/esm/store/BoothStore.d.ts +2 -1
- package/dist/esm/store/ExhibitorStore.d.ts +3 -2
- package/dist/esm/store/ExhibitorStore.js +1 -1
- package/dist/esm/store/LayerStore.js +1 -1
- package/dist/esm/store/MaplibreStore.js +1 -1
- package/dist/esm/store/PoiTypeStore.d.ts +1 -1
- package/dist/esm/store/SearchStore.js +1 -1
- package/dist/esm/store/UIState.d.ts +1 -5
- package/dist/esm/store/UIState.js +1 -1
- package/dist/esm/store/init/init-bookmarks.d.ts +2 -0
- package/dist/esm/store/init/init-booths.js +1 -1
- package/dist/esm/store/init/init-categories.js +1 -1
- package/dist/esm/store/init/init-events.js +1 -1
- package/dist/esm/store/init/init-exhibitors.js +1 -1
- package/dist/esm/store/init/init-layers.js +1 -1
- package/dist/esm/store/types.d.ts +2 -1
- package/dist/esm/tools/event-not-found.d.ts +4 -3
- package/dist/esm/tools/gtag.d.ts +3 -2
- package/dist/esm/tools/gtag.js +1 -1
- package/dist/esm/tools/handleDebugMode.d.ts +17 -0
- package/dist/esm/tools/handleDebugMode.js +1 -1
- package/dist/esm/tools/loaders.d.ts +0 -2
- package/dist/esm/tools/loaders.js +1 -1
- package/dist/esm/tools/rebookingUrl.js +1 -1
- package/dist/esm/tools/reset.js +1 -1
- package/dist/esm/tools/settings.js +1 -1
- package/dist/esm/tools/track-event.js +1 -1
- package/dist/esm/types/drawing.types.d.ts +18 -0
- package/dist/esm/types.d.ts +52 -38
- package/dist/esm/utils/areLayersEnabled.js +1 -1
- package/dist/esm/utils/camera-map-settings.d.ts +20 -0
- package/dist/esm/utils/camera-map-settings.js +1 -0
- package/dist/esm/utils/customCommands.js +1 -1
- package/dist/esm/utils/getLogoUrl.d.ts +8 -1
- package/dist/esm/utils/getLogoUrl.js +1 -1
- package/dist/esm/utils/heatmap-enabled.d.ts +13 -0
- package/dist/esm/utils/heatmap-enabled.js +1 -0
- package/dist/esm/utils/i18n.js +1 -1
- package/dist/esm/utils/imageloader.js +1 -1
- package/dist/esm/utils/is-debug.d.ts +0 -8
- package/dist/esm/utils/is-debug.js +1 -1
- package/dist/esm/utils/legacy-storage-keys.d.ts +16 -0
- package/dist/esm/utils/legacy-storage-keys.js +1 -0
- package/dist/esm/utils/loadCustomCss.d.ts +2 -2
- package/dist/esm/utils/loadCustomCss.js +1 -1
- package/dist/esm/utils/mapEntity.d.ts +1 -0
- package/dist/esm/utils/preview-exhibitor.d.ts +1 -1
- package/dist/esm/wayfinding/adapters/arbitraryPoint.d.ts +1 -1
- package/dist/esm/wayfinding/adapters/arbitraryPoint.js +1 -1
- package/dist/esm/wayfinding/adapters/boothToEndpoint.d.ts +4 -4
- package/dist/esm/wayfinding/adapters/canvasIconProvider.d.ts +1 -1
- package/dist/esm/wayfinding/adapters/floorContext.d.ts +1 -1
- package/dist/esm/wayfinding/adapters/graphDataSource.d.ts +2 -2
- package/dist/esm/wayfinding/adapters/graphDataSource.js +1 -1
- package/dist/esm/wayfinding/adapters/positionInput.d.ts +8 -7
- package/dist/esm/wayfinding/adapters/positionInput.js +1 -1
- package/dist/esm/wayfinding/bindMobxReactions.d.ts +10 -23
- package/dist/esm/wayfinding/bindMobxReactions.js +1 -1
- package/dist/esm/wayfinding/createWayfinding.d.ts +1 -1
- package/dist/esm/wayfinding/createWayfinding.js +1 -1
- package/dist/esm/wayfinding/handlers/kioskHandler.d.ts +3 -3
- package/dist/esm/wayfinding/handlers/kioskHandler.js +1 -1
- package/dist/esm/wayfinding/handlers/yahHandler.d.ts +3 -4
- package/dist/esm/wayfinding/handlers/yahHandler.js +1 -1
- package/dist/esm/wayfinding/index.d.ts +4 -7
- package/dist/esm/wayfinding/index.js +1 -1
- package/dist/esm/wayfinding/storePorts.d.ts +60 -0
- package/package.json +9 -5
- package/dist/browser/CookieConsent-BJLQ1IVh.js +0 -38
- package/dist/browser/ShowKiosk-B60doTCj.js +0 -28
- package/dist/browser/efp-debug-init-Dif87fzy.js +0 -42
- package/dist/browser/floorplan.ready-CZQeXSCk.js +0 -1406
- package/dist/browser/i18n-CU-BJOBJ.js +0 -3942
- package/dist/browser/loadImage-vQZ4dq8v.js +0 -121
- package/dist/browser/mobx-Cnw3_TUT.js +0 -24
- package/dist/browser/reset-all-settings-O_33LwUw.js +0 -141
- package/dist/browser/string-editor-01VxR0gn.js +0 -108
- package/dist/browser/ui-gZWduhVn.js +0 -43
- package/dist/esm/_NEW_types.d.ts +0 -6
- package/dist/esm/_NEW_types.js +0 -1
- package/dist/esm/_misc_to_move/manifest.d.ts +0 -14
- package/dist/esm/_misc_to_move/ref.d.ts +0 -6
- package/dist/esm/data/Flags.d.ts +0 -23
- package/dist/esm/data/Flags.js +0 -1
- package/dist/esm/data/validate-data.d.ts +0 -3
- package/dist/esm/data/validate-data.js +0 -1
- package/dist/esm/services/routing.d.ts +0 -7
- package/dist/esm/services/routing.js +0 -1
- package/dist/esm/utils/mergeExhibitors.d.ts +0 -3
- package/dist/esm/utils/mergeExhibitors.js +0 -1
- package/dist/esm/wayfinding/core/__tests__/helpers.d.ts +0 -16
- package/dist/esm/wayfinding/core/__tests__/helpers.js +0 -1
- package/dist/esm/wayfinding/core/createWayfindingEngine.d.ts +0 -16
- package/dist/esm/wayfinding/core/createWayfindingEngine.js +0 -1
- package/dist/esm/wayfinding/core/geometry/pointInPolygon.d.ts +0 -11
- package/dist/esm/wayfinding/core/geometry/pointInPolygon.js +0 -1
- package/dist/esm/wayfinding/core/geometry/projectPointOnSegment.d.ts +0 -24
- package/dist/esm/wayfinding/core/geometry/projectPointOnSegment.js +0 -1
- package/dist/esm/wayfinding/core/graph/buildGraph.d.ts +0 -3
- package/dist/esm/wayfinding/core/graph/buildGraph.js +0 -1
- package/dist/esm/wayfinding/core/graph/buildNGraph.d.ts +0 -9
- package/dist/esm/wayfinding/core/graph/buildNGraph.js +0 -1
- package/dist/esm/wayfinding/core/graph/constants.d.ts +0 -17
- package/dist/esm/wayfinding/core/graph/constants.js +0 -1
- package/dist/esm/wayfinding/core/graph/findShortestPath.d.ts +0 -14
- package/dist/esm/wayfinding/core/graph/findShortestPath.js +0 -1
- package/dist/esm/wayfinding/core/graph/graphCache.d.ts +0 -7
- package/dist/esm/wayfinding/core/graph/graphCache.js +0 -1
- package/dist/esm/wayfinding/core/graph/graphHelpers.d.ts +0 -8
- package/dist/esm/wayfinding/core/graph/graphHelpers.js +0 -1
- package/dist/esm/wayfinding/core/graph/linkCost.d.ts +0 -4
- package/dist/esm/wayfinding/core/graph/linkCost.js +0 -1
- package/dist/esm/wayfinding/core/graph/pathfinder/aStarPathFinder.d.ts +0 -3
- package/dist/esm/wayfinding/core/graph/pathfinder/aStarPathFinder.js +0 -1
- package/dist/esm/wayfinding/core/graph/pathfinder/parseNodeId.d.ts +0 -9
- package/dist/esm/wayfinding/core/graph/pathfinder/parseNodeId.js +0 -1
- package/dist/esm/wayfinding/core/index.d.ts +0 -17
- package/dist/esm/wayfinding/core/index.js +0 -1
- package/dist/esm/wayfinding/core/position/distanceToRoute.d.ts +0 -3
- package/dist/esm/wayfinding/core/position/distanceToRoute.js +0 -1
- package/dist/esm/wayfinding/core/position/gpsThreshold.d.ts +0 -31
- package/dist/esm/wayfinding/core/position/gpsThreshold.js +0 -1
- package/dist/esm/wayfinding/core/position/rerouteController.d.ts +0 -10
- package/dist/esm/wayfinding/core/position/rerouteController.js +0 -1
- package/dist/esm/wayfinding/core/position/snapToRoute.d.ts +0 -4
- package/dist/esm/wayfinding/core/position/snapToRoute.js +0 -1
- package/dist/esm/wayfinding/core/position/splitRouteByPoint.d.ts +0 -6
- package/dist/esm/wayfinding/core/position/splitRouteByPoint.js +0 -1
- package/dist/esm/wayfinding/core/rendering/computeTrailPoints.d.ts +0 -19
- package/dist/esm/wayfinding/core/rendering/computeTrailPoints.js +0 -1
- package/dist/esm/wayfinding/core/rendering/computeTransitionPoints.d.ts +0 -31
- package/dist/esm/wayfinding/core/rendering/computeTransitionPoints.js +0 -1
- package/dist/esm/wayfinding/core/rendering/getVisibleRouteLines.d.ts +0 -11
- package/dist/esm/wayfinding/core/rendering/getVisibleRouteLines.js +0 -1
- package/dist/esm/wayfinding/core/rendering/normalizeRouteDirection.d.ts +0 -20
- package/dist/esm/wayfinding/core/rendering/normalizeRouteDirection.js +0 -1
- package/dist/esm/wayfinding/core/rendering/routeGeometry.d.ts +0 -11
- package/dist/esm/wayfinding/core/rendering/routeGeometry.js +0 -1
- package/dist/esm/wayfinding/core/routing/buildMultiPointRoute.d.ts +0 -11
- package/dist/esm/wayfinding/core/routing/buildMultiPointRoute.js +0 -1
- package/dist/esm/wayfinding/core/routing/buildRoute.d.ts +0 -9
- package/dist/esm/wayfinding/core/routing/buildRoute.js +0 -1
- package/dist/esm/wayfinding/core/routing/getRouteLength.d.ts +0 -3
- package/dist/esm/wayfinding/core/routing/getRouteLength.js +0 -1
- package/dist/esm/wayfinding/core/routing/graphPointResolvers.d.ts +0 -4
- package/dist/esm/wayfinding/core/routing/graphPointResolvers.js +0 -1
- package/dist/esm/wayfinding/core/routing/optimizeWaypointOrder.d.ts +0 -19
- package/dist/esm/wayfinding/core/routing/optimizeWaypointOrder.js +0 -1
- package/dist/esm/wayfinding/core/routing/resolveWaypointCandidates.d.ts +0 -18
- package/dist/esm/wayfinding/core/routing/resolveWaypointCandidates.js +0 -1
- package/dist/esm/wayfinding/core/routing/routeResult.d.ts +0 -4
- package/dist/esm/wayfinding/core/routing/routeResult.js +0 -1
- package/dist/esm/wayfinding/core/types.d.ts +0 -106
- package/dist/esm/wayfinding/core/types.js +0 -1
- package/dist/esm/wayfinding/renderer/createWayfindingRenderer.d.ts +0 -13
- package/dist/esm/wayfinding/renderer/createWayfindingRenderer.js +0 -1
- package/dist/esm/wayfinding/renderer/iconManager.d.ts +0 -37
- package/dist/esm/wayfinding/renderer/iconManager.js +0 -1
- package/dist/esm/wayfinding/renderer/index.d.ts +0 -3
- package/dist/esm/wayfinding/renderer/index.js +0 -1
- package/dist/esm/wayfinding/renderer/layerManager.d.ts +0 -26
- package/dist/esm/wayfinding/renderer/layerManager.js +0 -1
- package/dist/esm/wayfinding/renderer/lineAnimation.d.ts +0 -7
- package/dist/esm/wayfinding/renderer/lineAnimation.js +0 -1
- package/dist/esm/wayfinding/renderer/routeLineManager.d.ts +0 -41
- package/dist/esm/wayfinding/renderer/routeLineManager.js +0 -1
- package/dist/esm/wayfinding/renderer/trailManager.d.ts +0 -30
- package/dist/esm/wayfinding/renderer/trailManager.js +0 -1
- package/dist/esm/wayfinding/renderer/types.d.ts +0 -129
- package/dist/esm/wayfinding/renderer/types.js +0 -1
- package/dist/esm/wayfinding/runtime/createWayfindingRuntime.d.ts +0 -3
- package/dist/esm/wayfinding/runtime/createWayfindingRuntime.js +0 -1
- package/dist/esm/wayfinding/runtime/endpointView.d.ts +0 -18
- package/dist/esm/wayfinding/runtime/endpointView.js +0 -1
- package/dist/esm/wayfinding/runtime/getRouteLines.d.ts +0 -13
- package/dist/esm/wayfinding/runtime/getRouteLines.js +0 -1
- package/dist/esm/wayfinding/runtime/positionTrailView.d.ts +0 -50
- package/dist/esm/wayfinding/runtime/positionTrailView.js +0 -1
- package/dist/esm/wayfinding/runtime/positionView.d.ts +0 -23
- package/dist/esm/wayfinding/runtime/positionView.js +0 -1
- package/dist/esm/wayfinding/runtime/routeLinesView.d.ts +0 -18
- package/dist/esm/wayfinding/runtime/routeLinesView.js +0 -1
- package/dist/esm/wayfinding/runtime/routeRenderData.d.ts +0 -29
- package/dist/esm/wayfinding/runtime/routeRenderData.js +0 -1
- package/dist/esm/wayfinding/runtime/routeUpdate.d.ts +0 -15
- package/dist/esm/wayfinding/runtime/routeUpdate.js +0 -1
- package/dist/esm/wayfinding/runtime/trailView.d.ts +0 -20
- package/dist/esm/wayfinding/runtime/trailView.js +0 -1
- package/dist/esm/wayfinding/runtime/transitionView.d.ts +0 -17
- package/dist/esm/wayfinding/runtime/transitionView.js +0 -1
- package/dist/esm/wayfinding/runtime/types.d.ts +0 -82
- package/dist/esm/wayfinding/runtime/types.js +0 -1
- /package/dist/esm/{_misc_to_move/manifest.js → types/drawing.types.js} +0 -0
- /package/dist/esm/{_misc_to_move/ref.js → wayfinding/storePorts.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createKiosk as f}from"../components/Kiosk/kioskApi";import{getSavedKiosk as u}from"../components/Kiosk/SetKiosk";import{KIOSK_STATS_ID_STORAGE_KEY as c}from"../components/Kiosk/SetKiosk/constants";import l from"../data";import{getLocationHistory as p}from"../services/
|
|
1
|
+
import{createKiosk as f}from"../components/Kiosk/kioskApi";import{getSavedKiosk as u}from"../components/Kiosk/SetKiosk";import{KIOSK_STATS_ID_STORAGE_KEY as c}from"../components/Kiosk/SetKiosk/constants";import l from"../data";import{getLocationHistory as p}from"../services/url-sync";import{uiState as d}from"../store";import a from"./logger";import{createTelemetry as g}from"./telemetry";let i;function S(){if(i)return i;const r=window.__efpEvent;let e;try{const t=new URL(l.trackerUrl).searchParams.get("expoId");e=t?Number(t):void 0}catch(t){a.error(t)}return i=g({url:"https://app.expofp.com/api/telemetry",expo:r,expoId:e}),i}function s(r,e){const t=p(),n=t[t.length-2];return{type:r,value:e!==void 0?String(e):"",timestamp:new Date().toISOString(),url:window.location.href,referrer:n?window.location.origin+n:""}}function v(){return!!l?.trackerUrl&&process.env.NODE_ENV==="production"&&!d.heatmap}export default async function k(r,e){if(a.log("trackEvent",r,e),!!v())try{const t=S(),n=u();if(n){const o=await I(n);if(o)t.setKioskId(o);else{t.enqueue(s(r,e));return}}else localStorage.removeItem(c),t.setKioskId("");y(t),await t.send(s(r,e))}catch(t){a.error("trackEvent",String(t))}}async function I(r){if(!r)return null;let e=localStorage.getItem(c);return e||(e=await f(r,"https://app.expofp.com/"),e?(localStorage.setItem(c,e),e):null)}let m=!1;function y(r){if(m)return;m=!0;const e="efp-track-events";try{const t=localStorage.getItem(e);if(!t)return;const n=JSON.parse(t);if(!Array.isArray(n)){localStorage.removeItem(e);return}for(const o of n)!o||typeof o!="object"||!o.headers||r.enqueue({type:o.type,value:o.value!==void 0?String(o.value):"",timestamp:o.timeStamp,url:o.headers["X-href"],referrer:o.headers["X-ref"]??""});localStorage.removeItem(e)}catch(t){localStorage.removeItem(e),a.error("Failed to migrate old events.",String(t))}}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type ColorInput, type ShapeDef } from '@expofp/renderer';
|
|
2
|
+
/**
|
|
3
|
+
* Drawing-side shape types, formerly declared in the retired `data/Data.d.ts`
|
|
4
|
+
* (the event-data types now live on `@expofp/config`; these two are renderer
|
|
5
|
+
* concepts, not data-document fields).
|
|
6
|
+
*/
|
|
7
|
+
/** A renderer shape with the floorplan painters' background extensions. */
|
|
8
|
+
export interface ShapeBgDef extends ShapeDef {
|
|
9
|
+
defaultColor?: ColorInput;
|
|
10
|
+
unblinking?: boolean;
|
|
11
|
+
}
|
|
12
|
+
/** One highlighted booth path (by SVG `data-index`), as the painters consume it. */
|
|
13
|
+
export interface PathInfo {
|
|
14
|
+
index: number;
|
|
15
|
+
color: string;
|
|
16
|
+
unblinking: boolean;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=drawing.types.d.ts.map
|
package/dist/esm/types.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { type Config } from '@expofp/config';
|
|
2
|
+
import { type Camera, type ListPanel, type PlannerOptions } from '@expofp/schema';
|
|
1
3
|
/**
|
|
2
4
|
* Represents a floor plan.
|
|
3
5
|
*/
|
|
@@ -5,10 +7,13 @@ export interface FloorPlan {
|
|
|
5
7
|
readonly ready: Promise<void>;
|
|
6
8
|
readonly element: HTMLDivElement;
|
|
7
9
|
readonly eventId: string;
|
|
8
|
-
readonly dataUrl: string;
|
|
9
10
|
readonly noOverlay: boolean;
|
|
10
11
|
readonly offHistory: boolean;
|
|
11
|
-
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated The consent decision lives on the config — set the `consent`
|
|
14
|
+
* option instead. `true` ⇄ `'granted'`, `false` ⇄ `'denied'`, `undefined` ⇄ `'ask'`.
|
|
15
|
+
*/
|
|
16
|
+
readonly allowConsent: boolean | undefined;
|
|
12
17
|
readonly onInit: (fp: FloorPlan) => void;
|
|
13
18
|
onBoothClick(e: FloorPlanBoothClickEvent): void;
|
|
14
19
|
onBookmarkClick(e: FloorPlanBookmarkClickEvent): void;
|
|
@@ -54,12 +59,45 @@ export interface FloorPlan {
|
|
|
54
59
|
boothsList(): FloorPlanBooth[];
|
|
55
60
|
categoriesList(): FloorPlanCategory[];
|
|
56
61
|
selectCategory(nameOrSlug?: string): void;
|
|
62
|
+
/**
|
|
63
|
+
* Opens whatever the slug or external id names — a booth, a schedule
|
|
64
|
+
* session, an exhibitor, a category or a speaker (checked in that order);
|
|
65
|
+
* anything else opens the search list with the value as the search text.
|
|
66
|
+
* The programmatic twin of the `?<slug>` deep link.
|
|
67
|
+
*/
|
|
68
|
+
select(slugOrExternalId: string): void;
|
|
69
|
+
/** Opens one of the named list panels (the `?bookmarks`, `?sessions`, … deep links). */
|
|
70
|
+
showList(list: ListPanel): void;
|
|
71
|
+
/** Launches the tour with the given id; unknown ids fall back to the tours list. */
|
|
72
|
+
selectTour(tourId: string): void;
|
|
73
|
+
/** Opens the route planner, optionally pre-filled with slugs or the visitor's bookmarks. */
|
|
74
|
+
openPlanner(options?: PlannerOptions): void;
|
|
75
|
+
/** Enters the interactive route-building mode. */
|
|
76
|
+
startBuildRoute(): void;
|
|
57
77
|
getVisibility(): Visibility;
|
|
58
78
|
setVisibility(visibility: Visibility): void;
|
|
59
79
|
findLocation(): void;
|
|
60
80
|
zoomIn(): void;
|
|
61
81
|
zoomOut(): void;
|
|
62
82
|
switchView(): void;
|
|
83
|
+
/**
|
|
84
|
+
* Moves the camera. Partial-merge semantics: only the fields present in
|
|
85
|
+
* `camera` change, omitted ones keep their current values — e.g.
|
|
86
|
+
* `setCamera({ bearing: 90 })` rotates the map without moving its center.
|
|
87
|
+
* The center is set either as floor-plan projected coordinates (`x`/`y`) or
|
|
88
|
+
* as GPS (`lat`/`lng`) — each is a pair, so both halves must be given.
|
|
89
|
+
* `floor` activates the named floor, `bearing` rotates the map (0–360°) and
|
|
90
|
+
* `zoomTime` sets the camera animation duration in milliseconds. Applied as
|
|
91
|
+
* soon as the renderer is ready. Also available as the `setCamera` intent
|
|
92
|
+
* (URL deep link).
|
|
93
|
+
*/
|
|
94
|
+
setCamera(camera: Camera): void;
|
|
95
|
+
/**
|
|
96
|
+
* The camera state last requested via {@link setCamera} (or the equivalent
|
|
97
|
+
* URL parameters) — not a live gesture-tracking camera: panning or zooming
|
|
98
|
+
* by hand does not update it.
|
|
99
|
+
*/
|
|
100
|
+
getCamera(): Camera;
|
|
63
101
|
zoomTo(selectors: POISelectors, options?: {
|
|
64
102
|
padding?: number;
|
|
65
103
|
}): void;
|
|
@@ -106,25 +144,7 @@ export interface FloorPlan {
|
|
|
106
144
|
* Options for configuring the FloorPlan instance.
|
|
107
145
|
*/
|
|
108
146
|
export interface FloorPlanOptions {
|
|
109
|
-
element?: HTMLDivElement;
|
|
110
|
-
expo?: string;
|
|
111
|
-
/**
|
|
112
|
-
* @deprecated
|
|
113
|
-
* Use 'expo' instead.
|
|
114
|
-
*/
|
|
115
|
-
event?: string;
|
|
116
|
-
/** @deprecated */
|
|
117
|
-
legacyDataVersion?: {
|
|
118
|
-
version: string;
|
|
119
|
-
};
|
|
120
|
-
/** @deprecated */
|
|
121
|
-
legacyDataUrlBase?: string;
|
|
122
|
-
previewMode?: boolean;
|
|
123
|
-
dataUrl?: string;
|
|
124
|
-
noOverlay?: boolean;
|
|
125
|
-
offHistory?: boolean;
|
|
126
|
-
ignoreQuery?: boolean;
|
|
127
|
-
allowConsent?: boolean;
|
|
147
|
+
element?: HTMLDivElement | string;
|
|
128
148
|
onBoothClick?: (e: FloorPlanBoothClickEvent) => void;
|
|
129
149
|
onBookmarkClick?: (e: FloorPlanBookmarkClickEvent) => void;
|
|
130
150
|
onVisitedClick?: (e: FloorPlanVisitedClickEvent) => void;
|
|
@@ -143,18 +163,9 @@ export interface FloorPlanOptions {
|
|
|
143
163
|
onCurrentPositionChanged?: (point: CurrentPosition) => void;
|
|
144
164
|
onFloorActivated?: (floor: Floor) => void;
|
|
145
165
|
onLeaveEvent?: () => void;
|
|
146
|
-
disableRuntimeAlerts?: boolean;
|
|
147
|
-
viewerMode?: boolean;
|
|
148
|
-
maplibre?: MaplibreOptions;
|
|
149
|
-
}
|
|
150
|
-
export interface MaplibreOptions {
|
|
151
|
-
/** MapLibre style URL. Offline packages point this to a local style JSON file. */
|
|
152
|
-
styleUrl?: string;
|
|
153
|
-
/** Inline MapLibre style object. */
|
|
154
|
-
style?: object;
|
|
155
|
-
/** Allows MapLibre to run without navigator.onLine when local map assets are bundled. */
|
|
156
|
-
offline?: boolean;
|
|
157
166
|
}
|
|
167
|
+
/** MapLibre options — the config schema (`MapLibreConfigSchema`) is the single definition. */
|
|
168
|
+
export type MaplibreOptions = NonNullable<Config['maplibre']>;
|
|
158
169
|
export interface Layer {
|
|
159
170
|
name: string;
|
|
160
171
|
description: string;
|
|
@@ -175,6 +186,7 @@ export interface FloorPlanBooth extends FloorPlanBoothBase {
|
|
|
175
186
|
meta: Record<string, string>;
|
|
176
187
|
description: string;
|
|
177
188
|
entity: Entity;
|
|
189
|
+
title?: string;
|
|
178
190
|
}
|
|
179
191
|
export interface FloorPlanBoothClickEvent {
|
|
180
192
|
target: FloorPlanBoothBase;
|
|
@@ -271,11 +283,13 @@ export interface FloorPlanSchedule {
|
|
|
271
283
|
entity: Entity;
|
|
272
284
|
isEnded: boolean;
|
|
273
285
|
}
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
286
|
+
/** One selectable UI language (as `utils/i18n.ts` serves them). */
|
|
287
|
+
export interface Language {
|
|
288
|
+
readonly id: string;
|
|
289
|
+
readonly name: string;
|
|
290
|
+
readonly entity: {
|
|
291
|
+
readonly type: 'language';
|
|
292
|
+
};
|
|
279
293
|
}
|
|
280
294
|
export interface FloorPlanHeatmapYah {
|
|
281
295
|
id: string;
|
|
@@ -286,7 +300,7 @@ export interface FloorPlanHeatmapYah {
|
|
|
286
300
|
z: number | string;
|
|
287
301
|
entity: Entity;
|
|
288
302
|
}
|
|
289
|
-
export type FloorPlanEntity = FloorPlanBooth | FloorPlanCategory | FloorPlanExhibitor | FloorPlanSchedule |
|
|
303
|
+
export type FloorPlanEntity = FloorPlanBooth | FloorPlanCategory | FloorPlanExhibitor | FloorPlanSchedule | Language | FloorPlanHeatmapYah;
|
|
290
304
|
export interface Floor {
|
|
291
305
|
name: string;
|
|
292
306
|
shortName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export function areLayersEnabled(){return!!
|
|
1
|
+
import{getFpSvgJs as r}from"../data/fp-payloads";export function areLayersEnabled(){return!!r().__fpLayers}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type Camera } from '@expofp/schema';
|
|
2
|
+
import { type MapSettings } from '../store/types';
|
|
3
|
+
/**
|
|
4
|
+
* Translates the public {@link Camera} shape into the internal
|
|
5
|
+
* {@link MapSettings} one (the `uiState.mapSettings` observable that the map
|
|
6
|
+
* reaction applies once the renderer is ready). Only the fields present in
|
|
7
|
+
* `camera` appear in the result, so a partial camera stays a partial settings
|
|
8
|
+
* patch. `x`/`y` and `lat`/`lng` are pairs — a half-given pair is dropped, as
|
|
9
|
+
* the serialized center would be meaningless.
|
|
10
|
+
*/
|
|
11
|
+
export declare function cameraToMapSettings(camera: Camera): MapSettings;
|
|
12
|
+
/**
|
|
13
|
+
* The reverse of {@link cameraToMapSettings}: reads the internal
|
|
14
|
+
* {@link MapSettings} back into the public {@link Camera} shape. A serialized
|
|
15
|
+
* center whose halves don't parse as finite numbers (legacy URLs and
|
|
16
|
+
* sessionStorage can carry arbitrary strings) is skipped rather than surfaced
|
|
17
|
+
* as `NaN`.
|
|
18
|
+
*/
|
|
19
|
+
export declare function mapSettingsToCamera(settings: MapSettings): Camera;
|
|
20
|
+
//# sourceMappingURL=camera-map-settings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export function cameraToMapSettings(n){const e={};return n.x!==void 0&&n.y!==void 0&&(e.centerxy=`${n.x},${n.y}`),n.lat!==void 0&&n.lng!==void 0&&(e.center=`${n.lat},${n.lng}`),n.floor!==void 0&&(e.z=n.floor),n.bearing!==void 0&&(e.bearing=n.bearing),n.zoomTime!==void 0&&(e.zoomtime=n.zoomTime),e}export function mapSettingsToCamera(n){const e={},i=o(n.centerxy);i&&([e.x,e.y]=i);const f=o(n.center);return f&&([e.lat,e.lng]=f),n.z!==void 0&&(e.floor=n.z),n.bearing!==void 0&&(e.bearing=n.bearing),n.zoomtime!==void 0&&(e.zoomTime=n.zoomtime),e}function o(n){if(!n)return;const e=n.split(",").map(Number);if(!(e.length!==2||!e.every(Number.isFinite)))return[e[0],e[1]]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{DEBUG_KEY as i,SET_KIOSK_KEY as a}from"../constants";import n from"../data";import s,{uiState as l}from"../store";import{handleDebugMode as c}from"../tools/handleDebugMode";import{getRebookingTokenFromQuery as m}from"../tools/rebookingUrl";export function handleCustomCommand(o){if(o=o.trim(),o.toLowerCase()==="__addcache")navigator.serviceWorker.getRegistrations().then(r=>{if(!r.length)return alert("No registered service workers.");var t=[];s.exhibitorStore.exhibitors.forEach(e=>{t.push(e.logo),t.push(...e.gallery||[])}),Promise.all(t.map(e=>fetch(e))).then(e=>alert(`${e.length} images loaded.`)).catch(e=>alert(e))});else if(/^copy_exh=\d+/.test(o)){const r=o.match(/^copy_exh=(\d+)/);if(r&&!isNaN(parseInt(r[1]))){const e=`${window.location.origin+window.location.pathname}?${r[0]}`;window.location.replace(e)}}else{if(m())return!0;o.startsWith(i)?c():o===(n.
|
|
1
|
+
import{DEBUG_KEY as i,SET_KIOSK_KEY as a}from"../constants";import n from"../data";import s,{uiState as l}from"../store";import{handleDebugMode as c}from"../tools/handleDebugMode";import{getRebookingTokenFromQuery as m}from"../tools/rebookingUrl";export function handleCustomCommand(o){if(o=o.trim(),o.toLowerCase()==="__addcache")navigator.serviceWorker.getRegistrations().then(r=>{if(!r.length)return alert("No registered service workers.");var t=[];s.exhibitorStore.exhibitors.forEach(e=>{e.logo?.url&&t.push(e.logo.url),t.push(...e.gallery||[])}),Promise.all(t.map(e=>fetch(e))).then(e=>alert(`${e.length} images loaded.`)).catch(e=>alert(e))});else if(/^copy_exh=\d+/.test(o)){const r=o.match(/^copy_exh=(\d+)/);if(r&&!isNaN(parseInt(r[1]))){const e=`${window.location.origin+window.location.pathname}?${r[0]}`;window.location.replace(e)}}else{if(m())return!0;o.startsWith(i)?c():o===(n.customSetKiosk||a)&&l.enableSetKioskMode(!0)}return!1}
|
|
@@ -1,2 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
import { type Logo } from '@expofp/schema';
|
|
2
|
+
/**
|
|
3
|
+
* The logo URL to load for the current device: the pre-scaled `small`/`tiny`
|
|
4
|
+
* variant on optimized mobile/webview sessions, the full logo otherwise.
|
|
5
|
+
* Variant URLs are explicit fields on the logo (the config derives them when
|
|
6
|
+
* the platform serves the legacy string form) — nothing is re-derived here.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getLogoUrl(logo: Logo): string;
|
|
2
9
|
//# sourceMappingURL=getLogoUrl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import t from"../data";import e from"./is-mobile";import l from"./is-webview";export function getLogoUrl(r){const i=n();return i==="tiny"?r.tinyUrl??r.smallUrl??r.url:i==="small"?r.smallUrl??r.url:r.url}function n(){if(e||l)return t.viewOptimizationLevel?t.viewOptimizationLevel>=5?"tiny":"small":void 0}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type Heatmap } from '@expofp/schema';
|
|
2
|
+
/**
|
|
3
|
+
* Does a `config.heatmap` node engage heatmap mode? Presence implies intent:
|
|
4
|
+
* any non-empty node engages unless switched off with an explicit
|
|
5
|
+
* `enabled: false` — so `?heatmap[variant]=yah` alone is enough, and a URL's
|
|
6
|
+
* `?heatmap[enabled]=false` can veto a manifest-set node (config layers
|
|
7
|
+
* replace the node wholesale). One predicate for both consumers — the data
|
|
8
|
+
* loader's fetch decision and the dispatch's mode engagement — so the rule
|
|
9
|
+
* cannot drift. The legacy `?heatmap=true` params are NOT this node: they stay
|
|
10
|
+
* a legacy-URL one-shot and a raw read in the loader.
|
|
11
|
+
*/
|
|
12
|
+
export declare function heatmapEnabled(heatmap: Heatmap): boolean;
|
|
13
|
+
//# sourceMappingURL=heatmap-enabled.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export function heatmapEnabled(e){return Object.keys(e).length>0&&e.enabled!==!1}
|
package/dist/esm/utils/i18n.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{getConfig as y}from"@expofp/config";import r from"i18next";import{observable as f}from"mobx";import{LANGUAGE_TYPE as x}from"../constants";import u from"../locales";import S from"../tools/base-runtime-url";import{loadJson as E}from"../tools/loaders";import{isLocalStorageAvailable as i}from"./localStorage";const s="en",c="efp-locale",g="language",l=f.box(s),m=f.array([],{deep:!1}),p=e=>E(`${S}locales/${e}.json`),v=()=>{if(!i)return null;const e=localStorage.getItem(c),o=localStorage.getItem(g);return o&&localStorage.removeItem(g),e||(o&&localStorage.setItem(c,o),o)},L=()=>{const e=navigator.languages?.[0]||navigator.language,o=Object.keys(u).find(a=>e.startsWith(a));return(v()||y().locale||o||s).toLowerCase()};export const getLocale=()=>l.get(),getLocales=()=>m,hasLocale=e=>m.some(o=>o.id===e),t=(e,o)=>(l.get(),r.t(e,o)),tIfExists=(e,o)=>(l.get(),r.exists(e,o)?r.t(e,o):e),initI18n=async()=>{m.replace(Object.entries(u).sort(([a],[n])=>a.localeCompare(n)).map(([a,n])=>({id:a,name:n,entity:{type:x}})));let e=L();const o={};if(e!==s)try{o[e]={translation:await p(e)}}catch(a){console.error(`Unable to load "${e}" localization, falling back to "${s}".`,a),e=s}return l.set(e),r.init({resources:o,lng:e,keySeparator:!1,saveMissing:e!==s,missingKeyHandler:(a,n,d,b)=>console.debug(`i18n missing key: '${a[0]}:${n}:${d}', fallback: '${b}'`)})},setLocale=async e=>{const o=e.toLowerCase();try{o!==s&&!r.hasResourceBundle(o,"translation")&&r.addResourceBundle(o,"translation",await p(o),!0,!0),await r.changeLanguage(o),l.set(o),i&&localStorage.setItem(c,o)}catch(a){console.error(`Failed to switch language to "${o}":`,a)}},resetLocale=async()=>(i&&(localStorage.removeItem(c),localStorage.removeItem(g)),setLocale(L()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{loadImage as e}from"./loadImage";export function loadIcons(t){return Promise.all(t.map(a=>new Promise(async
|
|
1
|
+
import{loadImage as e}from"./loadImage";export function loadIcons(t){return Promise.all(t.map(a=>new Promise(async n=>{var l=await e(a.getAttribute("xlink:href")||a.getAttribute("href"));n(l?{bounds:{x:a.x.animVal.value,y:a.y.animVal.value,width:a.width.animVal.value,height:a.height.animVal.value,angle:a.transform?.animVal[0]?.angle??0},htmlImage:l,booth:null}:null)})))}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{DEBUG_STORAGE_KEY as
|
|
1
|
+
import{DEBUG_STORAGE_KEY as o}from"../constants";import{isLocalStorageAvailable as t}from"./localStorage";const e=t&&localStorage.getItem(o)==="true";export default e;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One-shot boot migration of the pre-schema preference keys (`___viewer_mode`
|
|
3
|
+
* / `___preview_mode` / `___ui-scale`) to their schema-typed `efp-*`
|
|
4
|
+
* equivalents — the keys the debug panel edits and `UIState` prefers. Runs
|
|
5
|
+
* before anything reads the keys (`load()` calls it ahead of `loadConfig`).
|
|
6
|
+
*
|
|
7
|
+
* Copy, not move: the legacy keys stay in place for a release or two so a
|
|
8
|
+
* rollback to an older SDK still sees them (their readers keep a fallback);
|
|
9
|
+
* only an explicit disable/reset seed removes both generations. An existing
|
|
10
|
+
* `efp-*` value always wins — a stale legacy key must not clobber it.
|
|
11
|
+
*
|
|
12
|
+
* `storage` is injectable for tests; the default is the real `localStorage`
|
|
13
|
+
* when it is usable.
|
|
14
|
+
*/
|
|
15
|
+
export declare function migrateLegacyStorageKeys(storage?: Pick<Storage, 'getItem' | 'setItem'> | undefined): void;
|
|
16
|
+
//# sourceMappingURL=legacy-storage-keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{LEGACY_PREVIEW_MODE_STORAGE_KEY as I,LEGACY_UI_SCALE_STORAGE_KEY as m,LEGACY_VIEWER_MODE_STORAGE_KEY as A,PREVIEW_MODE_STORAGE_KEY as t,UI_SCALE_STORAGE_KEY as _,VIEWER_MODE_STORAGE_KEY as l}from"../constants";import{isLocalStorageAvailable as S}from"./localStorage";export function migrateLegacyStorageKeys(E=S?localStorage:void 0){if(!E)return;E.getItem(A)==="1"&&E.getItem(l)===null&&E.setItem(l,"true"),E.getItem(I)==="1"&&E.getItem(t)===null&&E.setItem(t,"true");const e=E.getItem(m);e!==null&&E.getItem(_)===null&&E.setItem(_,e)}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
export declare function loadCustomCss(data:
|
|
1
|
+
import { type Config } from '@expofp/config';
|
|
2
|
+
export declare function loadCustomCss(data: Config, appendTo: Element | ShadowRoot): Promise<void>;
|
|
3
3
|
//# sourceMappingURL=loadCustomCss.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{loadCustomFonts as
|
|
1
|
+
import{loadCustomFonts as n}from"../tools/loaders";export async function loadCustomCss(t,o){if(t?.customCss){const e=document.createElement("style");if(e.textContent=t.customCss,document.head.append(e),typeof ShadowRoot<"u"&&o instanceof ShadowRoot){const s=document.createElement("style");s.textContent=t.customCss,o.append(s)}await n(t.customCss)}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CURRENT_POSITION_POINT_ID } from '
|
|
1
|
+
import { CURRENT_POSITION_POINT_ID } from '@expofp/wayfinding';
|
|
2
2
|
/** Display name for an {@link ArbitraryPoint} derived from the current GPS position. */
|
|
3
3
|
export declare const CURRENT_LOCATION_NAME = "Your Location";
|
|
4
4
|
export { CURRENT_POSITION_POINT_ID };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{CURRENT_POSITION_POINT_ID as I}from"
|
|
1
|
+
import{CURRENT_POSITION_POINT_ID as I}from"@expofp/wayfinding";export const CURRENT_LOCATION_NAME="Your Location";export{I as CURRENT_POSITION_POINT_ID};export const KIOSK_ANCHOR_POINT_ID="kiosk-anchor";export function toArbitraryPoint(r,o,t){return{id:t,x:r.x,y:r.y,layer:r.z!=null?String(r.z):"",name:o}}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { RouteEndpoint } from '@expofp/wayfinding';
|
|
2
|
+
import type { BoothSource } from '../storePorts';
|
|
3
3
|
/**
|
|
4
|
-
* Converts an efp
|
|
4
|
+
* Converts an efp booth to a neutral {@link RouteEndpoint}. The booth's
|
|
5
5
|
* (possibly rotated) rectangle becomes a 4-vertex polygon used by the engine
|
|
6
6
|
* as a containment region for graph-point lookup.
|
|
7
7
|
*
|
|
@@ -9,5 +9,5 @@ import type { RouteEndpoint } from '../core';
|
|
|
9
9
|
* the geometry package convention, so it feeds the geometry Rect directly.
|
|
10
10
|
* Corner order is top-left, top-right, bottom-right, bottom-left.
|
|
11
11
|
*/
|
|
12
|
-
export declare function boothToEndpoint(booth:
|
|
12
|
+
export declare function boothToEndpoint(booth: BoothSource): RouteEndpoint;
|
|
13
13
|
//# sourceMappingURL=boothToEndpoint.d.ts.map
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* All canvases are pre-created eagerly.
|
|
6
6
|
* Fallback canvases are used when custom images are not available.
|
|
7
7
|
*/
|
|
8
|
-
import type { IconProvider } from '
|
|
8
|
+
import type { IconProvider } from '@expofp/wayfinding';
|
|
9
9
|
interface CanvasIconProviderConfig {
|
|
10
10
|
/** Icon image map — typically store.fp.icons */
|
|
11
11
|
readonly iconMap: Map<string, HTMLImageElement>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import type { FloorContext } from '@expofp/wayfinding';
|
|
1
2
|
import type LayerStore from '../../store/LayerStore';
|
|
2
3
|
import type RouteStore from '../../store/RouteStore';
|
|
3
|
-
import { type FloorContext } from '../runtime/types';
|
|
4
4
|
/**
|
|
5
5
|
* Adapter: builds a neutral {@link FloorContext} from the efp `LayerStore` +
|
|
6
6
|
* `RouteStore`. Single place in the code that knows about efp-specific magic
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
/** Reads the app's wayfinding graph
|
|
1
|
+
import type { GraphDataSource } from '@expofp/wayfinding';
|
|
2
|
+
/** Reads the app's wayfinding graph off the resolver memo (`getWfData`). */
|
|
3
3
|
export declare function createGraphDataSource(): GraphDataSource;
|
|
4
4
|
//# sourceMappingURL=graphDataSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{getWfData as e}from"../../data/fp-payloads";export function createGraphDataSource(){return{getLines:()=>e()?.lines??[],getLineEnds:()=>e()?.lineEnds??[]}}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { PositionInput } from '@expofp/wayfinding';
|
|
2
|
+
import type { PositionView } from '../storePorts';
|
|
3
3
|
/**
|
|
4
|
-
* Converts
|
|
5
|
-
*
|
|
4
|
+
* Converts an efp position read-model to a neutral `PositionInput` for the
|
|
5
|
+
* runtime.
|
|
6
6
|
*
|
|
7
|
-
* `z`
|
|
8
|
-
*
|
|
7
|
+
* `z` can be `number | string | undefined`; the runtime expects `layer:
|
|
8
|
+
* string`. The efp `angle` maps to the neutral `heading`; non-finite values
|
|
9
|
+
* become `undefined`.
|
|
9
10
|
*/
|
|
10
|
-
export declare function positionInput(position:
|
|
11
|
+
export declare function positionInput(position: PositionView): PositionInput;
|
|
11
12
|
//# sourceMappingURL=positionInput.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export function positionInput(e){return{x:e.x,y:e.y,layer:e.z!=null?String(e.z):"",
|
|
1
|
+
export function positionInput(e){return{x:e.x,y:e.y,layer:e.z!=null?String(e.z):"",heading:Number.isFinite(e.angle)?e.angle:void 0}}
|
|
@@ -1,41 +1,28 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type RouteStore from '../store/RouteStore';
|
|
3
|
-
import type UIState from '../store/UIState';
|
|
1
|
+
import type { Wayfinding } from '@expofp/wayfinding';
|
|
4
2
|
import type { KioskHandler } from './handlers/kioskHandler';
|
|
5
3
|
import type { YahHandler } from './handlers/yahHandler';
|
|
6
|
-
import type {
|
|
4
|
+
import type { LayerStorePort, RouteStorePort, UiStatePort } from './storePorts';
|
|
7
5
|
interface BindMobxReactionsArgs {
|
|
8
|
-
readonly
|
|
6
|
+
readonly wayfinding: Pick<Wayfinding, 'setRoute' | 'clearRoute' | 'setPosition' | 'notifyFloorChanged' | 'shouldReroute'>;
|
|
9
7
|
readonly kioskHandler: KioskHandler;
|
|
10
8
|
readonly yahHandler: YahHandler;
|
|
11
|
-
/**
|
|
12
|
-
* TODO (improvement): typing these as concrete `store/*` classes couples this
|
|
13
|
-
* glue to the store and produces type-only madge cycles (harmless at runtime —
|
|
14
|
-
* `import type` is erased). To make the wf glue fully store-type-free, invert
|
|
15
|
-
* into local ports (as done for `FloorContext`/`IconProvider`).
|
|
16
|
-
*/
|
|
17
9
|
readonly stores: {
|
|
18
|
-
readonly routeStore:
|
|
19
|
-
readonly uiState:
|
|
20
|
-
readonly layerStore:
|
|
10
|
+
readonly routeStore: RouteStorePort;
|
|
11
|
+
readonly uiState: UiStatePort;
|
|
12
|
+
readonly layerStore: LayerStorePort;
|
|
21
13
|
};
|
|
22
|
-
/** Plan-scale-aware reroute threshold (SVG units). Computed by
|
|
23
|
-
* `createWayfinding` from `fpGeo` and passed in — keeps this module
|
|
24
|
-
* free of plan-config knowledge. */
|
|
25
|
-
readonly rerouteThresholdSvg: number;
|
|
26
14
|
}
|
|
27
15
|
/**
|
|
28
|
-
* Wires the observable efp stores to the imperative wayfinding
|
|
16
|
+
* Wires the observable efp stores to the imperative wayfinding instance and
|
|
29
17
|
* the efp-side kiosk/yah handlers. Each reaction translates observable
|
|
30
18
|
* changes into neutral-typed imperative calls.
|
|
31
19
|
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
* become (or refresh) the route's FROM.
|
|
20
|
+
* Triggers `routeStore.rebuildRouteFromPosition` (via `wayfinding.shouldReroute`) when
|
|
21
|
+
* the live CP needs to become (or refresh) the route's FROM.
|
|
35
22
|
*
|
|
36
23
|
* Returns a dispose function that tears down all reactions plus the deferred
|
|
37
24
|
* floor-change timeout.
|
|
38
25
|
*/
|
|
39
|
-
export declare function bindMobxReactions({
|
|
26
|
+
export declare function bindMobxReactions({ wayfinding, kioskHandler, yahHandler, stores: { routeStore, uiState, layerStore }, }: BindMobxReactionsArgs): () => void;
|
|
40
27
|
export {};
|
|
41
28
|
//# sourceMappingURL=bindMobxReactions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{comparer as E,reaction as c}from"mobx";import{boothToEndpoint as
|
|
1
|
+
import{comparer as E,reaction as c}from"mobx";import{boothToEndpoint as h,CURRENT_LOCATION_NAME as x,CURRENT_POSITION_POINT_ID as m,positionInput as T,toArbitraryPoint as b}from"./adapters";const A=s=>"rect"in s?h(s):s;export function bindMobxReactions({wayfinding:s,kioskHandler:C,yahHandler:R,stores:{routeStore:n,uiState:i,layerStore:l}}){const f=[];function a(){const o=i.selectedRoute,t=o?.from?A(o.from):null,e=o?.to?A(o.to):null;if(!t||!e){s.clearRoute();return}s.setRoute({from:t,to:e,waypoints:o?.waypoints?.map(h),accessible:n.onlyAccessible})===!1&&console.error(new Error(`Route not found: (${t.x},${t.y}) \u2192 (${e.x},${e.y})`))}function u(){const o=n.currentPosition,t=n.iconType!==0,e=i.selectedRoute,p=!!(e?.from&&e?.to),y=t&&!p;if(!o){s.setPosition(null),R(null);return}const d=T(o);y?(s.setPosition(null),R({x:d.x,y:d.y,layer:d.layer})):(R(null),s.setPosition(d))}function F(){const o=n.currentPosition,t=i.selectedRoute;if(!o||!t?.to)return;const e=!t.from,y=t.from?.id===m&&s.shouldReroute(T(o));!e&&!y||n.rebuildRouteFromPosition(b(o,x,m))}function P(){const o=l.floors.find(t=>t.active)?.name;C(i.kioskData??null,o,l.mode)}function I(){const o=i.selectedRoute,t=n.currentPosition;if(!o?.to||!t||o.from?.id!==m||n.routeLines.length>0)return;const e=t.z!=null?String(t.z):"";o.from.x===t.x&&o.from.y===t.y&&o.from.layer===e||n.rebuildRouteFromPosition(b(t,x,m))}f.push(c(()=>l.layersLoaded,()=>{a(),u()}),c(()=>[i.selectedRoute,n.onlyAccessible],()=>{a(),u()}),c(()=>n.currentPosition,()=>{u()}),c(()=>{const o=n.currentPosition;return o?{x:o.x,y:o.y,z:o.z}:null},()=>{F(),I()},{equals:E.structural}),c(()=>[i.kioskData,l.floors.find(o=>o.active)],()=>P()));let r=null;const N=c(()=>[n.currentRouteLayer,i.getRouteNextFloor],()=>{l.layersLoaded&&(r!==null&&clearTimeout(r),r=setTimeout(()=>{s.notifyFloorChanged(),u(),r=null},0))});return f.push(()=>{r!==null&&clearTimeout(r),N()}),a(),u(),P(),()=>{for(const o of f)o();f.length=0}}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { type Route, type RouteEndpoint } from '@expofp/wayfinding';
|
|
1
2
|
import { type RendererService } from '../renderer';
|
|
2
3
|
import type RootStore from '../store/RootStore';
|
|
3
|
-
import { type Route, type RouteEndpoint } from './core';
|
|
4
4
|
/** Whether `createWayfinding` has run and not yet been disposed. */
|
|
5
5
|
export declare function isWayfindingReady(): boolean;
|
|
6
6
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{fpGeo as
|
|
1
|
+
import{createWayfinding as g}from"@expofp/wayfinding";import{fpGeo as L}from"../data/fpGeo";import{createImageDef as _,createLineDef as A,getRotation as h,rectToRenderer as W}from"../renderer";import{pickDefaultScene as p}from"../renderer/engine-core/defs";import{createCanvasIconProvider as w,createFloorContext as I,createGraphDataSource as P}from"./adapters";import{bindMobxReactions as k}from"./bindMobxReactions";import{createKioskHandler as x}from"./handlers/kioskHandler";import{createYahHandler as M}from"./handlers/yahHandler";import{WF_CURRENT_POSITION_LAYER_NAME as N,WF_LINES_ANIMATED_LAYER_NAME as C,WF_LINES_LAYER_NAME as T,WF_POINTS_LAYER_NAME as b,WF_TRAIL_LAYER_NAME as D}from"./layers";let o=null;export function isWayfindingReady(){return o!==null}function F(){if(!o)throw new Error("Wayfinding is not initialized \u2014 call createWayfinding() first.");return o}export function buildRoute(r,t,a){return F().wayfinding.buildRoute(r,t,a)}export function createWayfinding(r,t){const a=P(),y=w({iconMap:t.fp.icons,pixelRatio:devicePixelRatio}),s=I(t.layerStore,t.routeStore),c={points:b,trail:D,lines:T,linesAnimated:C,currentPosition:N},n=g({dataSource:a,renderer:{createImageDef:_,createLineDef:A,getRotation:h,rectToRenderer:W,getScale:()=>r.scale,getLayers:()=>{const e=r.scene;if(!e)throw new Error("renderer: rendererService.scene is null \u2014 start RendererService first");return e.rootLayer.children},update:(...e)=>r.update(...e)},iconProvider:y,floorContext:s,layers:c,gpsConfig:L?.properties?.config,onTransitionClick:e=>{e.role==="exit"&&t.layerStore.updateVisibility(e.targetLayer,!0)},onRouteUpdate:(e,u)=>{t.routeStore.updateRoute([...e]),u.isEmpty()||(t.uiState.moveToRect=u)},onRouteDistance:e=>t.routeStore.updateRouteDistance(e)}),R=x({wayfinding:n,kioskIconMap:t.fp.icons,layer:c.points}),m=M({wayfinding:n,iconMap:t.fp.icons,pixelRatio:devicePixelRatio,floorContext:s,layer:c.points}),S=k({wayfinding:n,kioskHandler:R,yahHandler:m,stores:{routeStore:t.routeStore,uiState:t.uiState,layerStore:t.layerStore}}),i=r.renderer;if(!i)throw new Error("renderer: rendererService.renderer is null \u2014 start RendererService first");const v=r.onPtScale("wayfinding",e=>{n.applyScale(e)}),E=r.onRoll("wayfinding",e=>{n.applyRoll(e)}),l=e=>n.handleClick(p(e.data).defs),d=e=>{i.canvas.style.cursor=n.handleHover(p(e.data).defs)?"pointer":""};i.events.addEventListener("pointer:click",l),i.events.addEventListener("pointer:move",d),t.routeStore.showAccessible=a.getLines().some(e=>e.unaccessible);const f={wayfinding:n};return o=f,n.flush(),()=>{i.events.removeEventListener("pointer:click",l),i.events.removeEventListener("pointer:move",d),o===f&&(o=null,v(),E(),t.routeStore.showAccessible=!1),S(),n.destroy()}}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import type { Wayfinding } from '@expofp/wayfinding';
|
|
1
2
|
import type { Kiosk } from '../../components/Kiosk/SetKiosk';
|
|
2
|
-
import type { WayfindingRenderer } from '../renderer';
|
|
3
3
|
/**
|
|
4
4
|
* Updates the kiosk icon in response to store changes.
|
|
5
5
|
*
|
|
@@ -17,8 +17,8 @@ export type KioskHandler = (kiosk: Kiosk | null, activeFloor: string | undefined
|
|
|
17
17
|
* runtime's portability: the runtime deals with source/destination/position/
|
|
18
18
|
* transitions only, and never learns that kiosks exist.
|
|
19
19
|
*/
|
|
20
|
-
export declare function createKioskHandler({
|
|
21
|
-
|
|
20
|
+
export declare function createKioskHandler({ wayfinding, kioskIconMap, layer, }: {
|
|
21
|
+
wayfinding: Pick<Wayfinding, 'setIcon' | 'flush'>;
|
|
22
22
|
kioskIconMap: Map<string, HTMLImageElement> | undefined;
|
|
23
23
|
layer: string;
|
|
24
24
|
}): KioskHandler;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{degToRad as u}from"@expofp/geometry";import{createKioskCanvas as s}from"../adapters";const
|
|
1
|
+
import{degToRad as u}from"@expofp/geometry";import{createKioskCanvas as s}from"../adapters";const r="kiosk",f=0;export function createKioskHandler({wayfinding:o,kioskIconMap:c,layer:n}){return(e,t,l)=>{if(!e){o.setIcon(r,null),o.flush();return}if(l!==f&&e.z&&t&&e.z!==t){o.setIcon(r,null),o.flush();return}o.setIcon(r,{canvas:s(c,e.iconSizePercent),layer:n,x:e.x,y:e.y,rotation:u(e.heading??0)}),o.flush()}}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { type FloorContext } from '../runtime/types';
|
|
1
|
+
import type { FloorContext, Wayfinding } from '@expofp/wayfinding';
|
|
3
2
|
/**
|
|
4
3
|
* Places or hides the "You Are Here" marker. An efp-specific map annotation
|
|
5
4
|
* (shown when `routeStore.iconType !== 0` and no active route) — separated
|
|
@@ -13,8 +12,8 @@ export type YahHandler = (position: {
|
|
|
13
12
|
readonly y: number;
|
|
14
13
|
readonly layer: string;
|
|
15
14
|
} | null) => void;
|
|
16
|
-
export declare function createYahHandler({
|
|
17
|
-
|
|
15
|
+
export declare function createYahHandler({ wayfinding, iconMap, pixelRatio, floorContext, layer, }: {
|
|
16
|
+
wayfinding: Pick<Wayfinding, 'setIcon' | 'flush'>;
|
|
18
17
|
iconMap: Map<string, HTMLImageElement>;
|
|
19
18
|
pixelRatio: number;
|
|
20
19
|
floorContext: FloorContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createImageCanvas as
|
|
1
|
+
import{createImageCanvas as u,createYahCanvas as A}from"../../components/Map/drawing/config/canvases";import{decreaseByPercentage as o}from"../../utils/math";const n="yah",C="#ff4343",E=64,H=90,_=32;function Y(e,a){const r=e.get(n);return r?(r.id=n,u(r,o(E,_),o(H,_),a)):A(a,C)}export function createYahHandler({wayfinding:e,iconMap:a,pixelRatio:r,floorContext:I,layer:l}){const c=Y(a,r);return c.id="current-location-2",t=>{if(!t){e.setIcon(n,null),e.flush();return}const s=I.isLayerVisible(t.layer);e.setIcon(n,{canvas:c,layer:l,x:t.x,y:t.y,hidden:!s,dimmed:!s,origin:[.5,1]}),e.flush()}}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* efp-side wayfinding facade — the single entry the floorplan app imports from
|
|
3
3
|
* (stores, mount points). Re-exports the bootstrap (`createWayfinding`), the
|
|
4
|
-
* runtime facade (`
|
|
5
|
-
* and the `RouteLine` type.
|
|
6
|
-
*
|
|
7
|
-
* When `core`/`runtime`/`renderer` move into `@expofp/wayfinding`, this file
|
|
8
|
-
* stays on the efp side and re-points the type exports at the package.
|
|
4
|
+
* runtime facade (`isWayfindingReady`), and the glue endpoint helpers.
|
|
9
5
|
*/
|
|
10
6
|
export { boothToEndpoint, CURRENT_LOCATION_NAME, CURRENT_POSITION_POINT_ID, KIOSK_ANCHOR_POINT_ID, toArbitraryPoint, } from './adapters';
|
|
11
|
-
export
|
|
12
|
-
export {
|
|
7
|
+
export { buildRoute } from './createWayfinding';
|
|
8
|
+
export { createWayfinding, isWayfindingReady } from './createWayfinding';
|
|
9
|
+
export type { RouteLine } from '@expofp/wayfinding';
|
|
13
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{boothToEndpoint,CURRENT_LOCATION_NAME,CURRENT_POSITION_POINT_ID,KIOSK_ANCHOR_POINT_ID,toArbitraryPoint}from"./adapters";export{buildRoute
|
|
1
|
+
export{boothToEndpoint,CURRENT_LOCATION_NAME,CURRENT_POSITION_POINT_ID,KIOSK_ANCHOR_POINT_ID,toArbitraryPoint}from"./adapters";export{buildRoute}from"./createWayfinding";export{createWayfinding,isWayfindingReady}from"./createWayfinding";
|