@expofp/floorplan 3.11.11 → 3.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/{Button-DmRjgZlq.js → Button-C5CmZ0so.js} +6 -6
- package/dist/browser/CookieConsent-kl_B6sH5.js +38 -0
- package/dist/browser/{Debug-aXNyyjt9.js → Debug-DymHiO2Z.js} +14 -14
- package/dist/browser/{Demo-Br_48fiP.js → Demo-5tRIgVJF.js} +14 -14
- package/dist/browser/{Free-CPqp0AlV.js → Free-hYQaAEbK.js} +16 -16
- package/dist/browser/{Gallery-DybTjssU.js → Gallery-D10tiZuW.js} +24 -24
- package/dist/browser/{GpsLoader-4QcLlh63.js → GpsLoader-CNkUVJdS.js} +51 -50
- package/dist/browser/{KioskStore-CwHiYm_-.js → KioskStore-2WAOxGM0.js} +31 -31
- package/dist/browser/{MaplibreAdapter-Cts8OaYm.js → MaplibreAdapter-B_tNIXx4.js} +2360 -2331
- package/dist/browser/{ModalContainer-BG7y_r6K.js → ModalContainer-CckyeoUG.js} +13 -13
- package/dist/browser/{PermissionNotice-DwlyTCP5.js → PermissionNotice-qetBrmIY.js} +7 -7
- package/dist/browser/{SetKioskMode-CvWZVqNw.js → SetKioskMode-BOjaqczc.js} +9 -9
- package/dist/browser/ShowKiosk-CcQHeM8K.js +33 -0
- package/dist/browser/{TouchHand-RuKsL9Wb.js → TouchHand-DKpxmOwz.js} +5 -5
- package/dist/browser/{ViewerMenuPanel-Dhd7sWsi.js → ViewerMenuPanel-HULfvF54.js} +25 -25
- package/dist/browser/{add-debug-secret-listener-BRMVj2bX.js → add-debug-secret-listener-BTGIVZFY.js} +1 -1
- package/dist/browser/{boolean-editor-DpmP-U1q.js → boolean-editor-oT7I3D0U.js} +10 -10
- package/dist/browser/{bootIntercom-C1k788Mx.js → bootIntercom-YnsJPGCs.js} +3 -3
- package/dist/browser/{booth-by-xy-CP-xbS2r.js → booth-by-xy-DTknn14w.js} +292 -295
- package/dist/browser/bundle.json +78 -63
- package/dist/browser/{classnames-BkI7JKtT.js → classnames-VfuHc9uB.js} +2 -2
- package/dist/browser/{client-C3mnANrs.js → client-Bevofhdz.js} +5 -5
- package/dist/browser/{components-Cg-q6o6G.js → components-COUCtdev.js} +1369 -1316
- package/dist/browser/{debug-overlay-BtQ-2fHJ.js → debug-overlay-BLN24Eyb.js} +415 -415
- package/dist/browser/{debug-ui-CjzERnaO.js → debug-ui-BT7Ddvoj.js} +7 -7
- package/dist/browser/{dist-Bn99_f_N.js → dist-CWBtHMZR.js} +6 -6
- package/dist/browser/{dist-Bn-20xtu.js → dist-CtKSG8GG.js} +4 -4
- package/dist/browser/{dist-DO20gNXa.js → dist-saTnlhyc.js} +7 -7
- package/dist/browser/{browser-BO13Zt0K.js → efp-debug-init-CYoM0s-a.js} +61 -14
- package/dist/browser/enum-editor-vF4eKelT.js +34 -0
- package/dist/browser/{es5-Dvav8ihy.js → es5-COzmRHZr.js} +2 -2
- package/dist/browser/{event-not-found-CC0X5cEh.js → event-not-found-BZkFh-P9.js} +1 -1
- package/dist/browser/{exports-D1Nac_lG.js → exports-BsqJX0o4.js} +1 -1
- package/dist/browser/{favicon-Bid1H1Jx.js → favicon-BBgsGFil.js} +1 -1
- package/dist/browser/{fetch-retry.umd-ETXiLKL-.js → fetch-retry.umd-BFTNSvNa.js} +2 -2
- package/dist/browser/{flex-B6lY7ZeN.js → flex-DnOM12q-.js} +6 -6
- package/dist/browser/{floorplan.loader-g70WUpYB.js → floorplan.loader-DuVsbJsr.js} +893 -901
- package/dist/browser/floorplan.ready-B2SvQNh9.js +1326 -0
- package/dist/browser/{fuse-BlXhXkUq.js → fuse-Ddn6vCOL.js} +2 -2
- package/dist/browser/i18n-D9dsV3GV.js +8659 -0
- package/dist/browser/index.js +49 -117
- package/dist/browser/{index.module-X_SYTiEf.js → index.module-CFTe1PiT.js} +23 -23
- package/dist/browser/integrateKiosk-vlZ9-8EP.js +28 -0
- package/dist/browser/{is-webview-zoAn2Bb4.js → is-webview-SfodrdWn.js} +1 -1
- package/dist/browser/{jsx-runtime-uErsjC2N.js → jsx-runtime-DEIf9CUU.js} +2 -2
- package/dist/browser/{lib-HG4Gm1_q.js → lib-CCkkeprZ.js} +5 -5
- package/dist/browser/loadImage-C356B0zk.js +58 -0
- package/dist/browser/locales/ru.json +1 -1
- package/dist/browser/{logDeviceInfo-DHyhFPeb.js → logDeviceInfo-UnfHYhqR.js} +9 -9
- package/dist/browser/{main-CTeBxXij.js → main-JnTe8DvY.js} +1 -1
- package/dist/browser/mobx-DPek3UBx.js +24 -0
- package/dist/browser/optional-boolean-editor-HEZXOpAy.js +20 -0
- package/dist/browser/optional-enum-editor-DpN8qtqv.js +34 -0
- package/dist/browser/optional-string-editor-iR5VHFAR.js +30 -0
- package/dist/browser/{particles.min-aU8uhhyJ.js → particles.min-BWlVGdrr.js} +2 -2
- package/dist/browser/{prop-types-90IFj1US.js → prop-types-DA-Iew4C.js} +2 -2
- package/dist/browser/{react-Cr4w3-kF.js → react-C02q0n7M.js} +2 -2
- package/dist/browser/{react-dom-BqelOkAi.js → react-dom-BV1hX9nO.js} +4 -4
- package/dist/browser/reset-all-settings-BQgeIRam.js +190 -0
- package/dist/browser/{rolldown-runtime-CMis-gOy.js → rolldown-runtime-DYSU24gn.js} +1 -1
- package/dist/browser/{enum-editor-CDtermvp.js → select-D0S5iMvJ.js} +261 -283
- package/dist/browser/{settings-BGmwy5RM.js → settings-Dw78gtQ_.js} +3 -3
- package/dist/browser/{settings-item-CDNsKf0A.js → settings-item-BSR8Iz1R.js} +7 -7
- package/dist/browser/{store-CcwBnHB2.js → store-DxRBdgZM.js} +7719 -7991
- package/dist/browser/string-editor-BwtRnquZ.js +30 -0
- package/dist/browser/text-field-D5x33kIn.js +88 -0
- package/dist/browser/{theme-C1rg17tG.js → theme-uaffdJE1.js} +9 -9
- package/dist/browser/ui-jO3fquPn.js +43 -0
- package/dist/browser/{useRenderTarget-gmu3Wzj0.js → useRenderTarget-NdsPPF5u.js} +5 -5
- package/dist/esm/components/Booth/Booth.js +1 -1
- package/dist/esm/components/EntityListRow.js +1 -1
- package/dist/esm/components/Exhibitor.js +1 -1
- package/dist/esm/components/Kiosk/ShowKiosk.js +1 -1
- package/dist/esm/components/LanguageRowContainer.d.ts +1 -0
- package/dist/esm/components/Layout.d.ts +2 -1
- package/dist/esm/components/Layout.js +1 -1
- package/dist/esm/components/LogoOverlay.js +1 -1
- package/dist/esm/components/Map/Map.js +1 -1
- package/dist/esm/components/Map/drawing/config/config-bg.d.ts +1 -1
- package/dist/esm/components/Map/drawing/config/config-booth-badge.js +1 -1
- package/dist/esm/components/Map/drawing/config/config-booth-bg.d.ts +1 -1
- package/dist/esm/components/Map/drawing/config/config-booth-bg.js +1 -1
- package/dist/esm/components/Map/drawing/config/config-load-layer.js +1 -1
- package/dist/esm/components/Map/drawing/config/loadBoothsImages.js +1 -1
- package/dist/esm/components/Maplibre/MaplibreAdapter.js +1 -1
- package/dist/esm/components/Maplibre/MaplibreWrapper.js +1 -1
- package/dist/esm/components/Maplibre/utils/resolve-map-style.d.ts +15 -0
- package/dist/esm/components/Maplibre/utils/resolve-map-style.js +1 -0
- package/dist/esm/components/Menu.d.ts +3 -2
- package/dist/esm/components/Menu.js +1 -1
- package/dist/esm/components/OverlayContainer.d.ts +2 -1
- package/dist/esm/components/OverlayContainer.js +1 -1
- package/dist/esm/components/Ws.js +1 -1
- package/dist/esm/constants.d.ts +7 -13
- package/dist/esm/constants.js +1 -1
- package/dist/esm/data/fp-payloads.d.ts +27 -0
- package/dist/esm/data/fp-payloads.js +1 -0
- package/dist/esm/data/fpGeo.js +1 -1
- package/dist/esm/data/index.d.ts +8 -2
- package/dist/esm/data/index.js +1 -1
- package/dist/esm/data/svg.d.ts +4 -1
- package/dist/esm/data/svg.js +1 -1
- package/dist/esm/floorplan.loader.d.ts +13 -4
- package/dist/esm/floorplan.loader.js +1 -1
- package/dist/esm/floorplan.ready.d.ts +8 -0
- package/dist/esm/floorplan.ready.js +1 -1
- package/dist/esm/index.d.ts +0 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/intercom/shouldLoad.d.ts +2 -2
- package/dist/esm/intercom/shouldLoad.js +1 -1
- package/dist/esm/load-dev.d.ts +44 -0
- package/dist/esm/load-dev.js +1 -0
- package/dist/esm/load.d.ts +3 -3
- package/dist/esm/load.js +3 -3
- package/dist/esm/renderer/engine-core/fonts.js +1 -1
- package/dist/esm/services/URLFilterManager.d.ts +15 -0
- package/dist/esm/services/URLFilterManager.js +1 -1
- package/dist/esm/services/multi-slug.d.ts +20 -0
- package/dist/esm/services/multi-slug.js +1 -0
- package/dist/esm/services/url-dispatch.d.ts +24 -0
- package/dist/esm/services/url-dispatch.js +1 -0
- package/dist/esm/services/url-sync.d.ts +36 -0
- package/dist/esm/services/url-sync.js +1 -0
- package/dist/esm/store/BoothStore.d.ts +2 -1
- package/dist/esm/store/ExhibitorStore.d.ts +3 -2
- package/dist/esm/store/ExhibitorStore.js +1 -1
- package/dist/esm/store/LayerStore.js +1 -1
- package/dist/esm/store/MaplibreStore.js +1 -1
- package/dist/esm/store/PoiTypeStore.d.ts +1 -1
- package/dist/esm/store/SearchStore.js +1 -1
- package/dist/esm/store/UIState.d.ts +1 -5
- package/dist/esm/store/UIState.js +1 -1
- package/dist/esm/store/init/init-bookmarks.d.ts +2 -0
- package/dist/esm/store/init/init-booths.js +1 -1
- package/dist/esm/store/init/init-categories.js +1 -1
- package/dist/esm/store/init/init-events.js +1 -1
- package/dist/esm/store/init/init-exhibitors.js +1 -1
- package/dist/esm/store/init/init-layers.js +1 -1
- package/dist/esm/store/types.d.ts +2 -1
- package/dist/esm/tools/event-not-found.d.ts +4 -3
- package/dist/esm/tools/gtag.d.ts +3 -2
- package/dist/esm/tools/gtag.js +1 -1
- package/dist/esm/tools/handleDebugMode.d.ts +17 -0
- package/dist/esm/tools/handleDebugMode.js +1 -1
- package/dist/esm/tools/loaders.d.ts +0 -2
- package/dist/esm/tools/loaders.js +1 -1
- package/dist/esm/tools/rebookingUrl.js +1 -1
- package/dist/esm/tools/reset.js +1 -1
- package/dist/esm/tools/settings.js +1 -1
- package/dist/esm/tools/track-event.js +1 -1
- package/dist/esm/types/drawing.types.d.ts +18 -0
- package/dist/esm/types.d.ts +52 -38
- package/dist/esm/utils/areLayersEnabled.js +1 -1
- package/dist/esm/utils/camera-map-settings.d.ts +20 -0
- package/dist/esm/utils/camera-map-settings.js +1 -0
- package/dist/esm/utils/customCommands.js +1 -1
- package/dist/esm/utils/getLogoUrl.d.ts +8 -1
- package/dist/esm/utils/getLogoUrl.js +1 -1
- package/dist/esm/utils/heatmap-enabled.d.ts +13 -0
- package/dist/esm/utils/heatmap-enabled.js +1 -0
- package/dist/esm/utils/i18n.js +1 -1
- package/dist/esm/utils/imageloader.js +1 -1
- package/dist/esm/utils/is-debug.d.ts +0 -8
- package/dist/esm/utils/is-debug.js +1 -1
- package/dist/esm/utils/legacy-storage-keys.d.ts +16 -0
- package/dist/esm/utils/legacy-storage-keys.js +1 -0
- package/dist/esm/utils/loadCustomCss.d.ts +2 -2
- package/dist/esm/utils/loadCustomCss.js +1 -1
- package/dist/esm/utils/mapEntity.d.ts +1 -0
- package/dist/esm/utils/preview-exhibitor.d.ts +1 -1
- package/dist/esm/wayfinding/adapters/arbitraryPoint.d.ts +1 -1
- package/dist/esm/wayfinding/adapters/arbitraryPoint.js +1 -1
- package/dist/esm/wayfinding/adapters/boothToEndpoint.d.ts +4 -4
- package/dist/esm/wayfinding/adapters/canvasIconProvider.d.ts +1 -1
- package/dist/esm/wayfinding/adapters/floorContext.d.ts +1 -1
- package/dist/esm/wayfinding/adapters/graphDataSource.d.ts +2 -2
- package/dist/esm/wayfinding/adapters/graphDataSource.js +1 -1
- package/dist/esm/wayfinding/adapters/positionInput.d.ts +8 -7
- package/dist/esm/wayfinding/adapters/positionInput.js +1 -1
- package/dist/esm/wayfinding/bindMobxReactions.d.ts +10 -23
- package/dist/esm/wayfinding/bindMobxReactions.js +1 -1
- package/dist/esm/wayfinding/createWayfinding.d.ts +1 -1
- package/dist/esm/wayfinding/createWayfinding.js +1 -1
- package/dist/esm/wayfinding/handlers/kioskHandler.d.ts +3 -3
- package/dist/esm/wayfinding/handlers/kioskHandler.js +1 -1
- package/dist/esm/wayfinding/handlers/yahHandler.d.ts +3 -4
- package/dist/esm/wayfinding/handlers/yahHandler.js +1 -1
- package/dist/esm/wayfinding/index.d.ts +4 -7
- package/dist/esm/wayfinding/index.js +1 -1
- package/dist/esm/wayfinding/storePorts.d.ts +60 -0
- package/package.json +9 -5
- package/dist/browser/CookieConsent-BJLQ1IVh.js +0 -38
- package/dist/browser/ShowKiosk-B60doTCj.js +0 -28
- package/dist/browser/efp-debug-init-Dif87fzy.js +0 -42
- package/dist/browser/floorplan.ready-CZQeXSCk.js +0 -1406
- package/dist/browser/i18n-CU-BJOBJ.js +0 -3942
- package/dist/browser/loadImage-vQZ4dq8v.js +0 -121
- package/dist/browser/mobx-Cnw3_TUT.js +0 -24
- package/dist/browser/reset-all-settings-O_33LwUw.js +0 -141
- package/dist/browser/string-editor-01VxR0gn.js +0 -108
- package/dist/browser/ui-gZWduhVn.js +0 -43
- package/dist/esm/_NEW_types.d.ts +0 -6
- package/dist/esm/_NEW_types.js +0 -1
- package/dist/esm/_misc_to_move/manifest.d.ts +0 -14
- package/dist/esm/_misc_to_move/ref.d.ts +0 -6
- package/dist/esm/data/Flags.d.ts +0 -23
- package/dist/esm/data/Flags.js +0 -1
- package/dist/esm/data/validate-data.d.ts +0 -3
- package/dist/esm/data/validate-data.js +0 -1
- package/dist/esm/services/routing.d.ts +0 -7
- package/dist/esm/services/routing.js +0 -1
- package/dist/esm/utils/mergeExhibitors.d.ts +0 -3
- package/dist/esm/utils/mergeExhibitors.js +0 -1
- package/dist/esm/wayfinding/core/__tests__/helpers.d.ts +0 -16
- package/dist/esm/wayfinding/core/__tests__/helpers.js +0 -1
- package/dist/esm/wayfinding/core/createWayfindingEngine.d.ts +0 -16
- package/dist/esm/wayfinding/core/createWayfindingEngine.js +0 -1
- package/dist/esm/wayfinding/core/geometry/pointInPolygon.d.ts +0 -11
- package/dist/esm/wayfinding/core/geometry/pointInPolygon.js +0 -1
- package/dist/esm/wayfinding/core/geometry/projectPointOnSegment.d.ts +0 -24
- package/dist/esm/wayfinding/core/geometry/projectPointOnSegment.js +0 -1
- package/dist/esm/wayfinding/core/graph/buildGraph.d.ts +0 -3
- package/dist/esm/wayfinding/core/graph/buildGraph.js +0 -1
- package/dist/esm/wayfinding/core/graph/buildNGraph.d.ts +0 -9
- package/dist/esm/wayfinding/core/graph/buildNGraph.js +0 -1
- package/dist/esm/wayfinding/core/graph/constants.d.ts +0 -17
- package/dist/esm/wayfinding/core/graph/constants.js +0 -1
- package/dist/esm/wayfinding/core/graph/findShortestPath.d.ts +0 -14
- package/dist/esm/wayfinding/core/graph/findShortestPath.js +0 -1
- package/dist/esm/wayfinding/core/graph/graphCache.d.ts +0 -7
- package/dist/esm/wayfinding/core/graph/graphCache.js +0 -1
- package/dist/esm/wayfinding/core/graph/graphHelpers.d.ts +0 -8
- package/dist/esm/wayfinding/core/graph/graphHelpers.js +0 -1
- package/dist/esm/wayfinding/core/graph/linkCost.d.ts +0 -4
- package/dist/esm/wayfinding/core/graph/linkCost.js +0 -1
- package/dist/esm/wayfinding/core/graph/pathfinder/aStarPathFinder.d.ts +0 -3
- package/dist/esm/wayfinding/core/graph/pathfinder/aStarPathFinder.js +0 -1
- package/dist/esm/wayfinding/core/graph/pathfinder/parseNodeId.d.ts +0 -9
- package/dist/esm/wayfinding/core/graph/pathfinder/parseNodeId.js +0 -1
- package/dist/esm/wayfinding/core/index.d.ts +0 -17
- package/dist/esm/wayfinding/core/index.js +0 -1
- package/dist/esm/wayfinding/core/position/distanceToRoute.d.ts +0 -3
- package/dist/esm/wayfinding/core/position/distanceToRoute.js +0 -1
- package/dist/esm/wayfinding/core/position/gpsThreshold.d.ts +0 -31
- package/dist/esm/wayfinding/core/position/gpsThreshold.js +0 -1
- package/dist/esm/wayfinding/core/position/rerouteController.d.ts +0 -10
- package/dist/esm/wayfinding/core/position/rerouteController.js +0 -1
- package/dist/esm/wayfinding/core/position/snapToRoute.d.ts +0 -4
- package/dist/esm/wayfinding/core/position/snapToRoute.js +0 -1
- package/dist/esm/wayfinding/core/position/splitRouteByPoint.d.ts +0 -6
- package/dist/esm/wayfinding/core/position/splitRouteByPoint.js +0 -1
- package/dist/esm/wayfinding/core/rendering/computeTrailPoints.d.ts +0 -19
- package/dist/esm/wayfinding/core/rendering/computeTrailPoints.js +0 -1
- package/dist/esm/wayfinding/core/rendering/computeTransitionPoints.d.ts +0 -31
- package/dist/esm/wayfinding/core/rendering/computeTransitionPoints.js +0 -1
- package/dist/esm/wayfinding/core/rendering/getVisibleRouteLines.d.ts +0 -11
- package/dist/esm/wayfinding/core/rendering/getVisibleRouteLines.js +0 -1
- package/dist/esm/wayfinding/core/rendering/normalizeRouteDirection.d.ts +0 -20
- package/dist/esm/wayfinding/core/rendering/normalizeRouteDirection.js +0 -1
- package/dist/esm/wayfinding/core/rendering/routeGeometry.d.ts +0 -11
- package/dist/esm/wayfinding/core/rendering/routeGeometry.js +0 -1
- package/dist/esm/wayfinding/core/routing/buildMultiPointRoute.d.ts +0 -11
- package/dist/esm/wayfinding/core/routing/buildMultiPointRoute.js +0 -1
- package/dist/esm/wayfinding/core/routing/buildRoute.d.ts +0 -9
- package/dist/esm/wayfinding/core/routing/buildRoute.js +0 -1
- package/dist/esm/wayfinding/core/routing/getRouteLength.d.ts +0 -3
- package/dist/esm/wayfinding/core/routing/getRouteLength.js +0 -1
- package/dist/esm/wayfinding/core/routing/graphPointResolvers.d.ts +0 -4
- package/dist/esm/wayfinding/core/routing/graphPointResolvers.js +0 -1
- package/dist/esm/wayfinding/core/routing/optimizeWaypointOrder.d.ts +0 -19
- package/dist/esm/wayfinding/core/routing/optimizeWaypointOrder.js +0 -1
- package/dist/esm/wayfinding/core/routing/resolveWaypointCandidates.d.ts +0 -18
- package/dist/esm/wayfinding/core/routing/resolveWaypointCandidates.js +0 -1
- package/dist/esm/wayfinding/core/routing/routeResult.d.ts +0 -4
- package/dist/esm/wayfinding/core/routing/routeResult.js +0 -1
- package/dist/esm/wayfinding/core/types.d.ts +0 -106
- package/dist/esm/wayfinding/core/types.js +0 -1
- package/dist/esm/wayfinding/renderer/createWayfindingRenderer.d.ts +0 -13
- package/dist/esm/wayfinding/renderer/createWayfindingRenderer.js +0 -1
- package/dist/esm/wayfinding/renderer/iconManager.d.ts +0 -37
- package/dist/esm/wayfinding/renderer/iconManager.js +0 -1
- package/dist/esm/wayfinding/renderer/index.d.ts +0 -3
- package/dist/esm/wayfinding/renderer/index.js +0 -1
- package/dist/esm/wayfinding/renderer/layerManager.d.ts +0 -26
- package/dist/esm/wayfinding/renderer/layerManager.js +0 -1
- package/dist/esm/wayfinding/renderer/lineAnimation.d.ts +0 -7
- package/dist/esm/wayfinding/renderer/lineAnimation.js +0 -1
- package/dist/esm/wayfinding/renderer/routeLineManager.d.ts +0 -41
- package/dist/esm/wayfinding/renderer/routeLineManager.js +0 -1
- package/dist/esm/wayfinding/renderer/trailManager.d.ts +0 -30
- package/dist/esm/wayfinding/renderer/trailManager.js +0 -1
- package/dist/esm/wayfinding/renderer/types.d.ts +0 -129
- package/dist/esm/wayfinding/renderer/types.js +0 -1
- package/dist/esm/wayfinding/runtime/createWayfindingRuntime.d.ts +0 -3
- package/dist/esm/wayfinding/runtime/createWayfindingRuntime.js +0 -1
- package/dist/esm/wayfinding/runtime/endpointView.d.ts +0 -18
- package/dist/esm/wayfinding/runtime/endpointView.js +0 -1
- package/dist/esm/wayfinding/runtime/getRouteLines.d.ts +0 -13
- package/dist/esm/wayfinding/runtime/getRouteLines.js +0 -1
- package/dist/esm/wayfinding/runtime/positionTrailView.d.ts +0 -50
- package/dist/esm/wayfinding/runtime/positionTrailView.js +0 -1
- package/dist/esm/wayfinding/runtime/positionView.d.ts +0 -23
- package/dist/esm/wayfinding/runtime/positionView.js +0 -1
- package/dist/esm/wayfinding/runtime/routeLinesView.d.ts +0 -18
- package/dist/esm/wayfinding/runtime/routeLinesView.js +0 -1
- package/dist/esm/wayfinding/runtime/routeRenderData.d.ts +0 -29
- package/dist/esm/wayfinding/runtime/routeRenderData.js +0 -1
- package/dist/esm/wayfinding/runtime/routeUpdate.d.ts +0 -15
- package/dist/esm/wayfinding/runtime/routeUpdate.js +0 -1
- package/dist/esm/wayfinding/runtime/trailView.d.ts +0 -20
- package/dist/esm/wayfinding/runtime/trailView.js +0 -1
- package/dist/esm/wayfinding/runtime/transitionView.d.ts +0 -17
- package/dist/esm/wayfinding/runtime/transitionView.js +0 -1
- package/dist/esm/wayfinding/runtime/types.d.ts +0 -82
- package/dist/esm/wayfinding/runtime/types.js +0 -1
- /package/dist/esm/{_misc_to_move/manifest.js → types/drawing.types.js} +0 -0
- /package/dist/esm/{_misc_to_move/ref.js → wayfinding/storePorts.js} +0 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
(function() {
|
|
2
|
+
try {
|
|
3
|
+
var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.12.0" };
|
|
5
|
+
var t = new e.Error().stack;
|
|
6
|
+
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "ebe8f804-597b-4b08-adc4-ca6b63645c83", e._sentryDebugIdIdentifier = "sentry-dbid-ebe8f804-597b-4b08-adc4-ca6b63645c83");
|
|
7
|
+
} catch {}
|
|
8
|
+
})();
|
|
9
|
+
import { t as e } from "./jsx-runtime-DEIf9CUU.js";
|
|
10
|
+
import { t } from "./settings-item-BSR8Iz1R.js";
|
|
11
|
+
import { t as n } from "./text-field-D5x33kIn.js";
|
|
12
|
+
//#region ../debug/src/lib/ui/string-editor.tsx
|
|
13
|
+
var r = e(), i = (e) => {
|
|
14
|
+
var i;
|
|
15
|
+
return /* @__PURE__ */ (0, r.jsx)(t, {
|
|
16
|
+
label: e.label,
|
|
17
|
+
children: /* @__PURE__ */ (0, r.jsx)(n, {
|
|
18
|
+
placeholder: (i = e.context) == null ? void 0 : i.placeholder,
|
|
19
|
+
value: e.value,
|
|
20
|
+
onChange: (t) => e.onChange(t.target.value),
|
|
21
|
+
style: {
|
|
22
|
+
flexGrow: 1,
|
|
23
|
+
minWidth: 220
|
|
24
|
+
}
|
|
25
|
+
})
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
i.displayName = "StringEditor";
|
|
29
|
+
//#endregion
|
|
30
|
+
export { i as StringEditor };
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
(function() {
|
|
2
|
+
try {
|
|
3
|
+
var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.12.0" };
|
|
5
|
+
var t = new e.Error().stack;
|
|
6
|
+
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "651e1a3a-8897-47f8-8a5e-24137d6b0f0d", e._sentryDebugIdIdentifier = "sentry-dbid-651e1a3a-8897-47f8-8a5e-24137d6b0f0d");
|
|
7
|
+
} catch {}
|
|
8
|
+
})();
|
|
9
|
+
import { r as e } from "./rolldown-runtime-DYSU24gn.js";
|
|
10
|
+
import { t } from "./react-C02q0n7M.js";
|
|
11
|
+
import { t as n } from "./classnames-VfuHc9uB.js";
|
|
12
|
+
import { D as r, i, l as a, n as o, s, u as c, y as l } from "./flex-DnOM12q-.js";
|
|
13
|
+
//#region ../../node_modules/.pnpm/@radix-ui+themes@3.3.0_@types+react-dom@19.2.3_@types+react@19.2.17__@types+react@19.2._925f851475345a9e5e368d312bb98178/node_modules/@radix-ui/themes/dist/esm/components/text-field.props.js
|
|
14
|
+
var u = /* @__PURE__ */ e(t()), d = /* @__PURE__ */ e(n()), f = {
|
|
15
|
+
size: {
|
|
16
|
+
type: "enum",
|
|
17
|
+
className: "rt-r-size",
|
|
18
|
+
values: [
|
|
19
|
+
"1",
|
|
20
|
+
"2",
|
|
21
|
+
"3"
|
|
22
|
+
],
|
|
23
|
+
default: "2",
|
|
24
|
+
responsive: !0
|
|
25
|
+
},
|
|
26
|
+
variant: {
|
|
27
|
+
type: "enum",
|
|
28
|
+
className: "rt-variant",
|
|
29
|
+
values: [
|
|
30
|
+
"classic",
|
|
31
|
+
"surface",
|
|
32
|
+
"soft"
|
|
33
|
+
],
|
|
34
|
+
default: "surface"
|
|
35
|
+
},
|
|
36
|
+
...l,
|
|
37
|
+
...s
|
|
38
|
+
}, p = {
|
|
39
|
+
side: {
|
|
40
|
+
type: "enum",
|
|
41
|
+
values: ["left", "right"]
|
|
42
|
+
},
|
|
43
|
+
...l,
|
|
44
|
+
gap: o.gap,
|
|
45
|
+
px: i.px,
|
|
46
|
+
pl: i.pl,
|
|
47
|
+
pr: i.pr
|
|
48
|
+
}, m = u.forwardRef((e, t) => {
|
|
49
|
+
let n = u.useRef(null), { children: i, className: o, color: s, radius: l, style: p, ...m } = c(e, f, a);
|
|
50
|
+
return u.createElement("div", {
|
|
51
|
+
"data-accent-color": s,
|
|
52
|
+
"data-radius": l,
|
|
53
|
+
style: p,
|
|
54
|
+
className: (0, d.default)("rt-TextFieldRoot", o),
|
|
55
|
+
onPointerDown: (e) => {
|
|
56
|
+
let t = e.target;
|
|
57
|
+
if (t.closest("input, button, a")) return;
|
|
58
|
+
let r = n.current;
|
|
59
|
+
if (!r) return;
|
|
60
|
+
let i = t.closest("\n .rt-TextFieldSlot[data-side='right'],\n .rt-TextFieldSlot:not([data-side='right']) ~ .rt-TextFieldSlot:not([data-side='left'])\n ") ? r.value.length : 0;
|
|
61
|
+
requestAnimationFrame(() => {
|
|
62
|
+
try {
|
|
63
|
+
r.setSelectionRange(i, i);
|
|
64
|
+
} catch {}
|
|
65
|
+
r.focus();
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}, u.createElement("input", {
|
|
69
|
+
spellCheck: "false",
|
|
70
|
+
...m,
|
|
71
|
+
ref: r(n, t),
|
|
72
|
+
className: "rt-reset rt-TextFieldInput"
|
|
73
|
+
}), i);
|
|
74
|
+
});
|
|
75
|
+
m.displayName = "TextField.Root";
|
|
76
|
+
var h = u.forwardRef((e, t) => {
|
|
77
|
+
let { className: n, color: r, side: i, ...a } = c(e, p);
|
|
78
|
+
return u.createElement("div", {
|
|
79
|
+
"data-accent-color": r,
|
|
80
|
+
"data-side": i,
|
|
81
|
+
...a,
|
|
82
|
+
ref: t,
|
|
83
|
+
className: (0, d.default)("rt-TextFieldSlot", n)
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
h.displayName = "TextField.Slot";
|
|
87
|
+
//#endregion
|
|
88
|
+
export { m as t };
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
(function() {
|
|
2
2
|
try {
|
|
3
3
|
var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
|
|
4
|
-
e.SENTRY_RELEASE = { id: "3.
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.12.0" };
|
|
5
5
|
var t = new e.Error().stack;
|
|
6
|
-
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "
|
|
6
|
+
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "864c18b1-0ffa-4523-9fe0-93bdf8a9090c", e._sentryDebugIdIdentifier = "sentry-dbid-864c18b1-0ffa-4523-9fe0-93bdf8a9090c");
|
|
7
7
|
} catch {}
|
|
8
8
|
})();
|
|
9
|
-
import { r as e } from "./rolldown-runtime-
|
|
10
|
-
import { t } from "./react-
|
|
11
|
-
import { t as n } from "./jsx-runtime-
|
|
12
|
-
import { t as r } from "./react-dom-
|
|
13
|
-
import { t as i } from "./classnames-
|
|
14
|
-
import { a, c as o, i as s, n as c, o as l, r as u, t as d } from "./dist-
|
|
15
|
-
import { C as f, E as p, O as m, T as h, _ as g, o as _, v, w as y } from "./flex-
|
|
9
|
+
import { r as e } from "./rolldown-runtime-DYSU24gn.js";
|
|
10
|
+
import { t } from "./react-C02q0n7M.js";
|
|
11
|
+
import { t as n } from "./jsx-runtime-DEIf9CUU.js";
|
|
12
|
+
import { t as r } from "./react-dom-BV1hX9nO.js";
|
|
13
|
+
import { t as i } from "./classnames-VfuHc9uB.js";
|
|
14
|
+
import { a, c as o, i as s, n as c, o as l, r as u, t as d } from "./dist-saTnlhyc.js";
|
|
15
|
+
import { C as f, E as p, O as m, T as h, _ as g, o as _, v, w as y } from "./flex-DnOM12q-.js";
|
|
16
16
|
//#region ../../node_modules/.pnpm/@radix-ui+react-id@1.1.1_@types+react@19.2.17_react@19.2.7/node_modules/@radix-ui/react-id/dist/index.mjs
|
|
17
17
|
var b = n(), x = /* @__PURE__ */ e(t(), 1), S = x.useId || (() => void 0), C = 0;
|
|
18
18
|
function w(e) {
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
(function() {
|
|
2
|
+
try {
|
|
3
|
+
var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.12.0" };
|
|
5
|
+
var t = new e.Error().stack;
|
|
6
|
+
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "05a753ca-f6da-4c1e-acf5-eacf4d461db5", e._sentryDebugIdIdentifier = "sentry-dbid-05a753ca-f6da-4c1e-acf5-eacf4d461db5");
|
|
7
|
+
} catch {}
|
|
8
|
+
})();
|
|
9
|
+
import { r as e } from "./rolldown-runtime-DYSU24gn.js";
|
|
10
|
+
import { a as t, i as n, s as r } from "./efp-debug-init-CYoM0s-a.js";
|
|
11
|
+
import { a as i, o as a } from "./reset-all-settings-BQgeIRam.js";
|
|
12
|
+
import { t as o } from "./jsx-runtime-DEIf9CUU.js";
|
|
13
|
+
import "./settings-Dw78gtQ_.js";
|
|
14
|
+
import { t as s } from "./add-debug-secret-listener-BTGIVZFY.js";
|
|
15
|
+
//#region ../debug/src/lib/ui/render-debug-ui.tsx
|
|
16
|
+
var c = /* @__PURE__ */ e(r(), 1), l = o(), u = !1;
|
|
17
|
+
function d() {
|
|
18
|
+
if (u) return;
|
|
19
|
+
u = !0;
|
|
20
|
+
let r = a({ key: t });
|
|
21
|
+
i({
|
|
22
|
+
key: n,
|
|
23
|
+
placeholder: "e.g. efp:*",
|
|
24
|
+
onChange: (e) => {
|
|
25
|
+
e ? c.default.enable(e) : c.default.disable();
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
let o = async (t) => {
|
|
29
|
+
let { DebugUi: n } = await import("./debug-ui-BT7Ddvoj.js"), { createRoot: i } = await import("./client-Bevofhdz.js").then((t) => /* @__PURE__ */ e(t.default, 1)), a = document.createElement("div");
|
|
30
|
+
document.body.appendChild(a), i(a).render(/* @__PURE__ */ (0, l.jsx)(n, {
|
|
31
|
+
useDebugButtonState: r.useState,
|
|
32
|
+
open: t
|
|
33
|
+
}));
|
|
34
|
+
};
|
|
35
|
+
if (r.get()) o(!1);
|
|
36
|
+
else {
|
|
37
|
+
let e = s(() => {
|
|
38
|
+
e(), r.set(!0), o(!0);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//#endregion
|
|
43
|
+
export { d as renderDebugUi };
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
(function() {
|
|
2
2
|
try {
|
|
3
3
|
var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
|
|
4
|
-
e.SENTRY_RELEASE = { id: "3.
|
|
4
|
+
e.SENTRY_RELEASE = { id: "3.12.0" };
|
|
5
5
|
var t = new e.Error().stack;
|
|
6
|
-
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "
|
|
6
|
+
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "33455732-e070-4a3b-bdf3-a25a1f54c994", e._sentryDebugIdIdentifier = "sentry-dbid-33455732-e070-4a3b-bdf3-a25a1f54c994");
|
|
7
7
|
} catch {}
|
|
8
8
|
})();
|
|
9
|
-
import { r as e } from "./rolldown-runtime-
|
|
10
|
-
import { t } from "./react-
|
|
11
|
-
import { c as n } from "./store-
|
|
9
|
+
import { r as e } from "./rolldown-runtime-DYSU24gn.js";
|
|
10
|
+
import { t } from "./react-C02q0n7M.js";
|
|
11
|
+
import { c as n } from "./store-DxRBdgZM.js";
|
|
12
12
|
//#region src/utils/getRenderTargetFromRoot.ts
|
|
13
13
|
var r = /* @__PURE__ */ e(t(), 1);
|
|
14
14
|
function i(e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o,Fragment as b,jsxs as u}from"react/jsx-runtime";import"./Booth.scss";import{observer as p,useLocalStore as _}from"mobx-react-lite";import{useEffect as y,useRef as x}from"react";import l from"../../data";import c,{uiState as i}from"../../store";import{RegularBooth as N,SpecialBooth as S}from"../../store/BoothStore";import C from"../../tools/settings";import{t as E}from"../../utils/i18n";import T from"../../utils/useHeatmapOverlay";import{LevelBadge as I}from"../";import L from"../EntityItemContainer";import j from"../Schedule";import H from"../SidebarActionsContainer";import{BoothOnHold as A}from"./BoothOnHold";import{BoothReserved as M}from"./BoothReserved";import{BoothWithoutExhibitor as k}from"./BoothWithoutExhibitor";const U=p(()=>{const d=x(),e=_(()=>({get booth(){return i.selectedBooth},get regular(){return this.booth instanceof N?this.booth:null},get special(){return this.booth instanceof S?this.booth:null},get showReserve(){return!i.kiosk&&this.regular&&(this.regular.price==="0"&&!!this.regular.buyUrl||!!this.regular.reserveUrl)},get showBuy(){return!i.kiosk&&this.regular&&this.regular.buyUrl&&this.regular.price&&this.regular.price!=="0"},get title(){return this.booth.fullName},get reserveTitle(){return l.reserveButtonTerm||E("Reserve")},get descriptionCombined(){return this.booth.description||l.reserveInstructions||""}}));y(()=>{if(e.booth.schedule?.length){const t=new Date,r=[...e.booth.schedule].sort((n,s)=>new Date(n.startDate).getTime()-new Date(s.startDate).getTime());if(r.some(n=>(n.endDate?new Date(n.endDate):new Date(n.startDate))<t)){const n=r.find(s=>(s.endDate?new Date(s.endDate):new Date(s.startDate))>t);if(n&&d.current){const s=d.current.querySelector(`[data-event-id="${n.id}"]`);s&&setTimeout(()=>{const f=d.current.getBoundingClientRect(),R=s.getBoundingClientRect().top-f.top-20;d.current.scrollTop=R},100)}}}},[e.booth.schedule]);function v(t){const r=parseInt(t);c.clickExhibitor(c.exhibitorStore.exhibitors.find(g=>g.id===r))}function B(t){c.selectEventItem(t,!0)}function D(){e.booth.exhibitors.length===0&&(e.booth.bookmarkedDirectly=!e.booth.bookmarkedDirectly)}const F=o("div",{className:"booth__bar",children:e.title});let a=null;const h=e.booth.layer?.description,{heatmapBar:w}=T(e.booth),m=e.booth.exhibitors.sort((t,r)=>+!!r.featured-+!!t.featured).map(t=>o(L,{onClick:v,id:t.id.toString(),featured:t.featured,kind:"exhibitor",image:t.logo,title:t.name,bookmarked:t.bookmarked,visited:t.visited,additionalInfo:t.booths.map(r=>({type:"location",locationName:r.name,level:h||r.layer?.name}))},t.id.toString()));if(l.isRebooking)a=o(b,{children:m});else if(e.regular){const t=e.regular;t.onHold?a=o(A,{booth:t,description:"",showBuy:!1,showReserve:!1,isRebooking:!1,level:h}):t.reserved?a=o(M,{}):t.exhibitors.length===0?a=o(k,{booth:t,description:e.descriptionCombined,showBuy:!i.previewMode&&e.showBuy,showReserve:!i.previewMode&&e.showReserve,isRebooking:!1,level:h}):a=o(b,{children:m})}else a=u("div",{className:"booth__content -spec",children:[o(I,{level:h}),o("div",{className:"booth__desc",dangerouslySetInnerHTML:{__html:e.special.description}}),o(b,{children:m})]});return u("div",{className:"booth",children:[u("div",{className:"booth__header",children:[u("div",{className:"booth__header-name",children:[o("div",{className:"booth__header-icon",children:o("i",{className:"icon-booth-solid"})}),o("span",{dir:"auto",children:e.title}),w]}),o("button",{type:"button",onClick:()=>c.searchStore.handleBackAction(),className:"booth__header-close",children:o("i",{className:"icon-close"})})]}),!l.isRebooking&&C.wayfinding&&!i.isGuidedToursActive&&o("div",{className:"exhibitor__directions",style:{paddingLeft:15,paddingRight:15},children:o(H,{showBookmark:!i.disableBookmarked&&!l.hideBookmarks&&!i.kiosk&&e.booth.exhibitors.length===0,showShare:!1,inBookmark:e.booth.exhibitors.length===0?e.booth.bookmarkedDirectly:!1,onClickBookmark:D,onClickDirections:()=>{c.routeStore.clickRoute(null,e.booth)}})}),a,l.isRebooking&&e.regular&&e.regular.exhibitors.length===0&&o(k,{showBuy:!1,description:e.descriptionCombined,showReserve:!1,booth:e.regular,isRebooking:l.isRebooking,level:h}),!!e.booth.schedule?.length&&o(j,{isSessions:!0,showBooths:!0,events:[...e.booth.schedule].sort((t,r)=>new Date(t.startDate).getTime()-new Date(r.startDate).getTime()),onEventClick:B})]})});export default p(()=>!i.menu&&i.selectedBooth?o(U,{}):null);
|
|
1
|
+
import{jsx as o,Fragment as b,jsxs as u}from"react/jsx-runtime";import"./Booth.scss";import{observer as p,useLocalStore as _}from"mobx-react-lite";import{useEffect as y,useRef as x}from"react";import l from"../../data";import c,{uiState as i}from"../../store";import{RegularBooth as N,SpecialBooth as S}from"../../store/BoothStore";import C from"../../tools/settings";import{t as E}from"../../utils/i18n";import T from"../../utils/useHeatmapOverlay";import{LevelBadge as I}from"../";import L from"../EntityItemContainer";import j from"../Schedule";import H from"../SidebarActionsContainer";import{BoothOnHold as A}from"./BoothOnHold";import{BoothReserved as M}from"./BoothReserved";import{BoothWithoutExhibitor as k}from"./BoothWithoutExhibitor";const U=p(()=>{const d=x(),e=_(()=>({get booth(){return i.selectedBooth},get regular(){return this.booth instanceof N?this.booth:null},get special(){return this.booth instanceof S?this.booth:null},get showReserve(){return!i.kiosk&&this.regular&&(this.regular.price==="0"&&!!this.regular.buyUrl||!!this.regular.reserveUrl)},get showBuy(){return!i.kiosk&&this.regular&&this.regular.buyUrl&&this.regular.price&&this.regular.price!=="0"},get title(){return this.booth.fullName},get reserveTitle(){return l.reserveButtonTerm||E("Reserve")},get descriptionCombined(){return this.booth.description||l.reserveInstructions||""}}));y(()=>{if(e.booth.schedule?.length){const t=new Date,r=[...e.booth.schedule].sort((n,s)=>new Date(n.startDate).getTime()-new Date(s.startDate).getTime());if(r.some(n=>(n.endDate?new Date(n.endDate):new Date(n.startDate))<t)){const n=r.find(s=>(s.endDate?new Date(s.endDate):new Date(s.startDate))>t);if(n&&d.current){const s=d.current.querySelector(`[data-event-id="${n.id}"]`);s&&setTimeout(()=>{const f=d.current.getBoundingClientRect(),R=s.getBoundingClientRect().top-f.top-20;d.current.scrollTop=R},100)}}}},[e.booth.schedule]);function v(t){const r=parseInt(t);c.clickExhibitor(c.exhibitorStore.exhibitors.find(g=>g.id===r))}function B(t){c.selectEventItem(t,!0)}function D(){e.booth.exhibitors.length===0&&(e.booth.bookmarkedDirectly=!e.booth.bookmarkedDirectly)}const F=o("div",{className:"booth__bar",children:e.title});let a=null;const h=e.booth.layer?.description,{heatmapBar:w}=T(e.booth),m=e.booth.exhibitors.sort((t,r)=>+!!r.featured-+!!t.featured).map(t=>o(L,{onClick:v,id:t.id.toString(),featured:t.featured,kind:"exhibitor",image:t.logo?.url,title:t.name,bookmarked:t.bookmarked,visited:t.visited,additionalInfo:t.booths.map(r=>({type:"location",locationName:r.name,level:h||r.layer?.name}))},t.id.toString()));if(l.isRebooking)a=o(b,{children:m});else if(e.regular){const t=e.regular;t.onHold?a=o(A,{booth:t,description:"",showBuy:!1,showReserve:!1,isRebooking:!1,level:h}):t.reserved?a=o(M,{}):t.exhibitors.length===0?a=o(k,{booth:t,description:e.descriptionCombined,showBuy:!i.previewMode&&e.showBuy,showReserve:!i.previewMode&&e.showReserve,isRebooking:!1,level:h}):a=o(b,{children:m})}else a=u("div",{className:"booth__content -spec",children:[o(I,{level:h}),o("div",{className:"booth__desc",dangerouslySetInnerHTML:{__html:e.special.description}}),o(b,{children:m})]});return u("div",{className:"booth",children:[u("div",{className:"booth__header",children:[u("div",{className:"booth__header-name",children:[o("div",{className:"booth__header-icon",children:o("i",{className:"icon-booth-solid"})}),o("span",{dir:"auto",children:e.title}),w]}),o("button",{type:"button",onClick:()=>c.searchStore.handleBackAction(),className:"booth__header-close",children:o("i",{className:"icon-close"})})]}),!l.isRebooking&&C.wayfinding&&!i.isGuidedToursActive&&o("div",{className:"exhibitor__directions",style:{paddingLeft:15,paddingRight:15},children:o(H,{showBookmark:!i.disableBookmarked&&!l.hideBookmarks&&!i.kiosk&&e.booth.exhibitors.length===0,showShare:!1,inBookmark:e.booth.exhibitors.length===0?e.booth.bookmarkedDirectly:!1,onClickBookmark:D,onClickDirections:()=>{c.routeStore.clickRoute(null,e.booth)}})}),a,l.isRebooking&&e.regular&&e.regular.exhibitors.length===0&&o(k,{showBuy:!1,description:e.descriptionCombined,showReserve:!1,booth:e.regular,isRebooking:l.isRebooking,level:h}),!!e.booth.schedule?.length&&o(j,{isSessions:!0,showBooths:!0,events:[...e.booth.schedule].sort((t,r)=>new Date(t.startDate).getTime()-new Date(r.startDate).getTime()),onEventClick:B})]})});export default p(()=>!i.menu&&i.selectedBooth?o(U,{}):null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";import
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import l from"dateformat";import{observer as h}from"mobx-react-lite";import f from"../data";import b,{boothStore as y,uiState as n}from"../store";import{BoothBase as g}from"../store/BoothStore";import{Category as v}from"../store/CategoryStore";import{EventItem as x}from"../store/EventStore";import{Exhibitor as p}from"../store/ExhibitorStore";import{HeatmapYah as k}from"../store/HeatmapStore";import{SpeakerItem as S}from"../store/SpeakerStore";import{rebookingStateConfig as I}from"../tools/rebooking-config";import C from"../utils/useHeatmapData";import i from"./EntityItemContainer";import D from"./YahRow";const T=({item:o,index:u,current:d,compactDetails:m,onClick:s})=>{let c={background:void 0,clicks:void 0};n.heatmap&&(o instanceof p||o instanceof g||o instanceof k)&&(c=C(o));const a=n.foundInDescriptionStruct[o.id];if(o instanceof p){const t="exhibitor";return r(i,{onClick:e=>s(t,e),id:o.id.toString(),featured:o.featured,kind:t,image:o.logo?.url,title:o.name,bookmarked:o.bookmarked,visited:o.visited,additionalInfo:o.booths.map(e=>({type:"location",locationName:e.name,level:e.layer&&(f.shortLevelName?e.layer.shortName:e.layer.description)||""})),current:d,compactDetails:m,heatmapColor:c.background,accentBorderColor:f.isRebooking?I[o.rebookingState]?.color.primary:void 0,hideUserState:n.kiosk,secondaryText:a})}if("rect"in o)return r(i,{onClick:t=>s("booth",t),id:o.id.toString(),kind:"booth",title:o.name,icon:o.poiIcon,bookmarked:o.bookmarked,current:d,heatmapColor:c.background,secondaryText:a});if(o instanceof v)return r(i,{onClick:t=>s("category",t),id:o.id.toString(),itemsCount:o.exhibitors.length,kind:"category",title:o.name,current:d,secondaryText:a});if(o instanceof S){const t=[];return o.jobTitle&&t.push({type:"text",text:o.jobTitle}),r(i,{id:o.id.toString(),kind:"speaker",title:o.name,subtitle:o.company,image:o.photoFile,additionalInfo:t,bookmarked:o.bookmarked,onClick:()=>b.selectSpeaker(o,!0),secondaryText:a},o.id)}if(o instanceof x){const t=o.boothId?y.booths.find(e=>e.id===o.boothId):null;return r(i,{id:o.id.toString(),onClick:e=>s("event",e),kind:"event",title:o.name,date:l(o.startDate,"dd mmm ddd"),time:`${l(o.startDate,"h:MM")} - ${l(o.endDate,"h:MM")}`,additionalInfo:t?[{type:"location",locationName:t.name,level:f.shortLevelName?t.layer?.shortName:t.layer?.description}]:[],bookmarked:o.bookmarked,visited:o.visited,current:d,hideUserState:n.kiosk,secondaryText:a})}return o instanceof k?r(D,{yah:o,active:u===n.activeListIndex}):null};export default h(T);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as i,jsxs as n,Fragment as N}from"react/jsx-runtime";import"./Exhibitor.scss";import g from"classnames";import{observer as Q,useLocalStore as Z,useObserver as R}from"mobx-react-lite";import ee,{Suspense as T,useEffect as ie,useRef as C,useState as D}from"react";import{Transition as te}from"react-transition-group";import p from"../data";import a,{uiState as o}from"../store";import{RegularBooth as oe}from"../store/BoothStore";import{GaEventActions as d,sendEventToGa as I}from"../tools/gtag";import re from"../tools/logger";import y from"../tools/settings";import O from"../ui/Button";import{t as h}from"../utils/i18n";import ne from"../utils/is-mobile";import{useReaction as ae}from"../utils/mobx";import se from"../utils/useHeatmapOverlay";import le from"./AlertContainer";import ce from"./DownloadListContainer";import U from"./ErrorBoundary";import de from"./RebookingNotesContainer";import he from"./RebookingRadioGroupContainer";import me from"./Schedule";import ue from"./ShowMoreButtonContainer";import be from"./SidebarActionsContainer";import{getDescription as ke}from"./utils/getDescription";const G=ee.lazy(()=>import("./Gallery/Gallery")),ge=Q(function(){const S=C(null),r=Z(()=>({collapsed:!0,updateOverlayContent:null,get exhibitor(){return o.selectedExhibitor},get websiteTrimmed(){return this.exhibitor.website?this.exhibitor.website.replace(/^(http(s?):\/\/)([^/]+)(\/)?$/i,"$3"):""},get anySocial(){return o.kiosk?!1:!!["facebook","instagram","linkedin","twitter","googlePlus","xing","youtube"].find(e=>this.exhibitor[e])},get anyAddress(){return!!["address","address2","phone1","website","email"].find(e=>this.exhibitor[e])},get anyMedia(){return!!this.exhibitor.videoUrl||!!(this.exhibitor.gallery&&this.exhibitor.gallery.length)},get anyButtons(){return!!(this.exhibitor.customButtonTitle||this.exhibitor.customButton2Title||this.exhibitor.customButton3Title)},get disableCollapse(){return!this.anySocial&&!this.anyAddress&&!this.anyMedia&&!this.anyButtons||o.overlayPosition==="left"&&(this.exhibitor.description||"").length<800},get showEdit(){return!!(p.sendLoginLinkUrl&&this.sendLinkEmail)},get sendLinkEmail(){return this.exhibitor.privateEmail||this.exhibitor.email}})),{heatmapBar:A}=se(r.exhibitor),[w,z]=D(!1),[f,M]=D(!1),x=C(null);ie(()=>((()=>{if(x.current){const c=x.current.offsetHeight;z(c>300)}})(),()=>{a.exhibitorStore.rebookingStateChangeRequested=!1}),[]),ae(()=>r.exhibitor,()=>{S.current&&(S.current.parentElement.scrollTop=0),r.collapsed=!0});function _(e,c){if(u(c),o.kiosk)return e.preventDefault()}function H(e,c,m){I(d.ClickCustomButton,r.exhibitor.name);const b={externalId:r.exhibitor.externalId,buttonNumber:e,buttonUrl:c,preventDefault:m.preventDefault.bind(m)};o.onExhibitorCustomButtonClick&&o.onExhibitorCustomButtonClick(b)}function u(e){I(e,r.exhibitor.name)}const B=C(),V={entering:{opacity:1},entered:{opacity:1},exiting:{opacity:0},exited:{opacity:0}},E=150;return R(()=>{const e=r.exhibitor,c=p.isRebooking?(()=>{const t=new Set;for(const s of e.booths)s instanceof oe&&s.size&&t.add(s.size);const l=Array.from(t);return n("div",{children:[l.length>0&&i("div",{className:"booth__infos",style:{padding:"0 15px",marginBottom:"1rem"},children:n("div",{className:"booth__info",children:[i("div",{className:"booth__info-icon",children:i("i",{className:"icon-size"})}),n("div",{className:"booth__info-body",children:[i("div",{className:"booth__info-title",children:h("Size")}),i("div",{className:"booth__info-val",children:l.join(", ")})]})]})}),i(he,{value:e.rebookingState.toString(),onChange:s=>a.exhibitorStore.setRebookingState(e,parseInt(s),e.rebookingNote)}),i(de,{value:e.rebookingNote||"",onSave:s=>a.exhibitorStore.setRebookingState(e,e.rebookingState,s)},e.id),i(te,{in:a.exhibitorStore.rebookingStateChangeRequested,nodeRef:B,timeout:E,appear:!0,enter:!0,exit:!0,mountOnEnter:!0,unmountOnExit:!0,children:s=>i("div",{ref:B,style:{position:"fixed",bottom:"1rem",left:"1rem",zIndex:9999,transition:`opacity ${E}ms ease-in-out`,opacity:0,...V[s]},children:i(le,{title:a.exhibitorStore.rebookingStateSaved?h("Changes saved"):h("Oops! Something went wrong"),variant:a.exhibitorStore.rebookingStateSaved?"success":"error",inline:!0,closable:!0,onClose:()=>{a.exhibitorStore.rebookingStateChangeRequested=!1}})})})]})})():null,m=g({exhibitor:!0,"is-featured":e.featured,bookmarked:e.bookmarked,[o.responsiveClass]:!0}),b=()=>{r.collapsed=!1,setTimeout(r.updateOverlayContent)};function k(t,l,s){return!t||!l||o.kiosk||o.previewMode?null:i("div",{className:"exhibitor-custom-button",children:i(O,{link:l,inline:!0,onClick:v=>{H(s,l,v)},target:"_blank",children:t})},s)}const X=({exhibitor:t})=>{const s=[k(t.customButtonTitle,t.customButtonUrl,1),k(t.customButton2Title,t.customButton2Url,2),k(t.customButton3Title,t.customButton3Url,3)].filter(Boolean);return s.length===0?null:i("div",{className:"exhibitor-custom-buttons",children:s})};function K(){return!p.hideShareButton&&!o.kiosk&&window.location.host.endsWith(".expofp.com")&&y.EXPO!=="globalaltsmiami2024"}function L(){r.updateOverlayContent()}const W=()=>{a.routeStore.clickRoute(null,a.routeStore.tempToBooth||e.booths[0]),a.routeStore.currentRouteExhibitor=e},J=t=>/^\d+$/.test(t),Y=t=>p.shortLevelName?t.layer?.shortName:t.layer?.description;return n("div",{className:m,"aria-label":h("Details"),children:[n("div",{className:"exhibitor__header",children:[n("div",{className:"exhibitor__header-name",children:[i("div",{className:"exhibitor__header-icon",children:i("i",{className:"icon-exhibitor-solid"})}),i("span",{dir:"auto",children:e.name}),A]}),i("button",{type:"button",onClick:()=>a.searchStore.handleBackAction(),className:"exhibitor__header-close",children:i("i",{className:"icon-close"})})]}),c||n(N,{children:[i("div",{className:"exhibitor__buttons",children:!o.isGuidedToursActive&&i(be,{showBookmark:!o.disableBookmarked&&!p.hideBookmarks&&!o.kiosk,showDirections:e.booths.length>0&&y.wayfinding,inBookmark:e.bookmarked,showShare:K(),showVisited:!o.kiosk,visited:e.visited,onClickBookmark:F,onClickShare:P,onClickDirections:W,onClickVisited:$})}),e.leadingImageUrl?i("div",{className:"exhibitor__leading-image-container exhibitor-slider",children:e.leadingImageLinkUrl?i("a",{href:e.leadingImageLinkUrl,target:"_blank",rel:"noopener noreferrer",children:i("img",{src:e.leadingImageUrl,className:"exhibitor__leading-image",alt:"",crossOrigin:"anonymous"})}):i(U,{children:i(T,{fallback:null,children:i(G,{className:o.responsiveClass,onOpenGallery:()=>a.openGallery(),onCloseGallery:()=>a.closeGallery(),onImageLoadHeightUpdate:L,leading:!0,images:[e.leadingImageUrl]})})})}):null,n("div",{className:g("exhibitor__details",{"details-hidden":o.kiosk&&w&&!f}),ref:x,children:[n("div",{className:g("exhibitor-categories",{"is-links-disabled":o.isGuidedToursActive}),children:[e.featured&&i("div",{className:"exhibitor-featured",children:h("Featured")}),e.booths.map(t=>{const l=Y(t),s=v=>{v.preventDefault(),a.toggleMapOverlay(),a.selectBooth(t)};return n("a",{href:`?${t.slug}`,onClick:s,className:"exhibitor-categories__booth",children:[i("div",{className:"exhibitor-categories__booth-name",children:t.name}),l&&n("div",{className:"exhibitor-categories__booth-level",children:[J(l)?h("Level")+" ":"",l]})]},t.id)}),e.categories.map(t=>i("a",{href:"?"+encodeURIComponent(t.slug),onClick:l=>{l.preventDefault(),j(t)},className:t.sponsorship?"exhibitor-categories__sponsorship":"exhibitor-categories__cat",children:t.name},t.id))]}),e.description||e.logo?n("div",{className:g("exhibitor-description",{collapsed:r.collapsed&&!r.disableCollapse}),children:[e.logo?i("div",{className:g("exhibitor-description__logo",{"exhibitor-description__logo--left":!e.description}),children:i("img",{src:e.logo,alt:e.name,crossOrigin:"anonymous"})}):null,e.description?i("span",{className:"exhibitor-description__content",dir:"auto",dangerouslySetInnerHTML:{__html:ke(e.description)},onClick:b}):null]}):null,(!!e.schedule?.length||!!e.booths[0]?.schedule.length)&&i(me,{events:[...e.schedule||e.booths[0]?.schedule||[]].sort((t,l)=>new Date(t.startDate).getTime()-new Date(l.startDate).getTime())}),!o.kiosk&&e.videoUrl&&navigator.onLine&&i("div",{className:"exhibitor-video",children:i("iframe",{src:e.videoUrl,"data-allow":"encrypted-media; autoplay; fullscreen",title:h("Exhibitor Video"),allowFullScreen:!0})}),e.gallery&&i("div",{className:"exhibitor-slider",onClick:()=>u(d.ViewGallery),children:i(U,{children:i(T,{fallback:null,children:i(G,{className:o.responsiveClass,onOpenGallery:()=>a.openGallery(),onCloseGallery:()=>a.closeGallery(),onImageLoadHeightUpdate:L,images:e.gallery})})})}),!o.kiosk&&e.marketMaterials&&n(N,{children:[i("div",{className:"exhibitor-sep"}),i(ce,{list:e.marketMaterials})]}),r.showEdit&&i("div",{className:"exhibitor-sep"}),!o.kiosk&&r.showEdit&&i("div",{className:"exhibitor-edit",children:i(O,{size:"sm",variant:"secondary",onClick:q,children:h("Edit")})}),r.anyAddress&&n("div",{className:"exhibitor-meta",children:[!!(e.address||e.address2)&&n("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-marker-pin-solid"})}),n("div",{className:"exhibitor-meta__content",children:[e.address,!!e.address2&&i("div",{children:e.address2}),!!(e.city||e.state||e.zip)&&n("div",{children:[e.city,!!(e.city&&e.state)&&i("span",{children:" "}),e.state,!!(e.state&&e.zip)&&i("span",{children:"\xA0"})," ",e.zip]}),!!e.country&&i("div",{children:e.country})]})]}),!!e.phone1&&n("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-phone-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{dir:"ltr",href:"tel:"+e.phone1,className:"exhibitor-meta__link",onClick:t=>_(t,d.ClickPhone),children:e.phone1})})]}),!!e.website&&n("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-globe-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{href:e.website,target:"_blank",rel:"noopener noreferrer",className:"exhibitor-meta__link",onClick:t=>_(t,d.ClickWebsite),children:r.websiteTrimmed})})]}),!!e.email&&n("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-mail-at-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{href:"mailto:"+e.email,target:"_blank",rel:"noopener noreferrer",className:"exhibitor-meta__link",onClick:t=>_(t,d.ClickEmail),children:e.email})})]}),r.anySocial&&n("div",{className:"exhibitor-meta__socials",children:[i("a",{href:e.facebook,className:"exhibitor-meta__social",onClick:()=>u(d.ClickFacebook),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-facebook"})}),i("a",{href:e.instagram,className:"exhibitor-meta__social",onClick:()=>u(d.ClickInstagaram),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-instagram"})}),i("a",{href:e.linkedin,className:"exhibitor-meta__social",onClick:()=>u(d.ClickLinkedin),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-linkedin"})}),i("a",{href:e.twitter,className:"exhibitor-meta__social",onClick:()=>u(d.ClickTwitter),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-twitter-x"})}),i("a",{href:e.xing,className:"exhibitor-meta__social",onClick:()=>u(d.ClickXing),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-xing"})}),i("a",{href:e.youtube,className:"exhibitor-meta__social",onClick:()=>u(d.ClickYoutube),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-youtube"})})]})]}),i(X,{exhibitor:e})]}),o.kiosk&&w&&i(ue,{className:g("exhibitor__show-more",{"is-sticky":f}),expanded:f,onClick:()=>M(t=>!t)})]})]})});function P(){const e=window.navigator,c={title:o.selectedExhibitor.name,url:window.location.href};ne&&e?.canShare&&e.canShare(c)?e.share(c):a.toggleModal("share")}function j(e){a.clickCategory(e)}function q(e){if(o.kiosk)return e.preventDefault();e.target.blur();const c=r.sendLinkEmail;if(!window.confirm(h("Send login instructions to {{email}} to edit profile?",{email:c}))||y.EXPO==="expo")return;const m=new XMLHttpRequest;m.open("POST",p.sendLoginLinkUrl),m.setRequestHeader("Content-Type","application/json");function b(){alert(h("Error sending login instructions"))}m.onload=function(k){if(this.status!==200){b();return}alert(h("A link to edit profile was sent to {{email}}",{email:c}))},m.onerror=function(k){re.error("Error",k),b()},m.send(JSON.stringify({id:r.exhibitor.id}))}function F(){r.exhibitor.bookmarked=!r.exhibitor.bookmarked,o.onBookmarkClick&&o.onBookmarkClick({name:r.exhibitor.name,bookmarked:r.exhibitor.bookmarked,externalId:r.exhibitor.externalId})}function $(){r.exhibitor.visited=!r.exhibitor.visited,o.onVisitedClick&&o.onVisitedClick({name:r.exhibitor.name,visited:r.exhibitor.visited,externalId:r.exhibitor.externalId})}});export default()=>R(()=>i(N,{children:!o.menu&&o.selectedExhibitor?i(ge,{}):null}));
|
|
1
|
+
import{jsx as i,jsxs as n,Fragment as N}from"react/jsx-runtime";import"./Exhibitor.scss";import g from"classnames";import{observer as Q,useLocalStore as Z,useObserver as R}from"mobx-react-lite";import ee,{Suspense as T,useEffect as ie,useRef as C,useState as D}from"react";import{Transition as te}from"react-transition-group";import p from"../data";import a,{uiState as o}from"../store";import{RegularBooth as oe}from"../store/BoothStore";import{GaEventActions as d,sendEventToGa as I}from"../tools/gtag";import re from"../tools/logger";import y from"../tools/settings";import O from"../ui/Button";import{t as h}from"../utils/i18n";import ne from"../utils/is-mobile";import{useReaction as ae}from"../utils/mobx";import se from"../utils/useHeatmapOverlay";import le from"./AlertContainer";import ce from"./DownloadListContainer";import U from"./ErrorBoundary";import de from"./RebookingNotesContainer";import he from"./RebookingRadioGroupContainer";import me from"./Schedule";import ue from"./ShowMoreButtonContainer";import be from"./SidebarActionsContainer";import{getDescription as ke}from"./utils/getDescription";const G=ee.lazy(()=>import("./Gallery/Gallery")),ge=Q(function(){const S=C(null),r=Z(()=>({collapsed:!0,updateOverlayContent:null,get exhibitor(){return o.selectedExhibitor},get websiteTrimmed(){return this.exhibitor.website?this.exhibitor.website.replace(/^(http(s?):\/\/)([^/]+)(\/)?$/i,"$3"):""},get anySocial(){return o.kiosk?!1:!!["facebook","instagram","linkedin","twitter","googlePlus","xing","youtube"].find(e=>this.exhibitor[e])},get anyAddress(){return!!["address","address2","phone1","website","email"].find(e=>this.exhibitor[e])},get anyMedia(){return!!this.exhibitor.videoUrl||!!(this.exhibitor.gallery&&this.exhibitor.gallery.length)},get anyButtons(){return!!(this.exhibitor.customButtonTitle||this.exhibitor.customButton2Title||this.exhibitor.customButton3Title)},get disableCollapse(){return!this.anySocial&&!this.anyAddress&&!this.anyMedia&&!this.anyButtons||o.overlayPosition==="left"&&(this.exhibitor.description||"").length<800},get showEdit(){return!!(p.sendLoginLinkUrl&&this.sendLinkEmail)},get sendLinkEmail(){return this.exhibitor.privateEmail||this.exhibitor.email}})),{heatmapBar:A}=se(r.exhibitor),[w,z]=D(!1),[f,M]=D(!1),x=C(null);ie(()=>((()=>{if(x.current){const c=x.current.offsetHeight;z(c>300)}})(),()=>{a.exhibitorStore.rebookingStateChangeRequested=!1}),[]),ae(()=>r.exhibitor,()=>{S.current&&(S.current.parentElement.scrollTop=0),r.collapsed=!0});function _(e,c){if(u(c),o.kiosk)return e.preventDefault()}function H(e,c,m){I(d.ClickCustomButton,r.exhibitor.name);const b={externalId:r.exhibitor.externalId,buttonNumber:e,buttonUrl:c,preventDefault:m.preventDefault.bind(m)};o.onExhibitorCustomButtonClick&&o.onExhibitorCustomButtonClick(b)}function u(e){I(e,r.exhibitor.name)}const B=C(),V={entering:{opacity:1},entered:{opacity:1},exiting:{opacity:0},exited:{opacity:0}},E=150;return R(()=>{const e=r.exhibitor,c=p.isRebooking?(()=>{const t=new Set;for(const s of e.booths)s instanceof oe&&s.size&&t.add(s.size);const l=Array.from(t);return n("div",{children:[l.length>0&&i("div",{className:"booth__infos",style:{padding:"0 15px",marginBottom:"1rem"},children:n("div",{className:"booth__info",children:[i("div",{className:"booth__info-icon",children:i("i",{className:"icon-size"})}),n("div",{className:"booth__info-body",children:[i("div",{className:"booth__info-title",children:h("Size")}),i("div",{className:"booth__info-val",children:l.join(", ")})]})]})}),i(he,{value:e.rebookingState.toString(),onChange:s=>a.exhibitorStore.setRebookingState(e,parseInt(s),e.rebookingNote)}),i(de,{value:e.rebookingNote||"",onSave:s=>a.exhibitorStore.setRebookingState(e,e.rebookingState,s)},e.id),i(te,{in:a.exhibitorStore.rebookingStateChangeRequested,nodeRef:B,timeout:E,appear:!0,enter:!0,exit:!0,mountOnEnter:!0,unmountOnExit:!0,children:s=>i("div",{ref:B,style:{position:"fixed",bottom:"1rem",left:"1rem",zIndex:9999,transition:`opacity ${E}ms ease-in-out`,opacity:0,...V[s]},children:i(le,{title:a.exhibitorStore.rebookingStateSaved?h("Changes saved"):h("Oops! Something went wrong"),variant:a.exhibitorStore.rebookingStateSaved?"success":"error",inline:!0,closable:!0,onClose:()=>{a.exhibitorStore.rebookingStateChangeRequested=!1}})})})]})})():null,m=g({exhibitor:!0,"is-featured":e.featured,bookmarked:e.bookmarked,[o.responsiveClass]:!0}),b=()=>{r.collapsed=!1,setTimeout(r.updateOverlayContent)};function k(t,l,s){return!t||!l||o.kiosk||o.previewMode?null:i("div",{className:"exhibitor-custom-button",children:i(O,{link:l,inline:!0,onClick:v=>{H(s,l,v)},target:"_blank",children:t})},s)}const X=({exhibitor:t})=>{const s=[k(t.customButtonTitle,t.customButtonUrl,1),k(t.customButton2Title,t.customButton2Url,2),k(t.customButton3Title,t.customButton3Url,3)].filter(Boolean);return s.length===0?null:i("div",{className:"exhibitor-custom-buttons",children:s})};function K(){return!p.hideShareButton&&!o.kiosk&&window.location.host.endsWith(".expofp.com")&&y.EXPO!=="globalaltsmiami2024"}function L(){r.updateOverlayContent()}const W=()=>{a.routeStore.clickRoute(null,a.routeStore.tempToBooth||e.booths[0]),a.routeStore.currentRouteExhibitor=e},J=t=>/^\d+$/.test(t),Y=t=>p.shortLevelName?t.layer?.shortName:t.layer?.description;return n("div",{className:m,"aria-label":h("Details"),children:[n("div",{className:"exhibitor__header",children:[n("div",{className:"exhibitor__header-name",children:[i("div",{className:"exhibitor__header-icon",children:i("i",{className:"icon-exhibitor-solid"})}),i("span",{dir:"auto",children:e.name}),A]}),i("button",{type:"button",onClick:()=>a.searchStore.handleBackAction(),className:"exhibitor__header-close",children:i("i",{className:"icon-close"})})]}),c||n(N,{children:[i("div",{className:"exhibitor__buttons",children:!o.isGuidedToursActive&&i(be,{showBookmark:!o.disableBookmarked&&!p.hideBookmarks&&!o.kiosk,showDirections:e.booths.length>0&&y.wayfinding,inBookmark:e.bookmarked,showShare:K(),showVisited:!o.kiosk,visited:e.visited,onClickBookmark:F,onClickShare:P,onClickDirections:W,onClickVisited:$})}),e.leadingImageUrl?i("div",{className:"exhibitor__leading-image-container exhibitor-slider",children:e.leadingImageLinkUrl?i("a",{href:e.leadingImageLinkUrl,target:"_blank",rel:"noopener noreferrer",children:i("img",{src:e.leadingImageUrl,className:"exhibitor__leading-image",alt:"",crossOrigin:"anonymous"})}):i(U,{children:i(T,{fallback:null,children:i(G,{className:o.responsiveClass,onOpenGallery:()=>a.openGallery(),onCloseGallery:()=>a.closeGallery(),onImageLoadHeightUpdate:L,leading:!0,images:[e.leadingImageUrl]})})})}):null,n("div",{className:g("exhibitor__details",{"details-hidden":o.kiosk&&w&&!f}),ref:x,children:[n("div",{className:g("exhibitor-categories",{"is-links-disabled":o.isGuidedToursActive}),children:[e.featured&&i("div",{className:"exhibitor-featured",children:h("Featured")}),e.booths.map(t=>{const l=Y(t),s=v=>{v.preventDefault(),a.toggleMapOverlay(),a.selectBooth(t)};return n("a",{href:`?${t.slug}`,onClick:s,className:"exhibitor-categories__booth",children:[i("div",{className:"exhibitor-categories__booth-name",children:t.name}),l&&n("div",{className:"exhibitor-categories__booth-level",children:[J(l)?h("Level")+" ":"",l]})]},t.id)}),e.categories.map(t=>i("a",{href:"?"+encodeURIComponent(t.slug),onClick:l=>{l.preventDefault(),j(t)},className:t.sponsorship?"exhibitor-categories__sponsorship":"exhibitor-categories__cat",children:t.name},t.id))]}),e.description||e.logo?.url?n("div",{className:g("exhibitor-description",{collapsed:r.collapsed&&!r.disableCollapse}),children:[e.logo?.url?i("div",{className:g("exhibitor-description__logo",{"exhibitor-description__logo--left":!e.description}),children:i("img",{src:e.logo.url,alt:e.name,crossOrigin:"anonymous"})}):null,e.description?i("span",{className:"exhibitor-description__content",dir:"auto",dangerouslySetInnerHTML:{__html:ke(e.description)},onClick:b}):null]}):null,(!!e.schedule?.length||!!e.booths[0]?.schedule.length)&&i(me,{events:[...e.schedule||e.booths[0]?.schedule||[]].sort((t,l)=>new Date(t.startDate).getTime()-new Date(l.startDate).getTime())}),!o.kiosk&&e.videoUrl&&navigator.onLine&&i("div",{className:"exhibitor-video",children:i("iframe",{src:e.videoUrl,"data-allow":"encrypted-media; autoplay; fullscreen",title:h("Exhibitor Video"),allowFullScreen:!0})}),e.gallery&&i("div",{className:"exhibitor-slider",onClick:()=>u(d.ViewGallery),children:i(U,{children:i(T,{fallback:null,children:i(G,{className:o.responsiveClass,onOpenGallery:()=>a.openGallery(),onCloseGallery:()=>a.closeGallery(),onImageLoadHeightUpdate:L,images:e.gallery})})})}),!o.kiosk&&e.marketMaterials&&n(N,{children:[i("div",{className:"exhibitor-sep"}),i(ce,{list:e.marketMaterials})]}),r.showEdit&&i("div",{className:"exhibitor-sep"}),!o.kiosk&&r.showEdit&&i("div",{className:"exhibitor-edit",children:i(O,{size:"sm",variant:"secondary",onClick:q,children:h("Edit")})}),r.anyAddress&&n("div",{className:"exhibitor-meta",children:[!!(e.address||e.address2)&&n("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-marker-pin-solid"})}),n("div",{className:"exhibitor-meta__content",children:[e.address,!!e.address2&&i("div",{children:e.address2}),!!(e.city||e.state||e.zip)&&n("div",{children:[e.city,!!(e.city&&e.state)&&i("span",{children:" "}),e.state,!!(e.state&&e.zip)&&i("span",{children:"\xA0"})," ",e.zip]}),!!e.country&&i("div",{children:e.country})]})]}),!!e.phone1&&n("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-phone-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{dir:"ltr",href:"tel:"+e.phone1,className:"exhibitor-meta__link",onClick:t=>_(t,d.ClickPhone),children:e.phone1})})]}),!!e.website&&n("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-globe-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{href:e.website,target:"_blank",rel:"noopener noreferrer",className:"exhibitor-meta__link",onClick:t=>_(t,d.ClickWebsite),children:r.websiteTrimmed})})]}),!!e.email&&n("div",{className:"exhibitor-meta__item",children:[i("div",{className:"exhibitor-meta__icon",children:i("i",{className:"icon-mail-at-solid"})}),i("div",{className:"exhibitor-meta__content",children:i("a",{href:"mailto:"+e.email,target:"_blank",rel:"noopener noreferrer",className:"exhibitor-meta__link",onClick:t=>_(t,d.ClickEmail),children:e.email})})]}),r.anySocial&&n("div",{className:"exhibitor-meta__socials",children:[i("a",{href:e.facebook,className:"exhibitor-meta__social",onClick:()=>u(d.ClickFacebook),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-facebook"})}),i("a",{href:e.instagram,className:"exhibitor-meta__social",onClick:()=>u(d.ClickInstagaram),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-instagram"})}),i("a",{href:e.linkedin,className:"exhibitor-meta__social",onClick:()=>u(d.ClickLinkedin),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-linkedin"})}),i("a",{href:e.twitter,className:"exhibitor-meta__social",onClick:()=>u(d.ClickTwitter),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-twitter-x"})}),i("a",{href:e.xing,className:"exhibitor-meta__social",onClick:()=>u(d.ClickXing),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-xing"})}),i("a",{href:e.youtube,className:"exhibitor-meta__social",onClick:()=>u(d.ClickYoutube),target:"_blank",rel:"noopener noreferrer",children:i("i",{className:"icon-youtube"})})]})]}),i(X,{exhibitor:e})]}),o.kiosk&&w&&i(ue,{className:g("exhibitor__show-more",{"is-sticky":f}),expanded:f,onClick:()=>M(t=>!t)})]})]})});function P(){const e=window.navigator,c={title:o.selectedExhibitor.name,url:window.location.href};ne&&e?.canShare&&e.canShare(c)?e.share(c):a.toggleModal("share")}function j(e){a.clickCategory(e)}function q(e){if(o.kiosk)return e.preventDefault();e.target.blur();const c=r.sendLinkEmail;if(!window.confirm(h("Send login instructions to {{email}} to edit profile?",{email:c}))||y.EXPO==="expo")return;const m=new XMLHttpRequest;m.open("POST",p.sendLoginLinkUrl),m.setRequestHeader("Content-Type","application/json");function b(){alert(h("Error sending login instructions"))}m.onload=function(k){if(this.status!==200){b();return}alert(h("A link to edit profile was sent to {{email}}",{email:c}))},m.onerror=function(k){re.error("Error",k),b()},m.send(JSON.stringify({id:r.exhibitor.id}))}function F(){r.exhibitor.bookmarked=!r.exhibitor.bookmarked,o.onBookmarkClick&&o.onBookmarkClick({name:r.exhibitor.name,bookmarked:r.exhibitor.bookmarked,externalId:r.exhibitor.externalId})}function $(){r.exhibitor.visited=!r.exhibitor.visited,o.onVisitedClick&&o.onVisitedClick({name:r.exhibitor.name,visited:r.exhibitor.visited,externalId:r.exhibitor.externalId})}});export default()=>R(()=>i(N,{children:!o.menu&&o.selectedExhibitor?i(ge,{}):null}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{getConfig as s}from"@expofp/config";import{observer as a}from"mobx-react-lite";import{KIOSK_ENABLE_KEY as m}from"../../constants";import t from"../../store";import n from"../../ui/TouchHand";import{useInit as k}from"../../utils/mobx";import{integrateKioskIntoMap as u,integrateKioskIntoWf as f}from"./integrateKiosk";import e from"./KioskStore";const l=a(()=>(k(()=>{if(localStorage.getItem(m)==="0")return;e.restoreData();let o=e.kiosk;if(!o){const i=s().kiosk;Object.keys(i).length&&(e.setKiosk(i),t.uiState.kiosk=!0,Number.isFinite(i.uiScale)&&t.uiState.setUIScale(i.uiScale,!1),o=e.kiosk)}if(o)return u(o,!0),f(o),e.resetCamera(),t.setResetCameraFn(()=>e.resetCamera()),()=>{t.uiState.setKioskData(null),t.uiState.resetMapSettings()}}),t.uiState.kiosk&&t.uiState.inIdle?r(n,{}):null));export default l;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import '../styles/main.scss';
|
|
2
2
|
import './Layout.scss';
|
|
3
|
+
import { type Consent } from '@expofp/config';
|
|
3
4
|
import React from 'react';
|
|
4
5
|
interface LayoutProps {
|
|
5
6
|
offHistory: boolean;
|
|
6
|
-
|
|
7
|
+
consent: Consent;
|
|
7
8
|
}
|
|
8
9
|
declare const _default: React.FunctionComponent<LayoutProps>;
|
|
9
10
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o,jsxs as z}from"react/jsx-runtime";import"../styles/main.scss";import"./Layout.scss";import g from"classnames";import{observer as M}from"mobx-react-lite";import r,{Suspense as a,useEffect as E,useState as x}from"react";import t,{layersStore as c,uiState as e}from"../store";import{LayersMode as y}from"../store/LayerStore";import{checkUserIsGDPR as R,GaEventActions as s,hasUserConsent as D,sendEventToGa as l,setConsentSettings as S,setCookieConsent as v}from"../tools/gtag";import L from"../tools/settings";import O from"../tools/track-event";import B from"../ui/Spinner";import{isWebGlSupported as G}from"../utils";import{t as T}from"../utils/i18n";import F from"../utils/is-debug";import{useReaction as m}from"../utils/mobx";import{CategoryFilterModal as j}from"./CategoryFilterModal";import A from"./ErrorBoundary";import I from"./GlobalErrorMessage";import P from"./HeatmapLegendContainer";import V from"./IntercomLauncher";import $ from"./LevelSelectorContainer";import H from"./LogoOverlay";import K from"./Map/Map";import _ from"./MapControlsContainer";import N from"./MobileToggleButtonContainer";import U from"./OverlayContainer";import W from"./SearchBox";import q from"./SearchButtons/SearchButtons";import X from"./SessionsFiltersModal";import Y from"./ShareContainer";import J from"./SpeakersFiltersModal";import Q from"./Ws";const Z=r.lazy(()=>import("./Demo")),ee=r.lazy(()=>import("./Free")),oe=r.lazy(()=>import("./Debug")),te=r.lazy(()=>import("./Maplibre/MaplibreAdapter")),ie=r.lazy(()=>import("./ModalContainer")),re=r.lazy(()=>import("./CookieConsent")),ae=r.lazy(()=>import("./GpsLoader")),le=r.lazy(()=>import("./Kiosk/SetKioskMode")),ne=r.lazy(()=>import("./Kiosk/ShowKiosk"));export default M(function({offHistory:C,
|
|
1
|
+
import{jsx as o,jsxs as z}from"react/jsx-runtime";import"../styles/main.scss";import"./Layout.scss";import g from"classnames";import{observer as M}from"mobx-react-lite";import r,{Suspense as a,useEffect as E,useState as x}from"react";import t,{layersStore as c,uiState as e}from"../store";import{LayersMode as y}from"../store/LayerStore";import{checkUserIsGDPR as R,GaEventActions as s,hasUserConsent as D,sendEventToGa as l,setConsentSettings as S,setCookieConsent as v}from"../tools/gtag";import L from"../tools/settings";import O from"../tools/track-event";import B from"../ui/Spinner";import{isWebGlSupported as G}from"../utils";import{t as T}from"../utils/i18n";import F from"../utils/is-debug";import{useReaction as m}from"../utils/mobx";import{CategoryFilterModal as j}from"./CategoryFilterModal";import A from"./ErrorBoundary";import I from"./GlobalErrorMessage";import P from"./HeatmapLegendContainer";import V from"./IntercomLauncher";import $ from"./LevelSelectorContainer";import H from"./LogoOverlay";import K from"./Map/Map";import _ from"./MapControlsContainer";import N from"./MobileToggleButtonContainer";import U from"./OverlayContainer";import W from"./SearchBox";import q from"./SearchButtons/SearchButtons";import X from"./SessionsFiltersModal";import Y from"./ShareContainer";import J from"./SpeakersFiltersModal";import Q from"./Ws";const Z=r.lazy(()=>import("./Demo")),ee=r.lazy(()=>import("./Free")),oe=r.lazy(()=>import("./Debug")),te=r.lazy(()=>import("./Maplibre/MaplibreAdapter")),ie=r.lazy(()=>import("./ModalContainer")),re=r.lazy(()=>import("./CookieConsent")),ae=r.lazy(()=>import("./GpsLoader")),le=r.lazy(()=>import("./Kiosk/SetKioskMode")),ne=r.lazy(()=>import("./Kiosk/ShowKiosk"));export default M(function({offHistory:C,consent:p}){const[f,d]=x(!1),u=t.maplibreStore.showMaplibre;let n=null;e.bannerType==="demo"?n=o(Z,{}):e.bannerType==="free"&&(n=o(ee,{}));const b=()=>{v(!0),S(),t.uiState.hideCookieConsent=!0},w=()=>{v(!1),S(),t.uiState.hideCookieConsent=!0};E(()=>{async function i(){const k=await R();d(!!(k||k===null))}D(p)?d(!0):i()},[]),m(()=>e.selectedExhibitor,i=>{t.heatmapStore.forceTrack?(l(t.heatmapStore.forceTrack.action,t.heatmapStore.forceTrack.label),t.heatmapStore.forceTrack=null):i&&(O("exview",i.id),l(s.ViewExhibitor,i.name))}),m(()=>e.selectedBooth,i=>i?.name&&l(s.ViewBooth,i.name)),m(()=>e.selectedCategory,i=>i?.name&&l(s.ViewCategory,i?.name)),m(()=>e.selectedEventItem,i=>i?.name&&l(s.ViewExhibitor,i.name));const h=!e.hideCookieConsent&&!e.kiosk&&f&&p==="ask";return o("div",{id:"efp-layout",className:g("layout",{"efp-kiosk":e.kiosk,"efp-kiosk-route-active":e.kiosk&&e.selectedRoute?.from&&e.selectedRoute?.to,"efp-layers-mode":t.layerStore.mode,"efp-ws-mode":e.wsShown,"efp-no-overlay":e.noOverlay,"efp-top-banner":e.bannerType==="free"&&!e.freeBannerDismissed,"efp-viewer-mode":e.viewerMode}),dir:e.rtl?"rtl":"ltr",style:{"--ui-scale":e.uiScale.toString()},children:z("div",{className:`layout__fixed expo-${L.EXPO} overlay-${t.uiState.overlayPosition}`,children:[(c.mode===y.Radio||c.mode===y.CheckBox)&&!e.floorsControlHidden&&t.initialized&&o($,{}),!e.noOverlay&&t.initialized&&o(U,{isGDPR:f,consent:p}),t.initialized&&o(H,{}),!e.noOverlay&&t.initialized&&!(e.viewerMode&&e.menu)&&o(W,{}),!e.noOverlay&&t.initialized&&o(q,{}),!e.noOverlay&&t.initialized&&o(N,{}),!e.mapControlsHidden&&t.initialized&&o(_,{}),o(V,{}),!e.hideHeaderLogo&&t.initialized&&o(Q,{}),t.routeStore.gpsEnabled&&o(ae,{requestCompassAllowed:!h}),G&&!u&&o(K,{}),u&&o(A,{children:o(a,{fallback:o("div",{}),children:o(te,{viewMode:t.maplibreStore.mapViewMode})})}),n&&!e.hideFreeOrDemo&&!e.heatmap?o(a,{fallback:null,children:n}):null,h&&o(a,{fallback:null,children:o(re,{link:"https://expofp.com/pages/viewer-cookie-consent",onAccept:b,onReject:w})}),F?o(a,{fallback:null,children:o(oe,{})}):null,e.modalActive.share?o(a,{fallback:null,children:o(ie,{variant:"share",ariaLabel:T("Share"),open:e.modalActive.share,onClose:()=>t.toggleModal("share"),children:o(Y,{title:e.selectedExhibitor?.name||e.selectedEventItem?.name||"",url:C?`${window.location.origin}?${encodeURI(e.selectedExhibitor?.slug||e.selectedEventItem?.slug)}`:window.location.href})})}):null,e.heatmap||e.heatmapYah?o(P,{style:{left:`calc(50% + ${t.uiState.mapVisibleStart/2}px)`},className:e.responsiveClass}):null,o(B,{active:!c.layersLoaded}),o("div",{id:"fps"}),t.initialized&&o(j,{}),t.initialized&&o(X,{store:t.sessionsFilterStore}),t.initialized&&o(J,{store:t.speakerFilterStore}),o(I,{}),t.initialized&&e.setKioskModeEnabled&&o(a,{fallback:null,children:o(le,{})}),t.initialized&&!e.setKioskModeEnabled&&o(a,{fallback:null,children:o(ne,{})})]})})});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t,jsxs as m}from"react/jsx-runtime";import"./LogoOverlay.scss";import l from"classnames";import
|
|
1
|
+
import{jsx as t,jsxs as m}from"react/jsx-runtime";import{getFpSvgJs as k}from"../data/fp-payloads";import"./LogoOverlay.scss";import l from"classnames";import M from"color";import{useLocalStore as P,useObserver as _}from"mobx-react-lite";import{Suspense as O}from"react";import C from"../data";import{fpGeo as f}from"../data/fpGeo";import c,{uiState as o}from"../store";import R from"../tools/base-runtime-url";import{buildExpofpUrl as N,UTM_CAMPAIGNS as V}from"../tools/expofpUrl";import p from"../tools/settings";import{remsToPixels as a}from"../utils";import{t as r}from"../utils/i18n";import d from"../utils/is-from-designer";import A from"../utils/lazy-qr-code";import h from"./AlertContainer";const g=["info-techlive2025","metstrade-superyacht2023"].includes(p.EXPO),D=p.backgroundColor!=="none"&&M(p.backgroundColor).isDark()||f?.properties?.style?.includes("dark");export default function E(){const b=P(()=>{const s=(i,e,T,S)=>({width:S,opacity:o.wsStarted?1:0}),n=g||o.rtl?"left":"right";return{get style(){const i=a((o.overlayPosition==="left",1));if(o.overlayPosition==="left"){const e=o.mapVisibleBottom+i;return s("bottom",n,e,"5rem")}else{let e=o.mapVisibleTop;return c.maplibreStore.showMaplibre&&(e=a(.5)),s("bottom",n,20,"4.5rem")}},get warningStyle(){const i=a(o.overlayPosition==="left"?1:.5);if(o.overlayPosition==="left"){const e=o.mapVisibleBottom+2*i;return s("bottom",n,e,"3rem")}else{let e=o.mapVisibleTop+2*i;return c.maplibreStore.showMaplibre&&(e=a(.5)),s("top",n,e,"2rem")}}}}),u=Math.round(k().__fpStat?.dataSize/1024/1024||0),v=d&&u>=10,w=d&&!f&&C.allow3dView&&!o.kiosk&&!o.heatmap,y=o.kiosk&&!o.selectedRoute?.to&&!o.selectedRoute?.from,x=l("efp-qr",{"is-right":g||o.rtl});return _(()=>m("div",{children:[t("a",{href:N(V.SUBDOMAIN_LOGO),target:"_blank",rel:"noopener noreferrer",className:l("logo-overlay",{invert:D}),style:b.style,children:t("img",{src:`${R}expofp-overlay.png`,alt:r("Made with ExpoFP"),crossOrigin:"anonymous"})}),v&&t(h,{title:r("This floor plan is too big"),variant:"warning",showIcon:!0,position:"bottom-right",children:t("a",{rel:"noopener noreferrer",target:"_blank",href:"https://expofp.com/pages/huge-fp-warning",children:r("Read how to optimize it")})}),w&&t(h,{title:r("3D view is hidden"),variant:"warning",showIcon:!0,position:"bottom-right",children:t("a",{rel:"noopener noreferrer",target:"_blank",href:"https://expofp.com/pages/expofp-mapbox-integration",children:r("Setup mapbox first")})}),y&&t(O,{fallback:null,children:m("div",{className:l(x,{"efp-semi-transparent":o.setKioskModeEnabled}),children:[t("div",{children:r("View Map on Phone")}),t(A,{value:o.viewMapOnPhoneQRCodeUrl,size:100})]})})]}))}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as C,jsxs as N,Fragment as oe}from"react/jsx-runtime";import{Box as k}from"@expofp/geometry";import te from"classnames";import re from"color";import{observable as ne,reaction as ie}from"mobx";import{useObserver as ae}from"mobx-react-lite";import{useEffect as se,useMemo as le,useRef as S,useState as me}from"react";import{DEBUG_STORAGE_KEY as O}from"../../constants";import ce from"../../data";import{fpGeo as fe}from"../../data/fpGeo";import{svgArea as X}from"../../data/svg";import{boxToRenderer as L,createSceneDef as de,mapRollSetting as U}from"../../renderer";import{pickDefaultScene as A,pickDefaultScenePoint as ue}from"../../renderer/engine-core/defs";import a,{boothStore as pe,layersStore as h,uiState as o}from"../../store";import{BoothBase as j}from"../../store/BoothStore";import{Category as he}from"../../store/CategoryStore";import{Exhibitor as Z}from"../../store/ExhibitorStore";import{LayerMode as R}from"../../store/LayerStore";import{CurrentPosition as ve,Route as ye}from"../../store/RouteStore";import B from"../../tools/logger";import p from"../../tools/settings";import be from"../../ui/Draggable";import{areLayersEnabled as ge}from"../../utils/areLayersEnabled";import{applyVenueDimValue as we,createDimmingAnimator as Se}from"../../utils/dimming";import{convertGpsToLocal as Re}from"../../utils/gps";import y from"../../utils/is-debug";import{isPathwayLayer as $}from"../../utils/is-pathway-layer";import{useReaction as d}from"../../utils/mobx";import{createWayfinding as xe}from"../../wayfinding";import K from"./booth-by-xy";import Te from"./drawing/config/config-all";import{configMarkers as Ce,getMarkerFromClick as ke}from"./drawing/config/config-markers";import{loadLayersImages as Le}from"./drawing/config/loadBoothsImages";import{useBuildRoute as Be}from"./traffic/useBuildRoute";import{useManageTraffic as Ee}from"./traffic/useManageTraffic";const V=Number.isFinite(p.maxZoom);export default function Me(){let E={};const W="#ebebeb",v=S(),b=le(()=>ne({moving:!1,prevLevel:a.layerStore.layers.find(e=>!e.frozen&&e.visible)}),[]),l=a.rendererService,x=S(Se(e=>we(l,e)));let s;const g=S(null),M=S(null);let P=null,z=null,I=!1;function _(){h.layers.forEach(e=>{e.configured=!1,e.children=[],e.loaded=!1})}const[H,q]=me(()=>typeof window<"u"&&window.localStorage?localStorage.getItem(O)!=="false":!0);d(()=>a.routeStore.currentRouteLayer,()=>{if(!l.scene||b.prevLevel===a.routeStore.currentRouteLayer)return;const e=l.scene.rootLayer.children.filter(t=>a.layerStore.floors.some(n=>t.name.includes(n.name)));let r=a.routeStore.currentRouteLayer.name;if(!e.find(t=>t.name===r))return;const i=e?.map(t=>(t.name===r&&(t.hidden=!1),t.name===b.prevLevel?.name&&(t.hidden=!0),t));b.prevLevel=a.routeStore.currentRouteLayer,l.update(...i)}),d(()=>o.centerMap,()=>{!o.centerMap||a.maplibreStore.showMaplibre||(s.controls.resetCamera({zoom:!!(o.list.type==="search"&&o.list.text)}),o.centerMap=!1)}),se(()=>{if(!v.current)return;async function e(){_(),h.layersLoaded=!1;let r={};try{if(y){const t=document.createElement("canvas").getContext("webgl2"),n=t&&t.getExtension("EXT_disjoint_timer_query_webgl2"),m=(await import("stats-gl")).default,f=new m({trackGPU:n,horizontal:!0}),u=M.current;if(!u)throw new Error("memoryInfoPanel not found.");f.dom.style.position="relative",u.style.width=`${90*(n?3:2)}px`,u.style.height="48px",u.appendChild(f.dom),r={stats:f,memoryInfoPanel:u}}}catch(i){console.error(i)}s=l.create({canvas:v.current,ui:r}),g.current=s,ie(()=>o.canvasVisibleRectPx,(i,t)=>{i&&(s.visibleRect=L(i)),t.dispose()},{fireImmediately:!0}),Te(l).then(i=>{if(I||g.current!==s)return;y&&console.log("Renderer settings",s);const t=re(p.backgroundColor==="none"?W:p.backgroundColor).string();E=de(i,X,t),l.start(E),x.current.setTarget(o.dimmed,{immediate:!0}),U(s,a.fp.enableRotation?1:0),V&&s.viewport.setMaxZoom(p.maxZoom),h.layersLoaded=!0,a.fp.onFpConfigured&&a.fp?.onFpConfigured(),P=xe(l,a),z=Ce(l),Le(l)}),s.events.addEventListener("pointer:move",({data:i})=>{if(o.setKioskModeEnabled)return;const{point:t,defs:n}=A(i),c=K(t.x,t.y),m=D(n[0]);o.hoveredBooth=c||m}),s.events.addEventListener("pointer:out",()=>{o.setKioskModeEnabled||(o.hoveredBooth=null)}),s.events.addEventListener("pointer:click",({data:i})=>{if(!o?.rootElement)return;window.__resett&&window.__resett(),o.overlayPosition==="bottom"&&o.overlaySize==="full"&&a.showMap();const{point:t,defs:n}=A(i),{x:c,y:m}=t;if(o.onGetCoordsClick){const w=a.layerStore.layers.find(T=>T.visible&&(T.mode===R.TurnedOn||T.mode===R.TurnedOff));o.onGetCoordsClick({x:c,y:m,z:w?.name||null})}if(o.setKioskModeEnabled)return;if(o.onMarkerClick){const w=ke(c,m,l.scale);y&&console.log("marker",w),o.onMarkerClick(w)}const f=K(t.x,t.y),u=D(n[0]);y&&console.log("boothIdFromClientXy",f,"boothByShape",u,"pointer:click point",t),a.clickBooth(f||u)}),s.events.addEventListener("navigation:change",()=>window.__resett&&window.__resett())}return e(),a.fp.getCenterCoordinates=Q,()=>J()},[]);function J(){I=!0,x.current.stop(),P?.(),z?.(),_(),h.layersLoaded=!1,l.disposeIfCurrent(g.current),g.current=null}function Q(){const e=v.current;if(!v.current)throw new Error("Canvas not ready");const r=ue(s.viewport.canvasToSvg({x:e.clientWidth/2,y:e.clientHeight/2})),t=a.layerStore.visible.find(n=>n.mode===R.TurnedOff||n.mode===R.TurnedOn)?.name||null;return{...r,z:t}}function D(e){return!e||!e.shape?null:pe.booths.find(r=>r.shapes?.find(i=>i.shape==e.shape))}d(()=>o.zoomBy,()=>{if(!o.zoomBy||a.maplibreStore.showMaplibre)return;const e=o.zoomBy;s.controls.zoomBy(e),o.zoomBy=null}),d(()=>o.dimmed,e=>{x.current.setTarget(e)}),d(()=>o.details,()=>{if(!o.onDetails)return;if(!o.details){o.onDetails(null);return}var e=o.details;if(p.EXPO==="wineparis"&&(e instanceof Z&&(e=e.booths[0]),!e))return;let r=null,i=[];e instanceof Z?(r="exhibitor",i=e.booths.map(n=>n.name).sort((n,c)=>n==a.routeStore.tempToBooth?.name?-1:c==a.routeStore.tempToBooth?.name?1:0)):e instanceof j?(r="booth",i=[e.name]):e instanceof ye?(r="route",i=[e.from?.name,e.to?.name].filter(n=>!!n)):e instanceof he&&(r="category",i=e.exhibitors.map(n=>n.booths.map(c=>c.name)).flat());var t={type:r,name:e?.name,id:e?.id,externalId:e?.externalId,boothsNames:i};o.onDetails({...t,...r==="route"?{routeInfo:a.routeStore.routeInfo}:{}})}),d(()=>o.canvasVisibleRectPx,e=>{l.renderer&&(l.renderer.visibleRect=L(e))},{fireImmediately:!0}),d(()=>o.moveToRect,()=>{!o.moveToRect||a.maplibreStore.showMaplibre||(o.moveToRect&&o.moveToRect.size.height!==1/0&&o.moveToRect.size.width!==1/0&&o.moveToRect.size.height>0&&o.moveToRect.size.width>0&&G(o.moveToRect),o.moveToRect=null)}),d(()=>o.rollReset,e=>{e&&(s.controls.resetCamera({roll:!0}),o.rollReset=!1)}),d(()=>o.moveToBooths,()=>{if(B.log("this.moveToBooths",o.moveToBooths),!o.moveToBooths||a.maplibreStore.showMaplibre)return;B.log("watched moveToBooths",o.moveToBooths);const e=o.moveToBooths.filter(r=>r.rect).map(r=>r.rect);e.length!==0&&(G(k.fromUnion(...e)),o.moveToBooths=null)}),d(()=>o.mapSettings,({zoomtime:e,center:r,centerxy:i,bearing:t,roll:n,z:c})=>{if(!(a.maplibreStore.showMaplibre||!l.renderer))try{e&&e!==o.defaultMapSettings.zoomtime&&l.renderer.controls.configure({zoomTime:e/1e3}),a.fp.enableRotation&&U(s,n);let m;if(r){const f=r.split(",").map(Number),u=new ve(void 0,void 0,void 0,void 0,f[0],f[1]);m=Re(u,fe.properties.config)}else if(i){const f=i.split(",").map(Number);m={x:f[0],y:f[1]}}c&&a.fp.activateFloor({name:c}),(m?.x||m?.y)&&l.renderer.controls.panTo(m.x,m.y),Number.isFinite(t)&&l.renderer.controls.rollTo(t)}catch(m){B.error("Error in mapSettings reaction",m)}}),Be({enabled:h.layersLoaded&&o.buildRoute,rendererService:l});const F="routes-api.expofp.com",Y=ce.
|
|
1
|
+
import{jsx as C,jsxs as N,Fragment as oe}from"react/jsx-runtime";import{Box as k}from"@expofp/geometry";import te from"classnames";import re from"color";import{observable as ne,reaction as ie}from"mobx";import{useObserver as ae}from"mobx-react-lite";import{useEffect as se,useMemo as le,useRef as S,useState as me}from"react";import{DEBUG_STORAGE_KEY as O}from"../../constants";import ce from"../../data";import{fpGeo as fe}from"../../data/fpGeo";import{svgArea as X}from"../../data/svg";import{boxToRenderer as L,createSceneDef as de,mapRollSetting as U}from"../../renderer";import{pickDefaultScene as A,pickDefaultScenePoint as ue}from"../../renderer/engine-core/defs";import a,{boothStore as pe,layersStore as h,uiState as o}from"../../store";import{BoothBase as j}from"../../store/BoothStore";import{Category as he}from"../../store/CategoryStore";import{Exhibitor as Z}from"../../store/ExhibitorStore";import{LayerMode as R}from"../../store/LayerStore";import{CurrentPosition as ve,Route as ye}from"../../store/RouteStore";import B from"../../tools/logger";import p from"../../tools/settings";import be from"../../ui/Draggable";import{areLayersEnabled as ge}from"../../utils/areLayersEnabled";import{applyVenueDimValue as we,createDimmingAnimator as Se}from"../../utils/dimming";import{convertGpsToLocal as Re}from"../../utils/gps";import y from"../../utils/is-debug";import{isPathwayLayer as $}from"../../utils/is-pathway-layer";import{useReaction as d}from"../../utils/mobx";import{createWayfinding as xe}from"../../wayfinding";import K from"./booth-by-xy";import Te from"./drawing/config/config-all";import{configMarkers as Ce,getMarkerFromClick as ke}from"./drawing/config/config-markers";import{loadLayersImages as Le}from"./drawing/config/loadBoothsImages";import{useBuildRoute as Be}from"./traffic/useBuildRoute";import{useManageTraffic as Ee}from"./traffic/useManageTraffic";const V=Number.isFinite(p.maxZoom);export default function Me(){let E={};const W="#ebebeb",v=S(),b=le(()=>ne({moving:!1,prevLevel:a.layerStore.layers.find(e=>!e.frozen&&e.visible)}),[]),l=a.rendererService,x=S(Se(e=>we(l,e)));let s;const g=S(null),M=S(null);let P=null,z=null,I=!1;function _(){h.layers.forEach(e=>{e.configured=!1,e.children=[],e.loaded=!1})}const[H,q]=me(()=>typeof window<"u"&&window.localStorage?localStorage.getItem(O)!=="false":!0);d(()=>a.routeStore.currentRouteLayer,()=>{if(!l.scene||b.prevLevel===a.routeStore.currentRouteLayer)return;const e=l.scene.rootLayer.children.filter(t=>a.layerStore.floors.some(n=>t.name.includes(n.name)));let r=a.routeStore.currentRouteLayer.name;if(!e.find(t=>t.name===r))return;const i=e?.map(t=>(t.name===r&&(t.hidden=!1),t.name===b.prevLevel?.name&&(t.hidden=!0),t));b.prevLevel=a.routeStore.currentRouteLayer,l.update(...i)}),d(()=>o.centerMap,()=>{!o.centerMap||a.maplibreStore.showMaplibre||(s.controls.resetCamera({zoom:!!(o.list.type==="search"&&o.list.text)}),o.centerMap=!1)}),se(()=>{if(!v.current)return;async function e(){_(),h.layersLoaded=!1;let r={};try{if(y){const t=document.createElement("canvas").getContext("webgl2"),n=t&&t.getExtension("EXT_disjoint_timer_query_webgl2"),m=(await import("stats-gl")).default,f=new m({trackGPU:n,horizontal:!0}),u=M.current;if(!u)throw new Error("memoryInfoPanel not found.");f.dom.style.position="relative",u.style.width=`${90*(n?3:2)}px`,u.style.height="48px",u.appendChild(f.dom),r={stats:f,memoryInfoPanel:u}}}catch(i){console.error(i)}s=l.create({canvas:v.current,ui:r}),g.current=s,ie(()=>o.canvasVisibleRectPx,(i,t)=>{i&&(s.visibleRect=L(i)),t.dispose()},{fireImmediately:!0}),Te(l).then(i=>{if(I||g.current!==s)return;y&&console.log("Renderer settings",s);const t=re(p.backgroundColor==="none"?W:p.backgroundColor).string();E=de(i,X,t),l.start(E),x.current.setTarget(o.dimmed,{immediate:!0}),U(s,a.fp.enableRotation?1:0),V&&s.viewport.setMaxZoom(p.maxZoom),h.layersLoaded=!0,a.fp.onFpConfigured&&a.fp?.onFpConfigured(),P=xe(l,a),z=Ce(l),Le(l)}),s.events.addEventListener("pointer:move",({data:i})=>{if(o.setKioskModeEnabled)return;const{point:t,defs:n}=A(i),c=K(t.x,t.y),m=D(n[0]);o.hoveredBooth=c||m}),s.events.addEventListener("pointer:out",()=>{o.setKioskModeEnabled||(o.hoveredBooth=null)}),s.events.addEventListener("pointer:click",({data:i})=>{if(!o?.rootElement)return;window.__resett&&window.__resett(),o.overlayPosition==="bottom"&&o.overlaySize==="full"&&a.showMap();const{point:t,defs:n}=A(i),{x:c,y:m}=t;if(o.onGetCoordsClick){const w=a.layerStore.layers.find(T=>T.visible&&(T.mode===R.TurnedOn||T.mode===R.TurnedOff));o.onGetCoordsClick({x:c,y:m,z:w?.name||null})}if(o.setKioskModeEnabled)return;if(o.onMarkerClick){const w=ke(c,m,l.scale);y&&console.log("marker",w),o.onMarkerClick(w)}const f=K(t.x,t.y),u=D(n[0]);y&&console.log("boothIdFromClientXy",f,"boothByShape",u,"pointer:click point",t),a.clickBooth(f||u)}),s.events.addEventListener("navigation:change",()=>window.__resett&&window.__resett())}return e(),a.fp.getCenterCoordinates=Q,()=>J()},[]);function J(){I=!0,x.current.stop(),P?.(),z?.(),_(),h.layersLoaded=!1,l.disposeIfCurrent(g.current),g.current=null}function Q(){const e=v.current;if(!v.current)throw new Error("Canvas not ready");const r=ue(s.viewport.canvasToSvg({x:e.clientWidth/2,y:e.clientHeight/2})),t=a.layerStore.visible.find(n=>n.mode===R.TurnedOff||n.mode===R.TurnedOn)?.name||null;return{...r,z:t}}function D(e){return!e||!e.shape?null:pe.booths.find(r=>r.shapes?.find(i=>i.shape==e.shape))}d(()=>o.zoomBy,()=>{if(!o.zoomBy||a.maplibreStore.showMaplibre)return;const e=o.zoomBy;s.controls.zoomBy(e),o.zoomBy=null}),d(()=>o.dimmed,e=>{x.current.setTarget(e)}),d(()=>o.details,()=>{if(!o.onDetails)return;if(!o.details){o.onDetails(null);return}var e=o.details;if(p.EXPO==="wineparis"&&(e instanceof Z&&(e=e.booths[0]),!e))return;let r=null,i=[];e instanceof Z?(r="exhibitor",i=e.booths.map(n=>n.name).sort((n,c)=>n==a.routeStore.tempToBooth?.name?-1:c==a.routeStore.tempToBooth?.name?1:0)):e instanceof j?(r="booth",i=[e.name]):e instanceof ye?(r="route",i=[e.from?.name,e.to?.name].filter(n=>!!n)):e instanceof he&&(r="category",i=e.exhibitors.map(n=>n.booths.map(c=>c.name)).flat());var t={type:r,name:e?.name,id:e?.id,externalId:e?.externalId,boothsNames:i};o.onDetails({...t,...r==="route"?{routeInfo:a.routeStore.routeInfo}:{}})}),d(()=>o.canvasVisibleRectPx,e=>{l.renderer&&(l.renderer.visibleRect=L(e))},{fireImmediately:!0}),d(()=>o.moveToRect,()=>{!o.moveToRect||a.maplibreStore.showMaplibre||(o.moveToRect&&o.moveToRect.size.height!==1/0&&o.moveToRect.size.width!==1/0&&o.moveToRect.size.height>0&&o.moveToRect.size.width>0&&G(o.moveToRect),o.moveToRect=null)}),d(()=>o.rollReset,e=>{e&&(s.controls.resetCamera({roll:!0}),o.rollReset=!1)}),d(()=>o.moveToBooths,()=>{if(B.log("this.moveToBooths",o.moveToBooths),!o.moveToBooths||a.maplibreStore.showMaplibre)return;B.log("watched moveToBooths",o.moveToBooths);const e=o.moveToBooths.filter(r=>r.rect).map(r=>r.rect);e.length!==0&&(G(k.fromUnion(...e)),o.moveToBooths=null)}),d(()=>o.mapSettings,({zoomtime:e,center:r,centerxy:i,bearing:t,roll:n,z:c})=>{if(!(a.maplibreStore.showMaplibre||!l.renderer))try{e&&e!==o.defaultMapSettings.zoomtime&&l.renderer.controls.configure({zoomTime:e/1e3}),a.fp.enableRotation&&U(s,n);let m;if(r){const f=r.split(",").map(Number),u=new ve(void 0,void 0,void 0,void 0,f[0],f[1]);m=Re(u,fe.properties.config)}else if(i){const f=i.split(",").map(Number);m={x:f[0],y:f[1]}}c&&a.fp.activateFloor({name:c}),(m?.x||m?.y)&&l.renderer.controls.panTo(m.x,m.y),Number.isFinite(t)&&l.renderer.controls.rollTo(t)}catch(m){B.error("Error in mapSettings reaction",m)}}),Be({enabled:h.layersLoaded&&o.buildRoute,rendererService:l});const F="routes-api.expofp.com",Y=ce.busRoutes??!1;Ee({permission:h.layersLoaded&&Y,rendererService:l,dataJsonUrl:`https://${F}/v1/routes?expo=${p.EXPO}`,websocketUrl:`wss://${F}/locations?expo=${p.EXPO}`}),d(()=>a.layerStore.visible,e=>{if(!l.scene)return;const r=e.filter(n=>$(n.name)),t=l.scene.rootLayer.children.filter(n=>$(n.name));t.forEach(n=>{n.hidden=!r.find(c=>c.name===n.name)}),l.update(...t)});function G(e){let r=e;const i=ee(e,X),t=o.selectedRoute?.from,n=t instanceof j?t.layer?.name:t?.layer;o.kioskData&&(!ge()||n===a.routeStore.currentRouteLayer?.name)&&(r=k.fromUnion(e,new k(o.kioskData.x,o.kioskData.y,1,1)));const c=L(r),m={paddingPercent:i,maxZoom:V?void 0:10};if(o.shouldShiftMapRect){s.visibleRect.min={...s.visibleRect.min,x:s.visibleRect.min.x+o.overlayWidthPx},s.visibleRect=s.visibleRect;try{s.controls.zoomTo(c,m)}finally{s.visibleRect.min={...s.visibleRect.min,x:s.visibleRect.min.x-o.overlayWidthPx}}}else s.controls.zoomTo(c,m)}function ee(e,r){return!e||!r?0:(e.area/r.area>.1?15:25)/100}return ae(()=>N(oe,{children:[C("canvas",{style:{width:"100%",height:"100%"},ref:v,className:te({map:!0,moving:b.moving,hidden:a.maplibreStore.showMaplibre}),children:"ExpoFP.com"}),y&&H&&N(be,{className:"debug-fps",children:[C("div",{ref:M}),C("button",{onClick:()=>{typeof window<"u"&&window.localStorage&&localStorage.setItem(O,"false"),q(!1)},style:{padding:"4px 8px",fontSize:"11px",cursor:"pointer",backgroundColor:"#333",color:"#fff",border:"1px solid #555",width:"100%"},children:"Hide debug"})]})]}))}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { LayerDef } from '@expofp/renderer';
|
|
2
|
-
import { ShapeBgDef } from '../../../../
|
|
2
|
+
import { ShapeBgDef } from '../../../../types/drawing.types';
|
|
3
3
|
import { PathInfo } from '../../../../renderer/engine-core/types';
|
|
4
4
|
import { Layer } from '../../../../store/LayerStore';
|
|
5
5
|
export declare const BG_LAYER_NAME = "bg";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Box as Y,pointRotate as W,Polygon as j,Rect as q}from"@expofp/geometry";import J from"color";import{reaction as $}from"mobx";import{SEPARATOR as S}from"../../../../constants";import H from"../../../../data";import{getTrianglesFromFpPaths as K}from"../../../../data/svg";import{createShapeDef as Q,createTextDef as V,createTextDefLines as tt,rectToRenderer as w}from"../../../../renderer";import{boothStore as et,uiState as nt}from"../../../../store";import{RegularBooth as ot}from"../../../../store/BoothStore";import F from"../../../../tools/settings";import{getContrastTextColor as it}from"../../../../utils/getContrastTextColor";import{getFont as st}from"./canvases";import{isBoothBadgeEligible as rt}from"./config-booth-badge-eligibility";import{getBadgeFontWeight as ct,getFontUrlByWeight as at}from"./config-booth-labels";const lt=.5,dt=.3,L=15,ft=24,O=30,gt=12,ut=12,U=.8,k=document.createElement("canvas").getContext("2d");function ht(e){return e.length<=L?e:e.slice(0,L-1)+"\u2026"}function z(e){if(!e.paths?.length)return[];const t=e.layer?.name||"",o=[];for(const n of e.paths)for(const i of K(n.index,t))o.push(i);return o}function mt(e){const t=z(e);return t.length?Y.fromPoints(t.flat().map(([o,n])=>({x:o,y:n}))):null}function Bt(e){const t=[],o=[];for(const n of e){const i=t.length;t.push({x:n[0][0],y:n[0][1]}),t.push({x:n[1][0],y:n[1][1]}),t.push({x:n[2][0],y:n[2][1]}),o.push([i,i+1,i+2])}return new j(t,o)}function y(e,t,o){return o.containsPoint({x:e,y:t})}function xt(e,t,o,n,i,c,r){if(!e.length||!y(o,n,t))return r;let d=0,m=r;const B=10;for(let x=0;x<B;x++){const u=(d+m)/2,a=i*u,g=c*u;y(o+a,n,t)&&y(o,n+g,t)&&y(o+a,n+g,t)?d=u:m=u}return d}function pt(e){return mt(e)??e.rect}function At(e,t,o,n,i){const c=pt(e);if(t.length){const m=new Set;let B=null,x=1/0;for(const u of t)for(const a of u){const g=`${a[0]},${a[1]}`;if(m.has(g))continue;m.add(g);const h=a[0]+n,A=a[1]+n;if(y(h,A,o)){const E=h-c.min.x+(A-c.min.y);E<x&&(x=E,B={x:h,y:A})}}if(B)return B}const r=e.rect.min.x+n,d=e.rect.min.y+n;return i?W({x:r,y:d},i,e.rect.center):{x:r,y:d}}function R(e){return e&&e!=="none"?e:void 0}function Et(e){const t=R(e.borderColor)||R(F.boothBorderColor)||F.colors.booths.default;return e.paths?.length>1&&R(e.paths[e.paths.length-1].color)||t}export function createBoothBadge(e,t){const o=ht(t.title||t.name),n=Et(t),i=it(J(n).hex()),c=window.devicePixelRatio||1,r=ct(),d=st(O,r);k.font=d;const m=k.measureText(o).width,B=Math.ceil(m+gt*2),x=O+ut*2,u=(t.borderWidth||et.borderWidth)/2,a=B*U,g=x*U,h=t.rotate??0,A=t.rect.size.width,E=t.rect.size.height,N=Math.min(A>0?A*lt/a:1/0,E>0?E*dt/g:1/0),T=z(t),P=Bt(T),{x:I,y:_}=At(t,T,P,u,h),b=xt(T,P,I,_,a,g,N),D=(s,p)=>{const X=s/2,v=p/2,Z=W({x:I+X,y:_+v},h,{x:I,y:_});return new q(Z,{x:s,y:p},h)},C=s=>{const p=Math.min(s,b);return D(a*p,g*p)},G=at(r,e.fontUrls),f=Q(D(1,1),n);f.hidden=!0,f.dim=t.skipDim?!1:void 0;const l=V(tt([[o],[]],i,0,[G,G]),D(1,1),[0,0],{horizontal:"center",vertical:"center"});l.hidden=!0,l.dim=t.skipDim?!1:void 0;const M=()=>!!(t.layer&&!t.layer.visible);return $(()=>t.skipDim,s=>{f.dim=s?!1:void 0,l.dim=s?!1:void 0,e.update(f,l)}),$(()=>t.layer?.visible??!0,s=>{f.hidden=!s,l.hidden=!s,e.update(f,l)}),e.onPtScale(`badge-bg-${t.id}`,s=>(f.shape=w(C(s)),f.hidden=M(),f)),e.onPtScale(`badge-text-${t.id}`,s=>{const p=Math.min(s,b);return l.lines[0].fontSize=ft/c*p,l.bounds=w(C(s)),l.hidden=M(),l}),{bg:f,text:l}}export function configBoothsBadges(e,t,o){const n=[],i=[];for(const c of o)if(c instanceof ot&&rt({hideExhibitorBoothNumber:H.hideExhibitorBoothNumber,hideBoothBadges:H.
|
|
1
|
+
import{Box as Y,pointRotate as W,Polygon as j,Rect as q}from"@expofp/geometry";import J from"color";import{reaction as $}from"mobx";import{SEPARATOR as S}from"../../../../constants";import H from"../../../../data";import{getTrianglesFromFpPaths as K}from"../../../../data/svg";import{createShapeDef as Q,createTextDef as V,createTextDefLines as tt,rectToRenderer as w}from"../../../../renderer";import{boothStore as et,uiState as nt}from"../../../../store";import{RegularBooth as ot}from"../../../../store/BoothStore";import F from"../../../../tools/settings";import{getContrastTextColor as it}from"../../../../utils/getContrastTextColor";import{getFont as st}from"./canvases";import{isBoothBadgeEligible as rt}from"./config-booth-badge-eligibility";import{getBadgeFontWeight as ct,getFontUrlByWeight as at}from"./config-booth-labels";const lt=.5,dt=.3,L=15,ft=24,O=30,gt=12,ut=12,U=.8,k=document.createElement("canvas").getContext("2d");function ht(e){return e.length<=L?e:e.slice(0,L-1)+"\u2026"}function z(e){if(!e.paths?.length)return[];const t=e.layer?.name||"",o=[];for(const n of e.paths)for(const i of K(n.index,t))o.push(i);return o}function mt(e){const t=z(e);return t.length?Y.fromPoints(t.flat().map(([o,n])=>({x:o,y:n}))):null}function Bt(e){const t=[],o=[];for(const n of e){const i=t.length;t.push({x:n[0][0],y:n[0][1]}),t.push({x:n[1][0],y:n[1][1]}),t.push({x:n[2][0],y:n[2][1]}),o.push([i,i+1,i+2])}return new j(t,o)}function y(e,t,o){return o.containsPoint({x:e,y:t})}function xt(e,t,o,n,i,c,r){if(!e.length||!y(o,n,t))return r;let d=0,m=r;const B=10;for(let x=0;x<B;x++){const u=(d+m)/2,a=i*u,g=c*u;y(o+a,n,t)&&y(o,n+g,t)&&y(o+a,n+g,t)?d=u:m=u}return d}function pt(e){return mt(e)??e.rect}function At(e,t,o,n,i){const c=pt(e);if(t.length){const m=new Set;let B=null,x=1/0;for(const u of t)for(const a of u){const g=`${a[0]},${a[1]}`;if(m.has(g))continue;m.add(g);const h=a[0]+n,A=a[1]+n;if(y(h,A,o)){const E=h-c.min.x+(A-c.min.y);E<x&&(x=E,B={x:h,y:A})}}if(B)return B}const r=e.rect.min.x+n,d=e.rect.min.y+n;return i?W({x:r,y:d},i,e.rect.center):{x:r,y:d}}function R(e){return e&&e!=="none"?e:void 0}function Et(e){const t=R(e.borderColor)||R(F.boothBorderColor)||F.colors.booths.default;return e.paths?.length>1&&R(e.paths[e.paths.length-1].color)||t}export function createBoothBadge(e,t){const o=ht(t.title||t.name),n=Et(t),i=it(J(n).hex()),c=window.devicePixelRatio||1,r=ct(),d=st(O,r);k.font=d;const m=k.measureText(o).width,B=Math.ceil(m+gt*2),x=O+ut*2,u=(t.borderWidth||et.borderWidth)/2,a=B*U,g=x*U,h=t.rotate??0,A=t.rect.size.width,E=t.rect.size.height,N=Math.min(A>0?A*lt/a:1/0,E>0?E*dt/g:1/0),T=z(t),P=Bt(T),{x:I,y:_}=At(t,T,P,u,h),b=xt(T,P,I,_,a,g,N),D=(s,p)=>{const X=s/2,v=p/2,Z=W({x:I+X,y:_+v},h,{x:I,y:_});return new q(Z,{x:s,y:p},h)},C=s=>{const p=Math.min(s,b);return D(a*p,g*p)},G=at(r,e.fontUrls),f=Q(D(1,1),n);f.hidden=!0,f.dim=t.skipDim?!1:void 0;const l=V(tt([[o],[]],i,0,[G,G]),D(1,1),[0,0],{horizontal:"center",vertical:"center"});l.hidden=!0,l.dim=t.skipDim?!1:void 0;const M=()=>!!(t.layer&&!t.layer.visible);return $(()=>t.skipDim,s=>{f.dim=s?!1:void 0,l.dim=s?!1:void 0,e.update(f,l)}),$(()=>t.layer?.visible??!0,s=>{f.hidden=!s,l.hidden=!s,e.update(f,l)}),e.onPtScale(`badge-bg-${t.id}`,s=>(f.shape=w(C(s)),f.hidden=M(),f)),e.onPtScale(`badge-text-${t.id}`,s=>{const p=Math.min(s,b);return l.lines[0].fontSize=ft/c*p,l.bounds=w(C(s)),l.hidden=M(),l}),{bg:f,text:l}}export function configBoothsBadges(e,t,o){const n=[],i=[];for(const c of o)if(c instanceof ot&&rt({hideExhibitorBoothNumber:H.hideExhibitorBoothNumber,hideBoothBadges:H.hideBoothBadges,hideLogoInBooth:nt.hideLogoInBooth,noLabels:c.noLabels,hasExhibitors:c.exhibitors.length>0,hasLogoInBooth:c.exhibitors.some(r=>r.logoInBooth&&r.logo)})){const{bg:r,text:d}=createBoothBadge(e,c);n.push(r),i.push(d)}return n.length?{name:`${t}${S}badges`,children:[{name:`${t}${S}badgeBgs`,children:n},{name:`${t}${S}badgeTexts`,children:i}]}:null}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ColorInput, ShapeDef } from '@expofp/renderer';
|
|
2
2
|
import Color from 'color';
|
|
3
|
-
import { ShapeBgDef } from '../../../../
|
|
3
|
+
import { ShapeBgDef } from '../../../../types/drawing.types';
|
|
4
4
|
import { RendererService } from '../../../../renderer';
|
|
5
5
|
import { PathInfo } from '../../../../renderer/engine-core/types';
|
|
6
6
|
import { Booth } from '../../../../store/BoothStore';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__esDecorate as g,__runInitializers as k}from"tslib";import{
|
|
1
|
+
import{__esDecorate as g,__runInitializers as k}from"tslib";import{getFpSvgJs as v}from"../../../../data/fp-payloads";import{Rect as _}from"@expofp/geometry";import a from"color";import D from"color-interpolate";import{computed as b,reaction as C}from"mobx";import u from"../../../../data";import{createShapeDef as I}from"../../../../renderer";import p,{boothStore as x,layersStore as S,uiState as f}from"../../../../store";import{RegularBooth as P,SpecialBooth as w}from"../../../../store/BoothStore";import{RebookingState as F}from"../../../../store/ExhibitorStore";import{LayersMode as L}from"../../../../store/LayerStore";import{rebookingStateConfig as B}from"../../../../tools/rebooking-config";import n from"../../../../tools/settings";import{BoothDrawerBaseWithoutPainter as A}from"./BoothDrawerBase";import{buildPathDef as R}from"./config-bg";export default function W(s,i){return new j(s,i)}function z(s){if(s.length===0)return null;const i=s[0];return s.every(c=>c===i)?i:null}export function pathToShapeDef(s,i){const h=[];for(const c of s){const d=R({index:c.index,color:c.color,unblinking:c.unblinking},i);d&&h.push(d)}return h}let j=(()=>{let s=A,i=[],h,c;return class extends s{static{const o=typeof Symbol=="function"&&Symbol.metadata?Object.create(s[Symbol.metadata]??null):void 0;h=[b({keepAlive:!0})],c=[b({keepAlive:!0})],g(this,null,h,{kind:"getter",name:"defaultColor",static:!1,private:!1,access:{has:e=>"defaultColor"in e,get:e=>e.defaultColor},metadata:o},null,i),g(this,null,c,{kind:"getter",name:"selectedColorInterpolateFunc",static:!1,private:!1,access:{has:e=>"selectedColorInterpolateFunc"in e,get:e=>e.selectedColorInterpolateFunc},metadata:o},null,i),o&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:o})}rendererService=k(this,i);constructor(o,e){if(super(e),this.rendererService=o,e.paths){const t=pathToShapeDef(e.paths,p.layerStore.mode!==L.Default?e.layer.name:"");e.shapes=t.map(r=>{const l=f.monochrome?a(r.color).grayscale().rgb().string():this.getBoothColor().string();return r.color==="transparent"?r.color=l:r.defaultColor=r.color,r})}else{const t=e.borderColor==="none"?0:isNaN(e.borderWidth)?x.borderWidth:e.borderWidth,r=this.booth.rect.expand(-t/2),l=this.getBoothColor().string();e.shapes=[I(new _(r.center,r.size,this.booth.rotate),l)]}C(()=>this.booth.hover,()=>!this.booth.selected&&this.update()),C(()=>[S.layersLoaded,this.booth.skipDim,this.booth.selected,this.boothShape.selectBgAnimationPart],()=>this.update())}getShape(){return this.booth.shapes}update(){if(S.layersLoaded)for(const o of this.booth.shapes){if(o.dim=this.booth.skipDim?!1:void 0,o.color&&!o.unblinking){const e=o.defaultColor?this.getBoothPathColor(o.defaultColor):this.getBoothColor();o.color=e.string()}this.rendererService.update(o)}}getBoothPathColor(o){const e=this.booth;let t=a(o).hsl();if(e.selected){const r=n.colors.booths.selected;if(v().__fpSettings?.fpVer){let m=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart);return a(m==="none"?r:m)}const l=a(r).hsl(),y=l.lightness()*this.boothShape.selectBgAnimationPart;t=t.hue(l.hue()).lightness(y)}else e.hover&&(t=t.darken(.1));return t}get defaultColor(){const o=this.booth;let e;if(o instanceof w)e=o.color||n.colors.booths.empty;else if(o instanceof P){if(u.isRebooking){if(!o.exhibitors?.length)return B[F.Unasked].color.primary;const r=z((o.exhibitors??[]).map(l=>l.rebookingState));return r!==null?B[r].color.primary:"#000000"}const t=n.colors.booths;o.onHold?e=o.holdColor||t.defaultHold:o.exhibitors.length||o.reserved?e=o.soldColor||t.defaultSold:e=o.availColor||t.empty}try{e==="none"&&(e=n.colors.booths.default),a(e)}catch(t){e=n.colors.booths.default,console.error("Booth: defaultColor",t)}return e}get selectedColorInterpolateFunc(){const o=n.colors.booths.seectedLight||(a(this.booth.labelColor||n.boothLabelColor).isLight()?"#000":"#fff"),e=f.selectedRoute?n?.colors?.booths?.wayfinding?.selected:n?.colors?.booths?.selected;return D([o,e])}getBoothColor(){const o=this.booth;let e;if(f.heatmap){const r=p.heatmapStore.getTotalClicksByBooth(o),l=a(p.heatmapStore.getColorByClicks(r));return o.selected?(e=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart),a(e==="none"?"#f33":e)):o.hover?l.darken(.2).alpha(l.alpha()*1.5):l}o.error?e="#f33":u.isRebooking?e=this.defaultColor:o.selected?e=this.selectedColorInterpolateFunc(this.boothShape.selectBgAnimationPart):e=this.defaultColor;let t;try{t=a(e==="none"?"#f33":e)}catch{t=a(this.defaultColor)}return(o.hover&&!o.selected||o.selected&&u.isRebooking)&&(t=t.darken(.2).alpha(t.alpha()*1.5)),(f.monochrome||f.heatmapYah)&&(t=t.grayscale()),t}}})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{degToRad as
|
|
1
|
+
import{getConfig as x}from"@expofp/config";import{resolve as O}from"@expofp/resolve";import{degToRad as T,Rect as v}from"@expofp/geometry";import{BOOTHS_PAINTER_MARKER as D,SEPARATOR as m}from"../../../../constants";import{createImageDef as H,createLayerDef as k}from"../../../../renderer";import c,{boothStore as F}from"../../../../store";import G from"../../../../store/init/init-booths";import{getChildLayers as K}from"../../../../store/init/init-layers";import{LayersMode as Y}from"../../../../store/LayerStore";import{chunkArray as j}from"../../../../utils";import{getFpPaths as J}from"../../../../data/fp-payloads";import{loadIcons as U}from"../../../../utils/imageloader";import Z,{BG_LAYER_NAME as R,FG_LAYER_NAME as $}from"./config-bg";import q,{BOOTHS_CHUNK_SIZE as z}from"./config-booths";import{getImageLayerName as Q,getLayerIcons as V}from"./loadBoothsImages";function W(e){return e.childLayers.length?e.childLayers:K(e,e.basePriority,15).layers}function E(e,t,f){return new Promise(async g=>{let n=[];const i=G(c,t),s=await Z(t),a=[],h=j(i,z),l=F.booths.filter(o=>o.rect&&(!o.layer||o.layer===t||o.layer.childLayers.includes(t))&&o.exhibitors.find(r=>!!r.logoInBooth&&!!r.logo?.url)&&!c.uiState.hideLogoInBooth),I=new Map(l.map(o=>[o.id,o.noLabels]));l.forEach(o=>o.noLabels=!0),i.length&&h.forEach((o,r)=>{a.push(q(e,`${t.name}${m}${D}${m}${r}`,o))}),l.forEach(o=>{o.noLabels=I.get(o.id)}),t.loaded=!0;const y=s.children.find(o=>o.name===R),u=s.children.find(o=>o.name===$),p=Q(t.name),d=V(t),L={name:p,children:[]};d.length&&e.onLayerImages(p,async()=>{const o=await U(d),r=[];for(const w of o.filter(Boolean)){const{bounds:{x:b,y:P,height:A,angle:S,width:_},htmlImage:M}=w,N=v.fromMinMax({x:b,y:P},{x:b+_,y:P+A},T(S)),C=H(M,N);r.push({shape:C})}return{layer:L,children:r}}),y&&n.push({...y,name:`${s.name}${m}${R}`}),a.length&&n.push(...a),u&&n.push({...u,name:`${s.name}${m}${$}`}),d.length&&n.push(L);const B=t.childLayers.sort((o,r)=>o.basePriority-r.basePriority).map(async o=>E(e,o,!0));Promise.all(B).then(o=>{const r=o.flat();r.length&&n.push(...r),t.children=n,t.configured=!0,g(k(t.name,n,{hidden:!f}))})})}export default async function X(e,t){return e.configured?Promise.resolve({name:e.name,children:e.children}):new Promise(async(f,g)=>{if(c.layerStore.mode!==Y.Default&&!J(e.name)&&!e.rootParent)try{const a=x().fpSvgLayerJsRefs[e.name];a&&await O(a)}catch(a){console.warn(`Layer data not loaded: ${e.name}`,a)}const n=W(e);n.length&&(e.childLayers=n);const{layers:i}=c.layerStore;c.layerStore.layers=[...i,...n.filter(a=>!i.some(h=>h.name===a.name))];const s=await E(t,e,e.visible);f(s)})}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{degToRad as
|
|
1
|
+
import{getFpSvgJs as f}from"../../../../data/fp-payloads";import{degToRad as d,radToDeg as h,Rect as u}from"@expofp/geometry";import{select as y}from"d3";import{SEPARATOR as R}from"../../../../constants";import{getLayerSvg as x}from"../../../../data/svg";import{flipImageDef as I,isInnerInsideOuter as w}from"../../../../renderer";import{rotateImageDef as A}from"../../../../renderer/engine-core/utils/rotation";import{getLogoUrl as L}from"../../../../utils/getLogoUrl";export async function loadLayersImages(e){const a=e.layerImagesRegistry.invoke();await Promise.all(a.map(async s=>{const n=await s;if(!n)return;const{layer:r,children:c}=n;if(c.length){const i=[];for(let o=0;o<c.length;o++){const{shape:t,parentRect:g}=c[o],l=w(t.bounds,g);if(!r.name.includes("Pathway_")){const m=l?"image-rotate":"image-flip";e.onRoll(`${m}-${r.name}-${o}`,l?p=>A(t,p):p=>I(t,p))}i.push(t)}r.children.push(...i),e.update(r)}}))}export const getImageLayerName=e=>`${e}${R}images`;export function mapBoothsLogos(e){return new Map(e.map(a=>{const s=a.rect&&a.exhibitors.find(n=>n.logoInBooth&&n.logo);return s?[a.id,{preferred:L(s.logo),fallback:s.logo.url}]:null}).filter(Boolean))}export function getLayerIcons(e){const a=y(x(e)).select(`[data-layer="${e.name}"]`);return(f().__fpVersion>5?a.selectAll(":scope > image, :scope > g:not([data-layer]) image").nodes():a.selectAll(":scope > g[data-is-editable='false'] image").nodes()).filter(Boolean)}export function createBoothImg(e,a){const s=e.rect,n=s.size.width,r=s.size.height,c=r?n/r:1,i=a.height?a.width/a.height:1;let o,t,g;const l=.9;c>i?(t=r*l,o=t*i):(o=n*l,t=o/i);const m=e.rotate||0;return i>=2&&!m&&r>=n*2?(t=n*l,o=t*i,g=-90):g=h(m),o>n&&(o=n,t=o/i),t>r&&(t=r,o=t*i),{name:e.slug,bounds:new u(s.center,{x:o,y:t},d(g)),htmlImage:a,booth:e}}
|