import React, { memo, ReactElement } from 'react'; import * as t from 'altamoon-types'; import MiniNumberInput from '../lib/MiniNumberInput'; import PhlegmaticSwitch from '../lib/PhlegmaticSwitch'; import useItem from '../lib/useItem'; import { PhlegmaticPosition } from '../types'; interface Props { isDefault: boolean; isEnabled: boolean; item: PhlegmaticPosition; position?: t.TradingPosition; onItemChange?: (item: PhlegmaticPosition, key: string) => void; onChangeEnabled: (isEnabled: boolean) => void; } const ReduceLoss = ({ isDefault, isEnabled, item, position, onItemChange, onChangeEnabled, }: Props): ReactElement => { const [reduceLossPercentValue, setReduceLossPercentValue] = useItem(item, 'reduceLossPercentValue', onItemChange); const [reduceLossPercentTrigger, setReduceLossPercentTrigger] = useItem(item, 'reduceLossPercentTrigger', onItemChange); const [reduceLossSecondsInterval, setReduceLossSecondsInterval] = useItem(item, 'reduceLossSecondsInterval', onItemChange); const isValid = reduceLossPercentValue !== null && reduceLossPercentTrigger !== null && reduceLossSecondsInterval !== null; return ( Pull {' '} % every {' '} {' '} seconds when PNL ≤ {' '} − % ); }; export default memo(ReduceLoss);