From 90d2f039d11ffe0922ddec1524edcebb91431e83 Mon Sep 17 00:00:00 2001 From: Thomas Mol Date: Thu, 9 Jan 2025 15:53:02 +0100 Subject: [PATCH] fix --- apps/server/src/routes/v1/index.ts | 4 +-- apps/server/src/routes/v1/maintenances/get.ts | 6 ++--- .../src/routes/v1/maintenances/get_all.ts | 6 ++--- .../src/routes/v1/maintenances/index.ts | 12 ++++----- .../server/src/routes/v1/maintenances/post.ts | 4 +-- apps/server/src/routes/v1/maintenances/put.ts | 4 +-- packages/db/src/seed.mts | 25 ++++++++++++++++++- 7 files changed, 42 insertions(+), 19 deletions(-) diff --git a/apps/server/src/routes/v1/index.ts b/apps/server/src/routes/v1/index.ts index 01bdc044..bde6c2ff 100644 --- a/apps/server/src/routes/v1/index.ts +++ b/apps/server/src/routes/v1/index.ts @@ -8,7 +8,7 @@ import { authMiddleware } from "@/libs/middlewares"; import type { Workspace } from "@openstatus/db/src/schema"; import { checkApi } from "./check"; import { incidentsApi } from "./incidents"; -import { maintenanceApi } from "./maintenance"; +import { maintenancesApi } from "./maintenances"; import { monitorsApi } from "./monitors"; import { notificationsApi } from "./notifications"; import { pageSubscribersApi } from "./pageSubscribers"; @@ -136,7 +136,7 @@ api.route("/page", pagesApi); api.route("/status_report", statusReportsApi); api.route("/status_report_update", statusReportUpdatesApi); api.route("/incident", incidentsApi); -api.route("/maintenance", maintenanceApi); +api.route("/maintenance", maintenancesApi); api.route("/notification", notificationsApi); api.route("/page_subscriber", pageSubscribersApi); api.route("/check", checkApi); diff --git a/apps/server/src/routes/v1/maintenances/get.ts b/apps/server/src/routes/v1/maintenances/get.ts index f9c2161d..60dc966c 100644 --- a/apps/server/src/routes/v1/maintenances/get.ts +++ b/apps/server/src/routes/v1/maintenances/get.ts @@ -2,7 +2,7 @@ import { OpenStatusApiError, openApiErrorResponses } from "@/libs/errors"; import { createRoute } from "@hono/zod-openapi"; import { and, db, eq } from "@openstatus/db"; import { maintenance } from "@openstatus/db/src/schema/maintenances"; -import type { maintenanceApi } from "./index"; +import type { maintenancesApi } from "./index"; import { MaintenanceSchema, ParamsSchema } from "./schema"; const getRoute = createRoute({ @@ -26,7 +26,7 @@ const getRoute = createRoute({ }, }); -export function registerGetMaintenance(api: typeof maintenanceApi) { +export function registerGetMaintenance(api: typeof maintenancesApi) { return api.openapi(getRoute, async (c) => { const workspaceId = c.get("workspace").id; const { id } = c.req.valid("param"); @@ -37,7 +37,7 @@ export function registerGetMaintenance(api: typeof maintenanceApi) { }, where: and( eq(maintenance.id, Number(id)), - eq(maintenance.workspaceId, workspaceId), + eq(maintenance.workspaceId, workspaceId) ), }); diff --git a/apps/server/src/routes/v1/maintenances/get_all.ts b/apps/server/src/routes/v1/maintenances/get_all.ts index 22131d20..3aec52a5 100644 --- a/apps/server/src/routes/v1/maintenances/get_all.ts +++ b/apps/server/src/routes/v1/maintenances/get_all.ts @@ -2,7 +2,7 @@ import { openApiErrorResponses } from "@/libs/errors"; import { createRoute } from "@hono/zod-openapi"; import { db, desc, eq } from "@openstatus/db"; import { maintenance } from "@openstatus/db/src/schema/maintenances"; -import type { maintenanceApi } from "./index"; +import type { maintenancesApi } from "./index"; import { MaintenanceSchema } from "./schema"; const getAllRoute = createRoute({ @@ -24,7 +24,7 @@ const getAllRoute = createRoute({ }, }); -export function registerGetAllMaintenances(api: typeof maintenanceApi) { +export function registerGetAllMaintenances(api: typeof maintenancesApi) { return api.openapi(getAllRoute, async (c) => { const workspaceId = c.get("workspace").id; @@ -40,7 +40,7 @@ export function registerGetAllMaintenances(api: typeof maintenanceApi) { _maintenances.map((m) => ({ ...m, monitorIds: m.maintenancesToMonitors.map((mtm) => mtm.monitorId), - })), + })) ); return c.json(data, 200); diff --git a/apps/server/src/routes/v1/maintenances/index.ts b/apps/server/src/routes/v1/maintenances/index.ts index da0ce7b3..8e1bfe35 100644 --- a/apps/server/src/routes/v1/maintenances/index.ts +++ b/apps/server/src/routes/v1/maintenances/index.ts @@ -6,13 +6,13 @@ import { registerGetAllMaintenances } from "./get_all"; import { registerPostMaintenance } from "./post"; import { registerPutMaintenance } from "./put"; -const maintenanceApi = new OpenAPIHono<{ Variables: Variables }>({ +const maintenancesApi = new OpenAPIHono<{ Variables: Variables }>({ defaultHook: handleZodError, }); -registerGetAllMaintenances(maintenanceApi); -registerGetMaintenance(maintenanceApi); -registerPostMaintenance(maintenanceApi); -registerPutMaintenance(maintenanceApi); +registerGetAllMaintenances(maintenancesApi); +registerGetMaintenance(maintenancesApi); +registerPostMaintenance(maintenancesApi); +registerPutMaintenance(maintenancesApi); -export { maintenanceApi }; +export { maintenancesApi }; diff --git a/apps/server/src/routes/v1/maintenances/post.ts b/apps/server/src/routes/v1/maintenances/post.ts index dfa7f39f..965a74eb 100644 --- a/apps/server/src/routes/v1/maintenances/post.ts +++ b/apps/server/src/routes/v1/maintenances/post.ts @@ -7,7 +7,7 @@ import { maintenance, maintenancesToMonitors, } from "@openstatus/db/src/schema/maintenances"; -import type { maintenanceApi } from "./index"; +import type { maintenancesApi } from "./index"; import { MaintenanceSchema } from "./schema"; import { monitor, page } from "@openstatus/db/src/schema"; @@ -39,7 +39,7 @@ const postRoute = createRoute({ }, }); -export function registerPostMaintenance(api: typeof maintenanceApi) { +export function registerPostMaintenance(api: typeof maintenancesApi) { return api.openapi(postRoute, async (c) => { const workspaceId = c.get("workspace").id; const input = c.req.valid("json"); diff --git a/apps/server/src/routes/v1/maintenances/put.ts b/apps/server/src/routes/v1/maintenances/put.ts index bc431618..213919a3 100644 --- a/apps/server/src/routes/v1/maintenances/put.ts +++ b/apps/server/src/routes/v1/maintenances/put.ts @@ -8,7 +8,7 @@ import { maintenancesToMonitors, } from "@openstatus/db/src/schema/maintenances"; import { monitor, page } from "@openstatus/db/src/schema"; -import type { maintenanceApi } from "./index"; +import type { maintenancesApi } from "./index"; import { MaintenanceSchema, ParamsSchema } from "./schema"; const putRoute = createRoute({ @@ -40,7 +40,7 @@ const putRoute = createRoute({ }, }); -export function registerPutMaintenance(api: typeof maintenanceApi) { +export function registerPutMaintenance(api: typeof maintenancesApi) { return api.openapi(putRoute, async (c) => { const workspaceId = c.get("workspace").id; const { id } = c.req.valid("param"); diff --git a/packages/db/src/seed.mts b/packages/db/src/seed.mts index 81a0e5e6..fa9b7f34 100644 --- a/packages/db/src/seed.mts +++ b/packages/db/src/seed.mts @@ -5,6 +5,8 @@ import { drizzle } from "drizzle-orm/libsql"; import { env } from "../env.mjs"; import { incidentTable, + maintenance, + maintenancesToMonitors, monitor, monitorsToPages, monitorsToStatusReport, @@ -20,7 +22,7 @@ import { async function main() { const db = drizzle( - createClient({ url: env.DATABASE_URL, authToken: env.DATABASE_AUTH_TOKEN }), + createClient({ url: env.DATABASE_URL, authToken: env.DATABASE_AUTH_TOKEN }) ); console.log("Seeding database "); await db @@ -185,6 +187,27 @@ async function main() { }) .run(); + await db + .insert(maintenance) + .values({ + id: 1, + workspaceId: 1, + title: "Test Maintenance", + message: "Test message", + from: new Date(), + to: new Date(Date.now() + 1000), + pageId: 1, + }) + .run(); + + await db + .insert(maintenancesToMonitors) + .values({ + maintenanceId: 1, + monitorId: 1, + }) + .run(); + await db.insert(monitorsToStatusReport).values([ { monitorId: 1, -- 2.51.2