/* @component-map * App — Main container, handles view switching and layout * Calendar — Calendar panel with month navigation and date selection * TimeSlots — Time slot selection panel * BookingForm — Client details form * Confirmation — Booking confirmation view * Stepper — Step indicator component * @end-component-map */ import { Calendar } from './components/Calendar.jsx'; import { TimeSlots } from './components/TimeSlots.jsx'; import { BookingForm } from './components/BookingForm.jsx'; import { Confirmation } from './components/Confirmation.jsx'; import { Stepper } from './components/Stepper.jsx'; function App() { const [step, setStep] = useState(0); const [selectedDate, setSelectedDate] = useState(null); const [selectedTime, setSelectedTime] = useState(null); const [form, setForm] = useState({ name: "", email: "", company: "", notes: "" }); const reset = () => { setStep(0); setSelectedDate(null); setSelectedTime(null); setForm({ name: "", email: "", company: "", notes: "" }); }; const onDateSelect = (date) => { setSelectedDate(date); setSelectedTime(null); setStep(1); }; return (
Schedule a 60-minute strategy session
Select a date on the calendar to view available time slots