135 lines
4.6 KiB
TypeScript
135 lines
4.6 KiB
TypeScript
import { PERMS } from "@/lib/permission-slugs";
|
|
import {
|
|
anyCapability,
|
|
type HousekeepingRouteDefinition,
|
|
} from "../../foundation/contracts";
|
|
|
|
export const SYSTEM_ROUTE_IDS = [
|
|
"system.access.permissions",
|
|
"system.access.permission-detail",
|
|
"system.configuration.settings",
|
|
"system.configuration.emulator",
|
|
"system.observability.analytics",
|
|
"system.observability.analytics-activity",
|
|
"system.observability.analytics-economy",
|
|
"system.observability.devops",
|
|
"system.observability.devops-errors",
|
|
"system.observability.logs-staff",
|
|
"system.observability.logs-audit",
|
|
"system.observability.logs-chat",
|
|
"system.observability.logs-commands",
|
|
"system.observability.logs-trades",
|
|
"system.operations.alerts",
|
|
"system.operations.command-center",
|
|
"system.operations.maintenance",
|
|
] as const;
|
|
|
|
export type SystemRouteId = (typeof SYSTEM_ROUTE_IDS)[number];
|
|
|
|
export const SYSTEM_ROUTES = [
|
|
{
|
|
id: "system.access.permissions",
|
|
labelKey: "pages.housekeeping.routes.system.access.permissions",
|
|
href: "/ase/system/access/permissions",
|
|
capability: anyCapability(PERMS.PERMISSIONS_MANAGE),
|
|
},
|
|
{
|
|
id: "system.access.permission-detail",
|
|
labelKey: "pages.housekeeping.routes.system.access.permission-detail",
|
|
href: "/ase/system/access/permissions/:id",
|
|
capability: anyCapability(PERMS.PERMISSIONS_MANAGE),
|
|
},
|
|
{
|
|
id: "system.configuration.settings",
|
|
labelKey: "pages.housekeeping.routes.system.configuration.settings",
|
|
href: "/ase/system/configuration/settings",
|
|
capability: anyCapability(PERMS.SETTINGS_VIEW),
|
|
},
|
|
{
|
|
id: "system.configuration.emulator",
|
|
labelKey: "pages.housekeeping.routes.system.configuration.emulator",
|
|
href: "/ase/system/configuration/emulator",
|
|
capability: anyCapability(PERMS.SETTINGS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.analytics",
|
|
labelKey: "pages.housekeeping.routes.system.observability.analytics",
|
|
href: "/ase/system/observability/analytics",
|
|
capability: anyCapability(PERMS.ANALYTICS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.analytics-activity",
|
|
labelKey:
|
|
"pages.housekeeping.routes.system.observability.analytics-activity",
|
|
href: "/ase/system/observability/analytics/activity",
|
|
capability: anyCapability(PERMS.ANALYTICS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.analytics-economy",
|
|
labelKey:
|
|
"pages.housekeeping.routes.system.observability.analytics-economy",
|
|
href: "/ase/system/observability/analytics/economy",
|
|
capability: anyCapability(PERMS.ANALYTICS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.devops",
|
|
labelKey: "pages.housekeeping.routes.system.observability.devops",
|
|
href: "/ase/system/observability/devops",
|
|
capability: anyCapability(PERMS.DEVOPS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.devops-errors",
|
|
labelKey: "pages.housekeeping.routes.system.observability.devops-errors",
|
|
href: "/ase/system/observability/devops/errors",
|
|
capability: anyCapability(PERMS.DEVOPS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.logs-staff",
|
|
labelKey: "pages.housekeeping.routes.system.observability.logs-staff",
|
|
href: "/ase/system/observability/logs/staff",
|
|
capability: anyCapability(PERMS.LOGS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.logs-audit",
|
|
labelKey: "pages.housekeeping.routes.system.observability.logs-audit",
|
|
href: "/ase/system/observability/logs/audit",
|
|
capability: anyCapability(PERMS.LOGS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.logs-chat",
|
|
labelKey: "pages.housekeeping.routes.system.observability.logs-chat",
|
|
href: "/ase/system/observability/logs/chat",
|
|
capability: anyCapability(PERMS.LOGS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.logs-commands",
|
|
labelKey: "pages.housekeeping.routes.system.observability.logs-commands",
|
|
href: "/ase/system/observability/logs/commands",
|
|
capability: anyCapability(PERMS.LOGS_VIEW),
|
|
},
|
|
{
|
|
id: "system.observability.logs-trades",
|
|
labelKey: "pages.housekeeping.routes.system.observability.logs-trades",
|
|
href: "/ase/system/observability/logs/trades",
|
|
capability: anyCapability(PERMS.LOGS_VIEW),
|
|
},
|
|
{
|
|
id: "system.operations.alerts",
|
|
labelKey: "pages.housekeeping.routes.system.operations.alerts",
|
|
href: "/ase/system/operations/alerts",
|
|
capability: anyCapability(PERMS.NOTIFICATIONS_VIEW),
|
|
},
|
|
{
|
|
id: "system.operations.command-center",
|
|
labelKey: "pages.housekeeping.routes.system.operations.command-center",
|
|
href: "/ase/system/operations/command-center",
|
|
capability: anyCapability(PERMS.RCON_EXECUTE),
|
|
},
|
|
{
|
|
id: "system.operations.maintenance",
|
|
labelKey: "pages.housekeeping.routes.system.operations.maintenance",
|
|
href: "/ase/system/operations/maintenance",
|
|
capability: anyCapability(PERMS.SETTINGS_VIEW),
|
|
},
|
|
] as const satisfies readonly HousekeepingRouteDefinition[];
|