Skip to content
main.tsx 1.38 KiB
Newer Older
Grant's avatar
Grant committed
import React from "react";
import ReactDOM from "react-dom/client";
import "./index.scss";
import { NextUIProvider } from "@nextui-org/react";
import { ThemeProvider } from "next-themes";
import { RouterProvider, createBrowserRouter } from "react-router-dom";
import { Root } from "./Root.tsx";
import { HomePage } from "./pages/Home/page.tsx";
import { AccountsPage } from "./pages/Accounts/Accounts/page.tsx";
Grant's avatar
Grant committed
import { ServiceSettingsPage } from "./pages/Service/settings.tsx";
import { ToastContainer } from "react-toastify";
Grant's avatar
Grant committed
import { AuditLog } from "./pages/AuditLog/auditlog.tsx";
Grant's avatar
Grant committed
const router = createBrowserRouter(
  [
    {
      path: "/",
      element: <Root />,
      children: [
        {
          path: "/",
          element: <HomePage />,
        },
        {
          path: "/accounts",
          element: <AccountsPage />,
        },
Grant's avatar
Grant committed
        {
          path: "/service/settings",
          element: <ServiceSettingsPage />,
        },
Grant's avatar
Grant committed
        {
          path: "/audit",
          element: <AuditLog />,
        },
Grant's avatar
Grant committed
      ],
    },
  ],
Grant's avatar
Grant committed
    basename: __APP_ROOT__,
Grant's avatar
Grant committed
  }
);
Grant's avatar
Grant committed

ReactDOM.createRoot(document.getElementById("root")!).render(
  <React.StrictMode>
    <NextUIProvider>
      <ThemeProvider defaultTheme="system">
        <RouterProvider router={router} />

        <ToastContainer position="bottom-right" />
Grant's avatar
Grant committed
      </ThemeProvider>
    </NextUIProvider>
  </React.StrictMode>
);