import { Fragment } from 'inferno';
import { useBackend } from '../backend';
import { Box, Button, LabeledList, Section, NumberInput } from '../components';
import { TemporaryNotice } from './common/TemporaryNotice';
import { Window } from '../layouts';
export const TelecommsMultitoolMenu = (props, context) => {
const { act, data } = useBackend(context);
const {
// All
temp,
on,
id,
network,
autolinkers,
shadowlink,
options,
linked,
filter,
multitool,
multitool_buffer,
} = data;
return (
);
};
const TelecommsMultitoolMenuStatus = (props, context) => {
const { act, data } = useBackend(context);
const {
// All
temp,
on,
id,
network,
autolinkers,
shadowlink,
options,
linked,
filter,
multitool,
multitool_buffer,
} = data;
return (
act('toggle')} />}>
{autolinkers ? 'TRUE' : 'FALSE'}
{shadowlink ? Active. : null}
{multitool ? (
{multitool_buffer ? (
{multitool_buffer.name} ({multitool_buffer.id})
) : null}
) : null}
{linked.map((link) => (
act('unlink', { unlink: link.index })} />
}
/>
))}
{filter.map((f) => (
act('delete', { delete: f.freq })}
/>
))}
{!filter || filter.length === 0 ? No filters. : null}
);
};
const TelecommsMultitoolMenuPolymorphicOptions = (props, context) => {
const { act, data } = useBackend(context);
const {
// Relay
use_listening_level,
use_broadcasting,
use_receiving,
listening_level,
broadcasting,
receiving,
// Bus
use_change_freq,
change_freq,
// Broadcaster & Receiver
use_broadcast_range,
use_receive_range,
range,
minRange,
maxRange,
} = props.options;
// If absolutely nothing is active, we tell the user there ain't no shit here.
if (
!use_listening_level &&
!use_broadcasting &&
!use_receiving &&
!use_change_freq &&
!use_broadcast_range &&
!use_receive_range
) {
return ;
}
return (
{use_listening_level ? (
act('change_listening')}
/>
) : null}
{use_broadcasting ? (
act('broadcast')}
/>
) : null}
{use_receiving ? (
act('receive')}
/>
) : null}
{use_change_freq ? (
act('change_freq')}
/>
) : null}
{use_broadcast_range || use_receive_range ? (
val + 1}
onDrag={(e, val) => act('range', { range: val })}
/>
) : null}
);
};