Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | 89x | import React from "react";
import { RHFInput } from "@common/Input";
import { useFormContext } from "react-hook-form";
import { isEmpty } from "lodash";
type OwnershipInputProps = {
name: string;
label: string;
placeholder: string;
disabled?: boolean;
};
const OwnershipInput = ({
name,
label,
placeholder,
disabled = false,
}: OwnershipInputProps) => {
const { setValue, watch } = useFormContext();
const normalizeInput = (value: string) => {
if (isEmpty(value)) return value;
const currentValue = value?.replace(/[^\d.]/g, "");
if (parseFloat(currentValue) > 100) return "100";
return currentValue;
};
React.useEffect(() => {
setValue(name, normalizeInput(watch(name)));
}, [watch(name)]);
return (
<RHFInput
name={name}
label={label}
placeholder={placeholder}
fullWidth
disabled={disabled}
// inputProps={{
// maxLength: "3",
// }}
endIcon="%"
/>
);
};
export default OwnershipInput;
|