diff --git a/ui/src/components/ContentTabs.tsx b/ui/src/components/ContentTabs.tsx index 6444cbe3..9007e281 100644 --- a/ui/src/components/ContentTabs.tsx +++ b/ui/src/components/ContentTabs.tsx @@ -9,8 +9,6 @@ const BASE_TABS = [ { label: 'Exchanges', value: 'exchanges' }, { label: 'Dashboard', value: 'dashboard' }, { label: 'Runtime', value: 'runtime' }, - { label: 'Logs', value: 'logs' }, - { label: 'Config', value: 'config' }, ]; interface ContentTabsProps { diff --git a/ui/src/components/ExecutionDiagram/tabs/LogTab.tsx b/ui/src/components/ExecutionDiagram/tabs/LogTab.tsx index 10d6b4a8..df3c1980 100644 --- a/ui/src/components/ExecutionDiagram/tabs/LogTab.tsx +++ b/ui/src/components/ExecutionDiagram/tabs/LogTab.tsx @@ -107,10 +107,10 @@ export function LogTab({ applicationId, exchangeId, processorId }: LogTabProps) {exchangeId && (
)} diff --git a/ui/src/components/LayoutShell.tsx b/ui/src/components/LayoutShell.tsx index 44b8761f..a6275a1e 100644 --- a/ui/src/components/LayoutShell.tsx +++ b/ui/src/components/LayoutShell.tsx @@ -618,9 +618,9 @@ function LayoutContent() { const appMatch = path.match(/^\/apps\/([^/]+)(?:\/(.+))?$/); if (appMatch) { const [, sAppId, sRouteId] = appMatch; - if (scope.tab === 'config') { - // Config tab: always navigate to /config/:appId (route click → same app config) - navigate(`/config/${sAppId}`, { state }); + if (scope.tab === 'apps') { + // Deployments tab: navigate to /apps/:appId + navigate(`/apps/${sAppId}`, { state }); } else { navigate(sRouteId ? `/${scope.tab}/${sAppId}/${sRouteId}` : `/${scope.tab}/${sAppId}`, { state }); } diff --git a/ui/src/hooks/useScope.ts b/ui/src/hooks/useScope.ts index 1700a774..dc7dfffa 100644 --- a/ui/src/hooks/useScope.ts +++ b/ui/src/hooks/useScope.ts @@ -2,9 +2,9 @@ import { useParams, useNavigate, useLocation } from 'react-router'; import { useCallback } from 'react'; -export type TabKey = 'exchanges' | 'dashboard' | 'runtime' | 'logs' | 'config' | 'apps'; +export type TabKey = 'exchanges' | 'dashboard' | 'runtime' | 'apps'; -const VALID_TABS = new Set(['exchanges', 'dashboard', 'runtime', 'logs', 'config', 'apps']); +const VALID_TABS = new Set(['exchanges', 'dashboard', 'runtime', 'apps']); export interface Scope { tab: TabKey; diff --git a/ui/src/pages/Exchanges/ExchangeHeader.tsx b/ui/src/pages/Exchanges/ExchangeHeader.tsx index 2d373b9c..da53cac6 100644 --- a/ui/src/pages/Exchanges/ExchangeHeader.tsx +++ b/ui/src/pages/Exchanges/ExchangeHeader.tsx @@ -118,7 +118,7 @@ export function ExchangeHeader({ detail, onCorrelatedSelect, onClearSelection }: {formatDuration(detail.durationMs)}