import React from 'react'; import Avatar from 'boring-avatars'; import { Disclosure } from '@headlessui/react'; import { ChevronDownIcon, ChevronRightIcon, ClockIcon, FlagIcon, GlobeIcon, LightningBoltIcon, } from '@heroicons/react/outline'; import type { Types } from '@meshtastic/meshtasticjs'; export interface NodeProps { node: Types.NodeInfoPacket; myId: number; } const Node = (props: NodeProps): JSX.Element => { return ( {({ open }) => ( <>
{open ? ( ) : ( )}
{props.node.data.num === props.myId ? ( ) : null}
{props.node.data.user?.longName}

SNR:{' '} {props.node.packet?.rxSnr ? props.node.packet.rxSnr : 'Unknown'}

RSSI:{' '} {props.node.packet?.rxRssi ? props.node.packet.rxRssi : 'Unknown'}

{`Last heard: ${ props.node.data?.lastHeard ? new Date(props.node.data.lastHeard).toLocaleString() : 'Unknown' }`}{' '} {}

{props.node.data.position?.latitudeI && props.node.data.position?.longitudeI ? `${props.node.data.position.latitudeI / 1e7}, ${props.node.data.position.longitudeI / 1e7}` : 'Unknown'} , El: {props.node.data.position?.altitude}

{props.node.data.position?.time}

{props.node.data.position?.batteryLevel}

)}
); }; export default Node;