const {Button}=window.VedutaDesignSystem_f6874f; const INVITE_ENDPOINT='/.netlify/functions/invite'; function InvitePage({onNavigate}){ const init={fromName:'',fromEmail:'',toName:'',toEmail:'',note:'',website:''}; const [f,setF]=React.useState(init); const [status,setStatus]=React.useState('idle'); const [error,setError]=React.useState(''); const set=k=>v=>setF(x=>({...x,[k]:v})); const submit=async e=>{ e.preventDefault(); if(status==='sending')return; setStatus('sending');setError(''); try{ const r=await fetch(INVITE_ENDPOINT,{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify(f)}); const j=await r.json().catch(()=>({})); if(r.ok&&j.ok){setStatus('sent');window.scrollTo({top:0,behavior:'smooth'});} else{setStatus('error');setError(j.error||"We couldn't send that just now. Please try again in a moment.");} }catch(err){setStatus('error');setError("We couldn't send that just now. Please try again in a moment.");} }; const another=()=>{setF(x=>({...init,fromName:x.fromName,fromEmail:x.fromEmail}));setStatus('idle');}; const previewIntro=f.note.trim()||((f.fromName.trim()||'Your friend')+' thought of you for this. Veduta Travel Club is a curated travel club launching Spring 2027: fifteen cities, personally vetted apartments, restaurants, and experiences, and a concierge if you want the trip planned for you.'); return
Invite a Friend

Know someone who should be here?

We'll send them an invitation to pre-register, from the club, with your name on it and a link that takes ten seconds.

{status==='sent' ?
Invitation sent.

{f.toName||f.toEmail} will get an email from Veduta Travel Club in the next few minutes. If they reply, it goes straight to you.

:
set('website')(e.target.value)} tabIndex={-1} autoComplete="off" aria-hidden="true" style={{position:'absolute',left:'-9999px',width:'1px',height:'1px',opacity:0}}/>
{status==='error'&&
{error}
}
One email, from Veduta Travel Club, with your name and email as the reply address. We don't add anyone to a list or send anything else.
}
{status!=='sent'&&
Subject
{(f.fromName.trim()||'Your friend')} invited you to pre-register for Veduta Travel Club

{f.toName.trim()?'Hi '+f.toName.trim()+',':'Hi,'}

{previewIntro}

You can pre-register here. It takes ten seconds and puts you on the founding-member waitlist.

Pre-register

{f.fromName.trim()||'Your friend'}

}
; } window.InvitePage=InvitePage;