feat(channel-monitor): redesign user dashboard as card grid
Reference check-cx UI: INTELLIGENCE MONITOR hero + 3-column card grid with 60-point timeline bars. Backend: - Add PrimaryPingLatencyMs + Timeline[60] to UserMonitorView - ListRecentHistoryForMonitors: batch CTE + ROW_NUMBER() window query - indexLatestByModel / indexAvailabilityByModel helpers Frontend: - 7 new components: ProviderIcon, MonitorMetricPair, MonitorAvailabilityRow, MonitorTimeline, MonitorHero, MonitorCard, MonitorCardGrid - ChannelStatusView 381→~180 lines (delegated to subcomponents) - AbortController reload concurrency protection - HSL 0-120° availability color mapping - Replace emoji with Icon component (bolt / globe) - i18n: monitorCommon.* shared namespace, channelStatus.hero.* Bump VERSION to 0.1.114.24
This commit is contained in:
@@ -867,7 +867,22 @@ export default {
|
||||
},
|
||||
extraModelsHeader: 'Extra Models',
|
||||
extraModelsEmpty: 'No extra models',
|
||||
latencyEmpty: '-'
|
||||
latencyEmpty: '-',
|
||||
availabilityPrefix: 'Availability',
|
||||
dialogLatency: 'Dialog Latency',
|
||||
endpointPing: 'Endpoint PING',
|
||||
history60pts: 'HISTORY ({n} PTS)',
|
||||
nextUpdateIn: 'NEXT UPDATE IN {n}s',
|
||||
past: 'PAST',
|
||||
now: 'NOW',
|
||||
maintenancePaused: 'Maintenance · timeline paused',
|
||||
extraModelsCount: '+ {n} models',
|
||||
pollEvery: '{n}s polling',
|
||||
updatedAt: 'Updated {time}',
|
||||
relativeSecondsAgo: '{n}s ago',
|
||||
relativeMinutesAgo: '{n}m ago',
|
||||
relativeHoursAgo: '{n}h ago',
|
||||
relativeDaysAgo: '{n}d ago'
|
||||
},
|
||||
|
||||
// Channel Status (user-facing read-only view)
|
||||
@@ -880,6 +895,22 @@ export default {
|
||||
detailLoadError: 'Failed to load channel detail',
|
||||
detailTitle: 'Channel Detail',
|
||||
closeDetail: 'Close',
|
||||
hero: {
|
||||
breadcrumb: 'CHANNEL · STATUS',
|
||||
title: 'INTELLIGENCE MONITOR',
|
||||
subtitleZh: 'Real-time tracking of availability, latency and status for leading AI endpoints.',
|
||||
subtitleEn: 'Advanced performance metrics for next-gen intelligence.'
|
||||
},
|
||||
windowTab: {
|
||||
'7d': '7 days',
|
||||
'15d': '15 days',
|
||||
'30d': '30 days'
|
||||
},
|
||||
overall: {
|
||||
operational: 'OPERATIONAL',
|
||||
degraded: 'DEGRADED',
|
||||
unavailable: 'UNAVAILABLE'
|
||||
},
|
||||
columns: {
|
||||
name: 'Name',
|
||||
provider: 'Provider',
|
||||
|
||||
Reference in New Issue
Block a user