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[];