From 73e16215bd5df6bba6403cae62e04d14e01bacbc Mon Sep 17 00:00:00 2001 From: Alex van Andel Date: Tue, 17 Oct 2023 15:37:04 +0100 Subject: [PATCH] chore: Decouple API from tRPC handlers (#11947) --- apps/api/pages/api/slots/_get.ts | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/apps/api/pages/api/slots/_get.ts b/apps/api/pages/api/slots/_get.ts index ffa3b83d74..6393bc79c1 100644 --- a/apps/api/pages/api/slots/_get.ts +++ b/apps/api/pages/api/slots/_get.ts @@ -3,18 +3,17 @@ import type { NextApiRequest, NextApiResponse } from "next"; import { HttpError } from "@calcom/lib/http-error"; import { defaultResponder } from "@calcom/lib/server"; import { createContext } from "@calcom/trpc/server/createContext"; -import { slotsRouter } from "@calcom/trpc/server/routers/viewer/slots/_router"; +import { getScheduleSchema } from "@calcom/trpc/server/routers/viewer/slots/types"; +import { getAvailableSlots } from "@calcom/trpc/server/routers/viewer/slots/util"; import { TRPCError } from "@trpc/server"; import { getHTTPStatusCodeFromError } from "@trpc/server/http"; async function handler(req: NextApiRequest, res: NextApiResponse) { - /** @see https://trpc.io/docs/server-side-calls */ - const ctx = await createContext({ req, res }); - const caller = slotsRouter.createCaller(ctx); try { + const input = getScheduleSchema.parse(req.query); + return await getAvailableSlots({ ctx: await createContext({ req, res }), input }); // eslint-disable-next-line @typescript-eslint/no-explicit-any - return await caller.getSchedule(req.query as any /* Let tRPC handle this */); } catch (cause) { if (cause instanceof TRPCError) { const statusCode = getHTTPStatusCodeFromError(cause);