@expofp/floorplan 3.0.0-alpha.16 → 3.0.0-alpha.17
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/Debug-CUZihF0D.js +40 -0
- package/dist/browser/{Demo-CXdISYQf.js → Demo-CR3VLKTk.js} +7 -7
- package/dist/browser/{Free-CVgHQ8yt.js → Free-DQNZneql.js} +10 -10
- package/dist/browser/Gallery-DuHTiSqx.js +71 -0
- package/dist/browser/{GpsLoader-BiwFO3QG.js → GpsLoader-DmtF8nSh.js} +46 -46
- package/dist/browser/{KioskStore-NqUeUutQ.js → KioskStore-B7BTukd0.js} +9 -9
- package/dist/browser/{Mapbox-PHCrBnx5.js → Mapbox-3GevGU_j.js} +6 -6
- package/dist/browser/{SetKioskMode-DMQej1ec.js → SetKioskMode-D3066R7_.js} +50 -50
- package/dist/browser/{ShowKiosk-BWlBMcI7.js → ShowKiosk-3jaagNzR.js} +6 -6
- package/dist/browser/{ThreeComponent-Dmt2HPyX.js → ThreeComponent-DNFBzo3g.js} +7 -7
- package/dist/browser/{ViewerMenuPanel-CuqRZ7m1.js → ViewerMenuPanel-BLo85uoZ.js} +14 -14
- package/dist/browser/{boolean-editor-zsvPcNpX.js → boolean-editor-DKH9ubYi.js} +5 -5
- package/dist/browser/bundle.json +30 -30
- package/dist/browser/{client-B2kCMH8A.js → client-meZ2tCS0.js} +4 -4
- package/dist/browser/{data-BtD6blv7.js → data-SQHwxPrN.js} +5 -5
- package/dist/browser/{debug-overlay-CF0imHRX.js → debug-overlay-C4TVlyAN.js} +9 -9
- package/dist/browser/{debug-ui-Zt7T7T-N.js → debug-ui-CVsP8oRC.js} +5 -5
- package/dist/browser/{favicon-Dj8hNa7i.js → favicon-Cimz_lqt.js} +1 -1
- package/dist/browser/{fetch-retry.umd-B-swKpFA.js → fetch-retry.umd-XH7ZZmae.js} +2 -2
- package/dist/browser/{flex-COa6XN1F.js → flex-Bq6tPjvK.js} +5 -5
- package/dist/browser/{floorplan.ready-CNnM_Yyc.js → floorplan.ready-ClV1c-bq.js} +12287 -11918
- package/dist/browser/{index-atMSRNM1.js → index-3PCrVVmD.js} +12 -12
- package/dist/browser/{index-CqICVJZO.js → index-BuXQKG6_.js} +4 -4
- package/dist/browser/{index-CgWDjED_.js → index-C1A1q6hi.js} +6 -6
- package/dist/browser/{index-C04zJbbt.js → index-C3wwaChX.js} +2397 -2374
- package/dist/browser/{index-B1P-x0sk.js → index-CcKlEKDb.js} +5 -5
- package/dist/browser/{index-BeS6l0j-.js → index-CfyxM29w.js} +18 -18
- package/dist/browser/{index-BEcZnTgd.js → index-DkMgYVuZ.js} +3 -3
- package/dist/browser/index.js +4 -4
- package/dist/browser/{jsx-runtime-DAY7g56y.js → jsx-runtime-rSp8ZldI.js} +1 -1
- package/dist/browser/locales/ar.json +48 -4
- package/dist/browser/locales/de.json +48 -4
- package/dist/browser/locales/es.json +48 -4
- package/dist/browser/locales/fr.json +48 -4
- package/dist/browser/locales/he.json +48 -4
- package/dist/browser/locales/it.json +48 -4
- package/dist/browser/locales/kk.json +48 -4
- package/dist/browser/locales/ko.json +48 -4
- package/dist/browser/locales/mn.json +48 -4
- package/dist/browser/locales/nl.json +48 -4
- package/dist/browser/locales/pl.json +49 -5
- package/dist/browser/locales/pt.json +48 -4
- package/dist/browser/locales/ru.json +49 -5
- package/dist/browser/locales/sv.json +48 -4
- package/dist/browser/locales/th.json +48 -4
- package/dist/browser/locales/tr.json +48 -4
- package/dist/browser/locales/uk.json +48 -4
- package/dist/browser/locales/vi.json +48 -4
- package/dist/browser/locales/zh.json +48 -4
- package/dist/browser/{main-DZpmA53N.js → main-C1uhxJ8U.js} +1 -1
- package/dist/browser/{particles.min-DXab_WLN.js → particles.min-DkmJkLkl.js} +2 -2
- package/dist/esm/RouteCutIn.d.ts +0 -1
- package/dist/esm/RouteCutIn.js +1 -1
- package/dist/esm/components/Booth/BoothOnHold.d.ts +2 -2
- package/dist/esm/components/Booth/BoothOnHold.js +1 -1
- package/dist/esm/components/Booth/BoothReserved.d.ts +2 -1
- package/dist/esm/components/Booth/BoothReserved.js +1 -1
- package/dist/esm/components/Booth/BoothWithoutExhibitor.d.ts +2 -2
- package/dist/esm/components/Booth/BoothWithoutExhibitor.js +1 -1
- package/dist/esm/components/Exhibitor.js +1 -1
- package/dist/esm/components/Gallery/GalleryControls/GalleryControls.d.ts +2 -2
- package/dist/esm/components/Gallery/GalleryControls/GalleryControls.js +1 -1
- package/dist/esm/components/Gallery/GalleryModal/GalleryModal.d.ts +2 -2
- package/dist/esm/components/Gallery/GalleryModal/GalleryModal.js +1 -1
- package/dist/esm/components/Language.js +1 -1
- package/dist/esm/components/LanguageRow.d.ts +0 -1
- package/dist/esm/components/LanguageRow.js +1 -1
- package/dist/esm/components/Layout.js +1 -1
- package/dist/esm/components/List.js +1 -1
- package/dist/esm/components/Map/drawing/config/config-markers.js +1 -1
- package/dist/esm/components/Map/drawing/config/config-wf.d.ts +0 -2
- package/dist/esm/components/Map/drawing/config/config-wf.js +1 -1
- package/dist/esm/components/Map/drawing/config/route-snapping/snapPositionToRoute.d.ts +1 -1
- package/dist/esm/components/Map/drawing/config/route-snapping/snapPositionToRoute.js +1 -1
- package/dist/esm/components/Map/drawing/config/route-snapping/splitRouteByPoint.d.ts +1 -1
- package/dist/esm/components/Map/drawing/config/route-snapping/splitRouteByPoint.js +1 -1
- package/dist/esm/components/Map/drawing/config/route-snapping/types.d.ts +1 -1
- package/dist/esm/components/Map/drawing/config/route-snapping/utils.d.ts +1 -1
- package/dist/esm/components/Map/traffic/useManageTraffic.js +1 -1
- package/dist/esm/components/MarketMaterialList.d.ts +3 -3
- package/dist/esm/components/MarketMaterialList.js +1 -1
- package/dist/esm/components/Menu.js +1 -1
- package/dist/esm/components/MobileToggleButton.js +1 -1
- package/dist/esm/components/MultiSelectGroups.d.ts +2 -2
- package/dist/esm/components/MultiSelectGroups.js +1 -1
- package/dist/esm/components/OverlayContainer.js +1 -1
- package/dist/esm/components/RebookingNotes.d.ts +2 -2
- package/dist/esm/components/RebookingNotes.js +1 -1
- package/dist/esm/components/RebookingRadioGroup.d.ts +2 -2
- package/dist/esm/components/RebookingRadioGroup.js +1 -1
- package/dist/esm/components/RouteQR.d.ts +2 -2
- package/dist/esm/components/RouteQR.js +1 -1
- package/dist/esm/components/Sessions.js +1 -1
- package/dist/esm/components/Share.d.ts +2 -2
- package/dist/esm/components/Share.js +1 -1
- package/dist/esm/components/SidebarActions.js +1 -1
- package/dist/esm/components/WayfindingTemplate.d.ts +2 -2
- package/dist/esm/components/WayfindingTemplate.js +1 -1
- package/dist/esm/components/gps/GpsPermissionRequest.d.ts +4 -2
- package/dist/esm/components/gps/GpsPermissionRequest.js +1 -1
- package/dist/esm/constants.d.ts +1 -0
- package/dist/esm/constants.js +1 -1
- package/dist/esm/floorplan.loader.js +1 -1
- package/dist/esm/floorplan.ready.js +1 -1
- package/dist/esm/load.js +3 -3
- package/dist/esm/services/routing.js +1 -1
- package/dist/esm/store/RootStore.d.ts +0 -2
- package/dist/esm/store/RootStore.js +1 -1
- package/dist/esm/store/RouteStore.d.ts +1 -1
- package/dist/esm/store/RouteStore.js +1 -1
- package/dist/esm/store/SearchStore.js +1 -1
- package/dist/esm/store/UIState.d.ts +1 -2
- package/dist/esm/store/UIState.js +1 -1
- package/dist/esm/store/init/index.js +1 -1
- package/dist/esm/store/search-buttons/SearchButtonsStore.d.ts +1 -1
- package/dist/esm/store/search-buttons/SearchButtonsStore.js +1 -1
- package/dist/esm/store/types.d.ts +0 -2
- package/dist/esm/tools/sentry.js +1 -1
- package/dist/esm/utils/i18n.d.ts +5 -3
- package/dist/esm/utils/i18n.js +1 -1
- package/dist/esm/utils/mapEntity.js +1 -1
- package/dist/esm/utils/math.d.ts +7 -0
- package/dist/esm/utils/math.js +1 -0
- package/dist/esm/utils/use-shadow.d.ts +1 -1
- package/dist/esm/utils/use-shadow.js +1 -1
- package/dist/esm/wayfinding/_PLAN-public-api.d.ts +220 -0
- package/dist/esm/wayfinding/_PLAN-public-api.js +1 -0
- package/dist/esm/{utils/wayfinding.d.ts → wayfinding/__integration__/legacy/legacyWayfinding.d.ts} +5 -4
- package/dist/esm/wayfinding/__integration__/legacy/legacyWayfinding.js +1 -0
- package/dist/esm/wayfinding/__tests__/helpers.d.ts +21 -0
- package/dist/esm/wayfinding/__tests__/helpers.js +1 -0
- package/dist/esm/wayfinding/adapters/boothToWaypoint.d.ts +12 -0
- package/dist/esm/wayfinding/adapters/boothToWaypoint.js +1 -0
- package/dist/esm/wayfinding/adapters/graphDataSource.d.ts +3 -0
- package/dist/esm/wayfinding/adapters/graphDataSource.js +1 -0
- package/dist/esm/wayfinding/graph/buildGraph.d.ts +3 -0
- package/dist/esm/wayfinding/graph/buildGraph.js +1 -0
- package/dist/esm/wayfinding/graph/buildNGraph.d.ts +9 -0
- package/dist/esm/wayfinding/graph/buildNGraph.js +1 -0
- package/dist/esm/wayfinding/graph/constants.d.ts +3 -0
- package/dist/esm/wayfinding/graph/constants.js +1 -0
- package/dist/esm/wayfinding/graph/findShortestPath.d.ts +14 -0
- package/dist/esm/wayfinding/graph/findShortestPath.js +1 -0
- package/dist/esm/wayfinding/graph/graphCache.d.ts +6 -0
- package/dist/esm/wayfinding/graph/graphCache.js +1 -0
- package/dist/esm/wayfinding/graph/graphHelpers.d.ts +8 -0
- package/dist/esm/wayfinding/graph/graphHelpers.js +1 -0
- package/dist/esm/wayfinding/graph/linkCost.d.ts +4 -0
- package/dist/esm/wayfinding/graph/linkCost.js +1 -0
- package/dist/esm/wayfinding/graph/pathfinder/aStarPathFinder.d.ts +3 -0
- package/dist/esm/wayfinding/graph/pathfinder/aStarPathFinder.js +1 -0
- package/dist/esm/wayfinding/graph/pathfinder/parseNodeId.d.ts +9 -0
- package/dist/esm/wayfinding/graph/pathfinder/parseNodeId.js +1 -0
- package/dist/esm/wayfinding/index.d.ts +18 -0
- package/dist/esm/wayfinding/index.js +1 -0
- package/dist/esm/wayfinding/rendering/computeTransitionPoints.d.ts +31 -0
- package/dist/esm/wayfinding/rendering/computeTransitionPoints.js +1 -0
- package/dist/esm/wayfinding/rendering/normalizeRouteDirection.d.ts +19 -0
- package/dist/esm/wayfinding/rendering/normalizeRouteDirection.js +1 -0
- package/dist/esm/wayfinding/rendering/routeGeometry.d.ts +16 -0
- package/dist/esm/wayfinding/rendering/routeGeometry.js +1 -0
- package/dist/esm/wayfinding/routing/buildMultiPointRoute.d.ts +11 -0
- package/dist/esm/wayfinding/routing/buildMultiPointRoute.js +1 -0
- package/dist/esm/wayfinding/routing/buildRoute.d.ts +9 -0
- package/dist/esm/wayfinding/routing/buildRoute.js +1 -0
- package/dist/esm/wayfinding/routing/findNearestGraphPoint.d.ts +21 -0
- package/dist/esm/wayfinding/routing/findNearestGraphPoint.js +1 -0
- package/dist/esm/wayfinding/routing/getGraphLines.d.ts +14 -0
- package/dist/esm/wayfinding/routing/getGraphLines.js +1 -0
- package/dist/esm/wayfinding/routing/getRouteLength.d.ts +3 -0
- package/dist/esm/wayfinding/routing/getRouteLength.js +1 -0
- package/dist/esm/wayfinding/routing/routeResult.d.ts +4 -0
- package/dist/esm/wayfinding/routing/routeResult.js +1 -0
- package/dist/esm/wayfinding/types.d.ts +76 -0
- package/dist/esm/wayfinding/types.js +1 -0
- package/package.json +3 -3
- package/dist/browser/Debug-DazuGIJc.js +0 -40
- package/dist/browser/Gallery-BMcvPLO_.js +0 -288
- package/dist/esm/store/LanguageStore.d.ts +0 -19
- package/dist/esm/store/LanguageStore.js +0 -1
- package/dist/esm/store/init/init-language.d.ts +0 -3
- package/dist/esm/store/init/init-language.js +0 -1
- package/dist/esm/utils/toRadians.d.ts +0 -3
- package/dist/esm/utils/toRadians.js +0 -1
- package/dist/esm/utils/wayfinding.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as g}from"react/jsx-runtime";import{observer as z}from"mobx-react-lite";import r,{Suspense as a,useEffect as E,useState as M}from"react";import w from"classnames";import t,{layersStore as d,uiState as o}from"../store";import f from"../tools/settings";import{isWebGlSupported as L}from"../utils";import R from"../utils/is-debug";import O from"../utils/is-iframe";import G from"./Controls";import D from"./LevelSelector";import T from"./LargeMessage";import"../styles/main.scss";import"./Layout.scss";import A from"./LogoOverlay";import B from"./SearchBox";import j from"./SearchButtons/SearchButtons";import F from"./MobileToggleButton";import{CategoryFilterModal as P}from"./CategoryFilterModal";import I from"./SessionsFiltersModal";import V from"./SpeakersFiltersModal";import $ from"./Map/Map";import{MapLoader as H}from"./Mapbox/MapLoader";import K from"./OverlayContainer";import _ from"./Share";import N from"./Ws";import{LayersMode as y}from"../store/LayerStore";import U from"./LayersLoading";import{fpGeo as W}from"./Mapbox/utils/fpGeo";import{checkUserIsGDPR as X,GaEventActions as n,hasUserConsent as q,sendEventToGa as l,setConsentSettings as S,setCookieConsent as C}from"../tools/gtag";import Y from"./HeatmapLegend";import{useReaction as m}from"../utils/mobx";import J from"../tools/track-event";import Q from"./GlobalErrorMessage";const Z=r.lazy(()=>import("./Demo")),ee=r.lazy(()=>import("./Free")),oe=r.lazy(()=>import("./Debug")),te=r.lazy(()=>import("./Mapbox/Mapbox")),ie=r.lazy(()=>import("./Threejs/ThreeComponent")),re=r.lazy(()=>import("./Modal")),ae=r.lazy(()=>import("./CookieConsent")),le=r.lazy(()=>import("./GpsLoader")),se=r.lazy(()=>import("./Kiosk/SetKioskMode")),ne=r.lazy(()=>import("./Kiosk/ShowKiosk"));export default z(function({offHistory:b,allowConsent:p}){const[u,c]=M(!1);let s=null;o.bannerType==="demo"?s=e(Z,{}):o.bannerType==="free"&&(s=e(ee,{}));const v=()=>{C(!0),S(),t.uiState.hideCookieConsent=!0},x=()=>{C(!1),S(),t.uiState.hideCookieConsent=!0};E(()=>{async function i(){const k=await X();c(!!(k||k===null))}q(p)?c(!0):i()},[]),m(()=>o.selectedExhibitor,i=>{t.heatmapStore.forceTrack?(l(t.heatmapStore.forceTrack.action,t.heatmapStore.forceTrack.label),t.heatmapStore.forceTrack=null):i&&(J("exview",i.id),l(n.ViewExhibitor,i.name))}),m(()=>o.selectedBooth,i=>i?.name&&l(n.ViewBooth,i.name)),m(()=>o.selectedCategory,i=>i?.name&&l(n.ViewCategory,i?.name)),m(()=>o.selectedEventItem,i=>i?.name&&l(n.ViewExhibitor,i.name));const h=!o.hideCookieConsent&&!o.kiosk&&u&&p===void 0;return e("div",{id:"efp-layout",className:w("layout",{"efp-kiosk":o.kiosk,"efp-kiosk-route-active":o.kiosk&&o.selectedRoute?.from&&o.selectedRoute?.to,"efp-layers-mode":t.layerStore.mode,"efp-ws-mode":o.wsShown,"efp-no-overlay":o.noOverlay}),dir:o.rtl?"rtl":"ltr",style:{"--ui-scale":o.uiScale.toString()},children:g("div",{className:`layout__fixed expo-${f.EXPO} overlay-${t.uiState.overlayPosition}`,children:[(d.mode===y.Radio||d.mode===y.CheckBox)&&!o.floorsControlHidden&&t.initialized&&e(D,{}),!o.noOverlay&&t.initialized&&e(K,{isGDPR:u,allowConsent:p}),t.initialized&&e(A,{}),!o.noOverlay&&t.initialized&&e(B,{}),!o.noOverlay&&t.initialized&&e(j,{}),!o.noOverlay&&t.initialized&&e(F,{}),!o.mapControlsHidden&&t.initialized&&e(G,{}),!o.hideHeaderLogo&&t.initialized&&e(N,{}),t.routeStore.gpsEnabled&&e(le,{requestCompassAllowed:!h}),L&&e($,{}),t.mapboxStore.mapBoxActivated&&t.mapboxStore.mapBoxEnabled&&e(a,{fallback:e(H,{}),children:W?.properties?.mode==="threejs"?e(ie,{isMapbox:t.mapboxStore.isMapbox,expo:f.EXPO}):e(te,{})}),s&&!o.hideFreeOrDemo&&!o.heatmap?e(a,{fallback:null,children:s}):null,h&&e(a,{fallback:null,children:e(ae,{link:"https://expofp.com/pages/viewer-cookie-consent",onClickAccept:v,onClickReject:x})}),R?e(a,{fallback:null,children:e(oe,{})}):null,O&&e(T,{}),o.modalActive.share?e(a,{fallback:null,children:e(re,{type:"share",open:o.modalActive.share,onClickClose:()=>t.toggleModal("share"),children:e(_,{title:o.selectedExhibitor?.name||o.selectedEventItem?.name,url:b?`${window.location.origin}?${encodeURI(o.selectedExhibitor?.slug||o.selectedEventItem?.slug)}`:window.location.href})})}):null,o.heatmap||o.heatmapYah?e(Y,{style:{left:`calc(50% + ${t.uiState.mapVisibleStart/2}px)`},className:o.responsiveClass,max:t.heatmapStore.minAndMaxClicks.max,min:t.heatmapStore.minAndMaxClicks.min,colors:f.heatmapColors}):null,e(U,{active:!d.layersLoaded}),e("div",{id:"fps"}),t.initialized&&e(P,{}),t.initialized&&e(I,{store:t.sessionsFilterStore}),t.initialized&&e(V,{store:t.speakerFilterStore}),e(Q,{}),t.initialized&&o.setKioskModeEnabled&&e(a,{fallback:null,children:e(se,{})}),t.initialized&&!o.setKioskModeEnabled&&e(a,{fallback:null,children:e(ne,{})})]})})});
|
|
1
|
+
import{jsx as e,jsxs as g}from"react/jsx-runtime";import{observer as z}from"mobx-react-lite";import r,{Suspense as a,useEffect as E,useState as M}from"react";import w from"classnames";import t,{layersStore as d,uiState as o}from"../store";import f from"../tools/settings";import{isWebGlSupported as L}from"../utils";import R from"../utils/is-debug";import O from"../utils/is-iframe";import G from"./Controls";import D from"./LevelSelector";import T from"./LargeMessage";import"../styles/main.scss";import"./Layout.scss";import A from"./LogoOverlay";import B from"./SearchBox";import j from"./SearchButtons/SearchButtons";import F from"./MobileToggleButton";import{CategoryFilterModal as P}from"./CategoryFilterModal";import I from"./SessionsFiltersModal";import V from"./SpeakersFiltersModal";import $ from"./Map/Map";import{MapLoader as H}from"./Mapbox/MapLoader";import K from"./OverlayContainer";import _ from"./Share";import N from"./Ws";import{LayersMode as y}from"../store/LayerStore";import U from"./LayersLoading";import{fpGeo as W}from"./Mapbox/utils/fpGeo";import{checkUserIsGDPR as X,GaEventActions as n,hasUserConsent as q,sendEventToGa as l,setConsentSettings as S,setCookieConsent as C}from"../tools/gtag";import Y from"./HeatmapLegend";import{useReaction as m}from"../utils/mobx";import J from"../tools/track-event";import Q from"./GlobalErrorMessage";const Z=r.lazy(()=>import("./Demo")),ee=r.lazy(()=>import("./Free")),oe=r.lazy(()=>import("./Debug")),te=r.lazy(()=>import("./Mapbox/Mapbox")),ie=r.lazy(()=>import("./Threejs/ThreeComponent")),re=r.lazy(()=>import("./Modal")),ae=r.lazy(()=>import("./CookieConsent")),le=r.lazy(()=>import("./GpsLoader")),se=r.lazy(()=>import("./Kiosk/SetKioskMode")),ne=r.lazy(()=>import("./Kiosk/ShowKiosk"));export default z(function({offHistory:b,allowConsent:p}){const[u,c]=M(!1);let s=null;o.bannerType==="demo"?s=e(Z,{}):o.bannerType==="free"&&(s=e(ee,{}));const v=()=>{C(!0),S(),t.uiState.hideCookieConsent=!0},x=()=>{C(!1),S(),t.uiState.hideCookieConsent=!0};E(()=>{async function i(){const k=await X();c(!!(k||k===null))}q(p)?c(!0):i()},[]),m(()=>o.selectedExhibitor,i=>{t.heatmapStore.forceTrack?(l(t.heatmapStore.forceTrack.action,t.heatmapStore.forceTrack.label),t.heatmapStore.forceTrack=null):i&&(J("exview",i.id),l(n.ViewExhibitor,i.name))}),m(()=>o.selectedBooth,i=>i?.name&&l(n.ViewBooth,i.name)),m(()=>o.selectedCategory,i=>i?.name&&l(n.ViewCategory,i?.name)),m(()=>o.selectedEventItem,i=>i?.name&&l(n.ViewExhibitor,i.name));const h=!o.hideCookieConsent&&!o.kiosk&&u&&p===void 0;return e("div",{id:"efp-layout",className:w("layout",{"efp-kiosk":o.kiosk,"efp-kiosk-route-active":o.kiosk&&o.selectedRoute?.from&&o.selectedRoute?.to,"efp-layers-mode":t.layerStore.mode,"efp-ws-mode":o.wsShown,"efp-no-overlay":o.noOverlay}),dir:o.rtl?"rtl":"ltr",style:{"--ui-scale":o.uiScale.toString()},children:g("div",{className:`layout__fixed expo-${f.EXPO} overlay-${t.uiState.overlayPosition}`,children:[(d.mode===y.Radio||d.mode===y.CheckBox)&&!o.floorsControlHidden&&t.initialized&&e(D,{}),!o.noOverlay&&t.initialized&&e(K,{isGDPR:u,allowConsent:p}),t.initialized&&e(A,{}),!o.noOverlay&&t.initialized&&e(B,{}),!o.noOverlay&&t.initialized&&e(j,{}),!o.noOverlay&&t.initialized&&e(F,{}),!o.mapControlsHidden&&t.initialized&&e(G,{}),!o.hideHeaderLogo&&t.initialized&&e(N,{}),t.routeStore.gpsEnabled&&e(le,{requestCompassAllowed:!h}),L&&e($,{}),t.mapboxStore.mapBoxActivated&&t.mapboxStore.mapBoxEnabled&&e(a,{fallback:e(H,{}),children:W?.properties?.mode==="threejs"?e(ie,{isMapbox:t.mapboxStore.isMapbox,expo:f.EXPO}):e(te,{})}),s&&!o.hideFreeOrDemo&&!o.heatmap?e(a,{fallback:null,children:s}):null,h&&e(a,{fallback:null,children:e(ae,{link:"https://expofp.com/pages/viewer-cookie-consent",onClickAccept:v,onClickReject:x})}),R?e(a,{fallback:null,children:e(oe,{})}):null,O&&e(T,{}),o.modalActive.share?e(a,{fallback:null,children:e(re,{type:"share",open:o.modalActive.share,onClickClose:()=>t.toggleModal("share"),children:e(_,{title:o.selectedExhibitor?.name||o.selectedEventItem?.name||"",url:b?`${window.location.origin}?${encodeURI(o.selectedExhibitor?.slug||o.selectedEventItem?.slug)}`:window.location.href})})}):null,o.heatmap||o.heatmapYah?e(Y,{style:{left:`calc(50% + ${t.uiState.mapVisibleStart/2}px)`},className:o.responsiveClass,max:t.heatmapStore.minAndMaxClicks.max,min:t.heatmapStore.minAndMaxClicks.min,colors:f.heatmapColors}):null,e(U,{active:!d.layersLoaded}),e("div",{id:"fps"}),t.initialized&&e(P,{}),t.initialized&&e(I,{store:t.sessionsFilterStore}),t.initialized&&e(V,{store:t.speakerFilterStore}),e(Q,{}),t.initialized&&o.setKioskModeEnabled&&e(a,{fallback:null,children:e(se,{})}),t.initialized&&!o.setKioskModeEnabled&&e(a,{fallback:null,children:e(ne,{})})]})})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import{useObserver as h}from"mobx-react-lite";import{Suspense as
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{useObserver as h}from"mobx-react-lite";import{Suspense as T,lazy as g,useEffect as c,useRef as y,useState as I,useCallback as L}from"react";import{uiState as t}from"../store";import{getLocale as v}from"../utils/i18n";import{LANGUAGE_TYPE as x}from"../constants";import S from"./LanguageRow";import"./List.scss";import b from"./LayersLoading";const m=()=>import("react-virtuoso").then(s=>({default:s.Virtuoso})).catch(()=>new Promise(s=>setTimeout(()=>s(m()),3e3))),C=g(m);export default function R({updatedScrollableRef:s,updateScroll:n}){const[i,a]=I(null),l=y(null);c(()=>{a(s??null)},[s]),c(()=>{const o=t.getListScrollTop(t.list.type);if(o>0){const e=setTimeout(()=>{l.current&&l.current.scrollTo({top:o,behavior:"auto"})},100);return()=>clearTimeout(e)}},[t.list.type]);const u=L(()=>{l.current?l.current.getState(o=>{const e=o?.scrollTop||0;t.setListScrollTop(t.list?.type,e)}):i?.current&&t.setListScrollTop(t.list?.type,i.current.scrollTop||0)},[i]);c(()=>()=>{u()},[]);const p=({index:o})=>{const e=t.listItems[o];return e.entity.type===x?r(S,{item:e},e.id):(console.error("Invalid item type"),null)},f=()=>{n&&setTimeout(n)},d=()=>{n&&n()};return h(()=>{const o=t.listItems.findIndex(e=>e.id===v());return r("div",{style:{height:"100%",cursor:"pointer",resize:"both",minHeight:100},children:i&&r(T,{fallback:r(b,{active:!0,isCenter:!0}),children:r(C,{ref:l,className:"list-virtual",style:{minHeight:t.listItems.length?"1px":0},data:t.listItems,itemContent:e=>p({index:e}),itemsRendered:f,totalListHeightChanged:d,customScrollParent:i.current,totalCount:t.listItems.length,overscan:20,increaseViewportBy:200,initialTopMostItemIndex:o!==-1?o:0,components:{EmptyPlaceholder:()=>r("div",{className:"list-empty",children:"No items to show"})}})})})})}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import u,{layersStore as I}from"../../../../store";import{reaction as v}from"mobx";import{createImageCanvas as C}from"./canvases";import{createImageDef as x,getBounds as R}from"../../../../renderer";import{toRadians as F}from"../../../../utils/
|
|
1
|
+
import u,{layersStore as I}from"../../../../store";import{reaction as v}from"mobx";import{createImageCanvas as C}from"./canvases";import{createImageDef as x,getBounds as R}from"../../../../renderer";import{toRadians as F}from"../../../../utils/math";const L="_selected";export const MARKER_LAYER_NAME="markers";export function configMarkers(a){const h=[],l=new Map,s=new Map;let n=[];const m=a.scene.rootLayer.children.find(e=>e.name===MARKER_LAYER_NAME);async function k(e){const o=[];e.forEach(c=>{const{name:i,content:t,width:r,height:g,scale:y}=c;if(l.has(i))return;const f=new Image,M=new Promise((D,w)=>{f.onload=()=>{l.set(i,{img:f,width:r,height:g,scale:y}),D()},f.onerror=S=>{w(S)}});o.push(M),f.src=t,f.crossOrigin="anonymous"}),await Promise.all(o)}const d=e=>`marker-ptScaleHandlers-${e.id}`,E=e=>`marker-rollHandlers-${e.id}`,P=(e,o)=>{a.onPtScale(o,c=>{const{center:i,rotation:t}=e.bounds,{width:r,height:g}=e.source;return e.bounds=R(i.x,i.y,r,g,c,t),e})},H=(e,o)=>{a.onRoll(o,c=>(e.bounds.rotation=c,e))};function $(){const e=u.routeStore.markersData.markers;if(!e.length)return;n=[];const o=a.getCameraState(),c=o?.ptScale||1,i=F(o?.roll)||0;e.forEach(t=>{const r=l.get(t.icon);if(!r)return;const g=r.scale||window.devicePixelRatio,y=t.icon;if(!s.has(y)){const b=C(r.img,r.width,r.height,g);s.set(y,b)}const f=s.get(y),M=l.get(t.selectedIcon),D=t.selectedIcon;if(!s.has(D)){const b=C(r.img,M.width,M.height,g);s.set(D,b)}const w=s.get(D),S=I.findLayer(t.z)?.visible??!0,_=R(t.x,t.y,f.width,f.height,c,i),z=R(t.x,t.y,w.width,w.height,c,i);let p;switch(t.position){case"lefttop":p=[0,0];break;case"centertop":p=[.5,0];break;case"centerbottom":p=[.5,1];break;default:p=[.5,.5]}const A={...x(f,_,{hidden:!S,origin:p}),id:t.id,scale:g},K={...x(w,z,{hidden:!(S&&t.active),origin:p}),id:`${t.id}${L}`,scale:g};n.push(A,K)}),m.children=n,n.forEach(t=>{P(t,d(t)),H(t,E(t))})}function B(){n.forEach(e=>{a.ptScaleRegistry.unregisterByName(d(e)),a.rollRegistry.unregisterByName(E(e))}),m.children=[],n=[]}function N(){const e=u.routeStore.markersData.markers;e.length&&e.forEach(o=>{const c=n.find(r=>r.id===o.id),i=n.find(r=>r.id===`${o.id}${L}`);if(!c)return;const t=I.findLayer(o.z)?.visible??!0;o.active?(c.hidden=!0,i.hidden=!(t&&o.active)):(c.hidden=!t,i.hidden=!0)})}return h.push(v(()=>[u.routeStore.selectedMarkers,u.layerStore.visible],()=>{if(!u.routeStore.markersData.markers.length){B(),a.update(m);return}N(),a.update(...n)})),h.push(v(()=>u.routeStore.markersData.markers,()=>{k(u.routeStore.markersData.icons).then(()=>{$(),a.update(m)})})),function(){h.forEach(o=>o()),h.length=0}}export function getMarkerFromClick(a,h,l){for(const s of u.routeStore.markersData.markers){const n=u.routeStore.markersData.icons.find(d=>d.name===s.icon);if(!n)continue;const m=n.width*l*devicePixelRatio,k=n.height*l*devicePixelRatio;if(O(a,h,s.x,s.y,m,k)){const d=u.layerStore.findLayer(s.z);if(!d||d&&d.visible)return s}}return null}function O(a,h,l,s,n,m){const k=a>=l-n&&a<=l+n,d=h>=s-m&&h<=s+m;return k&&d}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Point, Line } from "simple-geometry";
|
|
2
1
|
import { RendererService } from "../../../../renderer";
|
|
3
2
|
export declare const WF_TRAIL_LAYER_NAME = "wf-trail-points";
|
|
4
3
|
export declare const WF_POINTS_LAYER_NAME = "wf-points";
|
|
@@ -6,5 +5,4 @@ export declare const WF_CURRENT_POSITION_NAME = "wf-current-position";
|
|
|
6
5
|
export declare const WF_LINES_LAYER_NAME = "wf-lines";
|
|
7
6
|
export declare const WF_LINES_ANIMATED_LAYER_NAME = "wf-lines-animated";
|
|
8
7
|
export default function configWf(rendererService: RendererService): () => void;
|
|
9
|
-
export declare function splitPolyLine(lines: Line[], interval: number): Point[];
|
|
10
8
|
//# sourceMappingURL=config-wf.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import dt from"color";import{observable as mt,reaction as it}from"mobx";import{lineLength as Pt}from"simple-geometry";import Yt from"../../../../core/Rect";import s,{layersStore as bt,uiState as g}from"../../../../store";import{LayersMode as St}from"../../../../store/LayerStore";import{getGraphLines as $t,getRouteLength as pt,RoutePoint as ft}from"../../../../utils/wayfinding";import{strEqual as O}from"../../../../utils/strEqual";import{createArrowCurrentCanvas as Ct,createCurrentCanvas as gt,createImageCanvas as Z,createTargetCanvas as Ot,createYahCanvas as kt}from"./canvases";import{toRadians as It}from"../../../../utils/toRadians";import{areLayersEnabled as Et}from"../../../../utils/areLayersEnabled";import{createImageDef as tt,createLineDef as xt,createCircleCanvas as Ht,getBounds as S,getRotation as qt}from"../../../../renderer";import{animateLineSegments as Ut}from"../../../../renderer/engine-core/animation";import{splitRouteByPoint as Wt,snapPositionToRoute as Xt,getThresholdSafe as Gt,getThresholdFromMetersToSvg as Kt,SNAP_THRESHOLD_METERS as jt}from"./route-snapping";import{fpGeo as Tt}from"../../../Mapbox/utils/fpGeo";const I=devicePixelRatio;let z=[],at=null,v=[],ht=dt("#00A2FF"),Jt=dt("#FF9F06"),At="#A4CCE2",Qt="#0794EA";const ct=34;let K,j,J,Q,et,Rt,_t,Dt,lt,A,_,k,H,V,Lt=[];function Vt(){z=[];const t=s.routeStore.currentRouteLayer?.name;at=ee();const n=at&&(Et()?O(t,at.destination?.layer):!0);if(at){const l=at?.routePoint;l&&O(t,l.layer)&&(z=ne(l,z))}let o=[],i=[];for(let l=0;l<v.length;l++){let x=v[l],d=s.layerStore.mode==St.Default?!0:s.layerStore.layers.find(r=>r.name==t&&t===x.p0.layer)?.visible||!1;!x.virtual&&d&&o.push(x),(x.virtual||!d||l===v.length-1)&&o.length&&(i=o.map(({p0:r,p1:u})=>(z.push({x:r.x,y:r.y},{x:u.x,y:u.y}),{p0:r,p1:u})))}z.length||(_.hidden=!0,A.hidden=!0);let h=1e6,c=1e6,y=0,m=0;z.forEach(l=>{l.x<h&&(h=l.x),l.y<c&&(c=l.y),l.x>y&&(y=l.x),l.y>m&&(m=l.y)});const p=Yt.fromX1y1x2y2(h,c,y,m);return{rect:z.length&&(p.w||p.h)?p.withPadding(p.w,p.h):null,lines:i,addTrailPoints:n}}export const WF_TRAIL_LAYER_NAME="wf-trail-points",WF_POINTS_LAYER_NAME="wf-points",WF_CURRENT_POSITION_NAME="wf-current-position",WF_LINES_LAYER_NAME="wf-lines",WF_LINES_ANIMATED_LAYER_NAME="wf-lines-animated";export default function Zt(t){let n=null;const o=[];let i=null,h=mt.box([]),c=mt.box([],{deep:!1}),y=mt.box([],{deep:!1});const m=t.scene.rootLayer.children,p=m.find(e=>e.name===WF_POINTS_LAYER_NAME),l=m.find(e=>e.name===WF_CURRENT_POSITION_NAME),x=m.find(e=>e.name===WF_LINES_LAYER_NAME),d=m.find(e=>e.name===WF_TRAIL_LAYER_NAME),r=m.find(e=>e.name===WF_LINES_ANIMATED_LAYER_NAME),u=Gt(Tt?.properties?.config?.snapThreshold)||jt,R=Kt({thresholdInMeters:u,gpsConfig:Tt?.properties?.config});let E=[];const D=s.fp.icons.get("destination");D?(D.id="destination",j=Z(D,ct,ct,I)):j=Ot(I,Jt.hex()),_=tt(j,S(0,0,j.width,j.height),{hidden:!0});const q=s.fp.icons.get("departure");q?(q.id="departure",K=Z(q,ct,ct,I)):K=gt(I,ht.hex()),A=tt(K,S(0,0,K.width,K.height),{hidden:!0}),J=gt(I,ht.hex()),J.id="current-location",k=tt(J,S(0,0,J.width,J.height),{hidden:!0,origin:[.5,.5]});const T=s.fp.icons.get("transition");T?(T.id="transition",Rt=Z(T,34,34,I)):Rt=gt(I,ht.hex());const L=s.fp.icons.get("transition_up");L&&(L.id="transition_up",_t=Z(L,56,34,I));const M=s.fp.icons.get("transition_down");M&&(M.id="transition_down",Dt=Z(M,56,34,I));const Y=s.fp.icons.get("direction");Y?(Y.id="direction",Q=Z(Y,ct,ct,I)):Q=Ct(I,ht.hex()),H=tt(Q,S(0,0,Q.width,Q.height),{hidden:!0});const nt=s.fp.icons.get("yah");nt?et=Z(nt,yt(64,32),yt(90,32),I):et=kt(I,"#ff4343"),et.id="current-location-2",V=tt(et,S(0,0,et.width,et.height),{hidden:!0,origin:[.5,1]}),lt=Ht(4,dt("#b5b7bc").hex());function B(e=null){const a=s.layerStore.visible.map(f=>f.name);if(z=[],h.set([]),e||(v=[]),a.length&&g.selectedRoute?.from?.rect&&g.selectedRoute?.to?.rect){let f=g.selectedRoute.from,w=g.selectedRoute.to;if(!v.length&&!e&&(v=$t(f,w,s.routeStore.onlyAccessible,g.selectedRoute.waypoints)),!v.length){if(s.routeStore.updateRoute(v),s.routeStore.updateRouteDistance(0),f.name!==w.name)throw new Error(`Route not found. From: ${f.name} to: ${w.name}`);return}const{rect:b,lines:$,addTrailPoints:P}=Vt();$.length?(te(t.scale),oe(t.scale,c),Nt(t,d,!P),t.ptScaleRegistry.unregisterByName(d.name),P&&t.onPtScale(d.name,()=>{const C=Nt(t,d)||[];return d.children=C,Lt=C,d})):t.ptScaleRegistry.unregisterByName(d.name),E=$,ot(),b&&(g.moveToRect=b)}else A.hidden=!0,_.hidden=!0;s.routeStore.updateRoute(v.filter(f=>!f.virtual)),h.get()||(A.hidden=!0,_.hidden=!0)}function N(){const e=s.routeStore.currentPosition,a=e?.angle?It(e.angle):null,f=s.routeStore.currentRouteLayer?.name,w=v.filter(F=>s.layerStore.mode==St.Default?!0:s.layerStore.layers.find(zt=>zt.name==f&&f===F.p0.layer)?.visible).filter(F=>!F.virtual);if(g.kioskData&&g.selectedRoute?.from){const F=s.routeStore.currentRouteLayer;A.hidden=g.selectedRoute?.from?.entity?.type==="route-cut-in"&&F?.name===g.selectedRoute?.from?.layer?.name,_.hidden=g.selectedRoute?.to?.entity?.type==="route-cut-in"&&F?.name===g.selectedRoute?.to?.layer?.name}if(e){const F=bt.findLayer(e.z)?.visible??!0;s.routeStore.iconType===0||g.selectedRoute?.from&&g.selectedRoute?.to?(V.hidden=!0,k.hidden=!F,k.dim=!F,k.bounds=S(e.x,e.y,J.width,J.height,t.scale),a!=null?(k.hidden=!0,H.hidden=!F,H.dim=!F,H.bounds=S(e.x,e.y,Q.width,Q.height,t.scale,a)):H.hidden=!0):(k.hidden=!0,H.hidden=!0,V.dim=!F,V.hidden=!F,V.bounds=S(e.x,e.y,et.width,et.height,t.scale))}else k.hidden=!0,V.hidden=!0,H.hidden=!0,W(),ot();if(!e||!z.length){t.update(H,k,V);return}const b=g.selectedRoute?.to,$=g.selectedRoute?.from,P=new ft($?.layer?.name,A.bounds.center.x,A.bounds.center.y),C=new ft(b?.layer?.name,_.bounds.center.x,_.bounds.center.y),X=Xt(e,w,{snapThreshold:R,fromPoint:P,toPoint:C,fromRect:$?.rect,toRect:b?.rect}),G=X.snapped?X.snappedPoint:e;ot(X,!0),H.bounds=S(G.x,G.y,Q.width,Q.height,t.scale,a),k.bounds=S(G.x,G.y,J.width,J.height,t.scale,a),t.update(H,k,V)}function rt(){const e=[{point:H,name:"wf-current-arrow"},{point:k,name:"wf-current-location"},{point:V,name:"wf-current-location-2"}];l.children=e.map(({point:a})=>a),e.forEach(({point:a,name:f})=>st(a,f)),t.update(l)}function U(e=!1){const a=[A,_,...c.get(),...y.get()];e&&(Ft(!0),d.children=[],a.forEach(f=>{f.source.id.includes("kiosk")||(f.hidden=!0)})),p.children=a,t.update(p,d)}function W(e,a){const f=v.filter(C=>!C.virtual),w=pt(f);if(!e?.snapped){s.routeStore.updateRouteDistance(w);return}const b=g.selectedRoute?.to,$=pt(a);let P;if(e.snappedPoint?.layer===b?.layer?.name||b?.layer?.name===s.routeStore.currentRouteLayer?.name)P=$;else if(e.snappedPoint?.layer!==b?.layer?.name&&e.snappedPoint?.layer===s.routeStore.currentRouteLayer?.name){const C=f.filter(G=>G.p0.layer!==e?.snappedPoint?.layer&&G.p1.layer!==e?.snappedPoint?.layer),X=pt(C);P=$+X}P&&s.routeStore.updateRouteDistance(P)}function ot(e,a=!1){const f=g.selectedRoute?.from,w=g.selectedRoute?.to;if(!f||!w)return;const b=re(v,E,new ft(f?.layer?.name,f?.rect.cx,f?.rect.cy),new ft(w?.layer?.name,w?.rect.cx,w?.rect.cy));if(!e?.snapped){const C=b.map(X=>xt(X,At));s.routeStore.currentPosition&&s.routeStore.currentRouteLayer&&s.routeStore.currentPosition?.z?.toString()===s.routeStore.currentRouteLayer?.name.toString()&&W(),wt([],C,a);return}const{passed:$,remaining:P}=Wt(b,e.snappedPoint);P.length&&(P[0]={...P[0],p0:e.snappedPoint}),W(e,P),wt($.map(C=>xt(C,"#B5B7BC")),P.map(C=>xt(C,At)),a)}const st=(e,a)=>t.onPtScale(a,f=>(e.hidden||(e.bounds=S(e.bounds.center.x,e.bounds.center.y,e.source.width,e.source.height,f,e.bounds.rotation)),e)),ut=(e,a)=>t.onRoll(a,f=>{const w=qt(f,e.bounds.rotation);return w!==void 0&&(e.bounds.rotation=e.bounds.rotation+w),e});function Ft(e){n&&(n.stop(),n=null),r.children=[],e&&(x.children=[]),t.update(r,x)}function wt(e=[],a=[],f=!1){let w=0;if(n&&(f&&(w=n.getProgress()),n.stop(),n=null),x.children=[...e,...a],!a.length){r.children=[],t.update(r,x);return}const b=a.map(P=>({...P,color:Qt}));n=Ut(b,(P,C,X)=>{if(X)r.children=[];else{const G=b.slice(0,C);r.children=[...G,P]}t.update(r)},()=>t.scale,w)??null,t.update(x)}o.push(it(()=>[s.layerStore.layersLoaded],()=>{B(),N(),U()}));const vt=it(()=>[s.routeStore.currentRouteLayer,g.getRouteNextFloor],()=>{s.layerStore.layersLoaded&&(i!==null&&clearTimeout(i),i=setTimeout(()=>{B(s.routeStore.currentRouteLayer),N(),U(),i=null},0))});o.push(()=>{i!==null&&(clearTimeout(i),i=null),vt()}),o.push(it(()=>[g.selectedRoute,s.routeStore.onlyAccessible],()=>{B(),N(),U(!g.selectedRoute)})),o.push(it(()=>s.routeStore.currentPosition,()=>{N(),U()})),o.push(it(()=>c.get(),e=>{const a="transitionPoints";t.ptScaleRegistry.unregisterByPrefix(a),t.rollRegistry.unregisterByPrefix(a),e.length&&e.forEach((f,w)=>{const b=`${a}-${w}`;st(f,b),ut(f,b)})})),o.push(it(()=>[y.get()],()=>{const e=y.get(),a="kioskArrows";t.ptScaleRegistry.unregisterByPrefix(a),e.length&&e.forEach((f,w)=>st(f,`${a}-${w}`))})),o.push(it(()=>[g.kioskData,bt.floors.find(e=>e.active),g.selectedRoute],([e,a])=>{y.set([]);const f=Et()?e?.z===a?.name:!0;e&&f&&ie(e,{skipdim:!0,visible:!0,pixelRatio:I},t.scale,y),U()})),[{point:A,name:"wf-source"},{point:_,name:"wf-destination"}].forEach(({point:e,name:a})=>{st(e,a),ut(e,a)}),U(),N(),rt();function Bt(){n&&(n.stop(),n=null),o.forEach(e=>e()),o.length=0}return Bt}function te(t){const n=s.routeStore.currentRouteLayer?.name,o=z;let i=g.selectedRoute?.from,h=g.selectedRoute?.to;const c=g.selectedRoute?.waypoints;if(i?.entity.type==="route-cut-in"&&(i=null),h?.entity.type==="route-cut-in"&&(h=null),!o.length)return;const y=[{key:"sourceLocation",rect:i?.rect,index:void 0},{key:"destinationLocation",rect:h?.rect,index:void 0}];c&&y.push(...c?.map((d,r)=>({key:`waypoint-${d.externalId}`,index:r,rect:d.rect})));const m=n?O(n,i?.layer?.name):!0,p=n?O(n,h?.layer?.name):!0;let l=!1,x=!1;o.forEach(({x:d,y:r})=>{for(const{key:u,rect:R,index:E}of y)if(R?.containsPoint(d,r)){u==="sourceLocation"&&(A.bounds=S(d,r,K.width,K.height,t),A.hidden=!m,A.dim=!m,l=m),u==="destinationLocation"&&(_.bounds=S(d,r,j.width,j.height,t),_.hidden=!p,_.dim=!p,x=p);break}}),l||(A.bounds=S(o[o.length-1].x,o[o.length-1].y,K.width,K.height,t),A.hidden=!1,A.dim=!1),x||(_.bounds=S(o[0].x,o[0].y,j.width,j.height,t),_.hidden=!p,_.dim=!p)}function ee(){const{from:t,to:n}=s.uiState.selectedRoute||{},o="route-cut-in";return t&&t?.entity.type===o||n&&n?.entity.type===o?s.routeStore.defaultFrom:null}function ne(t,n){if(!t||!n.length)return n;const o=n.reduce((i,h,c)=>Pt(t,h)<Pt(t,n[i])?c:i,0);return o<=n.length/2?n.slice(o):n.slice(0,o)}function oe(t,n){const o=s.routeStore.currentRouteLayer?.name,i=g.getRouteNextFloor,h=s.layerStore.floors.map(r=>r.name),c=(r,u)=>r.findIndex(R=>O(R,u)),y=c(h,o),m=c(h,i),p=m!==-1,l=v.filter(r=>o?r.virtual&&(O(r.p0.layer,o)||O(r.p1.layer,o))&&(O(r.p0.layer,i)||O(r.p1.layer,i)):r.virtual).flatMap(r=>[r.p0,r.p1]),x=[];let d;l.forEach(r=>{if(i&&!O(r.layer,i)&&(p&&m>y&&s.fp.icons.get("transition_up")?d=Dt:p&&m<y&&s.fp.icons.get("transition_down")?d=_t:d=Rt),d){const u=O(o,r.layer),R=S(r.x,r.y,d.width,d.height,t),E=tt(d,R,{hidden:!u,dim:!1});x.push(E)}}),n.set(x)}function ie(t,n,o=1,i){if(!t)return;const h=s.fp.icons.get("kiosk");h.id="kiosk";let c;if(h){const m=t?.iconSizePercent?t.iconSizePercent/100:1,p=55;c=Z(h,yt(199*m,p),yt(152*m,p),I)}else c=Ct(I,dt("#ee4422").hex());const y=tt(c,S(t.x,t.y,c.width,c.height,o,It(t.heading||0)),{hidden:!n.visible,dim:!n.skipdim});i.set([...i.get(),y])}function yt(t,n){return t*(1-n/100)}function Nt(t,n,o=!1){let i=z.length-1;if(g.selectedRoute?.to?.entity.type==="route-cut-in"&&(i=0),o){Lt=[],n.children=[],t.update(n);return}const h=t.scale,c=z[i],y=at?.destination;if(!c||!y)return;const m=lt.width,p=splitPolyLine([{p0:c,p1:y}],m*2*h);if(p.length<2)return;const l=y.x-c.x,x=y.y-c.y,d=Math.hypot(l,x),r={x:(c.x+y.x)/2,y:(c.y+y.y)/2-d*.2},u=[c,r,y],R=p.map((E,D,q)=>{const T=(D+1)/(q.length+1),L=Mt(u,T);return tt(lt,S(L.x,L.y,lt.width,lt.height,h),{hidden:!1,dim:!1})})||[];return n.children=R,Lt=R,R}function Mt(t,n){if(t.length===1)return t[0];const o=[];for(let i=0;i<t.length-1;i++){const h=(1-n)*t[i].x+n*t[i+1].x,c=(1-n)*t[i].y+n*t[i+1].y;o.push({x:h,y:c})}return Mt(o,n)}export function splitPolyLine(t,n){if(t.length===0)return[];const o=[];let i=0;for(let m=0;m<t.length;m++){const p=t[m],l=p.p0,x=p.p1,d=x.x-l.x,r=x.y-l.y,u=Math.sqrt(d*d+r*r);if(u===0)continue;const R=d/u,E=r/u;let D=0;for(;i+D*n<=u;){const L=i+D*n,M=l.x+R*L,Y=l.y+E*L;o.push({x:M,y:Y}),D++}const q=i+(D-1)*n;let T=u-q;if(T=Math.max(T,0),m<t.length-1){const L=t[m+1],M=L.p0,Y=L.p1,nt=Y.x-M.x,B=Y.y-M.y,N=Math.sqrt(nt*nt+B*B);if(N===0)i=0;else{const rt=nt/N,U=B/N,W=R*rt+E*U,ot=T*W;i=n-ot}}else i=n-T;i=Math.max(i,0)}const h=t[0].p0;(o.length===0||!o[0]||o[0].x!==h.x||o[0].y!==h.y)&&o.unshift(h);const c=t[t.length-1].p1,y=o[o.length-1];return(o.length===0||!y||y.x!==c.x||y.y!==c.y)&&o.push(c),o}function re(t,n,o,i){if(!n.length)return n;const h=new Array(t.length);let c=0;for(let u=0;u<t.length;u++){const R=t[u],E=Math.hypot(R.p1.x-R.p0.x,R.p1.y-R.p0.y);h[u]=E,c+=E}const y=u=>u?String(u):null;function m(u){let R=0,E=1/0,D=1/0;const q=y(u.layer);for(let T=0;T<t.length;T++){const L=t[T],M=h[T],Y=y(L.p0.layer);if(!(q===null||Y===null||Y===q)){R+=M;continue}const B=L.p1.x-L.p0.x,N=L.p1.y-L.p0.y,rt=B*B+N*N;if(rt===0){R+=M;continue}const U=((u.x-L.p0.x)*B+(u.y-L.p0.y)*N)/rt,W=Math.max(0,Math.min(1,U)),ot=L.p0.x+B*W,st=L.p0.y+N*W,ut=Math.hypot(u.x-ot,u.y-st);ut<E&&(E=ut,D=R+M*W),R+=M}return{found:D!==1/0,fromStart:D,total:c}}const p=m(o),l=p.found?p:m(i);if(!l.found)return n;const x=l.fromStart,d=l.total-l.fromStart;return(p.found?d<x:x<d)?n.slice().reverse().map(u=>({...u,p0:u.p1,p1:u.p0})):n}
|
|
1
|
+
import ne from"color";import{observable as he,reaction as q}from"mobx";import{lineLength as Se}from"simple-geometry";import He from"../../../../core/Rect";import o,{layersStore as Ae,uiState as c}from"../../../../store";import{LayersMode as _e}from"../../../../store/LayerStore";import{boothToWaypoint as me,getGraphLines as We,graphDataSource as Ye,computeTransitionPoints as Ue,normalizeRouteDirection as Ge,bezierCurve as qe,splitPolyLine as Ke}from"../../../../wayfinding";import{decreaseByPercentage as oe}from"../../../../utils/math";import{strEqual as ie}from"../../../../utils/strEqual";import{createArrowCurrentCanvas as De,createCurrentCanvas as re,createImageCanvas as z,createTargetCanvas as Ve,createYahCanvas as Xe}from"./canvases";import{toRadians as Ie}from"../../../../utils/math";import{areLayersEnabled as ve}from"../../../../utils/areLayersEnabled";import{createImageDef as H,createLineDef as ye,createCircleCanvas as je,getBounds as R,getRotation as Je}from"../../../../renderer";import{animateLineSegments as Qe}from"../../../../renderer/engine-core/animation";import{splitRouteByPoint as Ze,snapPositionToRoute as et,getThresholdSafe as tt,getThresholdFromMetersToSvg as nt,SNAP_THRESHOLD_METERS as ot}from"./route-snapping";import{fpGeo as Ne}from"../../../Mapbox/utils/fpGeo";import{getRouteLength as pe}from"../../../../wayfinding";const L=devicePixelRatio;let I=[],X=null,T=[],Q=ne("#00A2FF"),it=ne("#FF9F06"),Fe="#A4CCE2",rt="#0794EA";const W=34;let B,M,k,$,Y,ge,Re,Le,xe,Z,C,E,N,F,O,we=[];function at(){I=[];const t=o.routeStore.currentRouteLayer?.name;X=lt();const r=X&&(ve()?ie(t,X.destination?.layer):!0);if(X){const l=X?.routePoint;l&&ie(t,l.layer)&&(I=ct(l,I))}let a=[],f=[];for(let l=0;l<T.length;l++){let _=T[l],x=o.layerStore.mode==_e.Default?!0:o.layerStore.layers.find(h=>h.name==t&&t===_.p0.layer)?.visible||!1;!_.virtual&&x&&a.push(_),(_.virtual||!x||l===T.length-1)&&a.length&&(f=a.map(({p0:h,p1:w})=>(I.push({x:h.x,y:h.y},{x:w.x,y:w.y}),{p0:h,p1:w})))}I.length||(E.hidden=!0,C.hidden=!0);let m=1e6,s=1e6,y=0,u=0;I.forEach(l=>{l.x<m&&(m=l.x),l.y<s&&(s=l.y),l.x>y&&(y=l.x),l.y>u&&(u=l.y)});const d=He.fromX1y1x2y2(m,s,y,u);return{rect:I.length&&(d.w||d.h)?d.withPadding(d.w,d.h):null,lines:f,addTrailPoints:r}}export const WF_TRAIL_LAYER_NAME="wf-trail-points",WF_POINTS_LAYER_NAME="wf-points",WF_CURRENT_POSITION_NAME="wf-current-position",WF_LINES_LAYER_NAME="wf-lines",WF_LINES_ANIMATED_LAYER_NAME="wf-lines-animated";export default function st(t){let r=null;const a=[];let f=null,m=he.box([]),s=he.box([],{deep:!1}),y=[],u=he.box([],{deep:!1});const d=t.scene.rootLayer.children,l=d.find(e=>e.name===WF_POINTS_LAYER_NAME),_=d.find(e=>e.name===WF_CURRENT_POSITION_NAME),x=d.find(e=>e.name===WF_LINES_LAYER_NAME),h=d.find(e=>e.name===WF_TRAIL_LAYER_NAME),w=d.find(e=>e.name===WF_LINES_ANIMATED_LAYER_NAME),U=tt(Ne?.properties?.config?.snapThreshold)||ot,ae=nt({thresholdInMeters:U,gpsConfig:Ne?.properties?.config});let ee=[];const j=o.fp.icons.get("destination");j?(j.id="destination",M=z(j,W,W,L)):M=Ve(L,it.hex()),E=H(M,R(0,0,M.width,M.height),{hidden:!0});const G=o.fp.icons.get("departure");G?(G.id="departure",B=z(G,W,W,L)):B=re(L,Q.hex()),C=H(B,R(0,0,B.width,B.height),{hidden:!0}),k=re(L,Q.hex()),k.id="current-location",N=H(k,R(0,0,k.width,k.height),{hidden:!0,origin:[.5,.5]});const K=o.fp.icons.get("transition");K?(K.id="transition",ge=z(K,34,34,L)):ge=re(L,Q.hex());const se=o.fp.icons.get("transition_up");se&&(se.id="transition_up",Re=z(se,56,34,L));const ue=o.fp.icons.get("transition_down");ue&&(ue.id="transition_down",Le=z(ue,56,34,L)),G?xe=z(G,W,W,L):xe=re(L,Q.hex());const le=o.fp.icons.get("direction");le?(le.id="direction",$=z(le,W,W,L)):$=De(L,Q.hex()),F=H($,R(0,0,$.width,$.height),{hidden:!0});const Pe=o.fp.icons.get("yah");Pe?Y=z(Pe,oe(64,32),oe(90,32),L):Y=Xe(L,"#ff4343"),Y.id="current-location-2",O=H(Y,R(0,0,Y.width,Y.height),{hidden:!0,origin:[.5,1]}),Z=je(4,ne("#b5b7bc").hex());function ce(e=null){const n=o.layerStore.visible.map(i=>i.name);if(I=[],m.set([]),e||(T=[]),n.length&&c.selectedRoute?.from?.rect&&c.selectedRoute?.to?.rect){let i=c.selectedRoute.from,p=c.selectedRoute.to;if(!T.length&&!e&&(T=We(Ye,me(i),me(p),o.routeStore.onlyAccessible,c.selectedRoute.waypoints?.map(me))),!T.length){if(o.routeStore.updateRoute(T),o.routeStore.updateRouteDistance(0),i.name!==p.name)throw new Error(`Route not found. From: ${i.name} to: ${p.name}`);return}const{rect:g,lines:D,addTrailPoints:b}=at();D.length?(ut(t.scale),dt(t.scale,s,y),ze(t,h,!b),t.ptScaleRegistry.unregisterByName(h.name),b&&t.onPtScale(h.name,()=>{const P=ze(t,h)||[];return h.children=P,we=P,h})):t.ptScaleRegistry.unregisterByName(h.name),ee=D,fe(),g&&(c.moveToRect=g)}else C.hidden=!0,E.hidden=!0;o.routeStore.updateRoute(T.filter(i=>!i.virtual)),m.get()||(C.hidden=!0,E.hidden=!0)}function J(){const e=o.routeStore.currentPosition,n=e?.angle?Ie(e.angle):null,i=o.routeStore.currentRouteLayer?.name,p=T.filter(A=>o.layerStore.mode==_e.Default?!0:o.layerStore.layers.find(Oe=>Oe.name==i&&i===A.p0.layer)?.visible).filter(A=>!A.virtual);if(c.kioskData&&c.selectedRoute?.from){const A=o.routeStore.currentRouteLayer;C.hidden=c.selectedRoute?.from?.entity?.type==="route-cut-in"&&A?.name===c.selectedRoute?.from?.layer?.name,E.hidden=c.selectedRoute?.to?.entity?.type==="route-cut-in"&&A?.name===c.selectedRoute?.to?.layer?.name}if(e){const A=Ae.findLayer(e.z)?.visible??!0;o.routeStore.iconType===0||c.selectedRoute?.from&&c.selectedRoute?.to?(O.hidden=!0,N.hidden=!A,N.dim=!A,N.bounds=R(e.x,e.y,k.width,k.height,t.scale),n!=null?(N.hidden=!0,F.hidden=!A,F.dim=!A,F.bounds=R(e.x,e.y,$.width,$.height,t.scale,n)):F.hidden=!0):(N.hidden=!0,F.hidden=!0,O.dim=!A,O.hidden=!A,O.bounds=R(e.x,e.y,Y.width,Y.height,t.scale))}else N.hidden=!0,O.hidden=!0,F.hidden=!0,de(),fe();if(!e||!I.length){t.update(F,N,O);return}const g=c.selectedRoute?.to,D=c.selectedRoute?.from,b={layer:D?.layer?.name,x:C.bounds.center.x,y:C.bounds.center.y},P={layer:g?.layer?.name,x:E.bounds.center.x,y:E.bounds.center.y},S=et(e,p,{snapThreshold:ae,fromPoint:b,toPoint:P,fromRect:D?.rect,toRect:g?.rect}),v=S.snapped?S.snappedPoint:e;fe(S,!0),F.bounds=R(v.x,v.y,$.width,$.height,t.scale,n),N.bounds=R(v.x,v.y,k.width,k.height,t.scale,n),t.update(F,N,O)}function Be(){const e=[{point:F,name:"wf-current-arrow"},{point:N,name:"wf-current-location"},{point:O,name:"wf-current-location-2"}];_.children=e.map(({point:n})=>n),e.forEach(({point:n,name:i})=>te(n,i)),t.update(_)}function V(e=!1){const n=[C,E,...s.get(),...u.get()];e&&(Me(!0),h.children=[],n.forEach(i=>{i.source.id.includes("kiosk")||(i.hidden=!0)})),l.children=n,t.update(l,h)}function de(e,n){const i=T.filter(P=>!P.virtual),p=pe(i);if(!e?.snapped){o.routeStore.updateRouteDistance(p);return}const g=c.selectedRoute?.to,D=pe(n);let b;if(e.snappedPoint?.layer===g?.layer?.name||g?.layer?.name===o.routeStore.currentRouteLayer?.name)b=D;else if(e.snappedPoint?.layer!==g?.layer?.name&&e.snappedPoint?.layer===o.routeStore.currentRouteLayer?.name){const P=i.filter(v=>v.p0.layer!==e?.snappedPoint?.layer&&v.p1.layer!==e?.snappedPoint?.layer),S=pe(P);b=D+S}b&&o.routeStore.updateRouteDistance(b)}function fe(e,n=!1){const i=c.selectedRoute?.from,p=c.selectedRoute?.to;if(!i||!p)return;const g=T[0]?.p0.layer,D=Ge(T,ee,{layer:i.layer?.name??g,x:i.rect.cx,y:i.rect.cy},{layer:p.layer?.name??g,x:p.rect.cx,y:p.rect.cy});if(!e?.snapped){const S=D.map(v=>ye(v,Fe));o.routeStore.currentPosition&&o.routeStore.currentRouteLayer&&o.routeStore.currentPosition?.z?.toString()===o.routeStore.currentRouteLayer?.name.toString()&&de(),Ce([],S,n);return}const{passed:b,remaining:P}=Ze(D,e.snappedPoint);P.length&&(P[0]={...P[0],p0:e.snappedPoint}),de(e,P),Ce(b.map(S=>ye(S,"#B5B7BC")),P.map(S=>ye(S,Fe)),n)}const te=(e,n)=>t.onPtScale(n,i=>(e.hidden||(e.bounds=R(e.bounds.center.x,e.bounds.center.y,e.source.width,e.source.height,i,e.bounds.rotation)),e)),be=(e,n)=>t.onRoll(n,i=>{const p=Je(i,e.bounds.rotation);return p!==void 0&&(e.bounds.rotation=e.bounds.rotation+p),e});function Me(e){r&&(r.stop(),r=null),w.children=[],e&&(x.children=[]),t.update(w,x)}function Ce(e=[],n=[],i=!1){let p=0;if(r&&(i&&(p=r.getProgress()),r.stop(),r=null),x.children=[...e,...n],!n.length){w.children=[],t.update(w,x);return}const g=n.map(b=>({...b,color:rt}));r=Qe(g,(b,P,S)=>{if(S)w.children=[];else{const v=g.slice(0,P);w.children=[...v,b]}t.update(w)},()=>t.scale,p)??null,t.update(x)}a.push(q(()=>[o.layerStore.layersLoaded],()=>{ce(),J(),V()}));const ke=q(()=>[o.routeStore.currentRouteLayer,c.getRouteNextFloor],()=>{o.layerStore.layersLoaded&&(f!==null&&clearTimeout(f),f=setTimeout(()=>{ce(o.routeStore.currentRouteLayer),J(),V(),f=null},0))});a.push(()=>{f!==null&&(clearTimeout(f),f=null),ke()}),a.push(q(()=>[c.selectedRoute,o.routeStore.onlyAccessible],()=>{ce(),J(),V(!c.selectedRoute)})),a.push(q(()=>o.routeStore.currentPosition,()=>{J(),V()})),a.push(q(()=>s.get(),e=>{const n="transitionPoints";t.ptScaleRegistry.unregisterByPrefix(n),t.rollRegistry.unregisterByPrefix(n),e.length&&e.forEach((i,p)=>{const g=`${n}-${p}`;te(i,g),be(i,g)})})),a.push(q(()=>[u.get()],()=>{const e=u.get(),n="kioskArrows";t.ptScaleRegistry.unregisterByPrefix(n),e.length&&e.forEach((i,p)=>te(i,`${n}-${p}`))})),a.push(q(()=>[c.kioskData,Ae.floors.find(e=>e.active),c.selectedRoute],([e,n])=>{u.set([]);const i=ve()?e?.z===n?.name:!0;e&&i&&ft(e,{skipdim:!0,visible:!0,pixelRatio:L},t.scale,u),V()}));function Ee({defs:e}){const n=y.find(i=>e.includes(i.imageDef));n&&o.layerStore.updateVisibility(n.targetLayer,!0)}t.renderer.events.addEventListener("pointer:click",Ee),a.push(()=>t.renderer.events.removeEventListener("pointer:click",Ee));function Te({defs:e}){const n=y.some(i=>e.includes(i.imageDef));t.renderer.canvas.style.cursor=n?"pointer":""}t.renderer.events.addEventListener("pointer:move",Te),a.push(()=>t.renderer.events.removeEventListener("pointer:move",Te)),[{point:C,name:"wf-source"},{point:E,name:"wf-destination"}].forEach(({point:e,name:n})=>{te(e,n),be(e,n)}),V(),J(),Be();function $e(){r&&(r.stop(),r=null),a.forEach(e=>e()),a.length=0}return $e}function ut(t){const r=o.routeStore.currentRouteLayer?.name,a=I;let f=c.selectedRoute?.from,m=c.selectedRoute?.to;const s=c.selectedRoute?.waypoints;if(f?.entity.type==="route-cut-in"&&(f=null),m?.entity.type==="route-cut-in"&&(m=null),!a.length)return;const y=[{key:"sourceLocation",rect:f?.rect,index:void 0},{key:"destinationLocation",rect:m?.rect,index:void 0}];s&&y.push(...s?.map((x,h)=>({key:`waypoint-${x.externalId}`,index:h,rect:x.rect})));const u=r?ie(r,f?.layer?.name):!0,d=r?ie(r,m?.layer?.name):!0;let l=!1,_=!1;a.forEach(({x,y:h})=>{for(const{key:w,rect:U,index:ae}of y)if(U?.containsPoint(x,h)){w==="sourceLocation"&&(C.bounds=R(x,h,B.width,B.height,t),C.hidden=!u,C.dim=!u,l=u),w==="destinationLocation"&&(E.bounds=R(x,h,M.width,M.height,t),E.hidden=!d,E.dim=!d,_=d);break}}),l||(C.bounds=R(a[a.length-1].x,a[a.length-1].y,B.width,B.height,t),C.hidden=!1,C.dim=!1),_||(E.bounds=R(a[0].x,a[0].y,M.width,M.height,t),E.hidden=!d,E.dim=!d)}function lt(){const{from:t,to:r}=o.uiState.selectedRoute||{},a="route-cut-in";return t&&t?.entity.type===a||r&&r?.entity.type===a?o.routeStore.defaultFrom:null}function ct(t,r){if(!t||!r.length)return r;const a=r.reduce((f,m,s)=>Se(t,m)<Se(t,r[f])?s:f,0);return a<=r.length/2?r.slice(a):r.slice(0,a)}function dt(t,r,a){const f=o.routeStore.currentRouteLayer?.name,m=o.layerStore.floors.map(u=>u.name).reverse(),s=Ue({routeLines:T,currentLayerName:f,floorOrder:m});a.length=0;const y=s.map(u=>{const d=u.role==="entry"?xe:u.direction==="up"&&Re?Re:u.direction==="down"&&Le?Le:ge,l=H(d,R(u.x,u.y,d.width,d.height,t),{hidden:!1,dim:!1});return u.role==="exit"&&a.push({imageDef:l,targetLayer:u.targetLayer}),l});r.set(y)}function ft(t,r,a=1,f){if(!t)return;const m=o.fp.icons.get("kiosk");m.id="kiosk";let s;if(m){const u=t?.iconSizePercent?t.iconSizePercent/100:1,d=55;s=z(m,oe(199*u,d),oe(152*u,d),L)}else s=De(L,ne("#ee4422").hex());const y=H(s,R(t.x,t.y,s.width,s.height,a,Ie(t.heading||0)),{hidden:!r.visible,dim:!r.skipdim});f.set([...f.get(),y])}function ze(t,r,a=!1){let f=I.length-1;if(c.selectedRoute?.to?.entity.type==="route-cut-in"&&(f=0),a){we=[],r.children=[],t.update(r);return}const m=t.scale,s=I[f],y=X?.destination;if(!s||!y)return;const u=Z.width,d=Ke([{p0:s,p1:y}],u*2*m);if(d.length<2)return;const l=y.x-s.x,_=y.y-s.y,x=Math.hypot(l,_),h={x:(s.x+y.x)/2,y:(s.y+y.y)/2-x*.2},w=[s,h,y],U=d.map((ae,ee,j)=>{const G=(ee+1)/(j.length+1),K=qe(w,G);return H(Z,R(K.x,K.y,Z.width,Z.height,m),{hidden:!1,dim:!1})})||[];return r.children=U,we=U,U}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RouteLine, RoutePoint } from "../../../../../
|
|
1
|
+
import type { RouteLine, RoutePoint } from "../../../../../wayfinding/types";
|
|
2
2
|
import { CurrentPosition } from "../../../../../store/RouteStore";
|
|
3
3
|
import type { RouteSnapResult } from "./types";
|
|
4
4
|
type Rect = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export const SNAP_THRESHOLD_METERS=7.5;function O(t,n){return t.x>=n.x1&&t.x<=n.x2&&t.y>=n.y1&&t.y<=n.y2}function E(t,n){let r=0;for(const e of t){const a=Math.hypot(e.p1.x-e.p0.x,e.p1.y-e.p0.y);if(a!==0){if(r+a>=n){const d=(n-r)/a,x=e.p0.x+(e.p1.x-e.p0.x)*d,f=e.p0.y+(e.p1.y-e.p0.y)*d;return{point:{layer:e.p0.layer,x,y:f},line:e}}r+=a}}const l=t[t.length-1];return{point:{layer:l.p0.layer,x:l.p1.x,y:l.p1.y},line:l}}export function snapPositionToRoute(t,n,r){const l=n.length;if(!l)return{snapped:!1};const{snapThreshold:e,toPoint:a,minRemainingUnits:d=.5,fromPoint:x,fromRect:f,toRect:A}=r,i=t.z!=null?String(t.z):null;let M=1/0,u=null,S=0,I=i==null;for(let s=0;s<l;s++){const p=n[s],{p0:o,p1:y}=p,g=y.x-o.x,P=y.y-o.y,D=g*g+P*P;if(D===0)continue;const F=Math.sqrt(D);if(i!=null&&String(o.layer)!==i){S+=F;continue}I=!0;const N=((t.x-o.x)*g+(t.y-o.y)*P)/D,R=Math.max(0,Math.min(1,N)),U=o.x+g*R,j=o.y+P*R,H=Math.hypot(t.x-U,t.y-j);H<M&&(M=H,u={segmentIndex:s,t:R,distanceFromPolylineStart:S+F*R}),S+=F}if(i!=null&&!I)return{snapped:!1};const c=S,b=n[0].p0,q=n[l-1].p1,_=Math.hypot(a.x-b.x,a.y-b.y),w=Math.hypot(a.x-q.x,a.y-q.y),m=_<=w,T=Math.min(d,c),v={layer:(i??n[0].p0.layer).toString(),x:t.x,y:t.y};if(f&&x&&(i==null||String(x.layer)===i)&&O(v,f)){const s=c,p=m?s:c-s,o=E(n,p);return{snapped:!0,snappedPoint:o.point,snappedLine:o.line}}if(A&&(i==null||String(a.layer)===i)&&O(v,A)){const s=T,p=c-s,y=E(n,m?s:p);return{snapped:!0,snappedPoint:y.point,snappedLine:y.line}}if(!u||M>e)return{snapped:!1};let h=m?u.distanceFromPolylineStart:c-u.distanceFromPolylineStart;h<T&&(h=T);const L=c-h,z=E(n,m?h:L);return{snapped:!0,snappedPoint:z.point,snappedLine:z.line}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RouteLine, RoutePoint } from "../../../../../
|
|
1
|
+
import type { RouteLine, RoutePoint } from "../../../../../wayfinding/types";
|
|
2
2
|
export declare function splitRouteByPoint(routeLines: RouteLine[], snapPoint: RoutePoint): {
|
|
3
3
|
passed: RouteLine[];
|
|
4
4
|
remaining: RouteLine[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export function splitRouteByPoint(t,i){let n=-1,e=0,f=1/0;for(let l=0;l<t.length;l++){const c=t[l];if(c.p0.layer!==i.layer)continue;const s=c.p1.x-c.p0.x,y=c.p1.y-c.p0.y,r=s*s+y*y;if(r===0)continue;const x=((i.x-c.p0.x)*s+(i.y-c.p0.y)*y)/r;if(x<-1e-6||x>1+1e-6)continue;const a=Math.min(1,Math.max(0,x)),m=c.p0.x+a*s,g=c.p0.y+a*y,o=(i.x-m)**2+(i.y-g)**2;o<f&&(f=o,n=l,e=a)}if(n===-1)return{passed:[],remaining:t};if(e<1e-6)return{passed:t.slice(0,n),remaining:t.slice(n)};if(e>1-1e-6)return{passed:t.slice(0,n+1),remaining:t.slice(n+1)};const p=t[n],d={layer:p.p0.layer,x:p.p0.x+e*(p.p1.x-p.p0.x),y:p.p0.y+e*(p.p1.y-p.p0.y)};return{passed:[...t.slice(0,n),{...p,p1:d}],remaining:[{...p,p0:d},...t.slice(n+1)]}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RouteLine, RoutePoint } from "../../../../../
|
|
1
|
+
import type { RouteLine, RoutePoint } from "../../../../../wayfinding/types";
|
|
2
2
|
import { Booth } from "../../../../../store/BoothStore";
|
|
3
3
|
export declare function distancePointToRouteOnLayer(point: RoutePoint, lines: RouteLine[]): number;
|
|
4
4
|
export declare function findBoothInRadius<T extends Booth>(position: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useEffect as yt,useRef as L}from"react";import{getBounds as k}from"../../../renderer";import{getRouteLayerRegex as pt,getRouteStopLayerRegex as wt,TRAFFIC_VEHICLES as xt}from"./trafficLayers";import{loadImage as Et}from"../../../utils/loadImage";import{createImageCanvas as It}from"../drawing/config/canvases";import{UpdateQueue as Mt}from"./UpdateQueue";import Lt from"../../../tools/base-runtime-url";import{toRadians as bt}from"../../../utils/
|
|
1
|
+
import{useEffect as yt,useRef as L}from"react";import{getBounds as k}from"../../../renderer";import{getRouteLayerRegex as pt,getRouteStopLayerRegex as wt,TRAFFIC_VEHICLES as xt}from"./trafficLayers";import{loadImage as Et}from"../../../utils/loadImage";import{createImageCanvas as It}from"../drawing/config/canvases";import{UpdateQueue as Mt}from"./UpdateQueue";import Lt from"../../../tools/base-runtime-url";import{toRadians as bt}from"../../../utils/math";const tt=2,Rt=tt*3.5,G=tt*12,at=G*.7,Ft=8,At="transport_locations",Tt=150,et="#a4aab6",it=1e3,Pt=2e4,ut=500;export function useManageTraffic({permission:e,rendererService:n,dataJsonUrl:c,websocketUrl:a}){const t=L(window.devicePixelRatio),s=L(new Map),o=L(new Map),r=L(),d=L(),f=L(performance.now()),M=L(1),x=L(new Mt),A=L(new Map),I=L(),g=L(it),y=L(new Map),i=L();yt(()=>{async function O(){if(!(!e||!n.scene))try{let h;try{h=await(await fetch(c,{method:"GET",headers:{"Content-Type":"application/json"}})).json()}catch(u){console.warn("useManageTraffic failed to get JSON",u)}if(!h||h?.disabled||h?.error)return;t.current=lt(n.getCameraState().ptScale);const V=new Map(h.routes.map(({id:u,color:m})=>[u,m])),_=n.scene.rootLayer.children,W=new Map;V.forEach(u=>{W.set(u,Ct({radius:Rt,color:u,scale:window.devicePixelRatio}))});const z=pt(),Y=_.filter(u=>z.test(u.name)),B=wt(),U=_.filter(u=>B.test(u.name));h.routes.slice(0,Y.length).forEach(({id:u,color:m,path:T,stops:R,hiddenPoints:p},w)=>{A.current.set(u,T);const E=Y[w];if(E){const S=new Map(p?.map(l=>[ot(l),l])??[]);for(let l=1;l<T.length;l++){const D=T[l-1],H=T[l];S.has(ot(D))||S.has(ot(H))||E.children.push({points:[D,H],color:m,width:tt})}E.children.length&&x.current.add(()=>n.update(E))}const N=U[w];if(N&&R?.length){const S=W.get(m);R.forEach(l=>{N.children.push({source:S,bounds:k(l.x,l.y,S.width,S.height,t.current)})}),N.children.length&&x.current.add(()=>n.update(N))}});const $=_.find(u=>u.name===xt),X=new Map;I.current=u=>{try{t.current=lt(u);const m=[];for(let R=0;R<U.length;R++){const p=U[R].children;for(let w=0;w<p.length;w++){const E=p[w];E.bounds=k(E.bounds.center.x,E.bounds.center.y,E.source.width,E.source.height,t.current,E.bounds.rotation),m.push(E)}}const T=[...s.current.values()];for(let R=0;R<T.length;R++){const p=T[R];p.bounds=k(p.bounds.center.x,p.bounds.center.y,p.source.width,p.source.height,t.current,p.bounds.rotation)}x.current.add(()=>n.update(...m,...T))}catch(m){console.error("ptscale",m)}},n.renderer.events.addEventListener("viewport:ptscale",I.current),V.forEach((u,m)=>{X.set(m,ht({id:m,width:G,height:G,color:u,scale:window.devicePixelRatio}))}),X.set(et,ht({id:"orphan",width:G,height:G,color:et,scale:window.devicePixelRatio}));let j=null;try{const u=await Et(`${Lt}icons/bus-white.svg`);j=It(u,at,at,window.devicePixelRatio)}catch(u){console.error(u)}d.current=u=>{try{const m=JSON.parse(u.data);if(m.type!==At)return;const T=u.timeStamp||performance.now();M.current=Math.round(T-f.current),f.current=T;const R=Math.max(M.current??ut,ut),p=o.current,w=s.current,E=$.children,N=x.current;let S=!1;m.data.forEach(({id:l,x:D,y:H,route_id:ct,hidden:gt})=>{if(p.has(l)&&(p.get(l)?.(),p.delete(l)),gt&&w.has(l)&&w.has(Q(l))){const P=w.get(l);P.hidden=!0;const F=w.get(Q(l));F.hidden=!0,N.add(()=>n.update(P,F));return}if(y.current.set(l,performance.now()),!w.has(l)){const P=X.get(ct)||X.get(et),F={id:l,source:P,bounds:k(D,H,P.width,P.height,t.current,0)};if(w.set(l,F),j){const q=Q(l),rt={id:q,source:j,bounds:k(D,H,j.width,j.height,t.current,0)};j.setAttribute("id",q),w.set(q,rt),E.push(F,rt)}else E.push(F);S=!0;return}const Z=w.get(l),st=w.get(Q(l)),mt=Z.bounds.center,K=Nt(mt,{x:D,y:H},A.current.get(ct));if(K.reduce((P,F,q)=>q===0?P:P+nt(K[q-1],F),0)>=Tt||document.hidden)dt({rendererService:n,updateQueue:N,vehicle:Z,vehicleFinery:st,x:D,y:H,scale:t.current,angle:vt(Z.bounds.center,{x:D,y:H})});else{const P=St(K,R,F=>{dt({rendererService:n,updateQueue:N,vehicle:Z,vehicleFinery:st,x:F.x,y:F.y,scale:t.current,angle:F.angle})});p.set(l,P)}}),S&&N.add(()=>n.update($))}catch(m){console.error("handleSocketMessage",m)}},v(),C(h.config?(Number(h.config.vehicle_inactive_interval)||20)*1e3:Pt)}catch(h){console.warn(h)}}O();function v(){r.current?.readyState===WebSocket.OPEN||r.current?.readyState===WebSocket.CONNECTING||(r.current=new WebSocket(a),r.current.onmessage=d.current,r.current.onopen=()=>{g.current=it},r.current.onclose=()=>{if(!navigator.onLine)return;setTimeout(v,g.current);const h=3e4;g.current=Math.min(g.current*2,h)})}function b(){v()}window.addEventListener("online",b);function C(h){clearInterval(i.current),i.current=window.setInterval(()=>{const V=performance.now(),_=[],W=[];y.current.forEach((z,Y)=>{if(V-z<h)return;const B=s.current.get(Y);B&&(B.hidden=!0,W.push(B),_.push(Y));const U=Q(Y),$=s.current.get(U);$&&($.hidden=!0,W.push($),_.push(U))}),W.length&&x.current.add(()=>n.update(...W)),_.forEach(z=>y.current.delete(z))},h)}return()=>{I.current&&n.renderer&&n.renderer.events.removeEventListener("viewport:ptscale",I.current),o.current.forEach(h=>h?.()),o.current.clear(),s.current.clear(),x.current.destroy(),window.removeEventListener("online",b),clearInterval(i.current)}},[e,n,c,a])}function lt(e){return Math.min(e||window.devicePixelRatio,Ft)}function vt(e,n){return Math.atan2(n.y-e.y,n.x-e.x)}function Ct({radius:e,scale:n,color:c}){const a=document.createElement("canvas"),t=a.getContext("2d");t.imageSmoothingEnabled=!1;const s=Math.ceil(e*2*n),o=s/2,r=e*.78,d=e*.33;return a.width=s,a.height=s,t.translate(o,o),t.scale(n,n),t.beginPath(),t.arc(0,0,e,0,2*Math.PI),t.fillStyle="#FFFFFF",t.fill(),t.beginPath(),t.arc(0,0,r,0,2*Math.PI),t.fillStyle=c,t.fill(),t.beginPath(),t.arc(0,0,d,0,2*Math.PI),t.fillStyle="#FFFFFF",t.fill(),a}function ht({id:e,width:n,height:c,color:a,scale:t}){const s=2*t,o=n/2*t,r=c*t,d=.6,f=.01,M=r*d,x=r,A=8*t,I=x+s+M/2+A*2,g=o*2+M+s+A*2,y=document.createElement("canvas");y.setAttribute("id",e),y.width=I,y.height=g;const i=y.getContext("2d"),O=I/2,v=g/2;i.save(),i.translate(O,v),i.rotate(-Math.PI/2),i.translate(-O,-v);const b=O,C=v-x/2+o,h=C+M;return i.shadowColor="rgba(16, 24, 40, 0.2)",i.shadowBlur=A/2,i.beginPath(),i.arc(b,C,o,Math.PI,0,!1),i.bezierCurveTo(b+o,C+r*.3,b+f*o,h,b,h),i.bezierCurveTo(b-f*o,h,b-o,C+r*.3,b-o,C),i.closePath(),i.fillStyle=a,i.fill(),i.strokeStyle="#FFFFFF",i.lineWidth=s,i.stroke(),i.restore(),y}function nt(e,n){return Math.hypot(e.x-n.x,e.y-n.y)}function Q(e){return`${e}_finery`}function dt({rendererService:e,updateQueue:n,vehicle:c,vehicleFinery:a,x:t,y:s,scale:o,angle:r}){if(c.bounds=k(t,s,c.source.width,c.source.height,o,r),c.hidden=!1,a){const d=e.getCameraState();a.bounds=k(t,s,a.source.width,a.source.height,o,bt(d.roll||0)),a.hidden=!1,n.add(()=>e.update(a,c))}else n.add(()=>e.update(c))}function J(e,n,c){return{x:e.x+(n.x-e.x)*c,y:e.y+(n.y-e.y)*c}}function ft(e,n){let c=1/0,a={index:0,t:0};for(let t=0;t<n.length-1;t++){const s=n[t],o=n[t+1],r=o.x-s.x,d=o.y-s.y,f=r*r+d*d,M=f?((e.x-s.x)*r+(e.y-s.y)*d)/f:0,x=Math.max(0,Math.min(1,M)),A=J(s,o,x),I=nt(e,A);I<c&&(c=I,a={index:t,t:x})}return a}function _t(e,n,c){const a=nt(e,n),t=Math.max(2,Math.ceil(a/c)+1),s=[];for(let o=0;o<t;o++){const r=o/(t-1),d=J(e,n,r);s.push({x:d.x,y:d.y})}return s}function Nt(e,n,c){if(!c||!c.length)return _t(e,n,10);const a=ft(e,c),t=ft(n,c),s=[],o=r=>s.push({x:r.x,y:r.y});a.index+1<c.length?o(J(c[a.index],c[a.index+1],a.t)):o(c[a.index]);for(let r=a.index+1;r<=t.index&&r<c.length;r++)o(c[r]);return t.index+1<c.length?o(J(c[t.index],c[t.index+1],t.t)):o(c[t.index]),s}function St(e,n,c,a){if(e.length<2)return()=>{};let t=null,s;const o=[];let r=0;for(let f=0;f<e.length-1;f++){const M=Math.hypot(e[f+1].x-e[f].x,e[f+1].y-e[f].y);o.push(M),r+=M}const d=f=>{t||(t=f);const M=f-t,x=Math.min(M/n,1),A=x*r;let I=0,g=0;for(;g<o.length&&I+o[g]<A;)I+=o[g],g++;g>=o.length&&(g=o.length-1);const y=e[g],i=e[Math.min(g+1,e.length-1)],O=o[g]||0,v=O===0?0:(A-I)/O,b=y.x+(i.x-y.x)*v,C=y.y+(i.y-y.y)*v,h=i.x-y.x,V=i.y-y.y,_=h===0&&V===0?0:Math.atan2(V,h);c({x:b,y:C,angle:_}),x<1?s=requestAnimationFrame(d):a&&a()};return s=requestAnimationFrame(d),()=>{s&&cancelAnimationFrame(s)}}function ot(e){return`${e.x},${e.y}`}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import
|
|
2
|
+
import { MarketMaterial } from "../data/Data";
|
|
3
3
|
import "./MarketMaterialList.scss";
|
|
4
4
|
export type MarketMaterialListProps = {
|
|
5
5
|
list: MarketMaterial[];
|
|
6
6
|
};
|
|
7
|
-
declare const
|
|
8
|
-
export default
|
|
7
|
+
declare const _default: React.FunctionComponent<MarketMaterialListProps>;
|
|
8
|
+
export default _default;
|
|
9
9
|
//# sourceMappingURL=MarketMaterialList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as a,jsxs as t}from"react/jsx-runtime";import{
|
|
1
|
+
import{jsx as a,jsxs as t}from"react/jsx-runtime";import{observer as i}from"mobx-react-lite";import{t as s}from"../utils/i18n";import"./MarketMaterialList.scss";const l=({fileName:e,path:r})=>t("a",{className:"market-materials__item",href:r,download:!0,target:"_blank",rel:"noopener noreferrer","aria-label":`Download ${e}`,children:[a("div",{className:"market-materials__item-icon",children:a("i",{className:"icon-file-solid"})}),a("div",{className:"market-materials__item-name",children:a("span",{children:e})}),a("div",{className:"market-materials__item-download",children:a("i",{className:"icon-download"})})]}),m=({list:e})=>t("div",{className:"market-materials",children:[a("div",{className:"market-materials__title font-medium",children:s("Read More")}),a("div",{className:"market-materials__list",role:"list",children:e.map(r=>a(l,{...r},r.path))})]});export default i(m);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as s,Fragment as y}from"react/jsx-runtime";import
|
|
1
|
+
import{jsx as e,jsxs as s,Fragment as y}from"react/jsx-runtime";import L,{Suspense as N}from"react";import{useLocalStore as S,useObserver as h}from"mobx-react-lite";import{autorun as C}from"mobx";import{t as m,getLocale as x,getLocales as D}from"../utils/i18n";import r from"../data";import d from"../utils/is-iframe";import a,{uiState as n}from"../store";import T from"./Badge";const U=L.lazy(()=>import("./ViewerMenuPanel"));import f from"../tools/logger";import g from"../tools/settings";import"./Menu.scss";import"./Menu_custom.scss";const u=/^https?:\/\//i.test(r.logo)?r.logo:window.__dataUrlBase+r.logo;f.log("Logo url: ",u),window.setTimeout(function(){const l=new Image;l.onload=()=>{f.log("Logo image loaded")},l.crossOrigin="anonymous",l.src=u},1500);function E({allowConsent:l,isGDPR:c}){const t=S(()=>({logoVisibility:"visible",shown:!1,shownTimeout:void 0,modalOpen:!1,selectedCategoryIds:(n.selectedCategoryFilters||[]).map(o=>Number(o.id)),pendingSelectedIds:(n.selectedCategoryFilters||[]).map(o=>Number(o.id))}));C(()=>{n.menu?(t.shownTimeout=window.setTimeout(()=>t.shown=!0,1),n.list.type==="sessions"&&a.searchStore.selectSearch()):(t.shown=!1,t.shownTimeout&&window.clearTimeout(t.shownTimeout))});function p(o){if(n.kiosk)return o.preventDefault()}function k(o){o.preventDefault(),w(),a.searchStore.selectSearch()}function v(o){o.preventDefault(),a.fp?.onLeaveEvent?.()}function _(o){o.preventDefault(),a.clickLanguage()}return h(()=>{if(!n.menu)return null;const o=a.boothStore.booths.filter(i=>i.bookmarked).map(i=>i.name),b=window.__fpSettings?.fpVer?`https://api-v2.expofp.com/export/v2/${g.EXPO}/pdf`:`https://api.expofp.com/service/convert/${g.EXPO}/pdf`;return s("div",{className:`menu ${t.shown?"shown":""}`,children:[d?e("div",{className:"menu__cover -empty"}):e("div",{className:"menu__cover",children:e("a",{href:r.homeUrl,target:"_blank",rel:"noopener noreferrer",onClick:p,children:e("img",{src:u,onError:()=>t.logoVisibility="hidden",style:{visibility:t.logoVisibility},alt:"",crossOrigin:"anonymous"})})}),s("div",{className:"menu__content",children:[n.viewerMode&&e(N,{fallback:null,children:e(U,{})}),!n.viewerMode&&e("a",{href:"/#",onClick:k,className:"menu__item",children:m("Search")}),!r.hideEventHomeLink&&!n.kiosk&&!d&&!!r.homeUrl&&s("a",{href:r.homeUrl,target:"_blank",className:"menu__item",rel:"noopener noreferrer",children:[m("Event Home").replace(/ /g,"\xA0"),"\xA0",e("i",{className:"icon-link-external"})]}),!r.hideRegisterToAttendLink&&!n.kiosk&&!d&&!!r.registerUrl&&s("a",{href:r.registerUrl,target:"_blank",className:"menu__item",rel:"noopener noreferrer",children:[m("Register to Attend").replace(/ /g,"\xA0"),"\xA0",e("i",{className:"icon-link-external"})]}),!n.hideLanguage&&!r.hideLanguage&&!r.hideLanguageLink&&s("a",{href:"?language",onClick:_,className:"menu__item -language",children:[s("span",{children:[m("Language")," "]}),s("span",{className:"menu__icons",children:[e(T,{variant:"gray",size:"md",noMargins:!0,children:D().find(i=>i.id===x())?.name}),e("i",{className:"icon-chevron-right"})]})]}),!r.hideDownloadPdfLink&&!n.kiosk&&e("a",{className:"menu__item -pdf",target:"_blank",rel:"noopener noreferrer",href:`${b}/?exhibitors=true&bookmarks=${o.join(",")}&layers=${(a.layerStore.layers.length>=a.layerStore.visible.length?a.layerStore.visible.map(i=>i.name).join(","):"").replace(/&/g,"%26")}`,children:m("Download PDF")}),l===void 0&&c&&e("a",{href:"/#",className:"menu__item -cookie-consent",onClick:i=>{i.preventDefault(),n.hideCookieConsent=!1},children:m("Review Cookie Consent")}),n.viewerMode&&e("a",{href:"/#",className:"menu__item -leave-event menu__leave-link",onClick:v,children:m("Select another event")})]})]})});function w(){n.menu=!1}}export default({isGDPR:l,allowConsent:c})=>h(()=>e(y,{children:n.menu?e(E,{isGDPR:l,allowConsent:c}):null}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as s,jsxs as u}from"react/jsx-runtime";import{useObserver as m}from"mobx-react-lite";import{useCallback as p}from"react";import t,{searchStore as c}from"../store";import{t as i}from"../utils/i18n";import{LANGUAGE_TYPE as S}from"../constants";import b from"classnames";import"./MobileToggleButton.scss";function f(){const o=p(()=>{t.uiState.isOverlayOpen&&t.uiState.overlaySize==="full"?t.uiState.desiredOverlaySize="small":c.openOverlayWithoutInputFocus()},[]);return m(()=>{const a=t.uiState.list.type==="route-planner";if(!(t.uiState.overlayPosition==="bottom"&&(a||!t.uiState.details&&!t.uiState.menu&&t.uiState.list.type!==S&&t.uiState.list.type!=="bookmarks"&&t.uiState.list.type!=="sessions")))return null;const e=!t.uiState.isOverlayOpen||t.uiState.overlaySize!=="full",l=e?i("List"):i("Map"),r=e?"is-list":"is-map",n=e?"icon-list":"icon-map";return u("button",{className:b("efp-mobile-toggle-button",{"is-with-banner":t.uiState.isBannerVisible},r),onClick:o,type:"button","aria-label":e?i("List"):i("Map"),children:[s("i",{className:n}),s("span",{className:"efp-mobile-toggle-button__text",children:l})]})})}export default f;
|
|
@@ -28,6 +28,6 @@ export interface MultiSelectGroupsProps {
|
|
|
28
28
|
itemCountProvider?: (item: MultiSelectGroupItem) => number;
|
|
29
29
|
customItemRenderer?: (item: MultiSelectGroupItem, isSelected: boolean) => React.ReactNode;
|
|
30
30
|
}
|
|
31
|
-
declare const
|
|
32
|
-
export default
|
|
31
|
+
declare const _default: React.FunctionComponent<MultiSelectGroupsProps>;
|
|
32
|
+
export default _default;
|
|
33
33
|
//# sourceMappingURL=MultiSelectGroups.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Fragment as F,jsx as o,jsxs as c}from"react/jsx-runtime";import I,{useCallback as g,useState as M,useMemo as P}from"react";import v from"classnames";import{t as m}from"../utils/i18n";import"./MultiSelectGroups.scss";const
|
|
1
|
+
import{Fragment as F,jsx as o,jsxs as c}from"react/jsx-runtime";import I,{useCallback as g,useState as M,useMemo as P}from"react";import{observer as q}from"mobx-react-lite";import v from"classnames";import{t as m}from"../utils/i18n";import"./MultiSelectGroups.scss";const L=I.memo(({item:r,isSelected:s,variant:p,showCount:f,count:h,onClick:u,customRenderer:d})=>d?o(F,{children:d(r,s)}):c("button",{type:"button",className:v("multi-select-groups__item",{"is-selected":s,"is-disabled":r.disabled,[`multi-select-groups__item--${p}`]:p}),onClick:()=>!r.disabled&&u(r.id),disabled:r.disabled,"aria-pressed":s,children:[o("div",{className:"multi-select-groups__item-name",children:r.name}),f&&h>0&&o("span",{className:"multi-select-groups__item-count",children:h})]},r.id)),R=({groups:r=[],selectedIds:s=[],showItemCounts:p=!0,showGroupActions:f=!0,variant:h="default",maxItemsVisible:u=20,itemCountProvider:d,customItemRenderer:S,onChange:a})=>{const[G,y]=M(new Set),A=g(e=>{const t=s.includes(e)?s.filter(l=>l!==e):[...s,e];a(t)},[s,a]),C=g(e=>{const l=e.items.filter(n=>n.id&&!n.disabled).map(n=>n.id).filter(n=>!s.includes(n));l.length!==0&&a([...s,...l])},[s,a]),k=g(e=>{const t=new Set(e.items.map(n=>n.id)),l=s.filter(n=>!t.has(n));a(l)},[s,a]),x=g(e=>{y(t=>{const l=new Set(t);return l.has(e)?l.delete(e):l.add(e),l})},[]),j=e=>e.count!==void 0?e.count:e.countProvider?e.countProvider():d?d(e):0,N=P(()=>new Set(s),[s]);return!Array.isArray(r)||!r.length?null:o("div",{className:"multi-select-groups",children:o("div",{className:"multi-select-groups__list",children:r.map(e=>{if(!e?.groupName||!Array.isArray(e.items))return null;const t=e.items.filter(i=>i.id),l=t.filter(i=>N.has(i.id)),n=l.length===t.length&&t.length>0,E=l.length>0&&!n,_=G.has(e.groupName),b=_||t.length<=u?t:t.slice(0,u),w=t.length-b.length>0?t.slice(u).filter(i=>N.has(i.id)).length:0;return c("div",{className:v("multi-select-groups__group",{"multi-select-groups__group--full-width":e.fullWidth},e.customGroupClass),children:[c("div",{className:"multi-select-groups__group-header",children:[o("div",{className:"multi-select-groups__group-title",children:e.groupName}),f&&e.showGroupActions!==!1&&c("div",{className:"multi-select-groups__group-actions",children:[!n&&o("button",{type:"button",className:"multi-select-groups__action-btn",onClick:()=>C(e),children:m("Select all")}),(E||n)&&o("button",{type:"button",className:"multi-select-groups__action-btn",onClick:()=>k(e),children:m("Clear all")})]})]}),c("div",{className:"multi-select-groups__group-items",children:[b.map(i=>o(L,{item:i,isSelected:N.has(i.id),variant:h,showCount:p,count:j(i),onClick:A,customRenderer:S},i.id)),t.length>u&&c("button",{type:"button",className:"multi-select-groups__show-more-btn",onClick:()=>x(e.groupName),children:[o("i",{className:_?"icon-chevron-up":"icon-chevron-down","aria-hidden":"true"}),_?m("Show Less"):m("Show More"),!_&&w>0&&c("span",{className:"multi-select-groups__show-more-badge",children:[w," ",m("selected")]})]})]})]},e.groupName)})})})};export default q(R);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o,jsxs as v}from"react/jsx-runtime";import{useMemo as S,useCallback as
|
|
1
|
+
import{jsx as o,jsxs as v}from"react/jsx-runtime";import{useMemo as S,useCallback as l}from"react";import{observer as y}from"mobx-react-lite";import{uiState as e}from"../store";import h from"./Overlay";import k from"./Menu";import C from"./Search";import z from"./Exhibitor";import g from"./Booth/Booth";import O from"./Bookmarks";import b from"./Visited";import x from"./Language";import M from"./Category";import A from"./Wayfinding";import P from"./Filter";import E from"./Sessions";import R from"./Speakers";import j from"./Tours";import w from"./TourPoints";import F from"./RoutePlanner/RoutePlanner";import B from"./Event";import I from"./Speaker";import _ from"classnames";const T={full:"full",medium:"medium",small:"medium"},D=t=>T[t],L=y(({isGDPR:t,allowConsent:a})=>{const m=l(r=>{e.desiredOverlaySize=r},[]),n=l(r=>{e.setOverlayScrolled(r)},[]),c=D(e.overlaySize),d=e.selectedRoute?.from&&e.selectedRoute?.to,f=e.list.type==="search"&&!e.details?9:d?7:3,p=e.fullSizeOffset,u=S(()=>{const r={"-backdrop":e.canvasStarted&&e.shouldUseBackdrop&&!e.dimmed&&!e.galleryActive,"-no-transition":e.dimmed,"-gallery-active":e.galleryActive,collapsed:e.overlayCollapsed,kiosk:e.kiosk,start:e.overlayPosition==="left",bottom:e.overlayPosition!=="left",[e.overlaySize]:!0},i=_(r),s=e.overlayInterfaceClasses.join(" ");return s?`${i} ${s}`:i},[e.canvasStarted,e.shouldUseBackdrop,e.dimmed,e.galleryActive,e.overlayCollapsed,e.kiosk,e.inIdle,e.setKioskModeEnabled,e.overlayPosition,e.overlaySize,e.overlayInterfaceClasses]);return v(h,{open:e.isOverlayOpen,size:c,particles:e.isFeaturedExhibitorActive,className:u,mediumSizeMultiplier:f,fullSizeOffset:p,disableDrag:e.viewerMode&&e.menu,forceFull:e.viewerMode&&e.menu,onChangeSize:m,onScrollStateChange:n,children:[o(k,{isGDPR:t,allowConsent:a}),o(C,{}),o(z,{}),o(g,{}),o(O,{}),o(b,{}),o(x,{}),o(M,{}),o(A,{}),o(P,{}),o(E,{showFilters:!0}),o(R,{showFilters:!0}),o(j,{}),o(w,{}),o(F,{}),o(B,{}),o(I,{})]})});export default L;
|
|
@@ -7,6 +7,6 @@ export interface RebookingNotesProps {
|
|
|
7
7
|
date?: string;
|
|
8
8
|
onClickSave?: (val: string) => void;
|
|
9
9
|
}
|
|
10
|
-
declare const
|
|
11
|
-
export default
|
|
10
|
+
declare const _default: React.FunctionComponent<RebookingNotesProps>;
|
|
11
|
+
export default _default;
|
|
12
12
|
//# sourceMappingURL=RebookingNotes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as
|
|
1
|
+
import{jsx as e,jsxs as s}from"react/jsx-runtime";import{useEffect as c,useState as b}from"react";import{observer as m}from"mobx-react-lite";import g from"./Button";import{t as r}from"../utils/i18n";import"./RebookingNotes.scss";const h=({state:k="default",value:o,date:v,onClickSave:i})=>{const[a,n]=b(o);c(()=>{n(o)},[o]);const l=t=>n(t.target.value),_=()=>{n(o)},d=()=>{const t=a;i(t),n(t)};return s("div",{className:"rebooking-notes",children:[e("div",{className:"rebooking-notes__view-header",children:e("strong",{id:"note-label",children:r("Note")})}),s("div",{className:"rebooking-notes__edit",children:[e("div",{className:"rebooking-notes__val",children:e("textarea",{id:"rebooking-notes",name:"rebooking-notes",value:a,onChange:l,"aria-labelledby":"note-label"})}),e("div",{className:"rebooking-notes__buttons",children:e(g,{inline:!0,onClick:d,disabled:o===a,"aria-label":r("Save rebooking note"),children:r("Save note")})})]})]})};export default m(h);
|
|
@@ -19,6 +19,6 @@ export interface RebookingRadioGroupProps {
|
|
|
19
19
|
onChange: (event: any) => void;
|
|
20
20
|
}
|
|
21
21
|
export declare const defaultRebookingOptions: RebookingOption[];
|
|
22
|
-
declare const
|
|
23
|
-
export default
|
|
22
|
+
declare const _default: React.FunctionComponent<RebookingRadioGroupProps>;
|
|
23
|
+
export default _default;
|
|
24
24
|
//# sourceMappingURL=RebookingRadioGroup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as a,jsxs as o}from"react/jsx-runtime";import{t as r}from"../utils/i18n";import"./RebookingRadioGroup.scss";export const defaultRebookingOptions=[{name:"offer",value:"0",label:r("Unasked"),iconName:"icon-question-mark",disabled:!1,color:{primary:"#8E99AB",secondary:"#EAEFF9"}},{name:"offer",value:"1",label:r("Accepted"),iconName:"icon-checkmark",disabled:!1,color:{primary:"#32B175",secondary:"#E4FFF2"}},{name:"offer",value:"2",label:r("Rejected"),iconName:"icon-close",disabled:!1,color:{primary:"#E1463C",secondary:"#FFEDEB"}},{name:"offer",value:"3",label:r("Undecided"),iconName:"icon-switch-horizontal",disabled:!1,color:{primary:"#FABA27",secondary:"#FFF7E5"}}];const
|
|
1
|
+
import{jsx as a,jsxs as o}from"react/jsx-runtime";import{observer as n}from"mobx-react-lite";import{t as r}from"../utils/i18n";import"./RebookingRadioGroup.scss";export const defaultRebookingOptions=[{name:"offer",value:"0",label:r("Unasked"),iconName:"icon-question-mark",disabled:!1,color:{primary:"#8E99AB",secondary:"#EAEFF9"}},{name:"offer",value:"1",label:r("Accepted"),iconName:"icon-checkmark",disabled:!1,color:{primary:"#32B175",secondary:"#E4FFF2"}},{name:"offer",value:"2",label:r("Rejected"),iconName:"icon-close",disabled:!1,color:{primary:"#E1463C",secondary:"#FFEDEB"}},{name:"offer",value:"3",label:r("Undecided"),iconName:"icon-switch-horizontal",disabled:!1,color:{primary:"#FABA27",secondary:"#FFF7E5"}}];const m=({options:l,checked:i,showTitle:d,onChange:c})=>{const s=()=>l.map((e,b)=>o("div",{className:"rebooking-radio",style:{"--rebooking-color-primary":`${e.color.primary}`,"--rebooking-color-secondary":`${e.color.secondary}`},children:[a("input",{type:"radio",name:e.name,value:e.value,id:e.value,checked:e.value===i,disabled:e.disabled,onChange:c}),o("label",{htmlFor:e.value,children:[a("div",{className:"rebooking-radio__label",children:e.label}),a("div",{className:"rebooking-radio__icon",children:a("i",{className:e.iconName,"aria-hidden":"true"})})]})]},e.value));return o("div",{className:"rebooking-radio-group",children:[d&&a("div",{className:"rebooking-radio-group__title",children:r("Choose Rebooking offer")}),a("div",{className:"rebooking-radio-group__options",children:s()})]})};export default n(m);
|
|
@@ -3,6 +3,6 @@ import "./RouteQR.scss";
|
|
|
3
3
|
export interface RouteQRProps {
|
|
4
4
|
url?: string;
|
|
5
5
|
}
|
|
6
|
-
declare const
|
|
7
|
-
export default
|
|
6
|
+
declare const _default: React.FunctionComponent<RouteQRProps>;
|
|
7
|
+
export default _default;
|
|
8
8
|
//# sourceMappingURL=RouteQR.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as s}from"react/jsx-runtime";import{Suspense as l}from"react";import{t as
|
|
1
|
+
import{jsx as e,jsxs as s}from"react/jsx-runtime";import{Suspense as t}from"react";import{observer as l}from"mobx-react-lite";import{t as r}from"../utils/i18n";import a from"./QrCode";import"./RouteQR.scss";const i=({url:o})=>e(t,{fallback:null,children:e("div",{className:"route-qr",children:s("div",{className:"route-qr__body",children:[e("div",{className:"route-qr__code",role:"img","aria-label":r("QR code to open the route on your phone"),children:e(a,{value:o,size:80})}),e("div",{className:"route-qr__label",children:r("Scan to see route on your phone")})]})})});export default l(i);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as d,jsxs as
|
|
1
|
+
import{jsx as d,jsxs as E}from"react/jsx-runtime";import{useMemo as S}from"react";import{observer as x}from"mobx-react-lite";import n,{uiState as i}from"../store";import{Schedule as F}from"./";import{ShortcutsToolbar as b}from"./Shortcuts";import{t as w}from"../utils/i18n";import j from"fuse.js";import"./Sessions.scss";const I=x(({showFilters:f=!0})=>{const T=n.eventStore.eventItems,{filters:{date:{value:a},timeOfDay:{value:m},sortOrder:{value:k},showBookmarksOnly:{value:h},showLiveOnly:{value:p},selectedTracks:{value:v},selectedVenues:{value:D}}}=n.sessionsFilterStore.state,y=S(()=>{const o=new Date;o.setHours(0,0,0,0);const l=new Date(o);l.setDate(o.getDate()+1);let e=T;if(a!=="all"&&(e=e.filter(t=>{const s=new Date(t.startDate);if(s.setHours(0,0,0,0),a==="today")return s.getTime()===o.getTime();if(a==="tomorrow")return s.getTime()===l.getTime();if(a==="past"){const r=new Date;return new Date(t.endDate)<r}return!0})),m!=="all"&&a==="today"&&(e=e.filter(t=>{const r=new Date(t.startDate).getHours();switch(m){case"morning":return r>=6&&r<12;case"midday":return r>=12&&r<18;case"afternoon":return r>=18&&r<=23;default:return!0}})),i.selectedTrack&&(e=e.filter(t=>t.tracks.some(s=>s.id===i.selectedTrack.id))),h&&(e=e.filter(t=>t.bookmarked)),p){const t=new Date;e=e.filter(s=>{const r=new Date(s.startDate),u=new Date(s.endDate);return r<=t&&t<=u})}v.length>0&&(e=e.filter(t=>t.tracks.some(s=>v.includes(s.id)))),D.length>0&&(e=e.filter(t=>t.boothId&&D.includes(t.boothId)));const c=n.searchStore.searchText;if(c){const t={keys:["name"],threshold:.3,ignoreLocation:!0,includeScore:!0};e=new j(e,t).search(c).map(u=>u.item)}return e},[T,n.searchStore.searchText,a,m,i.selectedTrack,h,p,v,D,n.sessionsFilterStore.state]),g=S(()=>[...y].sort((o,l)=>{const e=new Date(o.startDate).getTime(),c=new Date(l.startDate).getTime();return k==="asc"?c-e:e-c}),[y,k]),O=o=>{n.selectEventItem(o,!0)};return E("div",{className:"efp-sessions-content",children:[f&&d(b,{interfaceId:"sessions"}),g.length>0?d(F,{events:g,showBooths:!0,isSessions:!0,onEventClick:O}):d("div",{className:"efp-sessions-empty",children:n.sessionsFilterStore.activeFiltersCount>0||n.searchStore.searchText||i.selectedTrack?h?w("No bookmarked events found. Try adjusting your filters."):w("No events found. Try adjusting your filters."):w("No events found")})]})}),N=x(f=>i.list.type!=="sessions"||i.details?null:d(I,{...f}));export default N;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as a,jsx as e}from"react/jsx-runtime";import{useState as d}from"react";import h from"classnames";import{t as
|
|
1
|
+
import{jsxs as a,jsx as e}from"react/jsx-runtime";import{useState as d}from"react";import h from"classnames";import{observer as m}from"mobx-react-lite";import{t as i}from"../utils/i18n";import"./Share.scss";const p=m(({title:r,url:s})=>{const[c,n]=d(!1),o=encodeURI(s),l={facebook:`https://www.facebook.com/sharer/sharer.php?u=${o}`,xcom:`https://x.com/share?url=${o}`,linkedin:`https://linkedin.com/shareArticle?url=${o}`},t=()=>{navigator.clipboard.writeText(s),n(!0),setTimeout(()=>n(!1),2e3)};return a("div",{className:"share",children:[a("h3",{children:[i("Share")," ",r]}),a("div",{className:"share__socials",children:[a("a",{href:l.facebook,rel:"noopener noreferrer",target:"_blank",className:"share-social facebook","aria-label":`Share ${r} on Facebook`,children:[e("div",{className:"share-social__icon",children:e("i",{className:"icon-facebook","aria-hidden":"true"})}),e("div",{className:"share-social__title",children:"Facebook"})]}),a("a",{href:l.xcom,rel:"noopener noreferrer",target:"_blank",className:"share-social xcom","aria-label":`Share ${r} on X.com`,children:[e("div",{className:"share-social__icon",children:e("i",{className:"icon-twitter-x","aria-hidden":"true"})}),e("div",{className:"share-social__title",children:"X.COM"})]}),a("a",{href:l.linkedin,rel:"noopener noreferrer",target:"_blank",className:"share-social linkedin","aria-label":`Share ${r} on LinkedIn`,children:[e("div",{className:"share-social__icon",children:e("i",{className:"icon-linkedin","aria-hidden":"true"})}),e("div",{className:"share-social__title",children:"LinkedIn"})]})]}),a("div",{className:"share__copy",children:[e("span",{children:i("or copy link")}),a("div",{className:"share__copy-input",children:[e("input",{type:"text",defaultValue:s,readOnly:!0,"aria-label":`Direct link to ${r}`}),e("button",{type:"button",className:h({isCopied:c}),onClick:t,"aria-label":i("Copy link to clipboard"),children:c?a("span",{"aria-live":"polite",children:[i("Copied"),"!"]}):i("Copy")})]})]})]})});export default p;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t,jsxs as i}from"react/jsx-runtime";import{useState as
|
|
1
|
+
import{jsx as t,jsxs as i}from"react/jsx-runtime";import{useState as v}from"react";import s from"classnames";import{observer as C}from"mobx-react-lite";import"./SidebarActions.scss";import{t as e}from"../utils/i18n";import S from"./CheckboxButton";const x=C(({className:n,inBookmark:a=!1,visited:o=!1,showVisited:l=!1,showBookmark:c=!0,showDirections:m=!0,showRoutePlanner:u=!1,showShare:d=!0,onClickBookmark:p,onClickVisited:b,onClickDirections:f,onClickRoutePlanner:h,onClickShare:k})=>{const[N,r]=v(!1),B=()=>{r(!0),p(),setTimeout(()=>{r(!1)},320)};return i("div",{className:s("efp-sidebarActions",n),role:"toolbar","aria-label":e("Sidebar Actions"),children:[m&&i("button",{type:"button",className:"efp-actionButton efp-actionButton--directions",onClick:f,title:e("Directions"),"aria-label":e("Directions"),children:[t("i",{className:"icon-directions","aria-hidden":"true"}),e("Directions")]}),l&&t(S,{className:"efp-visited-btn","aria-label":o?e("Visited"):e("Not visited"),"aria-pressed":o,checked:o,label:e("Visited"),onClick:b??(()=>{})}),c&&t("button",{type:"button",className:s("efp-actionButton","efp-actionButton--bookmark",{isActive:a,animate:N}),title:a?e("Remove from Bookmarks"):e("Save to Bookmarks"),"aria-label":a?e("Remove from Bookmarks"):e("Save to Bookmarks"),"aria-pressed":a,onClick:B,children:t("i",{className:a?"icon-bookmark-solid":"icon-bookmark","aria-hidden":"true"})}),u&&i("button",{type:"button",className:"efp-actionButton efp-actionButton--route-planner",title:e("Route planner"),"aria-label":e("Route planner"),onClick:h,children:[t("i",{className:"icon-route-solid","aria-hidden":"true"}),e("Route planner")]}),d&&t("button",{type:"button",className:"efp-actionButton efp-actionButton--share",title:e("Share"),"aria-label":e("Share"),onClick:k,children:t("i",{className:"icon-share","aria-hidden":"true"})})]})});export default x;
|
|
@@ -35,6 +35,6 @@ export interface WayfindingTemplateProps {
|
|
|
35
35
|
showDetailsIcon?: boolean;
|
|
36
36
|
onDetailsIconClick?: () => void;
|
|
37
37
|
}
|
|
38
|
-
declare const
|
|
39
|
-
export default
|
|
38
|
+
declare const _default: React.FunctionComponent<WayfindingTemplateProps>;
|
|
39
|
+
export default _default;
|
|
40
40
|
//# sourceMappingURL=WayfindingTemplate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as e,jsxs as i,Fragment as R}from"react/jsx-runtime";import{observer as M}from"mobx-react-lite";import Z from"classnames";import{t as l}from"../utils/i18n";import t from"./Autocomplete";import B from"./ToggleSwitch";import E from"./WayfindingFloorSelector";import"./WayfindingTemplate.scss";import j from"./WayInformation";import k from"./RouteQR";const D=({options:n=[],fromValue:s="",toValue:d="",showForm:o=!0,showAccessible:c=!1,showInfo:f=!1,routeFound:m=!1,infoItems:h=[],infoAccessible:a,floors:r,currentFloor:p,routeUrl:C,isKiosk:g,onChangeFrom:w,onChangeTo:v,onSwitch:y,onClickInfo:_,onClickFloor:u,onAccessibleCheck:F,showDetailsIcon:N,onDetailsIconClick:x})=>i("div",{className:Z("efp-wayfinding",{isCollapsed:!o}),children:[o&&i("div",{className:"efp-wayfinding__top",children:[i("div",{className:"efp-wayfindingForm",children:[i("div",{className:"efp-wayfindingForm__icons",children:[e("div",{className:"efp-wayfindingForm__from",children:i("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e("path",{d:"M18 9C18 13.9706 13.9706 18 9 18C4.02944 18 0 13.9706 0 9C0 4.02944 4.02944 0 9 0C13.9706 0 18 4.02944 18 9Z",fill:"white"}),e("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9 13.375C11.4162 13.375 13.375 11.4162 13.375 9C13.375 6.58375 11.4162 4.625 9 4.625C6.58375 4.625 4.625 6.58375 4.625 9C4.625 11.4162 6.58375 13.375 9 13.375ZM9 16C12.866 16 16 12.866 16 9C16 5.13401 12.866 2 9 2C5.13401 2 2 5.13401 2 9C2 12.866 5.13401 16 9 16Z",fill:"#30AFEB"})]})}),e("div",{className:"efp-wayfindingForm__to",children:i("svg",{width:"18",height:"25",viewBox:"0 0 18 25",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9 24.1571L10.5475 22.267C11.0023 21.7114 11.4571 21.1656 11.9041 20.6291C13.2939 18.9611 14.6088 17.3829 15.6182 15.8814C16.988 13.8436 18 11.668 18 9.125C18 4.09562 14.0267 0 9 0C3.97332 0 0 4.09562 0 9.125C0 11.668 1.01202 13.8436 2.38182 15.8814C3.39116 17.3829 4.70613 18.9611 6.09588 20.6291C6.54291 21.1656 6.99767 21.7114 7.45249 22.267L9 24.1571Z",fill:"white"}),e("path",{d:"M9 2C5.11111 2 2 5.16667 2 9.125C2 13.0833 5.11111 16.25 9 21C12.8889 16.25 16 13.0833 16 9.125C16 5.16667 12.8889 2 9 2ZM9 6.75C10.2911 6.75 11.3333 7.81083 11.3333 9.125C11.3333 10.4392 10.2911 11.5 9 11.5C7.70889 11.5 6.66667 10.4392 6.66667 9.125C6.66667 7.81083 7.70889 6.75 9 6.75Z",fill:"#FF9E2C"})]})}),e("div",{className:"efp-wayfindingForm__dots",children:i("svg",{width:"4",height:"18",viewBox:"0 0 4 18",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e("circle",{cx:"2",cy:"2",r:"2",fill:"#DCDFE9"}),e("circle",{cx:"2",cy:"16",r:"2",fill:"#DCDFE9"})]})})]}),i("div",{className:"efp-wayfindingForm__controls",children:[e("div",{style:{marginBottom:10},children:e(t,{placeholder:l("Choose starting point"),options:n,value:s,onChange:w})}),e("div",{children:e(t,{placeholder:l("Choose destination point"),options:n,value:d,onChange:v})})]}),i("div",{className:"efp-wayfindingForm__actions",children:[e("button",{type:"button",className:"efp-wayfindingForm__switch",onClick:y}),N&&e("button",{type:"button",className:"efp-wayfindingForm__details",onClick:x})]})]}),c&&e("div",{className:"efp-wayfindingForm__accessible",children:e(B,{name:"onlyAccessible",label:l("Accessible"),value:a,onChange:b=>F(b)})})]}),r.length>1&&e(E,{floors:r,current:p,onClickFloor:u}),f&&e("div",{className:"efp-wayfindingInfo",children:m?i(R,{children:[e(j,{items:h,accessible:a,onClick:_}),g&&e(k,{url:C})]}):e("div",{className:"efp-wayfindingError",children:l("Route not found")})})]});export default M(D);
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import React from "react";
|
|
2
|
+
declare const _default: React.FunctionComponent<{
|
|
2
3
|
isOpen: boolean;
|
|
3
4
|
onAllow?: () => void;
|
|
4
5
|
onCancel?: () => void;
|
|
5
|
-
}
|
|
6
|
+
}>;
|
|
7
|
+
export default _default;
|
|
6
8
|
//# sourceMappingURL=GpsPermissionRequest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as i}from"react/jsx-runtime";import{observer as s}from"mobx-react-lite";import{t as o}from"../../utils/i18n";import{PermissionNotice as n}from"../index";export default s(function({isOpen:e,onAllow:t,onCancel:r}){return e?i(n,{title:o("Show your position on the map"),acceptText:o("Allow compass access"),rejectText:o("Not now"),onClickAccept:t,onClickReject:r,children:o("To display your current position and orient the map around you, we\u2019ll ask for permission to access your device orientation")}):null});
|
package/dist/esm/constants.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export declare const PATHWAY_KEY = "pathway";
|
|
|
21
21
|
export declare const CACHE_DURATION = 1000;
|
|
22
22
|
export declare const MOBILE_BREAKPOINT = 768;
|
|
23
23
|
export declare const LANG_KEY = "lang";
|
|
24
|
+
export declare const LANGUAGE_TYPE = "language";
|
|
24
25
|
export declare const UI_SCALE_PARAM_KEY = "uiscale";
|
|
25
26
|
export declare const UI_SCALE_RESET_PARAM_KEY = "resetuiscale";
|
|
26
27
|
export declare const UI_SCALE_STORAGE_KEY = "___ui-scale";
|
package/dist/esm/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const VISIBILITY_STORAGE_KEY="___visibility",PREVIEW_MODE_QUERY="previewMode",PREVIEW_MODE_STORAGE_KEY="___preview_mode",PREVIEW_MODE_ATTRIBUTE="data-preview-mode",BOOTHS_PAINTER_MARKER="booths",SEPARATOR=":",LAYER_LOGOS_MARKER="logos",LAYER_ICONS_MARKER="icons",STRING_META_DELIMITER="$$",KIOSK_ENABLE_KEY="kiosk",SET_KIOSK_KEY="setkiosk",BOOKMARK_PAINTER_MARKER="booth-bookmark",MAP_SETTINGS_KEY="expofp-map-settings",DEBUG_KEY="debug",DEFAULT_UNITS="ft",BUILD_ROUTE_KEY="build-route",PLANNER_KEY="planner",PLANNER_SOURCE_KEY="source",PLANNER_FROM_KEY="from",PATHWAY_KEY="pathway",CACHE_DURATION=1e3,MOBILE_BREAKPOINT=768,LANG_KEY="lang",UI_SCALE_PARAM_KEY="uiscale",UI_SCALE_RESET_PARAM_KEY="resetuiscale",UI_SCALE_STORAGE_KEY="___ui-scale",MAX_ROUTE_WAYPOINTS=8,FONT_FACE="--expofp-font-face",FONT_WEIGHT_PRIMARY_BOOTH="--expofp-booth-main-weight",FONT_WEIGHT_SECONDARY_BOOTH="--expofp-booth-details-weight",FONT_WEIGHT_PRIMARY_EXHIBITOR="--expofp-exhibitor-main-weight",FONT_WEIGHT_SECONDARY_EXHIBITOR="--expofp-exhibitor-details-weight",FONT_WEIGHT_PRIMARY_SPECIAL="--expofp-booth-special-weight",ORIENTATION_GRANTED_KEY="efp-compass-permission-granted",VIEWER_MODE_QUERY="viewermode",VIEWER_MODE_STORAGE_KEY="___viewer_mode";
|
|
1
|
+
export const VISIBILITY_STORAGE_KEY="___visibility",PREVIEW_MODE_QUERY="previewMode",PREVIEW_MODE_STORAGE_KEY="___preview_mode",PREVIEW_MODE_ATTRIBUTE="data-preview-mode",BOOTHS_PAINTER_MARKER="booths",SEPARATOR=":",LAYER_LOGOS_MARKER="logos",LAYER_ICONS_MARKER="icons",STRING_META_DELIMITER="$$",KIOSK_ENABLE_KEY="kiosk",SET_KIOSK_KEY="setkiosk",BOOKMARK_PAINTER_MARKER="booth-bookmark",MAP_SETTINGS_KEY="expofp-map-settings",DEBUG_KEY="debug",DEFAULT_UNITS="ft",BUILD_ROUTE_KEY="build-route",PLANNER_KEY="planner",PLANNER_SOURCE_KEY="source",PLANNER_FROM_KEY="from",PATHWAY_KEY="pathway",CACHE_DURATION=1e3,MOBILE_BREAKPOINT=768,LANG_KEY="lang",LANGUAGE_TYPE="language",UI_SCALE_PARAM_KEY="uiscale",UI_SCALE_RESET_PARAM_KEY="resetuiscale",UI_SCALE_STORAGE_KEY="___ui-scale",MAX_ROUTE_WAYPOINTS=8,FONT_FACE="--expofp-font-face",FONT_WEIGHT_PRIMARY_BOOTH="--expofp-booth-main-weight",FONT_WEIGHT_SECONDARY_BOOTH="--expofp-booth-details-weight",FONT_WEIGHT_PRIMARY_EXHIBITOR="--expofp-exhibitor-main-weight",FONT_WEIGHT_SECONDARY_EXHIBITOR="--expofp-exhibitor-details-weight",FONT_WEIGHT_PRIMARY_SPECIAL="--expofp-booth-special-weight",ORIENTATION_GRANTED_KEY="efp-compass-permission-granted",VIEWER_MODE_QUERY="viewermode",VIEWER_MODE_STORAGE_KEY="___viewer_mode";
|