@expofp/floorplan
Version:
Interactive floor plan library for expos and events
2 lines (1 loc) • 2.38 kB
JavaScript
import{jsx as o,jsxs as g}from"react/jsx-runtime";import{Overlay as k}from"@expofp/ui";import C from"classnames";import{observer as z}from"mobx-react-lite";import{useCallback as l,useMemo as b,useState as a}from"react";import{overlayStore as m,uiState as e}from"../store";import{SESSIONS_LIST_TYPE as n}from"../store/types";import{t as w}from"../utils/i18n";import O from"./Bookmarks";import I from"./Booth/Booth";import M from"./Category";import P from"./Event";import x from"./Exhibitor";import E from"./Filter";import F from"./Language";import _ from"./Menu";import j from"./OverlayParticles";import A from"./RoutePlanner/RoutePlanner";import B from"./Search";import R from"./Sessions";import T from"./Speaker";import K from"./Speakers";import L from"./TourPoints";import N from"./Tours";import D from"./Visited";import U from"./Wayfinding";const V=z(({isGDPR:d,consent:p})=>{const c=l(t=>{e.desiredOverlaySize=t},[]),f=l(t=>{e.setOverlayScrolled(t)},[]),S=e.overlaySize,[y,v]=a({}),[r,u]=a({type:e.list.type,details:e.details});(r.type!==e.list.type||r.details!==e.details)&&(u({type:e.list.type,details:e.details}),!e.details&&e.list.type===n&&e.getListScrollItemId(n)!=null||v({}));const h=b(()=>{const t={"-backdrop":e.canvasStarted&&e.shouldUseBackdrop&&!e.dimmed&&!e.galleryActive,"-no-transition":e.dimmed,"-gallery-active":e.galleryActive,collapsed:e.overlayCollapsed,kiosk:e.kiosk,start:e.overlayPosition==="left",bottom:e.overlayPosition!=="left",...e.overlaySize&&{[e.overlaySize]:!0}},i=C(t),s=e.overlayInterfaceClasses.join(" ");return s?`${i} ${s}`:i},[e.canvasStarted,e.shouldUseBackdrop,e.dimmed,e.galleryActive,e.overlayCollapsed,e.kiosk,e.inIdle,e.setKioskModeEnabled,e.overlayPosition,e.overlaySize,e.overlayInterfaceClasses]);return g(k,{open:e.isOverlayOpen,size:S,particles:e.isFeaturedExhibitorActive?o(j,{}):null,className:h,mediumSizeMultiplier:m.mediumSizeMultiplier,fullSizeOffset:m.fullSizeOffset,disableDrag:e.viewerMode&&e.menu,forceFull:e.viewerMode&&e.menu,scrollResetKey:y,noContentLabel:w("No content"),withFloatingButton:e.shouldShowMobileToggle,onChangeSize:c,onScrollStateChange:f,onScrollActivity:()=>window.__resett?.(),children:[o(_,{isGDPR:d,consent:p}),o(B,{}),o(x,{}),o(I,{}),o(O,{}),o(D,{}),o(F,{}),o(M,{}),o(U,{}),o(E,{}),o(R,{showFilters:!0}),o(K,{showFilters:!0}),o(N,{}),o(L,{}),o(A,{}),o(P,{}),o(T,{})]})});export default V;