From 068c69177323abd4bd5ced958d7b3889dee32f9e Mon Sep 17 00:00:00 2001 From: Michael Chihlas Date: Sun, 1 Feb 2026 00:27:09 -0500 Subject: [PATCH] Make invite code optional in frontend when backend allows it - Remove required attribute from invite code field - Only validate invite code if one is entered - Only include invite_code in request if provided Co-Authored-By: Claude Opus 4.5 --- frontend/src/pages/RegisterPage.tsx | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/frontend/src/pages/RegisterPage.tsx b/frontend/src/pages/RegisterPage.tsx index 03d421e3..b88df9d0 100644 --- a/frontend/src/pages/RegisterPage.tsx +++ b/frontend/src/pages/RegisterPage.tsx @@ -40,12 +40,8 @@ export function RegisterPage() { setLocalError('') clearError() - if (!inviteCode.trim()) { - setLocalError('Invite code is required') - return - } - - if (inviteCodeStatus !== 'valid') { + // Only validate invite code if one was entered + if (inviteCode.trim() && inviteCodeStatus === 'invalid') { setLocalError('Please enter a valid invite code') return } @@ -66,7 +62,11 @@ export function RegisterPage() { } try { - await register({ email, password, name, invite_code: inviteCode.trim() }) + // Only include invite_code if provided + const userData = inviteCode.trim() + ? { email, password, name, invite_code: inviteCode.trim() } + : { email, password, name } + await register(userData) navigate('/trees', { replace: true }) } catch { // Error is set in the store @@ -97,7 +97,6 @@ export function RegisterPage() { id="inviteCode" name="inviteCode" type="text" - required value={inviteCode} onChange={(e) => { setInviteCode(e.target.value.toUpperCase())