import { Navigate, type RouteObject, createHashRouter } from "react-router";
import { RouterProvider } from "react-router/dom";
import DashboardLayout from "@/layouts/dashboard";
import AuthGuard from "@/router/components/auth-guard";
import { usePermissionRoutes } from "@/router/hooks";
import { ErrorRoutes } from "@/router/routes/error-routes";
import PageError from "@/pages/sys/error/PageError";
import Login from "@/pages/sys/login/Login";
import { ErrorBoundary } from "react-error-boundary";
import type { AppRouteObject } from "#/router";
const { VITE_APP_HOMEPAGE: HOMEPAGE } = import.meta.env;
const LoginRoute: AppRouteObject = {
path: "/login",
element: (
),
};
const PAGE_NOT_FOUND_ROUTE: AppRouteObject = {
path: "*",
element: ,
};
export default function Router() {
const permissionRoutes = usePermissionRoutes();
const asyncRoutes: AppRouteObject = {
path: "/",
element: (
),
children: [{ index: true, element: }, ...permissionRoutes],
};
const routes = [LoginRoute, asyncRoutes, ErrorRoutes, PAGE_NOT_FOUND_ROUTE];
const router = createHashRouter(routes as unknown as RouteObject[]);
return ;
}