'use client'; import { Dialog, DialogTitle, DialogContent, DialogActions, Button, Grid, TextField } from '@mui/material'; import { NewAddress } from '@/types'; // Or inline if needed export default function AddAddressDialog({ open, onClose, onAdd, newAddress, setNewAddress, }: { open: boolean, onClose: () => void, onAdd: () => void, newAddress: NewAddress, setNewAddress: (address: NewAddress) => void, }) { return ( Add New Address {[ { label: 'First Name', field: 'firstName' }, { label: 'Last Name', field: 'lastName' }, { label: 'Company (Optional)', field: 'company' }, { label: 'Address Line 1', field: 'addressLine1' }, { label: 'Address Line 2 (Optional)', field: 'addressLine2' }, { label: 'Apartment #', field: 'apartmentNumber' }, { label: 'Building #', field: 'buildingNumber' }, { label: 'Floor', field: 'floor' }, { label: 'City', field: 'city' }, { label: 'State', field: 'state' }, { label: 'Postal Code', field: 'postalCode' }, { label: 'Country', field: 'country' }, { label: 'Phone Number', field: 'phoneNumber' }, ].map(({ label, field }, index) => ( setNewAddress({ ...newAddress, [field]: e.target.value })} /> ))} setNewAddress({ ...newAddress, instructions: e.target.value })} /> ); }