import { sortBy } from 'common/collections'; import { Window } from '../layouts'; import { Fragment } from 'inferno'; import { Button, Box, Tabs, Icon, Section, NanoMap } from '../components'; import { useBackend, useLocalState } from '../backend'; import { createLogger } from '../logging'; const logger = createLogger('fuck'); export const AtmosControl = (props, context) => { return ( ); }; export const AtmosControlContent = (props, context) => { const { act, data, config } = useBackend(context); let sortedAlarms = sortBy((alarm) => alarm.name)(data.alarms || []); // sortedAlarms = sortedAlarms.slice(1, 3); const [tabIndex, setTabIndex] = useLocalState(context, 'tabIndex', 0); const [zoom, setZoom] = useLocalState(context, 'zoom', 1); let body; // Alarms View if (tabIndex === 0) { body = (
{sortedAlarms.map((alarm) => (
); } else if (tabIndex === 1) { // Please note, if you ever change the zoom values, // you MUST update styles/components/Tooltip.scss // and change the @for scss to match. body = ( setZoom(v)}> {sortedAlarms .filter((x) => ~~x.z === ~~config.mapZLevel) .map((cm) => ( act('alarm', { 'alarm': cm.ref })} /> ))} ); } return ( setTabIndex(0)}> Alarm View setTabIndex(1)}> Map View {body} ); };