diff --git a/components/MaintenanceAlert.tsx b/components/MaintenanceAlert.tsx index 2c514e3..40f9d20 100644 --- a/components/MaintenanceAlert.tsx +++ b/components/MaintenanceAlert.tsx @@ -6,7 +6,7 @@ export default function MaintenanceAlert({ maintenance, style, }: { - maintenance: Omit & { monitors: MonitorTarget[] } + maintenance: Omit & { monitors?: MonitorTarget[] } style?: React.CSSProperties }) { return ( @@ -36,7 +36,7 @@ export default function MaintenanceAlert({ {maintenance.body} - {maintenance.monitors.length > 0 && ( + {maintenance.monitors && maintenance.monitors.length > 0 && ( <> Affected components: diff --git a/components/OverallStatus.tsx b/components/OverallStatus.tsx index 2c7d5d0..3c42ed5 100644 --- a/components/OverallStatus.tsx +++ b/components/OverallStatus.tsx @@ -58,7 +58,7 @@ export default function OverallStatus({ }) const now = new Date() - let filteredMaintenances: (Omit & { monitors: MonitorTarget[] })[] = + let filteredMaintenances: (Omit & { monitors?: MonitorTarget[] })[] = maintenances .filter((m) => now >= new Date(m.start) && (!m.end || now <= new Date(m.end))) .map((maintenance) => ({ diff --git a/types/config.ts b/types/config.ts index 53fa176..a18be28 100644 --- a/types/config.ts +++ b/types/config.ts @@ -5,7 +5,7 @@ export type PageConfig = { } export type MaintenanceConfig = { - monitors: string[] + monitors?: string[] title?: string body: string start: number | string diff --git a/uptime.config.ts b/uptime.config.ts index c3bcbea..65e9356 100644 --- a/uptime.config.ts +++ b/uptime.config.ts @@ -126,7 +126,7 @@ const workerConfig: WorkerConfig = { // const maintenances: MaintenanceConfig[] = [] const maintenances: MaintenanceConfig[] = [ { - // Monitor IDs to be affected by this maintenance + // [Optional] Monitor IDs to be affected by this maintenance monitors: ['foo_monitor', 'bar_monitor'], // [Optional] default to "Scheduled Maintenance" if not specified title: 'Test Maintenance', diff --git a/worker/src/index.ts b/worker/src/index.ts index 204f16b..7ee17cd 100644 --- a/worker/src/index.ts +++ b/worker/src/index.ts @@ -38,7 +38,7 @@ const Worker = { new Date(timeNow * 1000) >= new Date(m.start) && (!m.end || new Date(timeNow * 1000) <= new Date(m.end)) ) - .map((e) => e.monitors) + .map((e) => (e.monitors || [])) .flat() if (maintenanceList.includes(monitor.id)) {