import React, { useEffect, useState } from "react"; import Box from "@mui/material/Box"; import Checkbox from "@mui/material/Checkbox"; import Input from "@mui/material/Input"; import MenuItem from "@mui/material/MenuItem"; import Paper from "@mui/material/Paper"; import Select from "@mui/material/Select"; import Stack from "@mui/material/Stack"; import Typography from "@mui/material/Typography"; export interface ReturnOrderItemProspectLineProps { description: string; quantity: number; sku: string; returnCodes: Record; defaultReturnCode?: string; onChange: (checked: boolean, quantity: number, returnCode: string) => void; } export const ReturnOrderItemProspectLine: React.FC = ({ description, quantity: maxQuantity, sku, returnCodes, defaultReturnCode, onChange, }) => { const [checked, setChecked] = useState(false); const [quantity, setQuantity] = useState(1); const [returnCode, setReturnCode] = useState(defaultReturnCode ?? Object.keys(returnCodes)[0]); useEffect(() => onChange(checked, quantity, returnCode), [checked, quantity, returnCode]); return ( setChecked(checked)} /> {description} {sku} {checked && ( <> setQuantity(Math.min(parseInt(event.target.value), maxQuantity)) } /> )} ); };