86 lines
2.3 KiB
TypeScript
86 lines
2.3 KiB
TypeScript
|
import { lazy } from "react";
|
||
|
import type { IndexRouteObject, RouteObject } from "react-router-dom";
|
||
|
|
||
|
import { ErrorPage } from "./root/ErrorPage";
|
||
|
import { Root } from "./root/Root";
|
||
|
import { environment } from "./environment";
|
||
|
|
||
|
const DeviceActivity = lazy(() => import("./account-security/DeviceActivity"));
|
||
|
const LinkedAccounts = lazy(() => import("./account-security/LinkedAccounts"));
|
||
|
const SigningIn = lazy(() => import("./account-security/SigningIn"));
|
||
|
const Applications = lazy(() => import("./applications/Applications"));
|
||
|
const Groups = lazy(() => import("./groups/Groups"));
|
||
|
const PersonalInfo = lazy(() => import("./personal-info/PersonalInfo"));
|
||
|
const Resources = lazy(() => import("./resources/Resources"));
|
||
|
const ContentComponent = lazy(() => import("./content/ContentComponent"));
|
||
|
const AccountExtraPage = lazy(() => import("./d4science-page/AccountExtraPage"));
|
||
|
|
||
|
export const DeviceActivityRoute: RouteObject = {
|
||
|
path: "account-security/device-activity",
|
||
|
element: <DeviceActivity />,
|
||
|
};
|
||
|
|
||
|
export const LinkedAccountsRoute: RouteObject = {
|
||
|
path: "account-security/linked-accounts",
|
||
|
element: <LinkedAccounts />,
|
||
|
};
|
||
|
|
||
|
export const SigningInRoute: RouteObject = {
|
||
|
path: "account-security/signing-in",
|
||
|
element: <SigningIn />,
|
||
|
};
|
||
|
|
||
|
export const ApplicationsRoute: RouteObject = {
|
||
|
path: "applications",
|
||
|
element: <Applications />,
|
||
|
};
|
||
|
|
||
|
export const GroupsRoute: RouteObject = {
|
||
|
path: "groups",
|
||
|
element: <Groups />,
|
||
|
};
|
||
|
|
||
|
export const ResourcesRoute: RouteObject = {
|
||
|
path: "resources",
|
||
|
element: <Resources />,
|
||
|
};
|
||
|
|
||
|
export type ContentComponentParams = {
|
||
|
componentId: string;
|
||
|
};
|
||
|
|
||
|
export const ContentRoute: RouteObject = {
|
||
|
path: "content/:componentId",
|
||
|
element: <ContentComponent />,
|
||
|
};
|
||
|
|
||
|
export const PersonalInfoRoute: IndexRouteObject = {
|
||
|
index: true,
|
||
|
element: <PersonalInfo />,
|
||
|
};
|
||
|
|
||
|
export const AccountExtraPageRoute: RouteObject = {
|
||
|
path: "d4science-page/account-extra-page",
|
||
|
element: <AccountExtraPage />,
|
||
|
};
|
||
|
|
||
|
export const RootRoute: RouteObject = {
|
||
|
path: new URL(environment.baseUrl).pathname,
|
||
|
element: <Root />,
|
||
|
errorElement: <ErrorPage />,
|
||
|
children: [
|
||
|
PersonalInfoRoute,
|
||
|
DeviceActivityRoute,
|
||
|
LinkedAccountsRoute,
|
||
|
SigningInRoute,
|
||
|
ApplicationsRoute,
|
||
|
GroupsRoute,
|
||
|
PersonalInfoRoute,
|
||
|
ResourcesRoute,
|
||
|
ContentRoute,
|
||
|
AccountExtraPageRoute
|
||
|
],
|
||
|
};
|
||
|
|
||
|
export const routes: RouteObject[] = [RootRoute];
|