Files
medusa-store/packages/admin-ui/ui/src/App.tsx
2023-03-03 10:09:16 +01:00

46 lines
1.2 KiB
TypeScript

import { lazy, Suspense } from "react"
import {
createBrowserRouter,
createRoutesFromElements,
Route,
RouterProvider,
} from "react-router-dom"
import Spinner from "./components/atoms/spinner"
const NotFound = lazy(() => import("./pages/404"))
const Dashboard = lazy(() => import("./pages/a"))
const IndexPage = lazy(() => import("./pages/index"))
const InvitePage = lazy(() => import("./pages/invite"))
const LoginPage = lazy(() => import("./pages/login"))
const ResetPasswordPage = lazy(() => import("./pages/reset-password"))
const router = createBrowserRouter(
createRoutesFromElements(
<>
<Route path="/" element={<IndexPage />} />
<Route path="a/*" element={<Dashboard />} />
<Route path="invite" element={<InvitePage />} />
<Route path="login" element={<LoginPage />} />
<Route path="reset-password" element={<ResetPasswordPage />} />
<Route path="*" element={<NotFound />} />
</>
),
{
basename: __BASE__,
}
)
const Loading = () => (
<div className="bg-grey-5 text-grey-90 flex h-screen w-full items-center justify-center">
<Spinner variant="secondary" />
</div>
)
const App = () => (
<Suspense fallback={<Loading />}>
<RouterProvider router={router} />
</Suspense>
)
export default App