import React from "react"; import { Box, Paper, TextField, Typography, Grid, Alert, AlertTitle, Divider, } from "@mui/material"; export interface ReferenceFormData { firstName: string; lastName: string; relationship: string; jobTitle: string; workplaceName: string; phoneNumber: string; } type ValueType = [ReferenceFormData, ReferenceFormData]; const emptyRef = (): ReferenceFormData => ({ firstName: "", lastName: "", relationship: "", jobTitle: "", workplaceName: "", phoneNumber: "", }); interface Props { value?: ValueType; // ✅ optional onChange?: (next: ValueType) => void; // ✅ optional } export default function RelationForm({ value, onChange }: Props) { // ✅ همیشه یک آرایه 2تایی معتبر داریم const safeValue: ValueType = value ?? [emptyRef(), emptyRef()]; const safeOnChange = onChange ?? (() => {}); const updateField = (index: 0 | 1, key: keyof ReferenceFormData) => (e: React.ChangeEvent) => { const next: ValueType = [ { ...safeValue[0] }, { ...safeValue[1] }, ]; next[index] = { ...next[index], [key]: e.target.value }; safeOnChange(next); }; const renderPersonFields = (index: 0 | 1) => ( آشنای {index === 0 ? "اول" : "دوم"} ); return ( توجه مشخصات دو نفر از آشنایان را وارد کنید و از درج بستگان درجه یک (پدر، مادر، همسر، برادر و خواهر) خودداری نمایید. {renderPersonFields(0)} {renderPersonFields(1)} ); }