From dd27d077ca389d4beb5c5120085ae0bb82608db0 Mon Sep 17 00:00:00 2001 From: Benny Joo Date: Wed, 17 Dec 2025 22:24:44 +0900 Subject: [PATCH] refactor: Create TravelScheduleRepository and PrismaOrgMembershipRepository in `/features` (#25853) * move repo to travelSchedule * update imports * mv * update imports --- apps/web/app/cache/travelSchedule.ts | 2 +- packages/features/bookings/lib/handleCancelBooking.ts | 2 +- .../lib/handleSeats/reschedule/rescheduleSeatedBooking.ts | 2 +- .../membership/repositories}/PrismaOrgMembershipRepository.ts | 2 +- .../travelSchedule/repositories/TravelScheduleRepository.ts} | 0 packages/platform/libraries/bookings.ts | 2 +- packages/trpc/server/routers/viewer/bookings/confirm.handler.ts | 2 +- .../viewer/travelSchedules/getTravelSchedules.handler.ts | 2 +- 8 files changed, 7 insertions(+), 7 deletions(-) rename packages/{lib/server/repository => features/membership/repositories}/PrismaOrgMembershipRepository.ts (97%) rename packages/{lib/server/repository/travelSchedule.ts => features/travelSchedule/repositories/TravelScheduleRepository.ts} (100%) diff --git a/apps/web/app/cache/travelSchedule.ts b/apps/web/app/cache/travelSchedule.ts index 87888c95e7..058fcfd014 100644 --- a/apps/web/app/cache/travelSchedule.ts +++ b/apps/web/app/cache/travelSchedule.ts @@ -2,8 +2,8 @@ import { revalidateTag } from "next/cache"; +import { TravelScheduleRepository } from "@calcom/features/travelSchedule/repositories/TravelScheduleRepository"; import { NEXTJS_CACHE_TTL } from "@calcom/lib/constants"; -import { TravelScheduleRepository } from "@calcom/lib/server/repository/travelSchedule"; import { unstable_cache } from "@calcom/lib/unstable_cache"; const CACHE_TAGS = { diff --git a/packages/features/bookings/lib/handleCancelBooking.ts b/packages/features/bookings/lib/handleCancelBooking.ts index be5f016a6b..36648c0643 100644 --- a/packages/features/bookings/lib/handleCancelBooking.ts +++ b/packages/features/bookings/lib/handleCancelBooking.ts @@ -14,6 +14,7 @@ import { getBookerBaseUrl } from "@calcom/features/ee/organizations/lib/getBooke import { getAllWorkflowsFromEventType } from "@calcom/features/ee/workflows/lib/getAllWorkflowsFromEventType"; import { sendCancelledReminders } from "@calcom/features/ee/workflows/lib/reminders/reminderScheduler"; import { WorkflowRepository } from "@calcom/features/ee/workflows/repositories/WorkflowRepository"; +import { PrismaOrgMembershipRepository } from "@calcom/features/membership/repositories/PrismaOrgMembershipRepository"; import type { GetSubscriberOptions } from "@calcom/features/webhooks/lib/getWebhooks"; import getWebhooks from "@calcom/features/webhooks/lib/getWebhooks"; import { @@ -30,7 +31,6 @@ import { parseRecurringEvent } from "@calcom/lib/isRecurringEvent"; import logger from "@calcom/lib/logger"; import { safeStringify } from "@calcom/lib/safeStringify"; import { getTranslation } from "@calcom/lib/server/i18n"; -import { PrismaOrgMembershipRepository } from "@calcom/lib/server/repository/PrismaOrgMembershipRepository"; import { getTimeFormatStringFromUserTimeFormat } from "@calcom/lib/timeFormat"; // TODO: Prisma import would be used from DI in a followup PR when we remove `handler` export import prisma from "@calcom/prisma"; diff --git a/packages/features/bookings/lib/handleSeats/reschedule/rescheduleSeatedBooking.ts b/packages/features/bookings/lib/handleSeats/reschedule/rescheduleSeatedBooking.ts index 109ee3f33b..446c6a9aa2 100644 --- a/packages/features/bookings/lib/handleSeats/reschedule/rescheduleSeatedBooking.ts +++ b/packages/features/bookings/lib/handleSeats/reschedule/rescheduleSeatedBooking.ts @@ -1,8 +1,8 @@ import dayjs from "@calcom/dayjs"; import EventManager from "@calcom/features/bookings/lib/EventManager"; import { refreshCredentials } from "@calcom/features/bookings/lib/getAllCredentialsForUsersOnEvent/refreshCredentials"; +import { PrismaOrgMembershipRepository } from "@calcom/features/membership/repositories/PrismaOrgMembershipRepository"; import { HttpError } from "@calcom/lib/http-error"; -import { PrismaOrgMembershipRepository } from "@calcom/lib/server/repository/PrismaOrgMembershipRepository"; import prisma from "@calcom/prisma"; import { BookingStatus } from "@calcom/prisma/enums"; import type { Person } from "@calcom/types/Calendar"; diff --git a/packages/lib/server/repository/PrismaOrgMembershipRepository.ts b/packages/features/membership/repositories/PrismaOrgMembershipRepository.ts similarity index 97% rename from packages/lib/server/repository/PrismaOrgMembershipRepository.ts rename to packages/features/membership/repositories/PrismaOrgMembershipRepository.ts index f70ce8cb93..8c21aa49c9 100644 --- a/packages/lib/server/repository/PrismaOrgMembershipRepository.ts +++ b/packages/features/membership/repositories/PrismaOrgMembershipRepository.ts @@ -1,4 +1,4 @@ -import prisma from "@calcom/prisma"; +import { prisma } from "@calcom/prisma"; import { MembershipRole } from "@calcom/prisma/enums"; export class PrismaOrgMembershipRepository { diff --git a/packages/lib/server/repository/travelSchedule.ts b/packages/features/travelSchedule/repositories/TravelScheduleRepository.ts similarity index 100% rename from packages/lib/server/repository/travelSchedule.ts rename to packages/features/travelSchedule/repositories/TravelScheduleRepository.ts diff --git a/packages/platform/libraries/bookings.ts b/packages/platform/libraries/bookings.ts index 03bece8a36..a72b5abfcd 100644 --- a/packages/platform/libraries/bookings.ts +++ b/packages/platform/libraries/bookings.ts @@ -10,7 +10,7 @@ export type { InstantBookingCreateResult, RegularBookingCreateResult, } from "@calcom/features/bookings/lib/dto/types"; -export { PrismaOrgMembershipRepository } from "@calcom/lib/server/repository/PrismaOrgMembershipRepository"; +export { PrismaOrgMembershipRepository } from "@calcom/features/membership/repositories/PrismaOrgMembershipRepository"; export { addGuestsHandler } from "@calcom/trpc/server/routers/viewer/bookings/addGuests.handler"; export { BookingEmailAndSmsTaskService } from "@calcom/features/bookings/lib/tasker/BookingEmailAndSmsTaskService"; export { BookingEmailAndSmsSyncTasker } from "@calcom/features/bookings/lib/tasker/BookingEmailAndSmsSyncTasker"; diff --git a/packages/trpc/server/routers/viewer/bookings/confirm.handler.ts b/packages/trpc/server/routers/viewer/bookings/confirm.handler.ts index 763c415cfa..af6c1d79c8 100644 --- a/packages/trpc/server/routers/viewer/bookings/confirm.handler.ts +++ b/packages/trpc/server/routers/viewer/bookings/confirm.handler.ts @@ -12,6 +12,7 @@ import { getBookerBaseUrl } from "@calcom/features/ee/organizations/lib/getBooke import { workflowSelect } from "@calcom/features/ee/workflows/lib/getAllWorkflows"; import { getAllWorkflowsFromEventType } from "@calcom/features/ee/workflows/lib/getAllWorkflowsFromEventType"; import { WorkflowService } from "@calcom/features/ee/workflows/lib/service/WorkflowService"; +import { PrismaOrgMembershipRepository } from "@calcom/features/membership/repositories/PrismaOrgMembershipRepository"; import type { GetSubscriberOptions } from "@calcom/features/webhooks/lib/getWebhooks"; import type { EventPayloadType, EventTypeInfo } from "@calcom/features/webhooks/lib/sendPayload"; import getOrgIdFromMemberOrTeamId from "@calcom/lib/getOrgIdFromMemberOrTeamId"; @@ -19,7 +20,6 @@ import { getTeamIdFromEventType } from "@calcom/lib/getTeamIdFromEventType"; import { isPrismaObjOrUndefined } from "@calcom/lib/isPrismaObj"; import { parseRecurringEvent } from "@calcom/lib/isRecurringEvent"; import { getTranslation } from "@calcom/lib/server/i18n"; -import { PrismaOrgMembershipRepository } from "@calcom/lib/server/repository/PrismaOrgMembershipRepository"; import { getTimeFormatStringFromUserTimeFormat } from "@calcom/lib/timeFormat"; import type { TraceContext } from "@calcom/lib/tracing"; import { prisma } from "@calcom/prisma"; diff --git a/packages/trpc/server/routers/viewer/travelSchedules/getTravelSchedules.handler.ts b/packages/trpc/server/routers/viewer/travelSchedules/getTravelSchedules.handler.ts index b430381376..2e1da6afc4 100644 --- a/packages/trpc/server/routers/viewer/travelSchedules/getTravelSchedules.handler.ts +++ b/packages/trpc/server/routers/viewer/travelSchedules/getTravelSchedules.handler.ts @@ -1,4 +1,4 @@ -import { TravelScheduleRepository } from "@calcom/lib/server/repository/travelSchedule"; +import { TravelScheduleRepository } from "@calcom/features/travelSchedule/repositories/TravelScheduleRepository"; import type { TrpcSessionUser } from "@calcom/trpc/server/types"; type GetTravelSchedulesOptions = {