import React, { useState } from "react"; import AddIcon from "@mui/icons-material/Add"; import RemoveIcon from "@mui/icons-material/Remove"; import IconButton from "@mui/material/IconButton"; import ClearIcon from "@mui/icons-material/Clear"; import DoubleArrowIcon from "@mui/icons-material/DoubleArrow"; import TextField from "@mui/material/TextField"; import Tooltip from "@mui/material/Tooltip"; interface IProps { label: string; placeholder: string; add: (x: number) => void; subtract: (x: number) => void; tons: () => void; reset: () => void; } export function Adjuster(props: IProps): React.ReactElement { const [value, setValue] = useState(""); function onChange(event: React.ChangeEvent): void { if (event.target.value === "") setValue(""); else setValue(parseFloat(event.target.value)); } const { label, placeholder, add, subtract, reset, tons } = props; return ( <> add(typeof value !== "string" ? value : 0)} size="large"> ), endAdornment: ( <> subtract(typeof value !== "string" ? value : 0)} size="large"> ), }} /> ); }