import React from 'react';
import ReactDOM from 'react-dom/client';
import { HashRouter, Routes, Route } from 'react-router-dom';
import './styles.css';
import PublicLayout from './components/PublicLayout.jsx';
import PortalLayout from './components/PortalLayout.jsx';
import { Home, About, Sessions, Chapters, GetInvolved, Contact } from './pages/Public.jsx';
import Login from './pages/portal/Login.jsx';
import Dashboard from './pages/portal/Dashboard.jsx';
import Outbox from './pages/portal/Outbox.jsx';
import Planner from './pages/portal/Planner.jsx';
import Tables from './pages/portal/Tables.jsx';
import People from './pages/portal/People.jsx';
import Social from './pages/portal/Social.jsx';
import Tasks from './pages/portal/Tasks.jsx';
import Supplies from './pages/portal/Supplies.jsx';
import Bots from './pages/portal/Bots.jsx';
import Automations from './pages/portal/Automations.jsx';
import Inbox from './pages/portal/Inbox.jsx';
import MeetingFollowup from './pages/portal/MeetingFollowup.jsx';
import Rsvps from './pages/portal/Rsvps.jsx';
import Wrapup from './pages/portal/Wrapup.jsx';
import Impact from './pages/portal/Impact.jsx';
import Deadlines from './pages/portal/Deadlines.jsx';
import Onboarding from './pages/portal/Onboarding.jsx';
import Leads from './pages/portal/Leads.jsx';

ReactDOM.createRoot(document.getElementById('root')).render(
  <HashRouter future={{ v7_startTransition: true, v7_relativeSplatPath: true }}>
    <Routes>
      <Route element={<PublicLayout />}>
        <Route index element={<Home />} />
        <Route path="about" element={<About />} />
        <Route path="sessions" element={<Sessions />} />
        <Route path="chapters" element={<Chapters />} />
        <Route path="get-involved" element={<GetInvolved />} />
        <Route path="contact" element={<Contact />} />
      </Route>
      <Route path="portal/login" element={<Login />} />
      <Route path="portal" element={<PortalLayout />}>
        <Route index element={<Dashboard />} />
        <Route path="outbox" element={<Outbox />} />
        <Route path="sessions" element={<Planner />} />
        <Route path="tables" element={<Tables />} />
        <Route path="people" element={<People />} />
        <Route path="social" element={<Social />} />
        <Route path="tasks" element={<Tasks />} />
        <Route path="supplies" element={<Supplies />} />
        <Route path="bots" element={<Bots />} />
        <Route path="automations" element={<Automations />} />
        <Route path="inbox" element={<Inbox />} />
        <Route path="meeting" element={<MeetingFollowup />} />
        <Route path="rsvps" element={<Rsvps />} />
        <Route path="wrapup" element={<Wrapup />} />
        <Route path="impact" element={<Impact />} />
        <Route path="deadlines" element={<Deadlines />} />
        <Route path="onboarding" element={<Onboarding />} />
        <Route path="leads" element={<Leads />} />
      </Route>
    </Routes>
  </HashRouter>
);
