/* Request-a-Quote drawer (multi-step) */ const { useState: useStateQ, useEffect: useEffectQ } = React; function QuoteDrawer({ open, onClose, copy, locale }) { const [step, setStep] = useStateQ(1); const [service, setService] = useStateQ("trip-support"); const [from, setFrom] = useStateQ("DXB"); const [to, setTo] = useStateQ("LFPB"); const [date, setDate] = useStateQ(""); const [aircraft, setAircraft] = useStateQ(""); const [reg, setReg] = useStateQ(""); const [name, setName] = useStateQ(""); const [company, setCompany] = useStateQ(""); const [email, setEmail] = useStateQ(""); const [phone, setPhone] = useStateQ(""); const [notes, setNotes] = useStateQ(""); const [submitted, setSubmitted] = useStateQ(false); useEffectQ(() => { if (!open) { // reset on close after a short delay so the user doesn't see it flicker const t = setTimeout(() => { setStep(1); setSubmitted(false); }, 400); return () => clearTimeout(t); } }, [open]); const next = () => setStep(s => Math.min(3, s + 1)); const back = () => setStep(s => Math.max(1, s - 1)); const submit = () => setSubmitted(true); return ( <>
> ); } Object.assign(window, { QuoteDrawer });