import { ControllerRenderProps } from "react-hook-form"; import { selectedSymbolStore } from "../../../../store"; import { useOrderPlacingError } from "../../../useOrderPlacingError"; import { useStepValues } from "../../../useStepValues"; import { BuyForm, OcoOrderValues } from "../types"; const ControllerLimit = ({ render, }: { render: (state: { field: ControllerRenderProps; }) => any; }) => { const { selectedSymbol } = selectedSymbolStore.useState(); const { getPriceError } = useOrderPlacingError(); const { expectedValue, onChangeValue } = useStepValues( "limit", selectedSymbol?.symbol, true, ); return ( { return getPriceError({ symbol: selectedSymbol?.symbol, price: Number(value), }); }, }, }} render={({ field: { onChange, value, ...rest } }) => render({ field: { value: expectedValue(value), onChange: (_value) => onChange(onChangeValue(_value) || _value), ...rest, }, }) } /> ); }; export { ControllerLimit };