From adc67c52d1bb5546296a43401efe541bfa57e28d Mon Sep 17 00:00:00 2001 From: Romit Date: Mon, 27 Apr 2026 02:00:48 +0530 Subject: [PATCH] refactor: remove cal video trpc surface --- apps/web/pages/api/trpc/calVideo/[trpc].ts | 4 -- packages/trpc/react/shared.ts | 1 - .../trpc/server/routers/viewer/_router.tsx | 2 - .../routers/viewer/calVideo/_router.tsx | 39 ----------------- .../calVideo/getCalVideoRecordings.handler.ts | 26 ----------- .../calVideo/getCalVideoRecordings.schema.ts | 7 --- ...ownloadLinkOfCalVideoRecordings.handler.ts | 38 ---------------- ...DownloadLinkOfCalVideoRecordings.schema.ts | 9 ---- .../calVideo/getMeetingInformation.handler.ts | 43 ------------------- .../calVideo/getMeetingInformation.schema.ts | 7 --- 10 files changed, 176 deletions(-) delete mode 100644 apps/web/pages/api/trpc/calVideo/[trpc].ts delete mode 100644 packages/trpc/server/routers/viewer/calVideo/_router.tsx delete mode 100644 packages/trpc/server/routers/viewer/calVideo/getCalVideoRecordings.handler.ts delete mode 100644 packages/trpc/server/routers/viewer/calVideo/getCalVideoRecordings.schema.ts delete mode 100644 packages/trpc/server/routers/viewer/calVideo/getDownloadLinkOfCalVideoRecordings.handler.ts delete mode 100644 packages/trpc/server/routers/viewer/calVideo/getDownloadLinkOfCalVideoRecordings.schema.ts delete mode 100644 packages/trpc/server/routers/viewer/calVideo/getMeetingInformation.handler.ts delete mode 100644 packages/trpc/server/routers/viewer/calVideo/getMeetingInformation.schema.ts diff --git a/apps/web/pages/api/trpc/calVideo/[trpc].ts b/apps/web/pages/api/trpc/calVideo/[trpc].ts deleted file mode 100644 index d649be8576aa41..00000000000000 --- a/apps/web/pages/api/trpc/calVideo/[trpc].ts +++ /dev/null @@ -1,4 +0,0 @@ -import { createNextApiHandler } from "@calcom/trpc/server/createNextApiHandler"; -import { calVideoRouter } from "@calcom/trpc/server/routers/viewer/calVideo/_router"; - -export default createNextApiHandler(calVideoRouter); diff --git a/packages/trpc/react/shared.ts b/packages/trpc/react/shared.ts index bb51b04dbbde62..b2ce96bccfa008 100644 --- a/packages/trpc/react/shared.ts +++ b/packages/trpc/react/shared.ts @@ -10,7 +10,6 @@ export const ENDPOINTS = [ "appBasecamp3", "bookings", "calendars", - "calVideo", "credentials", "deploymentSetup", "eventTypes", diff --git a/packages/trpc/server/routers/viewer/_router.tsx b/packages/trpc/server/routers/viewer/_router.tsx index d28acda561e8b0..4071bff2b72a1f 100644 --- a/packages/trpc/server/routers/viewer/_router.tsx +++ b/packages/trpc/server/routers/viewer/_router.tsx @@ -10,7 +10,6 @@ import { authRouter } from "./auth/_router"; import { availabilityRouter } from "./availability/_router"; import { bookingsRouter } from "./bookings/_router"; import { calendarsRouter } from "./calendars/_router"; -import { calVideoRouter } from "./calVideo/_router"; import { credentialsRouter } from "./credentials/_router"; import { deploymentSetupRouter } from "./deploymentSetup/_router"; import { eventTypesRouter } from "./eventTypes/_router"; @@ -36,7 +35,6 @@ export const viewerRouter = router({ deploymentSetup: deploymentSetupRouter, bookings: bookingsRouter, calendars: calendarsRouter, - calVideo: calVideoRouter, credentials: credentialsRouter, eventTypes: eventTypesRouter, eventTypesHeavy: heavyEventTypesRouter, diff --git a/packages/trpc/server/routers/viewer/calVideo/_router.tsx b/packages/trpc/server/routers/viewer/calVideo/_router.tsx deleted file mode 100644 index 5a6e050dbc9469..00000000000000 --- a/packages/trpc/server/routers/viewer/calVideo/_router.tsx +++ /dev/null @@ -1,39 +0,0 @@ -import authedProcedure from "../../../procedures/authedProcedure"; -import { router } from "../../../trpc"; -import { ZGetCalVideoRecordingsInputSchema } from "./getCalVideoRecordings.schema"; -import { ZGetDownloadLinkOfCalVideoRecordingsInputSchema } from "./getDownloadLinkOfCalVideoRecordings.schema"; -import { ZGetMeetingInformationInputSchema } from "./getMeetingInformation.schema"; - -type CalVideoRouterHandlerCache = { - getCalVideoRecordings?: typeof import("./getCalVideoRecordings.handler").getCalVideoRecordingsHandler; - getDownloadLinkOfCalVideoRecordings?: typeof import("./getDownloadLinkOfCalVideoRecordings.handler").getDownloadLinkOfCalVideoRecordingsHandler; - getMeetingInformation?: typeof import("./getMeetingInformation.handler").getMeetingInformationHandler; -}; - -export const calVideoRouter = router({ - getCalVideoRecordings: authedProcedure - .input(ZGetCalVideoRecordingsInputSchema) - .query(async ({ ctx, input }) => { - const { getCalVideoRecordingsHandler } = await import("./getCalVideoRecordings.handler"); - - return getCalVideoRecordingsHandler({ ctx, input }); - }), - - getDownloadLinkOfCalVideoRecordings: authedProcedure - .input(ZGetDownloadLinkOfCalVideoRecordingsInputSchema) - .query(async ({ ctx, input }) => { - const { getDownloadLinkOfCalVideoRecordingsHandler } = await import( - "./getDownloadLinkOfCalVideoRecordings.handler" - ); - - return getDownloadLinkOfCalVideoRecordingsHandler({ ctx, input }); - }), - - getMeetingInformation: authedProcedure - .input(ZGetMeetingInformationInputSchema) - .query(async ({ ctx, input }) => { - const { getMeetingInformationHandler } = await import("./getMeetingInformation.handler"); - - return getMeetingInformationHandler({ ctx, input }); - }), -}); diff --git a/packages/trpc/server/routers/viewer/calVideo/getCalVideoRecordings.handler.ts b/packages/trpc/server/routers/viewer/calVideo/getCalVideoRecordings.handler.ts deleted file mode 100644 index 3a6a22f93aa4c6..00000000000000 --- a/packages/trpc/server/routers/viewer/calVideo/getCalVideoRecordings.handler.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { getRecordingsOfCalVideoByRoomName } from "@calcom/features/conferencing/lib/videoClient"; -import type { TrpcSessionUser } from "@calcom/trpc/server/types"; - -import { TRPCError } from "@trpc/server"; - -import type { TGetCalVideoRecordingsInputSchema } from "./getCalVideoRecordings.schema"; - -type GetCalVideoRecordingsOptions = { - ctx: { - user: NonNullable; - }; - input: TGetCalVideoRecordingsInputSchema; -}; - -export const getCalVideoRecordingsHandler = async ({ ctx: _ctx, input }: GetCalVideoRecordingsOptions) => { - const { roomName } = input; - - try { - const res = await getRecordingsOfCalVideoByRoomName(roomName); - return res; - } catch (err) { - throw new TRPCError({ - code: "BAD_REQUEST", - }); - } -}; diff --git a/packages/trpc/server/routers/viewer/calVideo/getCalVideoRecordings.schema.ts b/packages/trpc/server/routers/viewer/calVideo/getCalVideoRecordings.schema.ts deleted file mode 100644 index e151d05402b641..00000000000000 --- a/packages/trpc/server/routers/viewer/calVideo/getCalVideoRecordings.schema.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { z } from "zod"; - -export const ZGetCalVideoRecordingsInputSchema = z.object({ - roomName: z.string(), -}); - -export type TGetCalVideoRecordingsInputSchema = z.infer; diff --git a/packages/trpc/server/routers/viewer/calVideo/getDownloadLinkOfCalVideoRecordings.handler.ts b/packages/trpc/server/routers/viewer/calVideo/getDownloadLinkOfCalVideoRecordings.handler.ts deleted file mode 100644 index e6f3d14db04974..00000000000000 --- a/packages/trpc/server/routers/viewer/calVideo/getDownloadLinkOfCalVideoRecordings.handler.ts +++ /dev/null @@ -1,38 +0,0 @@ -/// -import { getDownloadLinkOfCalVideoByRecordingId } from "@calcom/features/conferencing/lib/videoClient"; -import { IS_SELF_HOSTED } from "@calcom/lib/constants"; - -import { TRPCError } from "@trpc/server"; - -import type { WithSession } from "../../../createContext"; -import type { TGetDownloadLinkOfCalVideoRecordingsInputSchema } from "./getDownloadLinkOfCalVideoRecordings.schema"; - -type GetDownloadLinkOfCalVideoRecordingsHandlerOptions = { - ctx: WithSession; - input: TGetDownloadLinkOfCalVideoRecordingsInputSchema; -}; - -export const getDownloadLinkOfCalVideoRecordingsHandler = async ({ - input, - ctx, -}: GetDownloadLinkOfCalVideoRecordingsHandlerOptions) => { - const { recordingId } = input; - const { session } = ctx; - - const isDownloadAllowed = IS_SELF_HOSTED || session?.user?.belongsToActiveTeam; - - if (!isDownloadAllowed) { - throw new TRPCError({ - code: "FORBIDDEN", - }); - } - - try { - const res = await getDownloadLinkOfCalVideoByRecordingId(recordingId); - return res; - } catch (err) { - throw new TRPCError({ - code: "BAD_REQUEST", - }); - } -}; diff --git a/packages/trpc/server/routers/viewer/calVideo/getDownloadLinkOfCalVideoRecordings.schema.ts b/packages/trpc/server/routers/viewer/calVideo/getDownloadLinkOfCalVideoRecordings.schema.ts deleted file mode 100644 index fabb8d6af409d0..00000000000000 --- a/packages/trpc/server/routers/viewer/calVideo/getDownloadLinkOfCalVideoRecordings.schema.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { z } from "zod"; - -export const ZGetDownloadLinkOfCalVideoRecordingsInputSchema = z.object({ - recordingId: z.string(), -}); - -export type TGetDownloadLinkOfCalVideoRecordingsInputSchema = z.infer< - typeof ZGetDownloadLinkOfCalVideoRecordingsInputSchema ->; diff --git a/packages/trpc/server/routers/viewer/calVideo/getMeetingInformation.handler.ts b/packages/trpc/server/routers/viewer/calVideo/getMeetingInformation.handler.ts deleted file mode 100644 index 153eb26be2d8da..00000000000000 --- a/packages/trpc/server/routers/viewer/calVideo/getMeetingInformation.handler.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { VideoApiAdapterMap } from "@calcom/app-store/video.adapters.generated"; -import type { TrpcSessionUser } from "@calcom/trpc/server/types"; - -import { TRPCError } from "@trpc/server"; - -import type { TGetMeetingInformationInputSchema } from "./getMeetingInformation.schema"; - -type GetMeetingInformationOptions = { - ctx: { - user: NonNullable; - }; - input: TGetMeetingInformationInputSchema; -}; - -export const getMeetingInformationHandler = async ({ ctx: _ctx, input }: GetMeetingInformationOptions) => { - const { roomName } = input; - - try { - const dailyVideoAdapterImport = VideoApiAdapterMap.dailyvideo; - if (!dailyVideoAdapterImport) { - throw new TRPCError({ - code: "BAD_REQUEST", - message: "Daily video adapter not available", - }); - } - - const dailyVideoAdapterModule = await dailyVideoAdapterImport; - const videoApiAdapter = dailyVideoAdapterModule.default(); - - if (!videoApiAdapter || !videoApiAdapter.getMeetingInformation) { - throw new TRPCError({ - code: "BAD_REQUEST", - message: "Meeting information feature not available", - }); - } - const res = await videoApiAdapter.getMeetingInformation(roomName); - return res; - } catch (err) { - throw new TRPCError({ - code: "BAD_REQUEST", - }); - } -}; diff --git a/packages/trpc/server/routers/viewer/calVideo/getMeetingInformation.schema.ts b/packages/trpc/server/routers/viewer/calVideo/getMeetingInformation.schema.ts deleted file mode 100644 index e8b300c33496c8..00000000000000 --- a/packages/trpc/server/routers/viewer/calVideo/getMeetingInformation.schema.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { z } from "zod"; - -export const ZGetMeetingInformationInputSchema = z.object({ - roomName: z.string(), -}); - -export type TGetMeetingInformationInputSchema = z.infer;