From 47bc0f4cfa73fc93b2f254ac3a49a6a090f5d58b Mon Sep 17 00:00:00 2001 From: Chandler Copeland Date: Fri, 3 Apr 2026 17:46:30 -0600 Subject: [PATCH] =?UTF-8?q?fix:=20remove=20redundant=20recipients=20field?= =?UTF-8?q?=20=E2=80=94=20signers=20system=20handles=20all=20email=20dispa?= =?UTF-8?q?tch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../[docId]/_components/PreparePanel.tsx | 43 +------------------ 1 file changed, 2 insertions(+), 41 deletions(-) diff --git a/teressa-copeland-homes/src/app/portal/(protected)/documents/[docId]/_components/PreparePanel.tsx b/teressa-copeland-homes/src/app/portal/(protected)/documents/[docId]/_components/PreparePanel.tsx index fa8c9d5..ae5c9a0 100644 --- a/teressa-copeland-homes/src/app/portal/(protected)/documents/[docId]/_components/PreparePanel.tsx +++ b/teressa-copeland-homes/src/app/portal/(protected)/documents/[docId]/_components/PreparePanel.tsx @@ -33,10 +33,6 @@ interface PreparePanelProps { onUnassignedFieldIdsChange?: (ids: Set) => void; } -function parseEmails(raw: string | undefined): string[] { - return (raw ?? '').split(/[\n,]+/).map((e) => e.trim()).filter(Boolean); -} - function isValidEmail(email: string): boolean { return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email); } @@ -52,11 +48,6 @@ export function PreparePanel({ onUnassignedFieldIdsChange, }: PreparePanelProps) { const router = useRouter(); - const [recipients, setRecipients] = useState(defaultEmail ?? ''); - // Sync if defaultEmail arrives after initial render (streaming / hydration timing) - useEffect(() => { - if (defaultEmail) setRecipients(defaultEmail); - }, [defaultEmail]); const [loading, setLoading] = useState(false); const [aiLoading, setAiLoading] = useState(false); const [result, setResult] = useState<{ ok: boolean; message: string } | null>(null); @@ -190,21 +181,6 @@ export function PreparePanel({ setLoading(true); setResult(null); - const emailAddresses = parseEmails(recipients); - - if (emailAddresses.length === 0) { - setResult({ ok: false, message: 'Enter at least one recipient email.' }); - setLoading(false); - return; - } - - const invalid = emailAddresses.filter((e) => !isValidEmail(e)); - if (invalid.length > 0) { - setResult({ ok: false, message: `Invalid email(s): ${invalid.join(', ')}` }); - setLoading(false); - return; - } - try { // Send-block validation: fetch current fields and check for unassigned client-visible fields const fieldsRes = await fetch(`/api/documents/${docId}/fields`); @@ -231,7 +207,7 @@ export function PreparePanel({ const prepareRes = await fetch(`/api/documents/${docId}/prepare`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ textFillData, emailAddresses, signers }), + body: JSON.stringify({ textFillData, signers }), }); if (!prepareRes.ok) { const err = await prepareRes.json().catch(() => ({ error: 'Unknown error' })); @@ -257,21 +233,6 @@ export function PreparePanel({

Prepare Document

-
- -