import { Fragment } from 'inferno'; import { useBackend } from '../backend'; import { Box, Button, LabeledList, ProgressBar, Section, NoticeBox, Slider } from '../components'; import { Window } from '../layouts'; import { decodeHtmlEntities } from 'common/string'; export const XenoarchSpectrometer = (props, context) => { const { act, data } = useBackend(context); const { scanned_item, scanned_item_desc, last_scan_data, scan_progress, scanning, scanner_seal_integrity, scanner_rpm, scanner_temperature, coolant_usage_rate, coolant_usage_max, unused_coolant_abs, unused_coolant_per, coolant_purity, optimal_wavelength, maser_wavelength, maser_wavelength_max, maser_efficiency, radiation, t_left_radspike, rad_shield_on, } = data; return (
}> {scanned_item || No item inserted.} {scanned_item_desc || 'None found.'}
Match wavelengths to progress the scan.}> val + ' MHz'} step={10} onDrag={(e, val) => act('maserWavelength', { wavelength: val })} />
{scanner_rpm} RPM {scanner_temperature} K
act('toggle_rad_shield')}> {rad_shield_on ? 'Disable Radiation Shielding' : 'Enable Radiation Shielding'} }> {radiation} mSv
{unused_coolant_per * 10} u val + ' u/s'} onDrag={(e, val) => act('coolantRate', { coolant: val })} />
{decodeHtmlEntities(last_scan_data) .split('\n') .map((val) => ( {val} ))}
); };