@expofp/floorplan
Version:
Interactive floor plan library for expos and events
2 lines (1 loc) • 996 B
JavaScript
import{jsx as m}from"react/jsx-runtime";import{observer as d}from"mobx-react-lite";import p from"../data";import r from"../store";import{LayersMode as i}from"../store/LayerStore";import u from"../tools/settings";import f from"../ui/LevelSelector";import{t as l}from"../utils/i18n";const S=["ice-gaming2026"];function y(e){return S.includes(u.EXPO)?{layout:"compact-list",useShortNames:e}:{layout:e?"compact-list":"dropdown",useShortNames:e}}const b=d(()=>{const e=r.layerStore.floors;if(!(r.layerStore.mode===i.Radio||r.layerStore.mode===i.CheckBox)||e.length===0)return null;const{layout:s,useShortNames:a}=y(p.shortLevelName),n=e.map(o=>({id:o.layer.description,label:a?o.shortName:o.description,active:o.active,disabled:o.disabled}));return m(f,{floors:n,layout:s,onSelect:o=>{const t=e.find(c=>c.layer.description===o);!t||t.disabled||r.layerStore.selectFloor(t.layer)},floorSelectionLabel:l("Floor selection"),currentFloorLabel:l("Current Floor"),floorLabel:l("Floor")})});export default b;