From 6aae06635dddec68d374ac4defeabb608a277968 Mon Sep 17 00:00:00 2001 From: Thatsaphorn Atchariyaphap Date: Fri, 11 Jul 2025 20:36:51 +0200 Subject: [PATCH] Reset form state on dialog close in `NewCustomerModal` - Add `resetForm` utility to restore initial modal state. - Automatically reset form state when dialog closes or a new customer is created to improve UX. --- .../customers/modal/NewCustomerModal.tsx | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/internal_frontend/components/customers/modal/NewCustomerModal.tsx b/internal_frontend/components/customers/modal/NewCustomerModal.tsx index 65a8d68..0c3ac4c 100644 --- a/internal_frontend/components/customers/modal/NewCustomerModal.tsx +++ b/internal_frontend/components/customers/modal/NewCustomerModal.tsx @@ -75,6 +75,7 @@ export function NewCustomerModal({onCustomerCreated}: Readonly { + setStep(1); // Reset to step 1 + setEmail(""); + setName(""); + setCompanyName(""); + setPhoneNumbers([{note: "", number: ""}]); + setNotes([{text: ""}]); + setStreet(""); + setZip(""); + setCity(""); + setMatches([]); + setShowDetailModal(false); + }; + const renderStepOne = () => (
@@ -227,6 +242,9 @@ export function NewCustomerModal({onCustomerCreated}: Readonly { + if (!open) { + resetForm(); + } // Prevent closing on backdrop click - modal can only be closed explicitly }}> @@ -257,7 +275,7 @@ export function NewCustomerModal({onCustomerCreated}: Readonly setStep(2)} - // disabled={!email || !name || !companyName || phoneNumbers.length === 0 || !phoneNumbers.some(p => p.number.trim()) || emailExists} + disabled={!email || !name || !companyName || phoneNumbers.length === 0 || !phoneNumbers.some(p => p.number.trim()) || emailExists} > Weiter