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 TakeProfit = ({ isDefault, isEnabled, item, position, onItemChange, onChangeEnabled, }: Props): ReactElement => { const [recoverBalancePercentAdd, setRecoverBalancePercentAdd] = useItem(item, 'recoverBalancePercentAdd', onItemChange); const [recoverPercentTrigger, setRecoverPercentTrigger] = useItem(item, 'recoverPercentTrigger', onItemChange); const [recoverBalancePercentStop, setRecoverBalancePercentStop] = useItem(item, 'recoverBalancePercentStop', onItemChange); const isValid = recoverBalancePercentAdd !== null && recoverPercentTrigger !== null && recoverBalancePercentStop !== null; return (