import { Alert, List, Text } from '@mantine/core' import { IconAlertTriangle } from '@tabler/icons-react' import { Maintenances, Monitor } from '@/types/config' import { pageConfig } from '@/uptime.config' export default function MaintenanceAlert({ maintenance, groupedMonitor, }: { maintenance: Omit & { monitors: Monitor[] | undefined } groupedMonitor: boolean }) { return ( } title={maintenance.title} color={maintenance.color || 'primary'} mt="md" ml="md" mr="md" withCloseButton={false} style={{ maxWidth: groupedMonitor ? '897px' : '865px', position: 'relative' }} > {/* Date range in top right */} {(maintenance.start || maintenance.end) && (
{maintenance.start && ( <> From: {maintenance.start.toLocaleString()}
)} {maintenance.end && ( <> To: {maintenance.end.toLocaleString()} )}
)} {maintenance.body && {maintenance.body}} {maintenance.monitors && maintenance.monitors.length > 0 && ( <> Affected components: {maintenance.monitors.map((comp, compIdx) => ( {comp.name} ))} )}
) }