set monitors to be optional

pull/101/head
lyc8503 2025-05-01 00:45:18 +08:00
parent f983202a96
commit 0369626268
5 changed files with 6 additions and 6 deletions

View File

@ -6,7 +6,7 @@ export default function MaintenanceAlert({
maintenance,
style,
}: {
maintenance: Omit<MaintenanceConfig, 'monitors'> & { monitors: MonitorTarget[] }
maintenance: Omit<MaintenanceConfig, 'monitors'> & { monitors?: MonitorTarget[] }
style?: React.CSSProperties
}) {
return (
@ -36,7 +36,7 @@ export default function MaintenanceAlert({
</div>
<Text>{maintenance.body}</Text>
{maintenance.monitors.length > 0 && (
{maintenance.monitors && maintenance.monitors.length > 0 && (
<>
<Text mt="xs">
<b>Affected components:</b>

View File

@ -58,7 +58,7 @@ export default function OverallStatus({
})
const now = new Date()
let filteredMaintenances: (Omit<MaintenanceConfig, 'monitors'> & { monitors: MonitorTarget[] })[] =
let filteredMaintenances: (Omit<MaintenanceConfig, 'monitors'> & { monitors?: MonitorTarget[] })[] =
maintenances
.filter((m) => now >= new Date(m.start) && (!m.end || now <= new Date(m.end)))
.map((maintenance) => ({

View File

@ -5,7 +5,7 @@ export type PageConfig = {
}
export type MaintenanceConfig = {
monitors: string[]
monitors?: string[]
title?: string
body: string
start: number | string

View File

@ -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',

View File

@ -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)) {