import { useBackend } from '../backend'; import { Box, Button, Flex, LabeledList, ProgressBar, Section, Slider } from '../components'; import { formatPower } from '../format'; import { Window } from '../layouts'; import { round } from 'common/math'; // Common power multiplier const POWER_MUL = 1e3; export const Smes = (props, context) => { const { act, data } = useBackend(context); const { capacityPercent, capacity, charge, inputAttempt, inputting, inputLevel, inputLevelMax, inputAvailable, outputAttempt, outputting, outputLevel, outputLevelMax, outputUsed, } = data; const inputState = (capacityPercent >= 100 && 'good') || (inputting && 'average') || 'bad'; const outputState = (outputting && 'good') || (charge > 0 && 'average') || 'bad'; return (
{round(charge / (1000 * 60), 1)} kWh / {round(capacity / (1000 * 60))} kWh ({capacityPercent}%)
act('tryinput')}> {inputAttempt ? 'On' : 'Off'} }> {(capacityPercent >= 100 && 'Fully Charged') || (inputting && 'Charging') || 'Not Charging'}
act('tryoutput')}> {outputAttempt ? 'On' : 'Off'} }> {outputting ? 'Sending' : charge > 0 ? 'Not Sending' : 'No Charge'}
); };