diff --git a/ui/src/pages/Alerts/AllAlertsPage.tsx b/ui/src/pages/Alerts/AllAlertsPage.tsx
new file mode 100644
index 00000000..22aec1f6
--- /dev/null
+++ b/ui/src/pages/Alerts/AllAlertsPage.tsx
@@ -0,0 +1,3 @@
+export default function AllAlertsPage() {
+ return
AllAlertsPage — coming soon
;
+}
diff --git a/ui/src/pages/Alerts/HistoryPage.tsx b/ui/src/pages/Alerts/HistoryPage.tsx
new file mode 100644
index 00000000..6807b6d4
--- /dev/null
+++ b/ui/src/pages/Alerts/HistoryPage.tsx
@@ -0,0 +1,3 @@
+export default function HistoryPage() {
+ return HistoryPage — coming soon
;
+}
diff --git a/ui/src/pages/Alerts/InboxPage.tsx b/ui/src/pages/Alerts/InboxPage.tsx
new file mode 100644
index 00000000..10f561b6
--- /dev/null
+++ b/ui/src/pages/Alerts/InboxPage.tsx
@@ -0,0 +1,3 @@
+export default function InboxPage() {
+ return InboxPage — coming soon
;
+}
diff --git a/ui/src/pages/Alerts/RuleEditor/RuleEditorWizard.tsx b/ui/src/pages/Alerts/RuleEditor/RuleEditorWizard.tsx
new file mode 100644
index 00000000..26c55fc7
--- /dev/null
+++ b/ui/src/pages/Alerts/RuleEditor/RuleEditorWizard.tsx
@@ -0,0 +1,3 @@
+export default function RuleEditorWizard() {
+ return RuleEditorWizard — coming soon
;
+}
diff --git a/ui/src/pages/Alerts/RulesListPage.tsx b/ui/src/pages/Alerts/RulesListPage.tsx
new file mode 100644
index 00000000..ee769393
--- /dev/null
+++ b/ui/src/pages/Alerts/RulesListPage.tsx
@@ -0,0 +1,3 @@
+export default function RulesListPage() {
+ return RulesListPage — coming soon
;
+}
diff --git a/ui/src/pages/Alerts/SilencesPage.tsx b/ui/src/pages/Alerts/SilencesPage.tsx
new file mode 100644
index 00000000..156c8960
--- /dev/null
+++ b/ui/src/pages/Alerts/SilencesPage.tsx
@@ -0,0 +1,3 @@
+export default function SilencesPage() {
+ return SilencesPage — coming soon
;
+}
diff --git a/ui/src/router.tsx b/ui/src/router.tsx
index 3144e02f..7bee0798 100644
--- a/ui/src/router.tsx
+++ b/ui/src/router.tsx
@@ -23,6 +23,12 @@ const OutboundConnectionEditor = lazy(() => import('./pages/Admin/OutboundConnec
const SensitiveKeysPage = lazy(() => import('./pages/Admin/SensitiveKeysPage'));
const AppsTab = lazy(() => import('./pages/AppsTab/AppsTab'));
const SwaggerPage = lazy(() => import('./pages/Swagger/SwaggerPage'));
+const InboxPage = lazy(() => import('./pages/Alerts/InboxPage'));
+const AllAlertsPage = lazy(() => import('./pages/Alerts/AllAlertsPage'));
+const HistoryPage = lazy(() => import('./pages/Alerts/HistoryPage'));
+const RulesListPage = lazy(() => import('./pages/Alerts/RulesListPage'));
+const RuleEditorWizard = lazy(() => import('./pages/Alerts/RuleEditor/RuleEditorWizard'));
+const SilencesPage = lazy(() => import('./pages/Alerts/SilencesPage'));
function SuspenseWrapper({ children }: { children: React.ReactNode }) {
return (
@@ -75,6 +81,16 @@ export const router = createBrowserRouter([
{ path: 'apps/new', element: },
{ path: 'apps/:appId', element: },
+ // Alerts
+ { path: 'alerts', element: },
+ { path: 'alerts/inbox', element: },
+ { path: 'alerts/all', element: },
+ { path: 'alerts/history', element: },
+ { path: 'alerts/rules', element: },
+ { path: 'alerts/rules/new', element: },
+ { path: 'alerts/rules/:id', element: },
+ { path: 'alerts/silences', element: },
+
// Admin (ADMIN role required)
{
element: ,