update: status page, api

This commit is contained in:
2026-04-08 16:38:11 +04:00
parent 5b3994b042
commit 8f7ac6bb4b
6 changed files with 275 additions and 86 deletions
+4 -2
View File
@@ -31,6 +31,7 @@ const StatusPageBody = t.Object({
monitor_id: t.String(),
group_index: t.Optional(t.Nullable(t.Number())),
display_name: t.Optional(t.Nullable(t.String({ maxLength: 200 }))),
display_mode: t.Optional(t.Nullable(DisplayMode)),
position: t.Optional(t.Number()),
}))),
});
@@ -53,7 +54,7 @@ async function replaceGroupsAndMonitors(
pageId: string,
accountId: string,
groups: { name: string; position?: number }[] | undefined,
monitorsList: { monitor_id: string; group_index?: number | null; display_name?: string | null; position?: number }[] | undefined,
monitorsList: { monitor_id: string; group_index?: number | null; display_name?: string | null; display_mode?: "compact" | "expanded" | null; position?: number }[] | undefined,
) {
if (groups !== undefined) {
await sql`DELETE FROM status_page_groups WHERE status_page_id = ${pageId}`;
@@ -92,12 +93,13 @@ async function replaceGroupsAndMonitors(
monitor_id: m.monitor_id,
group_id: groupId,
display_name: m.display_name ?? null,
display_mode: m.display_mode ?? null,
position: m.position ?? i,
});
}
if (rows.length > 0) {
await sql`
INSERT INTO status_page_monitors ${sql(rows, "status_page_id", "monitor_id", "group_id", "display_name", "position")}
INSERT INTO status_page_monitors ${sql(rows, "status_page_id", "monitor_id", "group_id", "display_name", "display_mode", "position")}
`;
}
}